Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1751 connectés 

  FORUM HardWare.fr
  Programmation

  [C] Récupérer l'ID3 d'un mp3 ?

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[C] Récupérer l'ID3 d'un mp3 ?

n°91015
antsite
Je me souviens
Posté le 19-01-2002 à 16:04:21  profilanswer
 

Salut,
je souhaite récupérer l'ID3 d'un mp3. Quelqu'un sait-il comment faire, y a-t-il une structure qui détient toutes les infos et il n'y a plus qu'à la lire ?
merci

mood
Publicité
Posté le 19-01-2002 à 16:04:21  profilanswer
 

n°91016
darklord22
Nightwish rulezzzzzzzzzzzzz
Posté le 19-01-2002 à 16:05:20  profilanswer
 

antsite a écrit a écrit :

Salut,
je souhaite récupérer l'ID3 d'un mp3. Quelqu'un sait-il comment faire, y a-t-il une structure qui détient toutes les infos et il n'y a plus qu'à la lire ?
merci  




 
suffit de connaitre la spec de l'ID3 pour savoir quel bytes lire...  
 
A+


---------------
What is popular is not always right, what is right is not always popular :D
n°91018
antsite
Je me souviens
Posté le 19-01-2002 à 16:11:28  profilanswer
 

je suis un peu newbie et je sais pas trop comment faire !

n°91020
zeltron
Posté le 19-01-2002 à 16:15:17  profilanswer
 

darklord22 a écrit a écrit :

 
 
suffit de connaitre la spec de l'ID3 pour savoir quel bytes lire...  
 
A+  




 
 
oui enfin bon c'est plus facile à dire qu'à faire car si c'est enfantin avec l'ID3v1 bonne chance pour l'ID3v2 !
 
une seule adresse : http://www.id3.org

n°91022
antsite
Je me souviens
Posté le 19-01-2002 à 16:25:26  profilanswer
 

Ca m'a l'air un peu compliqué, je crois que je vais laisser tomber, enfin merci quand même
a+
 :hello:

n°91024
darklord22
Nightwish rulezzzzzzzzzzzzz
Posté le 19-01-2002 à 16:28:38  profilanswer
 

antsite a écrit a écrit :

Ca m'a l'air un peu compliqué, je crois que je vais laisser tomber, enfin merci quand même
a+
 :hello:  




 
bah te décourage pas ... ;)
c'est bête ...


---------------
What is popular is not always right, what is right is not always popular :D
n°91041
antsite
Je me souviens
Posté le 19-01-2002 à 16:45:13  profilanswer
 

Je n'avais pas réellement de projet précis en tête, je souhaitais juste essayer, alors c pas vital pour moi pour l'instant  :)

n°91056
antp
Super Administrateur
Champion des excuses bidons
Posté le 19-01-2002 à 17:40:03  profilanswer
 

un bout de code extrait d'un soft à moi :

Code :
  1. TMP3TAG mp3TAG;
  2.      memset((void *)&mp3TAG,0,sizeof(mp3TAG));
  3.      TFileStream  *fMP3 = new TFileStream(strSource,fmOpenRead);
  4.      if(fMP3==NULL) return result;
  5.      fMP3->Seek(-128,soFromEnd);
  6.      if(fMP3->Read((void *)&mp3TAG,sizeof(mp3TAG))<sizeof(mp3TAG)) {
  7.           delete fMP3;
  8.           return result;
  9.      }
  10.      delete fMP3;


 
donc ceci remplit la structure. Et pour la definition de la structure :
 

Code :
  1. struct TMP3TAG {
  2.      char TAG[3];
  3.      char Title[30];
  4.      char Author[30];
  5.      char Album[30];
  6.      char Year[4];
  7.      char Comment[30];
  8.      char Genre;
  9. };
  10. char TMP3Genres[][20]={
  11.      "Blues",
  12.      "Classic Rock",
  13.      "Country",
  14.      "Dance",
  15.      "Disco",
  16.      "Funk",
  17.      "Grunge",
  18.      "Hip-Hop",
  19.      "Jazz",
  20.      "Metal",
  21.      "New Age",
  22.      "Oldies",
  23.      "Other",
  24.      "Pop",
  25.      "R&B",
  26.      "Rap",
  27.      "Reggae",
  28.      "Rock",
  29.      "Techno",
  30.      "Industrial",
  31.      "Alternative",
  32.      "Ska",
  33.      "Death Metal",
  34.      "Pranks",
  35.      "Soundtrack",
  36.      "Euro-Techno",
  37.      "Ambient",
  38.      "Trip-Hop",
  39.      "Vocal",
  40.      "Jazz+Funk",
  41.      "Fusion",
  42.      "Trance",
  43.      "Classical",
  44.      "Instrumental",
  45.      "Acid",
  46.      "House",
  47.      "Game",
  48.      "Sound Clip",
  49.      "Gospel",
  50.      "Noise",
  51.      "AlternRock",
  52.      "Bass",
  53.      "Soul",
  54.      "Punk",
  55.      "Space",
  56.      "Meditative",
  57.      "Instrumental Pop",
  58.      "Instrumental Rock",
  59.      "Ethnic",
  60.      "Gothic",
  61.      "Darkwave",
  62.      "Techno-Industrial",
  63.      "Electronic",
  64.      "Pop-Folk",
  65.      "Eurodance",
  66.      "Dream",
  67.      "Southern Rock",
  68.      "Comedy",
  69.      "Cult",
  70.      "Gangsta",
  71.      "Top 40",
  72.      "Christian Rap",
  73.      "Pop/Funk",
  74.      "Jungle",
  75.      "Native American",
  76.      "Cabaret",
  77.      "New Wave",
  78.      "Psychadelic",
  79.      "Rave",
  80.      "Showtunes",
  81.      "Trailer",
  82.      "Lo-Fi",
  83.      "Tribal",
  84.      "Acid Punk",
  85.      "Acid Jazz",
  86.      "Polka",
  87.      "Retro",
  88.      "Musical",
  89.      "Rock & Roll",
  90.      "Hard Rock",
  91.      "Folk",
  92.      "Folk/Rock",
  93.      "National Folk",
  94.      "Swing",
  95.      "Fast Fusion",
  96.      "Bebob",
  97.      "Latin",
  98.      "Revival",
  99.      "Celtic",
  100.      "Bluegrass",
  101.      "Avantgarde",
  102.      "Gothic Rock",
  103.      "Progressive Rock",
  104.      "Psychedelic Rock",
  105.      "Symphonic Rock",
  106.      "Slow Rock",
  107.      "Big Band",
  108.      "Chorus",
  109.      "Easy Listening",
  110.      "Acoustic",
  111.      "Humour",
  112.      "Speech",
  113.      "Chanson",
  114.      "Opera",
  115.      "Chamber Music",
  116.      "Sonata",
  117.      "Symphony",
  118.      "Booty Bass",
  119.      "Primus",
  120.      "Porn Groove",
  121.      "Satire",
  122.      "Slow Jam",
  123.      "Club",
  124.      "Tango",
  125.      "Samba",
  126.      "Folklore",
  127.      "Ballad",
  128.      "Power Ballad",
  129.      "Rhythmic Soul",
  130.      "Freestyle",
  131.      "Duet",
  132.      "Punk Rock",
  133.      "Drum Solo",
  134.      "Acapella",
  135.      "Euro-House",
  136.      "Dance Hall"
  137. };

 

