Jacques Foucry bio photo

Jacques Foucry

IT, râleur et faiseur de pain

Email

Où l’on va voir comment utiliser le nom du fichier de musique pour mettre à jour les tags ID3.

Le contexte

J’avais plein de fichiers musicaux dont le nom était correct, mais dont les méta-informations étaient fausses ou inexistantes.

J’ai installé l’outil en ligne de commande id3v2 qui permet de positionner ces informations.

Mais voilà, gérer 20 fichiers les uns après les autres, c’est gentil, 1500 c’est autre chose.

« Sers-toi du shell Luke »

Bien sûr qu’un shell script va m’aider.

Mes fichiers sont classés dans des dossiers, par interprète, titre de l’album (avec l’année), et chaque nom de fichier est constitué avec le numéro de piste, la titre du morceaux et l’extension :

David Bowie/1972 The Rise And Fall Of Ziggy Stardust And The Spiders From Mars/01 Five Years.mp3
David Bowie/1972 The Rise And Fall Of Ziggy Stardust And The Spiders From Mars/02 Soul Love.mp3
David Bowie/1972 The Rise And Fall Of Ziggy Stardust And The Spiders From Mars/03 Moonage Daydream.mp3
David Bowie/1972 The Rise And Fall Of Ziggy Stardust And The Spiders From Mars/04 Starman.mp3
David Bowie/1972 The Rise And Fall Of Ziggy Stardust And The Spiders From Mars/05 It Ain’t Easy.mp3
David Bowie/1972 The Rise And Fall Of Ziggy Stardust And The Spiders From Mars/06 Lady Stardust.mp3
David Bowie/1972 The Rise And Fall Of Ziggy Stardust And The Spiders From Mars/07 Star.mp3
David Bowie/1972 The Rise And Fall Of Ziggy Stardust And The Spiders From Mars/08 Hang Onto Yourself.mp3
David Bowie/1972 The Rise And Fall Of Ziggy Stardust And The Spiders From Mars/09 Ziggy Stardust.mp3
David Bowie/1972 The Rise And Fall Of Ziggy Stardust And The Spiders From Mars/11 Rock ’N’ Roll Suicide.mp3

Nous connaissons l’interprète (David Bowie), l’année (1972) et le titre de l’album (The Rise And Fall Of Ziggy Stardust And The Spiders From Mars)

Il faut maintenant, dans le répertoire de l’album, faire une boucle sur les fichiers dont l’extension est mp3, en supprimer l’extension et en extraire le numéro de piste et le titre du morceaux. Si cela ne pose pas de problème pour Starman.mp3, c’est autre de chose pour Rock ’N’ Roll Suicide.mp3 en raison des espaces que comprend le titre.

Nous allons utiliser plusieurs outils pour réaliser l’extraction des informations (basename, awk).

Une fois l’extraction terminée, nous passons les informations à id3v2.

Voici le scripts :

1
2
3
4
5
6
7
8
9
10
11
12
#! /bin/sh
for i in ls *.mp3
do
	morceau=$(basename $i .mp3)
	echo $morceau
	titre=$(echo "$morceau" | awk '{print substr($0,4)}')
	echo "titre == $titre"
	no_piste=$(echo "$morceau" | awk '{print $1}')
	print $no_piste
	id3v2 -t $titre -T $no_piste $i -g 62 -a "David Bowie" -A "The Rise And Fall Of Ziggy Stardust And The Spiders From Mars" -y 1972
	id3v2 -l $i
done

Je vous laisse allez plus loin en faisant les boucles qui viennent au dessus pour extraire le nom de l’album et l’année, et celle qui va permettre d’extraire le nom de l’artiste (ou du groupe).

Amusez-vous bien.


Laisser un commentaire

Les commentaires sont soumis à modération.