Randomize MP3
Publicado por Fábio Berbert de Paula 13/11/2002
[ Hits: 4.851 ]
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);
Remover lista de pacotes do Portage
Monitorando o Preço do Bitcoin ou sua Cripto Favorita em Tempo Real com um Widget Flutuante
IA Turbina o Desktop Linux enquanto distros renovam forças
Como extrair chaves TOTP 2FA a partir de QRCODE (Google Authenticator)
Como realizar um ataque de força bruta para desobrir senhas?
Como usar Gpaste no ambiente Cinnamon
Atualizando o Fedora 42 para 43
VOL já não é mais como antes? (12)
Scripts ou binários [RESOLVIDO] (4)
Pergunta: Meu teclado não está respondendo direito como e consertar? ... (4)









