Ces dernières semaines, je suis passé d'une approche assez «pratique» au transcodage .flac -> .mp3 à une approche beaucoup plus «définie et oubliée».
La première étape a consisté à cesser d'utiliser une interface graphique (Audacity avec un plug-in LAME) et à la place utiliser la méthode que j'ai décrite ici .
La deuxième étape consistait à trouver un script shell bash qui indiquerait à cette boucle de commande de fonctionner récursivement, permettant aux répertoires contenant de nombreux sous-répertoires contenant des fichiers .flac d'être transcodés en une seule étape simple. Cette réponse a été fournie par un utilisateur de askubuntu.com.
Maintenant, je souhaite apprendre à affiner davantage les choses afin que les informations de balise ID3 soient préservées. Les méthodes liées aux données de balise ID3 ci-dessus, laissant le strict minimum (c'est-à-dire qu'il ne reste que le champ de titre).
Quelqu'un peut-il m'apprendre à écrire un tel script shell?
Le script shell a été mis à jour ainsi:
#!/bin/bash
file="$1"
flac -cd "$file" | lame --preset fast extreme - "${file%.flac}.mp3"
id3cp "$file" "${file%.flac}.mp3"
Faire find . -name '*.flac' -exec ~/bin/flac2mp3 '{}' \;
dans ~ / Desktop / stack donne la sortie suivante:
01 - Amon Tobin - Chomp Samba.flac: done
LAME 3.98.4 64bits (http://www.mp3dev.org/)
Using polyphase lowpass filter, transition band: 19383 Hz - 19916 Hz
Encoding <stdin> to ./01 - Amon Tobin - Chomp Samba.mp3
Encoding as 44.1 kHz j-stereo MPEG-1 Layer III VBR(q=0)
Parsing ./01 - Amon Tobin - Chomp Samba.flac: done. Copying to ./01 - Amon Tobin - Chomp Samba.mp3: done
id3info
pour le .flac original et le .mp3 résultant donne respectivement:
*** Tag information for 01 - Amon Tobin - Chomp Samba.flac
(c'est-à-dire rien);
*** Tag information for 01 - Amon Tobin - Chomp Samba.mp3
*** mp3 info
MPEG1/layer III
Bitrate: 128KBps
Frequency: 44KHz
Le .flac a définitivement des informations sur les balises. Je peux le vérifier en ouvrant EasyTAG. EasyTAG se réfère à cela comme «FLAC Vorbis Tag» mais «ID3 Tag» pour le .mp3. Est-ce le problème?
ffmpeg
?Réponses:
la source
Comment utiliser mp3fs pour coder en masse flac en mp3
Au lieu d'utiliser un programme pour convertir des fichiers flac en mp3, vous pouvez utiliser mp3fs pour les présenter comme des mp3 virtuels, et un programme qui peut mettre en file d'attente les travaux de copie. Cela fonctionne à merveille pour moi.
Téléchargez et installez mp3fs et ultracopier:
Créez une paire de répertoires flac et mp3 pour chaque mp3fs que vous souhaitez exécuter. J'ai un processeur dual core donc j'en lance deux. Si vous conservez les répertoires flac sur la partition où se trouvent vos fichiers flac, vous pouvez les déplacer rapidement. Cette partition est appelée "Stockage" sur mon système.
Vous pouvez monter les répertoires à partir de la ligne de commande ou en les ajoutant à
/etc/fstab
. Vous pouvez également configurer le bitrate et l'algorithme de codage des mp3 virtuels au moment du montage. Je veux des mp3 avec un débit constant de 320 kbps, et boiteux peut prendre tout le temps nécessaire pour produire le meilleur mp3 possible.Sur la ligne de commande:
Si le fusible se plaint, comme
puis décommentez l'
user_allow_other
option dans/etc/fuse.conf
et / ou rendez-la lisible avecOu de
/etc/fstab
:Après avoir ajouté les répertoires à
/etc/fstab
, vous pouvez les monter en utilisantTerminé! Démarrez ultracopier. Il placera une icône d'indicateur dans votre panneau de gnome ou quoi que ce soit que vous utilisez. Cliquez dessus, sélectionnez ajouter une copie. Je l'ai fait deux fois pour utiliser deux cœurs. Utilisez votre navigateur de fichiers pour déplacer des flacs dans flac_1. Accédez au répertoire mp3_1 et faites glisser vos mp3 vers l'une des fenêtres ultracopier pour démarrer une file d'attente de copie. Ultracopier demandera la destination des fichiers. Vous avez maintenant un cœur occupé à encoder un lot de flacs en mp3.
Pour utiliser l'autre noyau, déplacez les fichiers flac vers flac_2 et faites glisser les mp3 de mp3_2 vers la deuxième fenêtre ultracopier.
Mise à jour: Au lieu d'ultracopier, j'utilise maintenant MiniCopier, c'est un peu plus facile à utiliser. Voir les commentaires ci-dessous.
la source
id3cp
ne peut pas fonctionner car FLAC n'utilise pas ID3; il utilise des balises Vorbis à la place.avconv
a une option pour conserver les balises lors de la conversion. C'est un peu capricieux, sa valeur dépend de la combinaison de codecs , mais cela fonctionne comme ça dans votre cas (version 9.16-6):L'application de tous les fichiers FLAC dans un dossier (récursivement) est aussi simple que cela: (utilisation
bash
)Notez que
avconv
utilise lame automatiquement; d'autres options existent pour contrôler la qualité et ainsi de suite. Vérifiez lesman avconv
détails.la source