web-dev-qa-db-fra.com

Convertissez tous les fichiers audio en basse qualité dans Ubuntu

Je veux juste convertir tous les 320 kbps de mon WALKMAN en 128 kbps car ils sont lourds. Bien sûr, la conversion de tous les 8 Go serait aussi longue, car un album de 0,5 Go à 320 kbps prendrait une demi-heure ici. Je peux attendre 6 heures pour convertir 3 Go, mais je ne peux pas attendre que tous les 8 Go se convertissent de 128 kbps à 128 kbps, car les 5 Go qu'il contient sont déjà à 128 kbps. Donc, la question ici est de savoir comment forcer Ubuntu à convertir SEULEMENT fichiers 320kbps dans mon WALKMAN?

1
dat tutbrus

Voici un moyen de trouver tous vos fichiers mp3 qui dépassent le débit spécifié et de les convertir en un débit inférieur. Assurez-vous de lire jusqu'au bout avant de commencer, car il existe deux options pour le transcodage réel: Clémentine ou script.

  1. Vous devrez installer certains packages:

    Sudo aptitude install mp3info clementine lame gawk findutils
    
  2. Pour faire une liste de tous vos fichiers musicaux et de leurs débits, exécutez ce qui suit après avoir remplacé/path/to/your/music de manière appropriée:

    find /path/to/your/music -iname '*.mp3' -print0 | xargs -0 mp3info -rm -p '%r:%F\n' > transcode.kbps
    

    Regardez le fichier transcode.kbps et assurez-vous qu'il ressemble à ceci (bitrate: nom de fichier):

    128:/path/to/your/music/dir1/file.mp3
    256:/path/to/your/music/dirX/fileX.mp3
    320:/path/to/your/music/dirY/fileA.mp3
    
  3. Lorsque cela semble bon, exécutez cette commande awk, pour créer une liste de lecture contenant uniquement les fichiers supérieurs à un débit binaire spécifié (ici, tous les fichiers avec un débit> 160 seront placés dans la liste de lecture m3u):

    awk -F: '$1 > 160 { print $2; }' transcode.kbps > transcode.m3u
    

    Vérifiez le fichier transcode.m3u et assurez-vous que tout semble correct. Quand c'est bon, vous êtes prêt à transcoder!

Clementine Transcode Solution

  1. Dans le menu Playlist, sélectionnez "Load Playlist" et ouvrez transcode.m3u.
  2. Cliquez dans la liste de vos fichiers et tapez CTRL-A pour sélectionner tous les fichiers dans la liste de lecture.
  3. Faites un clic droit sur la liste de lecture et sélectionnez l'élément du menu contextuel "Ajouter un ou des fichiers au transcodeur".
  4. Définissez vos paramètres souhaités dans la fenêtre du transcodeur, n'oubliez pas de définir les options. Vous voulez probablement quelque chose comme "Optimiser pour un débit binaire de 128 kbps, un débit constant, une qualité standard".
  5. Cliquez sur "Démarrer le transcodage"

Attendez la fin de votre transcodage.

Le principal problème avec l'utilisation de Clementine au moins sur Ubuntu 10.04 Trusty avec Clementine 1.2, la seule option est de créer un nouveau fichier à côté de l'ancien fichier. Je pense que si vous avez un lecteur de musique connecté, Clémentine vous laisserait transcoder directement sur le lecteur de musique.

Étant donné que les fichiers que vous souhaitez convertir sont déjà sur le lecteur de musique, cela pose un problème, car les nouveaux fichiers peuvent remplir votre lecteur.

Solution de transcodage de script

C'est un script assez banal pour traiter le transcode.m3u avec lame pour transcoder les fichiers et supprimer les anciens fichiers au fur et à mesure. Enregistrez-le dans un fichier nommé transcode.sh:

#!/bin/sh -e
# transcode.sh -- read filenames from standard input and transcode files
while read file
do
    if lame -h "$file" "$file.new"
    then
            mv "$file.new" "$file"
    else
            rm -f "$file.new"
    fi
done

Vous pouvez maintenant exécuter:

sh transcode.sh < transcode.m3u

et le script transcodera tous les fichiers, supprimant l'ancien fichier à chaque fois une fois le nouveau créé avec succès par lame.

Vous pouvez modifier les paramètres de commande boiteux dans le script transcode.sh pour effectuer les autres paramètres de transcodage que vous souhaitez.

2
RobertL