Ho scritto questo programmino che mi serve per poter masterizzare file mpc usando gnome toaster.
Praticamente gli passo il file mpc e lui mi restituisce la scritta "Playback length: xxm:yys" ... come fa ogginfo per i file ogg.
Con gnome toster leggo la scritta e masterizzo.
Per leggere xxm:yys (insomma la lunghezza del file musicale) chiamo il comando mppdec inviando l'output su /dev/null. Lo STDERR lo 'dirotto' invece su un file temporaneo che leggo e poi scancello.
Lo script funziona ma mi chiedevo ... non si può inviare direttamente lo STDERR in una variabile?
Ho cercato un po' su internet ma non sono riuscito a trovare nulla.
Ciao.
Muke.
#!/usr/bin/perl
$nome_file=$ARGV[0];
open(STDERR, ">appoggio");
system ("mppdec","$nome_file","/dev/null");
open(appoggio,"<appoggio");
@appoggio=<appoggio>;
foreach $appoggio(@appoggio) {
$messaggistderr=$messaggistderr.$appoggio;
}
close (appoggio);
unlink (appoggio);
$messaggistderr =~ /(..)\:(..)\.(.)/;
print 'Playback length:',$1,'m:',$2,'s',"\n";