Randomize MP3
Publicado por Fábio Berbert de Paula 13/11/2002
[ Hits: 4.753 ]
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);
Calculadora com Perl com menos de 10 linhas de código
Índice (Logaritmo Discreto) em Perl
Atualizando o Passado: Linux no Lenovo G460 em 2025
aaPanel - Um Painel de Hospedagem Gratuito e Poderoso
O macete do Warsaw no Linux Mint e cia
Um modo leve de ouvir/ver áudio/vídeo da internet em máquinas pererecas
Resolver algumas mensagens de erro do SSH
Instalar módulo de segurança do Banco do Brasil Warsaw do tipo .run
Sem espaço na partição home (2)
O que você está ouvindo agora? [2] (190)
Procrastinação e autossabotagem são problemas muito comuns na sociedad... (5)
warsaw parou de funcionar após atualização do sistema (solução) (10)