informatique:cfp:ffmpeg_mp3_tag_metadata

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
informatique:cfp:ffmpeg_mp3_tag_metadata [2023/01/09 23:49] Cédric ABONNELinformatique:cfp:ffmpeg_mp3_tag_metadata [2023/02/28 21:02] (Version actuelle) – ↷ Page déplacée de informatique:technologie:formats-audio:ffmpeg_mp3_tag_metadata à informatique:cfp:ffmpeg_mp3_tag_metadata Cédric ABONNEL
Ligne 1: Ligne 1:
 +====== ffmpeg : gestion des metadata dans un MP3 ======
 +
 +{{tag>"Linux commande"}}
 +
 +Utilisation du programme **ffmpeg** pour manipuler les metadata des fichiers MP3. Cela impactera directement les TAG des mp3 et les informations présentes dans iTunes et autres bibliothèques multimédia.
 +===== Créer un fichier metadata =====
 +
 +Exemple de fichier **metadata.txt** :
 +<code>
 +;FFMETADATA1
 +title=bike\\shed
 +;this is a comment
 +artist=FFmpeg troll team
 +
 +[CHAPTER]
 +TIMEBASE=1/1000
 +START=0
 +#chapter ends at 0:01:00
 +END=60000
 +title=chapter \#1
 +[STREAM]
 +title=multi\
 +line
 +
 +</code>
 +
 +Autre exemple :
 +
 +<code>
 +;FFMETADATA1
 +title=NRJ MEGAMIX 10.06.1990 [B!] \#mcXtra
 +artist=NRJ
 +album_artist=Cédric
 +album=mindCast XTRA
 +encoded_by=Cédric / JSide_fr
 +genre=Musique
 +comment=Mettez les ringards au placard, c'est Megamix qui redémarre. Dimitrouille le roi de la bidouille pour un panaché très estival du meilleur de la dance musique de l'année 90. C'est Megamix du 10 juin 1990\
 +\
 +00:06 [JINGLE] Top horaire Megamix\
 +00:35 [SPEAK] Dimitri\
 +01:19 Art Of Noise - Art Of Love\
 +07:15 Diana Brown & Barrie K Sharpe - The Masterplan (Extended Version)\
 +11:47 Dimitri - Summer Vibes\
 +16:48 Digital Underground - Freaks Of The Industry\
 +20:50 Barry White - I Wanna Do It Good To Ya\
 +25:14The Chimes - Stronger Together (Red Zone Mix)\
 +30:52 Blaze - So Special (So So Mix)\
 +33:58 The Rock Posse Featuring Fonda Rae - Do You Want My Love? (Smooth R&B Mix)\
 +37:58 Satoshi Tomiie Featuring Arnold Jarvis - And I Loved You (12" Red Zone Vocal Mix)\
 +47:07 New Order - World In Motion (Remix)\
 +48:44 Prince - The Future (Remix)\
 +52:17 [SPEAK] Dimitri\
 +53:12 [JINGLE] Fin\
 +\
 ++ d'infos sur http://house-revival.blogspot.com/p/nrj-club-nrj-megamix.html\
 +Remasterisé par Cédric @jside_fr.
 +copyright=NRJ
 +date=2019
 +encoder=Lavf58.20.100
 +
 +</code>
 +
 +===== Liste des metadata possibles =====
 +
 +^Windows^iTunes (Info tab)^id3v2.3^id3v2.4^ffmpeg key^ffmpeg example|
 +|Title|Title|TIT2|title|-metadata title=”Adagio for Strings”|
 +|Subtitle|Description \\ (Video tab)|TIT3|TIT3|-metadata TIT3=”Op. 91″|
 +|Comments|Comments|COMM||not implemented|
 +|Contributing artists|Artist|TPE1|artist|-metadata artist=”Yo Yo Ma/London Symphony”|
 +|Album artist|Album Artist|TPE2|album_artist|-metadata album_artist=”London Symphony”|
 +|Album|Album|TALB|album|-metadata album=”String Classics”|
 +|Year|Year|TYER|date|-metadata date=”2012″|
 +|#|Track Number|TRCK|track|-metadata track=”3/12″ \\ (means track number 3 of 12)|
 +|Genre|Genre|TCON|genre|-metadata genre=”Classical”|
 +|Publisher||TPUB|publisher|-metadata publisher=”London Publishing”|
 +|Encoded by||TENC|encoded_by|-metadata encoded_by=”Telarc”|
 +|Author URL||WOAR||not implemented|
 +|Copyright \\ (Not Editable)||TCOP|copyright|-metadata copyright=”℗ Telarc”|
 +|Composers||TCOM|composer|-metadata composer=”J.S. Bach”|
 +|Conductors||TPE3|performer|-metadata performer=”T. S. Miles”|
 +|Group description|Grouping|TIT1|TIT1|-metadata TIT1=”The Classics”|
 +|Part of set|Disc Number|TPOS|disc|-metadata disc=”1/2″ \\ (means disc number 1 of 2)|
 +|Initial key||TKEY|TKEY|-metadata TKEY=”G”|
 +|Beats-per-minute|BPM|TBPM|TBPM|-metadata TBPM=”120″|
 +|Part of a compilation|Part of a compilation|TCMP|compilation|not implemented|
 +| ||TLAN|language|-metadata language=”eng”|
 +| ||TSSE|encoder|-metadata encoder=”iTunes v10″|
 +| |||lyrics|voir http://id3.org/Lyrics3v2 |
 +| |||creation_time|-metadata creation_time="2013-05-02 22:01:04″|
 +| |||album-sort|-metadata album-sort="String Classics″|
 +| |||artist-sort|-metadata artist-sort="London Symphony″|
 +| |||title-sort|-metadata title-sort="Adagio for Strings″|
 +
 +Fichier **metadata.txt** vide basé sur toutes les metadata possibles gérées par **ffmpeg** :<code>
 +
 +;FFMETADATA1
 +title=
 +title-sort=
 +TIT3=
 +artist=
 +artist-sort=
 +album=
 +album-sort=
 +album_artist=
 +date=
 +track=
 +genre=
 +publisher=
 +encoded_by=
 +copyright=
 +composer=
 +performer=
 +TIT1=
 +disc=
 +TKEY=TBPM=
 +language=
 +encoder=
 +compilation=
 +lyrics=
 +creation_time=
 +
 +</code>
 +
 +===== Liste des genres =====
 +
 +La liste des genres est définie par la norme ID3. Elle est arrêtée depuis la version ID3v1
 +
 +<code>
 +      0.Blues
 +      1.Classic Rock
 +      2.Country
 +      3.Dance
 +      4.Disco
 +      5.Funk
 +      6.Grunge
 +      7.Hip-Hop
 +      8.Jazz
 +      9.Metal
 +     10.New Age
 +     11.Oldies
 +     12.Other
 +     13.Pop
 +     14.R&B
 +     15.Rap
 +     16.Reggae
 +     17.Rock
 +     18.Techno
 +     19.Industrial
 +     20.Alternative
 +     21.Ska
 +     22.Death Metal
 +     23.Pranks
 +     24.Soundtrack
 +     25.Euro-Techno
 +     26.Ambient
 +     27.Trip-Hop
 +     28.Vocal
 +     29.Jazz+Funk
 +     30.Fusion
 +     31.Trance
 +     32.Classical
 +     33.Instrumental
 +     34.Acid
 +     35.House
 +     36.Game
 +     37.Sound Clip
 +     38.Gospel
 +     39.Noise
 +     40.AlternRock
 +     41.Bass
 +     42.Soul
 +     43.Punk
 +     44.Space
 +     45.Meditative
 +     46.Instrumental Pop
 +     47.Instrumental Rock
 +     48.Ethnic
 +     49.Gothic
 +     50.Darkwave
 +     51.Techno-Industrial
 +     52.Electronic
 +     53.Pop-Folk
 +     54.Eurodance
 +     55.Dream
 +     56.Southern Rock
 +     57.Comedy
 +     58.Cult
 +     59.Gangsta
 +     60.Top 40
 +     61.Christian Rap
 +     62.Pop/Funk
 +     63.Jungle
 +     64.Native American
 +     65.Cabaret
 +     66.New Wave
 +     67.Psychedelic
 +     68.Rave
 +     69.Showtunes
 +     70.Trailer
 +     71.Lo-Fi
 +     72.Tribal
 +     73.Acid Punk
 +     74.Acid Jazz
 +     75.Polka
 +     76.Retro
 +     77.Musical
 +     78.Rock & Roll
 +     79.Hard Rock
 +</code>
 +
 +
 +Sources : http://id3.org/id3v2.4.0-frames
 +===== Ajouter des metadata =====
 +
 +Ajouter les tag définis dans le fichier **metadata.txt** :
 +
 +<code>
 +ffmpeg -i in.mp3 -i metadata.txt -map_metadata 1 -c:a copy -id3v2_version 3 out.mp3
 +
 +</code>
 +
 +Pour Windows, ne pas oublier d'ajouter les options suivantes :
 +
 +  - id3v2_version 3
 +  - write_id3v1 1
 +
 +ffmpeg -i in.mp3 -i metadata.txt -map_metadata 1 -c:a copy -id3v2_version 3 -write_id3v1 1 out.mp3
 +
 +----
 +
 +Ajouter des tag dans la ligne de commande avec une **image** :
 +
 +<code>
 +ffmpeg -i input.mp3 -i cover.png -c copy -map 0 -map 1 -metadata:s:v title="Album cover" -metadata:s:v comment="Cover (Front)" out.mp3
 +</code>
 +
 +----
 +Ajouter les tag définis dans le fichier **metadata.txt** avec une **image** :
 +
 +<code>
 +ffmpeg -i input.mp3 -i cover.png -c copy -map 0 -i metadata.txt -map_metadata 1 -c:a copy -id3v2_version 3 -write_id3v1 1 out.mp3
 +</code>
 +
 +
 +===== Supprimer =====
 +
 +Par exemple, pour supprimer le tag informant le nom de l'artiste :
 +
 +<code>
 +ffmpeg -i out.mp3 -metadata title="The Title You Want" -metadata artist="" -metadata album="Name of the Album" out2.mp3
 +
 +</code>
 +
 +----
 +
 +Supprimer toutes les metadata :
 +
 +<code>
 +ffmpeg -i input.mp3 -write_xing 0 -id3v2_version 0 out.mp3
 +
 +</code>
 +
 +
 +
 +===== Extraire les metadata =====
 +
 +Extraire les metadatas d'un fichier MP3 :
 +
 +<code>
 +ffmpeg -i in.mp3 -f ffmetadata metadata.txt
 +
 +</code>
 +
 +Le résultat est écrit dans le fichier **metadata.txt**
 +
 +
 +----
 +
 +Extraire les metadatas de tous les fichiers MP3 présents dans le dossier courant :
 +
 +  for f in *.mp3 ; do ffmpeg -i "$f" -f ffmetadata "${f%.*}.txt" ; done
 +  
 +
 +Le résultat est écrit dans le fichier de même nom que le MP3 avec l'extension **txt** au lieu de **mp3**
 +
 +
 +===== Informations sur ce document =====
 +
 +Document rédigé par [[user:cedricabonnel]] le 27/10/2019 à 09:31.\\
 +Modifié le 27/10/2019 à 11:30.
 +
 +Librement inspiré des pages suivantes :
 +
 +  * [[http://jonhall.info/create_id3_tags_using_ffmpeg/|http://jonhall.info/create_id3_tags_using_ffmpeg/]]
 +  * [[https://ffmpeg.org/ffmpeg-all.html#mp3|https://ffmpeg.org/ffmpeg-all.html#mp3]]
 +
 +
 +\\
 +