Randomize MP3
Publicado por Fábio Berbert de Paula 13/11/2002
[ Hits: 4.687 ]
Homepage: https://fabio.automatizando.dev
Script escrito em PERL usado para reproduzir arquivos MP3 de um diretório de formarandômica. Este script, ao contrário do xmms e do mpg123, tem sua lógica de randomização eficiente, não repetindo uma música antes que todas as outras sejam previamente reproduzidas.
#!/usr/bin/perl if ($#ARGV != 0) { print "Qual diretório ?\n"; exit; } use strict; my $diretorio = shift; my @arquivos = (); my %lista = (); my $menor = 1; if (!-d $diretorio) { print "Diretório maluco ?\n"; exit; } chdir $diretorio; opendir(D,$diretorio); @arquivos = grep /\.mp3$/i, readdir(D); closedir(D); if (!"@arquivos") { print "Cadê os MP3 deste diretório ?\n"; exit; } print "Termine o programa com 'kill -HUP $$' ...\n"; foreach my $arquivo (@arquivos) { if (!defined($lista{$arquivo})) { $lista{$arquivo} = 1; } } sub round { my $x = shift; $x = sprintf "%.0f",$x; return $x; } do { # SHUFFLE MODE my $rotates = 0; do { my $indice = round(rand($#arquivos)); if ($lista{$arquivos[$indice]} <= $menor) { $lista{$arquivos[$indice]}++; print "Reproduzindo música: $arquivos[$indice] ...\n"; system("mpg123 '$arquivos[$indice]' 1>>/dev/null 2>>/dev/null"); $rotates++; } } while ($rotates <= $#arquivos); $menor++; } while(1);
Algoritmo de Euclides estendido em Perl
Como gerar qualquer emoji ou símbolo unicode a partir do seu teclado
Instalar e Configurar o Slackware Linux em 2025
Como configurar os repositórios do apt no Debian 12 em 2025
Passkeys: A Evolução da Autenticação Digital
Instalação de distro Linux em computadores, netbooks, etc, em rede com o Clonezilla
Muitas dificuldades ao instalar distro Linux em Notebook Sony Vaio PCG-6131L (VPCEA24FM)
Slackpkg+ (Slackpkg Plus) está de volta!
Como dividir duas janelas igualmente e lado-a-lado na sua tela
Configurando o Conky para iniciar corretamente no sistema
3 configurações básicas que podem melhorar muito a sua edição pelo editor nano
Não Consigo instalar o cli-visualizer no Ubuntu 24.04 (1)
compilação samba 4.22 rock linux 9.5 (1)
Erro de segmentação «Segmentation fault (core dumped)» ao retornar obj... (2)
Posso instalar usar o grub sem ter linux instalado, para iniciar o win... (1)
Ocomon 6.0.1 - Problemas ao editar configurações estendidas (4)