Recherche d'un outil de balisage de ligne de commande pour mp3 et ogg qui prend en charge les images

10

Je recherche un outil de balisage en ligne de commande qui prend en charge le balisage ogg et mp3 et permet d'ajouter une image aux balises.

Actuellement j'utilise lltagmais cela ne supporte pas les photos. daggerest l'outil que j'utilise avant, mais il manque également de support d'image.

ddeimeke
la source
Voulez-vous vraiment une image dans le fichier mp3 / ogg? Est-ce même pris en charge par le format de fichier (la balise id3)?
Johan
1
Oui, il est pris en charge. Voir votre podcast de choix, un outil graphique pour le faire serait EasyTAG - easytag.sourceforge.net
ddeimeke
<3 easytag! mais malheureusement je ne connais aucun autre outil qui puisse le faire ...
xenoterracide
1
Pour mp3, la bibliothèque mutagène python prend en charge APIC (exemple: mydigitallife.co.za/… ). Je ne connais pas d'outil de ligne de commande qui le fasse; si vous connaissez python, vous pouvez écrire un simple wrapper.
Gilles 'SO- arrête d'être méchant'

Réponses:

8

Pour MP3, essayez eyeD3 , qui se trouve dans cette réponse SO.

  --add-image=IMG_PATH:TYPE[:DESCRIPTION]
                      Add an image to the tag.  The description and type
                      optional, but when used, both ':' delimiters must be
                      present.  The type MUST be an string that corresponds
                      to one given with --list-image-types. If the IMG_PATH
                      value is empty the APIC frame with TYPE is removed.

Pour Ogg, il y a du vorbiscomment . Il ne prend pas en charge le chargement de fichiers d'image hors de la boîte, mais une balise de pochette dans Vorbis est juste un fichier image encodé en base64, stocké dans la balise COVERART et son type MIME dans COVERARTMIME - quelque chose comme

coverart=$(base64 $jpegfile)
vorbiscomment -a -t 'COVERART=$coverart' -t 'COVERARTMIME=image/jpeg' $infile $outfile
André Paramés
la source
Je vais essayer. Merci beaucoup. Mais il semble manquer de support pour les fichiers ogg.
ddeimeke
Vous avez raison. J'ai mis à jour la réponse, mais la solution ogg n'est pas aussi propre.
André Paramés
Peut-être que je dois écrire quelque chose pour moi. Merci pour votre aide.
ddeimeke
Veuillez optimiser les images avant de les insérer dans des balises, surtout si vous les insérez dans chaque fichier. J'ai même écrit un script pour aider à ce processus. J'essaye juste d'aider. :-)
amphetamachine
1
Une bonne réponse, bien que les sauts de ligne dans l'encodage base64 ne fonctionnent pas, devrait l'être coverart=$(base64 -w 0 $jpegfile). Testé et l'image apparaît dans le lecteur multimédia VLC!
Michael Franzl