Lecture Tag ID3

Bonjour a tous,

Je cherche a lire les tag ID3 d'un fichier mp3, mais je me heurte a un gros problème,
ITunes semble mal intégrer les tags, ou alors le net me raconte des salades.
Il est dit qu'il fait se placer a la fin du fichier et revenir 128 bytes avant, hors je n'arrive qu'à  lire
"TAGNomDeLaChanson"

J'aimerais en fait récupérer les lyrics, mais j'avoue être totalement perdu..
(j'utilise NSFileHandle)

Si quelqu'un pouvait m'orienter :)

Réponses

  • devulderdevulder Membre
    20:43 modifié #2
    dans 1290790352:

    Bonjour a tous,

    Je cherche a lire les tag ID3 d'un fichier mp3, mais je me heurte a un gros problème,
    ITunes semble mal intégrer les tags, ou alors le net me raconte des salades.
    Il est dit qu'il fait se placer a la fin du fichier et revenir 128 bytes avant, hors je n'arrive qu'à  lire
    "TAGNomDeLaChanson"

    J'aimerais en fait récupérer les lyrics, mais j'avoue être totalement perdu..
    (j'utilise NSFileHandle)

    Si quelqu'un pouvait m'orienter :)


    Hello,

    Il existe plusieurs versions v1,2 des tags

    Vérifie déjà  quel version tu analyse vois ici

  • AliGatorAliGator Membre, Modérateur
    20:43 modifié #3
    Oui comme le dit devulder, il y a deux formats, ou plutôt deux versions du format

    Les tags à  la fin du fichier c'est pour ID3v1, ce format a été un peu abandonné (même s'il arrive de les voir encore utilisés) car les tags sont assez limités (nombre de champ assez réduit, taille maxi assez petite pour les divers champs, et même suis pas sûr que ça supporte l'UTF8 en plus...)

    Maintenant on utilise ID3v2, ce qui permet comme le propose iTunes de mettre beaucoup plus d'informations et de champs différents, et ces tags sont maintenant au début du fichier MP3, comme la plupart des headers de tout format de fichier
  • 20:43 modifié #4
    C'est bien ce que j'avais remarqué effectivement.
    Par contre je reste sceptique sur la façon de récupérer tout ça... Je suis même assez perdu..
  • AliGatorAliGator Membre, Modérateur
    20:43 modifié #5
    Heu pourtant c'est assez simple comme header à  décoder, c'est relativement proche de tous les formats types TSV.
    Certes il y a beaucoup de tags listés dans le standard, mais rien ne t'oblige à  tous les supporter.
    Sinon pourquoi ne pas utiliser un parser tout fait ?
  • 20:43 modifié #6
    dans 1290804449:

    Heu pourtant c'est assez simple comme header à  décoder, c'est relativement proche de tous les formats types TSV.
    Certes il y a beaucoup de tags listés dans le standard, mais rien ne t'oblige à  tous les supporter.
    Sinon pourquoi ne pas utiliser un parser tout fait ?


    Parce que j'en ai pas trouvé  :D
  • 20:43 modifié #8
    dans 1290811277:

    Haaa merci je cherchais le lien!
  • muqaddarmuqaddar Administrateur
    20:43 modifié #9
    dans 1290812414:

    dans 1290811277:

    Haaa merci je cherchais le lien!


    ;D ;D ;D
  • 20:43 modifié #10
    Non mais plus sérieusement, je trouve rien d'intéressant ou d'exploitable...
    Autant la norme ID3v1 était vraiment simple à  parser car il est indiqué où il faut se placer exactement dans le fichier, autant pour la v2 je ne vois pas du tout où me placer...
  • devulderdevulder Membre
    novembre 2010 modifié #11
    dans 1290850943:

    Non mais plus sérieusement, je trouve rien d'intéressant ou d'exploitable...
    Autant la norme ID3v1 était vraiment simple à  parser car il est indiqué où il faut se placer exactement dans le fichier, autant pour la v2 je ne vois pas du tout où me placer...


    Quelques liens utiles

    http://nekohako.xware.cx/id3tool/
    http://www.iphonedevbook.com/forum/viewtopic.php?f=25&t=864
    http://stackoverflow.com/questions/1239460/reading-mp3-information-using-objective-c

    A voir, bon courage !

  • novembre 2010 modifié #12
    L'audioToolbox (j'y avais pas pensé), est sympatoche effectivement.. Par contre ça marche très mal avec le M4A, et il ne récupère pas les lyrics
  • TailgrabTailgrab Membre
    20:43 modifié #13
    J'ai utilisé fmodex qui est à  la base fait pour lire des sons (effets possible, son en "3D",...).

    Trois inconvénients selon moi:
    • Comme dit, c'est une grosse librairie (surtout pour utiliser 5% de la chose, si on se limite aux tags)
    • A ma connaissance, elle ne fait que lire les tags, impossible de les modifier
    • Plusieurs licences disponibles: gratuit pour une utilisation non-commerciale, puis ça peut monter très haut suivant le type (et surtout le nombre de clients potentiels)


    Elle a cependant l'avantage d'être multi-plateforme et disponible en C ou C++ (je l'ai utilisé en C mais dans un projet C++)
  • 20:43 modifié #14
    Ouaip.. sachant que je cherche vraiment qu'à  récupérer des lyrics, même pas à  les éditer.
  • devulderdevulder Membre
    20:43 modifié #15
    dans 1290872962:

    Ouaip.. sachant que je cherche vraiment qu'à  récupérer des lyrics, même pas à  les éditer.


    Il y a aussi la librairie id3lib http://sourceforge.net/projects/id3lib/files/



  • lugdanumlugdanum Membre
    novembre 2010 modifié #16
    Salut

    Peut-être qu'en regardant la source de ça aussi tu pourras avoir une petite piste :
    http://code.google.com/p/simpletagger/ ?
    :)
  • 20:43 modifié #17
    dans 1290879669:

    Salut

    Peut-être qu'en regardant la source de ça aussi tu pourras avoir une petite piste :
    http://code.google.com/p/simpletagger/ ?
    :)

    ça semble gérer que le MP3 et ID3v1
  • laudemalaudema Membre
    20:43 modifié #18
    Bonjour,

      Connais tu les "Darwin Ports" http://darwinports.com/ ?
    Un utilitaire en ligne de commande pour installer d'autres utilitaires en ligne de commande.
    Si tu l'as installé ensuite tu peux chercher dans sa base n'importe quel mot clef. ID3 par exemple


    MacBook-Pro:~ ld$ port search id3
    ID3 @0.98 (audio, devel, aqua)
        Framework for reading and writing ID3Tags

    id3lib @3.8.3 (audio)
        ID3 tag manipulation

    id3tool @1.2 (audio)
        ID3 editing tool

    id3v2 @0.1.11 (audio)
        ID3v2 editing tool

    libid3tag @0.15.1b (audio)
        id3 tag manipulation library


    Dans ces domaines (manipulations fichiers audio ou video) les meilleurs utilitaires sont souvent en ligne de commande, de ce que j'ai cru constater.
    Par contre j'ai essayé de l'installer mais il se plaint de l'utilisation de Jam. J'ai connu ça avec Xcode, quand on reprend des vieux projets de démo. Il suffit alors d'aller dans le menu Project et de choisir l'item Upgrade All Targets in Project to Native mais là  je ne sais pas trop où se trouve le projet à  "upgrader"
    Tout cela étant "open source" tu pourrais peut être y piocher des choses intéressantes
  • 20:43 modifié #19
    Merci laudema je zieute ça 
  • lugdanumlugdanum Membre
    20:43 modifié #20
    Bonjour

    Il y a longtemps (je précise lol) j'avais programmé un petit logiciel avec delphi qui permettait de mettre des tag entre autre et qui est toujours beaucoup utilisé apparement.
    (http://membres.multimania.fr/crytex/InstallerAimeP3.exe / http://membres.multimania.fr/crytex) --> Attention lien exe pour Windaube  ;)

    J'utilisais de mémoire :
    Lame :
    http://lame.sourceforge.net/links.php
    Bass :
    http://www.un4seen.com/

    Tu dois connaà®tre Lame et si tu en parle pas c'est que tu ne doit pas t'en servir ...
    Mais bon peut être que cela peut te donner une piste également ...
    :)
Connectez-vous ou Inscrivez-vous pour répondre.