lundi 18 mai 2009

transcoder un real-audio

Dans un post précédant je découvrais comment télécharger un fichier real-audio.
Maintenant je cherche à faire la même chose, mais en encodant le fichier en mp3 pour pouvoir l'écouter quand même sur mon lecteur mp3...

Première étape, décoder le fichier real audio. Le logiciel qui permet d'enregistrer en .wav le son à la sortie d'un autre programme c'est Vsound. Donc la ligne de commande permettant d'enregistrer ce que joue realplayer c'est :
vsound -d -a 5 realplay url.rm
Bon là on attend, on fait la vaisselle ou on vas netoyer la salle de bain le temps que realplayer joue l'émission.
Si je veut pas écouter l'émission pendant que je l'enregistre (parce que justement je suis dans la salle de bain et que je veut plutôt écouter l'émission dans le métro), la ligne de commande deviens :
vsound -a 5 realplay http://url/du/fichier.rm
note : on met directement l'url, pas besoin de passer par l'étape du téléchargement du fichier real-audio

maintenant il reste qu'a encoder le fichier wav généré par Vsound en mp3, et supprimer le fichier .wav généré par Vsound qui sert plus à rien mais qui prend beaucoup de place
lame --preset 128 vsound.wav nom.mp3; rm vsound.wav
Là on part pas trop loin, ça vas beaucoup plus vite qu'à l'étape précédante.

Si on préfère le format .ogg au .mp3 (parce que c'est libre)
sox vsound.wav nom.ogg && rm vsound.wav
Au passage on note l'utilisation du &&. Le && séparer deux commandes. La deuxième commande ne serra lancée que si la première a réussi. On peut donc tout résumer en une seule ligne :
vsound -a 5 realplay url.rm && sox vsound.wav nom.ogg && rm vsound.wav
Et comme ça tout le travail se fait tout seul et quand la vaisselle est finie, on a son émission en .mp3 a disposition