in ffmpeg flac mp3 ~ temps de lecture.

Tranformez vos .flac en .mp3 sous Linux Mint

Je suis tombé sur un album de Michel Polnareff encodé en FLAC (Free Lossless Audio Codec), ne me demandez pas par quel moyen je me suis procuré cet album ^^, bien que le format est de meilleure qualité que le MP3 (MPEG-1/2 Audio Layer 3), j'ai dû procédé à une transformation des fichiers afin de pouvoir les lire correctement sur ma chaîne Hi-Fi ou mon téléphone, entendez par là .flac vers .mp3.

MP3 vs FLAC

FFmpeg à la rescousse

Véritable couteau suisse des formats audio et vidéo, FFmpeg suffit à lui seul pour manipuler vos fichiers numériques (VLC est d'ailleurs construit sur celui-ci), c'est avec lui que nous allons procéder à la transformation de nos fichiers FLAC en MP3 :

  • tout d'abord nous devons installer l'outil :
sudo apt-get install ffmpeg  

ou si cela ne suffit pas

sudo add-apt-repository ppa:mc3man/trusty-media  
sudo apt-get update  
sudo apt-get install ffmpeg  
  • ensuite créons un petit script bash, nommé flac2mp3.sh par exemple, qui va utiliser ffmpeg fraîchement installé :
!/bin/bash

for FILE in *.flac;  
do  
    ffmpeg -i "$FILE" -ab 320k -map_metadata 0 "${FILE%.*}.mp3";
done  

Ce qui y est écrit est à la portée de tous : où que ce script soit exécuté, il parcourt le répertoire à la recherche des fichiers dont l'extension est .flac, ensuite il itère sur chacun de ces fichiers afin de les transformer en .mp3 avec l'outil ffmpeg en qualité 320kbps. Les nouveaux fichiers portent le même nom que les originaux.
Simple, propre, efficace.

  • n'oublions pas de rendre exécutable le fichier flac2mp3.sh :
chmod +x flac2mp3.sh  
  • placez-vous dans le répertoire de votre choix et exécutez votre nouvel ami, les musiques vont se transformer les unes après les autres, voici ce qui se dit à la console au fur et à mesure que le traitement s'effectue :
mimie@mimie-GX780 ~/Michel POLNAREFF - 1991 - La compilation - double CD (FLAC)/Michel Polnareff - La compilation (cd1) $ ~/Scripts/flac2mp3.sh

ffmpeg version N-79139-gde1a0d4 Copyright (c) 2000-2016 the FFmpeg developers  
  built with gcc 4.8 (Ubuntu 4.8.4-2ubuntu1~14.04.1)
  configuration: --extra-libs=-ldl --prefix=/opt/ffmpeg --mandir=/usr/share/man --enable-avresample --disable-debug --enable-nonfree --enable-gpl --enable-version3 --enable-libopencore-amrnb --enable-libopencore-amrwb --disable-decoder=amrnb --disable-decoder=amrwb --enable-libpulse --enable-libfreetype --enable-gnutls --enable-libx264 --enable-libx265 --enable-libfdk-aac --enable-libvorbis --enable-libmp3lame --enable-libopus --enable-libvpx --enable-libspeex --enable-libass --enable-avisynth --enable-libsoxr --enable-libxvid --enable-libvidstab
  libavutil      55. 19.100 / 55. 19.100
  libavcodec     57. 30.100 / 57. 30.100
  libavformat    57. 29.101 / 57. 29.101
  libavdevice    57.  0.101 / 57.  0.101
  libavfilter     6. 40.102 /  6. 40.102
  libavresample   3.  0.  0 /  3.  0.  0
  libswscale      4.  0.100 /  4.  0.100
  libswresample   2.  0.101 /  2.  0.101
  libpostproc    54.  0.100 / 54.  0.100
Input #0, flac, from '01. Tout tout pour ma chérie.flac':  
  Metadata:
    ARTIST          : Michel Polnareff
    TITLE           : Tout Tout Pour Ma Chérie
    ALBUM           : La Compilation [Disc 1]
    DATE            : 1999
    track           : 1
    GENRE           : General Folk Rock
    PUBLISHER       : Sony
    disc            : 1/2
    COMPOSER        : Michel Polnareff
    ALBUM ARTIST    : Michel Polnareff
    GRACENOTEFILEID : 3CD3N11S5139352V782C38CE8346BF3D8DEE4C4CAE1EA5B069P4
    GRACENOTEEXTDATA: GNXDWEcxAQPkZB9Uhr/r6DGp7RFrekSYjz9s4cQqaV7EuIx/sEJshHrjKs/GJHn+1kuC0vMSbWhWAj4qSMGdx4mlmliaDxYzAeH9VX9vChRFLMbFrjy/JF6AHJPdnKdtqlt5oRzqaUagL72v4rbNzb/b+C7rwIqxzf2d/lWexhGXhd1rP3W4OMSGo6aEkSi3RjOWbVaq0ThodfRjFOl4aMvSQMevUIlDhwyXRixvRImKMpSQwo/GmWMCBqvK
  Duration: 00:02:56.04, start: 0.000000, bitrate: 781 kb/s
    Stream #0:0: Audio: flac, 44100 Hz, stereo, s16
Output #0, mp3, to '01. Tout tout pour ma chérie.mp3':  
  Metadata:
    TPE1            : Michel Polnareff
    TIT2            : Tout Tout Pour Ma Chérie
    TALB            : La Compilation [Disc 1]
    TDRC            : 1999
    TRCK            : 1
    TCON            : General Folk Rock
    TPUB            : Sony
    TPOS            : 1/2
    TCOM            : Michel Polnareff
    ALBUM ARTIST    : Michel Polnareff
    GRACENOTEFILEID : 3CD3N11S5139352V782C38CE8346BF3D8DEE4C4CAE1EA5B069P4
    GRACENOTEEXTDATA: GNXDWEcxAQPkZB9Uhr/r6DGp7RFrekSYjz9s4cQqaV7EuIx/sEJshHrjKs/GJHn+1kuC0vMSbWhWAj4qSMGdx4mlmliaDxYzAeH9VX9vChRFLMbFrjy/JF6AHJPdnKdtqlt5oRzqaUagL72v4rbNzb/b+C7rwIqxzf2d/lWexhGXhd1rP3W4OMSGo6aEkSi3RjOWbVaq0ThodfRjFOl4aMvSQMevUIlDhwyXRixvRImKMpSQwo/GmWMCBqvK
    TSSE            : Lavf57.29.101
    Stream #0:0: Audio: mp3 (libmp3lame), 44100 Hz, stereo, s16p, 320 kb/s
    Metadata:
      encoder         : Lavc57.30.100 libmp3lame
Stream mapping:  
  Stream #0:0 -> #0:0 (flac (native) -> mp3 (libmp3lame))
Press [q] to stop, [?] for help  
[libmp3lame @ 0x26d5c60] Trying to remove 1152 samples, but the queue is empty
size=    6880kB time=00:02:56.06 bitrate= 320.1kbits/s speed=35.8x  
video:0kB audio:6879kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.024249%

....

A lire sur le sujet

comments powered by Disqus