Différences
Ci-dessous, les différences entre deux révisions de la page.
Prochaine révision | Révision précédente | ||
informatique:cfp:ffmpeg_mp3_tag_metadata [2023/01/03 10:30] – Cédric ABONNEL | informatique: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>" | ||
+ | |||
+ | 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** : | ||
+ | < | ||
+ | ; | ||
+ | title=bike\\shed | ||
+ | ;this is a comment | ||
+ | artist=FFmpeg troll team | ||
+ | |||
+ | [CHAPTER] | ||
+ | TIMEBASE=1/ | ||
+ | START=0 | ||
+ | #chapter ends at 0:01:00 | ||
+ | END=60000 | ||
+ | title=chapter \#1 | ||
+ | [STREAM] | ||
+ | title=multi\ | ||
+ | line | ||
+ | |||
+ | </ | ||
+ | |||
+ | Autre exemple : | ||
+ | |||
+ | < | ||
+ | ; | ||
+ | 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' | ||
+ | \ | ||
+ | 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' | ||
+ | Remasterisé par Cédric @jside_fr. | ||
+ | copyright=NRJ | ||
+ | date=2019 | ||
+ | encoder=Lavf58.20.100 | ||
+ | |||
+ | </ | ||
+ | |||
+ | ===== 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/ | ||
+ | |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/ | ||
+ | |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:// | ||
+ | | |||creation_time|-metadata creation_time=" | ||
+ | | |||album-sort|-metadata album-sort=" | ||
+ | | |||artist-sort|-metadata artist-sort=" | ||
+ | | |||title-sort|-metadata title-sort=" | ||
+ | |||
+ | Fichier **metadata.txt** vide basé sur toutes les metadata possibles gérées par **ffmpeg** :< | ||
+ | |||
+ | ; | ||
+ | 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= | ||
+ | |||
+ | </ | ||
+ | |||
+ | ===== Liste des genres ===== | ||
+ | |||
+ | La liste des genres est définie par la norme ID3. Elle est arrêtée depuis la version ID3v1 | ||
+ | |||
+ | < | ||
+ | 0.Blues | ||
+ | 1.Classic Rock | ||
+ | 2.Country | ||
+ | 3.Dance | ||
+ | 4.Disco | ||
+ | 5.Funk | ||
+ | 6.Grunge | ||
+ | 7.Hip-Hop | ||
+ | 8.Jazz | ||
+ | 9.Metal | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | </ | ||
+ | |||
+ | |||
+ | Sources : http:// | ||
+ | ===== Ajouter des metadata ===== | ||
+ | |||
+ | Ajouter les tag définis dans le fichier **metadata.txt** : | ||
+ | |||
+ | < | ||
+ | ffmpeg -i in.mp3 -i metadata.txt -map_metadata 1 -c:a copy -id3v2_version 3 out.mp3 | ||
+ | |||
+ | </ | ||
+ | |||
+ | Pour Windows, ne pas oublier d' | ||
+ | |||
+ | - 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** : | ||
+ | |||
+ | < | ||
+ | ffmpeg -i input.mp3 -i cover.png -c copy -map 0 -map 1 -metadata: | ||
+ | </ | ||
+ | |||
+ | ---- | ||
+ | Ajouter les tag définis dans le fichier **metadata.txt** avec une **image** : | ||
+ | |||
+ | < | ||
+ | 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 | ||
+ | </ | ||
+ | |||
+ | |||
+ | ===== Supprimer ===== | ||
+ | |||
+ | Par exemple, pour supprimer le tag informant le nom de l' | ||
+ | |||
+ | < | ||
+ | ffmpeg -i out.mp3 -metadata title=" | ||
+ | |||
+ | </ | ||
+ | |||
+ | ---- | ||
+ | |||
+ | Supprimer toutes les metadata : | ||
+ | |||
+ | < | ||
+ | ffmpeg -i input.mp3 -write_xing 0 -id3v2_version 0 out.mp3 | ||
+ | |||
+ | </ | ||
+ | |||
+ | |||
+ | |||
+ | ===== Extraire les metadata ===== | ||
+ | |||
+ | Extraire les metadatas d'un fichier MP3 : | ||
+ | |||
+ | < | ||
+ | ffmpeg -i in.mp3 -f ffmetadata metadata.txt | ||
+ | |||
+ | </ | ||
+ | |||
+ | 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 " | ||
+ | | ||
+ | |||
+ | Le résultat est écrit dans le fichier de même nom que le MP3 avec l' | ||
+ | |||
+ | |||
+ | ===== Informations sur ce document ===== | ||
+ | |||
+ | Document rédigé par [[user: | ||
+ | Modifié le 27/10/2019 à 11:30. | ||
+ | |||
+ | Librement inspiré des pages suivantes : | ||
+ | |||
+ | * [[http:// | ||
+ | * [[https:// | ||
+ | |||
+ | |||
+ | \\ | ||
+ | |||