[edtdd]--Message édité par antp--[/edtdd]


---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
n°91061
antsite
Je me souviens
Posté le 19-01-2002 à 17:48:36  profilanswer
 

et bien merci beaucoup !

n°91069
antp
Super Administrateur
Champion des excuses bidons
Posté le 19-01-2002 à 18:35:06  profilanswer
 

un truc que j'ai oublié :  
les chaines qui sont dans la structure ne sont pas terminée par un \0, donc faut faire gaffe quand on les exploite.


---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
mood
Publicité
Posté le 19-01-2002 à 18:35:06  profilanswer
 

n°91070
Ace17
Posté le 19-01-2002 à 18:41:34  profilanswer
 

Ben moi j'avais utilisé un truc tout fait :
http://home.swipnet.se/grd/mp3info/mp3doc.html

n°91073
zeltron
Posté le 19-01-2002 à 19:06:21  profilanswer
 

antsite a écrit a écrit :

et bien merci beaucoup !  




 
Le problème c'est que le bout de code qu'il t'a refilé ne gère que l'ID3v1.0,  Fait attention car si tu ne fais pas attention  le champ track de l'ID3v1.1 va être perdu et le "comment" que tu vas obtenir  va être foireux.

n°91117
antp
Super Administrateur
Champion des excuses bidons
Posté le 19-01-2002 à 23:37:56  profilanswer
 

j'utilise pourtant l'id3v1.1 avec cette fonction...  
 
ouais c'est le dernier caractère du comment en fait.
dans mon code plus loin je l'extrayais de la structure, mais j'ai pas mis cette partie-là dans mon post, pour pas effrayer les lecteurs :
 
strDest=StringReplace(strDest,"%7",(AnsiString)((int)((unsigned char)mp3TAG.Comment[sizeof(mp3TAG.Comment)-1])),TReplaceFlags()<<rfIgnoreCase<<rfReplaceAll);
 
il remplace %7 par le track number qui est dans le dernier octet du commentaire.


---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
n°91244
darklord22
Nightwish rulezzzzzzzzzzzzz
Posté le 20-01-2002 à 17:34:21  profilanswer
 

je vais vous dire un truc. Je vous admire vous programmeurs C/C++. Faut vraiment etre balèze pour faire des trucs pareils ...
 
Chapeau (c pas ironique).
 
A+


---------------
What is popular is not always right, what is right is not always popular :D
n°91294
godbout
Génial.
Posté le 20-01-2002 à 18:11:55  profilanswer
 

darklord22 a écrit a écrit :

je vais vous dire un truc. Je vous admire vous programmeurs C/C++. Faut vraiment etre balèze pour faire des trucs pareils ...
 
Chapeau (c pas ironique).
 
A+  




 
Le tout c'est pas d'etre baleze c'est de comprendre ;)
 
Mais bon pour comprendre faut etre baleze hein :D
 
(je parle sans connaissance de causes, je fais pas partie des masters du C/C++)


---------------
Super.

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation

  [C] Récupérer l'ID3 d'un mp3 ?

 

Sujets relatifs
[PHP]Choisir un fichier avec un form(ou autre) et récupérer le LIEN[php - javascript] recuperer un formulaire en php
[ C ] fonction pour recuperer le code ASCII d'un caractere HELP !!![DELPHI] récupérer la liste des programmes en cours d'execution
Récupérer une valeur en la tronquant ds la base de registre [Edit][PHP] Comment recuperer la date et l heure.
récupérer une adresse IP client[C] Récupérer un caractère lu au clavier ?
[ASP et SQL] Probléme pour récupérer la valeur de la fonction sql MAX[C/Linux] Recuperer la taille d'un terminal
Plus de sujets relatifs à : [C] Récupérer l'ID3 d'un mp3 ?


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR