FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.
FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC

Développement d'applications avec le langage Panoramic
 
AccueilAccueil  RechercherRechercher  Dernières imagesDernières images  S'enregistrerS'enregistrer  MembresMembres  Connexion  
Derniers sujets
» Editeur EliP 6 : Le Tiny éditeur avec 25 onglets de travail
tag mp3 - Page 4 Emptypar Yannick Aujourd'hui à 18:32

» Philharmusique
tag mp3 - Page 4 Emptypar jjn4 Aujourd'hui à 13:58

» PANORAMIC V 1
tag mp3 - Page 4 Emptypar papydall Hier à 3:22

» select intégrés [résolu]
tag mp3 - Page 4 Emptypar jjn4 Mer 8 Mai 2024 - 17:00

» number_mouse_up
tag mp3 - Page 4 Emptypar jjn4 Mer 8 Mai 2024 - 11:59

» Aide de PANORAMIC
tag mp3 - Page 4 Emptypar jjn4 Mer 8 Mai 2024 - 11:16

» trop de fichiers en cours
tag mp3 - Page 4 Emptypar lepetitmarocain Mer 8 Mai 2024 - 10:43

» Je teste PANORAMIC V 1 beta 1
tag mp3 - Page 4 Emptypar papydall Mer 8 Mai 2024 - 4:17

» bouton dans autre form que 0
tag mp3 - Page 4 Emptypar leclode Lun 6 Mai 2024 - 13:59

» KGF_dll - nouvelles versions
tag mp3 - Page 4 Emptypar Klaus Lun 6 Mai 2024 - 11:41

» Gestion d'un système client-serveur.
tag mp3 - Page 4 Emptypar Klaus Lun 6 Mai 2024 - 10:23

» @Jack
tag mp3 - Page 4 Emptypar Jack Mar 30 Avr 2024 - 20:40

» Une calculatrice en une ligne de programme
tag mp3 - Page 4 Emptypar jean_debord Dim 28 Avr 2024 - 8:47

» Form(résolu)
tag mp3 - Page 4 Emptypar leclode Sam 27 Avr 2024 - 17:59

» Bataille navale SM
tag mp3 - Page 4 Emptypar jjn4 Ven 26 Avr 2024 - 17:39

Navigation
 Portail
 Index
 Membres
 Profil
 FAQ
 Rechercher
Rechercher
 
 

Résultats par :
 
Rechercher Recherche avancée
Mai 2024
LunMarMerJeuVenSamDim
  12345
6789101112
13141516171819
20212223242526
2728293031  
CalendrierCalendrier
Le deal à ne pas rater :
Funko POP! Jumbo One Piece Kaido Dragon Form : où l’acheter ?
Voir le deal

 

 tag mp3

Aller en bas 
+2
Jicehel
Yannick
6 participants
Aller à la page : Précédent  1, 2, 3, 4, 5  Suivant
AuteurMessage
JL35




Nombre de messages : 7095
Localisation : 77
Date d'inscription : 29/11/2007

tag mp3 - Page 4 Empty
MessageSujet: Re: tag mp3   tag mp3 - Page 4 EmptyDim 5 Oct 2014 - 21:35

Tu peux dégrossir la recherche avec la liste de wikipedia ( http://en.wikipedia.org/wiki/ID3 ), et si tu as un doute regarder dans le dump fichier si le contenu ressemble à une image...
Et comme je disais je pense qu'il y a d'autres formats que le jpg, peut-être le png ? mais c'est douteux parce que c'est un format non compressé je crois.
Revenir en haut Aller en bas
Yannick




Nombre de messages : 8611
Age : 53
Localisation : Bretagne
Date d'inscription : 15/02/2010

tag mp3 - Page 4 Empty
MessageSujet: re   tag mp3 - Page 4 EmptyDim 5 Oct 2014 - 23:48

Je suis d' accord avec toi JL35 il y a s^rement d' autres formats que le jpg pris en compte.
Mais pour le cas, je pense bien que des images doivent être stocké dans d' autres marqueurs
car pour l' exemple des mp3 extraits de vidéo de chez you... le marqueur APIC est absent et pourtant
la miniature du fichier en montre une.

Il va falloir faire de la plongée dans les marqueurs...mais pas ce soir, je suis cuit... Laughing
Revenir en haut Aller en bas
JL35




Nombre de messages : 7095
Localisation : 77
Date d'inscription : 29/11/2007

tag mp3 - Page 4 Empty
MessageSujet: Re: tag mp3   tag mp3 - Page 4 EmptyLun 6 Oct 2014 - 10:33

Tu pourrais me donner un lien vers une vidéo/mp3 youtube qui contienne une image sans APIC ? J'en ai essayé plusieurs, mais pas d'images... (même en mp si tu ne veux pas ici). Juste le lien vidéo, je ferai la conversion moi-même.

Au moins, une image sans APIC ça ne donne pas le vertige Very Happy
Revenir en haut Aller en bas
Yannick




Nombre de messages : 8611
Age : 53
Localisation : Bretagne
Date d'inscription : 15/02/2010

tag mp3 - Page 4 Empty
MessageSujet: re   tag mp3 - Page 4 EmptyLun 6 Oct 2014 - 13:12

Voilà la question que je redoutais... Laughing
J' ai plus de 1500 fichiers *.mp3 sur ma bécane ( Légaux )
Maintenant pour remettre la main sur mon fichier foireux...
...il a suffit que j' essai de me remémorer le nom pour ne pas arriver à m' en souvenir...
"Alzheimer, quand tu nous tiens..."  Laughing

Je vais chercher et dès que j' y remets le curseur dessus, je le mettrai sur mon webdav.
C' est un fichier que j' ai converti en ligne depuis un fichier vidéo de youtube.

PS: j' ai voulu mettre ta sub listag() en boucle... affraid 
J' ai droit à des messages tous plus impolis les uns que les autres de Windows... Laughing
Revenir en haut Aller en bas
Yannick




Nombre de messages : 8611
Age : 53
Localisation : Bretagne
Date d'inscription : 15/02/2010

tag mp3 - Page 4 Empty
MessageSujet: re   tag mp3 - Page 4 EmptyLun 6 Oct 2014 - 13:51

@ JL35,

Une autre adresse pour des infos sur les fichiers mp3 : ici
c' est très interessant, pour retrouver la partie "musique" d' un mp3.

Je pense qu' avec ces infos nous serons arrivés à détricoter un fichier mp3
dans sa plus grande partie, il ne restera plus qu' à faire un outil de qualité...Laughing
Revenir en haut Aller en bas
JL35




Nombre de messages : 7095
Localisation : 77
Date d'inscription : 29/11/2007

tag mp3 - Page 4 Empty
MessageSujet: Re: tag mp3   tag mp3 - Page 4 EmptyLun 6 Oct 2014 - 15:09

Effectivement, avec ton lien les infos semblent très complètes.
Y'a plus qu'à...

Et effectivement, avec mes s/p je récupère parfois plein d'erreurs du genre Access violation, Invalid pointer... mais ce n'est pas systématique, pour le même fichier des fois ça marche, c'est bien ce qui est troublant, des fois non, comme si j'allais bombarder la mémoire en dehors des zones autorisées, mais j'ai beau éplucher le code je ne vois rien qui cloche... Parfois l'erreur n'apparaît qu'à la fermeture du programme... scratch
Revenir en haut Aller en bas
Yannick




Nombre de messages : 8611
Age : 53
Localisation : Bretagne
Date d'inscription : 15/02/2010

tag mp3 - Page 4 Empty
MessageSujet: re   tag mp3 - Page 4 EmptyLun 6 Oct 2014 - 18:13

Moi j' ai un pb avec la dll mais je n' arrive pas à voir d' où cela vient.
Le pire c' est que cela doit être sous mon nez mais où entre l' écran et le clavier....? Laughing

Je vais mettre un zip sur mon webdav "Extract_Audio_from_mp3".
Revenir en haut Aller en bas
JL35




Nombre de messages : 7095
Localisation : 77
Date d'inscription : 29/11/2007

tag mp3 - Page 4 Empty
MessageSujet: Re: tag mp3   tag mp3 - Page 4 EmptyLun 6 Oct 2014 - 20:53

C'est l'audio que tu veux extraire du mp3 ???
Revenir en haut Aller en bas
Yannick




Nombre de messages : 8611
Age : 53
Localisation : Bretagne
Date d'inscription : 15/02/2010

tag mp3 - Page 4 Empty
MessageSujet: re   tag mp3 - Page 4 EmptyLun 6 Oct 2014 - 21:13

@ JL35,

D' après la doc, le debut de la partie audio est sur 2 octet "FF" "F..."  ou "FF" "E..."
Bref, sachant cela, j' ai essayé d' extraire sur le fichier *.mp3,  joint dans le zip,la bande son.
Sachant que ce fichier est sans Tag id3v1 ni Tag id3v2 sauf quelques marqueurs.

J' ai essayé avec les fonctions de la dll de klaus mais, apparemment, j' ai encore du raté une étape
mais je ne vois pas laquelle.
Revenir en haut Aller en bas
JL35




Nombre de messages : 7095
Localisation : 77
Date d'inscription : 29/11/2007

tag mp3 - Page 4 Empty
MessageSujet: Re: tag mp3   tag mp3 - Page 4 EmptyLun 6 Oct 2014 - 21:32

Des FFF ou FFE il doit y en avoir un peu partout, il faudrait un repère chiffré... ou au moins une balise...
Mais bon, d'un autre côté je ne vois pas trop l'intérêt d'extraire la bande son d'un fichier mp3 ?

Je n'utilise plus la dll de l'ami Klaus, je fais tout avec les FILEBIN_BLOCK_READ ou WRITE, j'ai tout recodé et il ne semble plus y avoir d'erreurs.
Un premier jet (lecture des tags et extraction d'une image):
Code:
LABEL Chf, Extrac, Dump
DIM rp$,f$,i%,k%,a$,xx%,fr$,w,h,fdum$
rp$ = "C:\MP3TEST"
fr$ = "Z:\Image.jpg": ' <<<<<<<<<<<<<<<<<<<<<<< IMAGE RÉSULTAT
fdum$ = "C:\UTIL\Frhed-1.6.0-exe\Frhed.exe ": ' dump, pour info
WIDTH 0,400: HEIGHT 0,620: font_bold 0: color 0,192,255,255: CAPTION 0,"Tags MP3"
ALPHA 9: TOP 9,3: CAPTION 9,"Fichier mp3:"
EDIT 10: LEFT 10,70: WIDTH 10,270: ON_CLICK 10,Chf: color 10,255,255,128
BUTTON 11: LEFT 11,LEFT(10)+WIDTH(10)+2: WIDTH 11,40: HEIGHT 11,20: CAPTION 11,"Dump"
ON_CLICK 11,Dump
OPEN_DIALOG 15
FILTER 15,"Fichiers mp3|*.mp3"
MEMO 1: TOP 1,20: WIDTH 1,WIDTH(0)-16: HEIGHT 1,280
FONT_NAME 1,"Lucida Console": FONT_SIZE 1,10
BUTTON 2: TOP 2,TOP(1)+HEIGHT(1): LEFT 2,100: WIDTH 2,150
CAPTION 2,"Extraire l'image": ON_CLICK 2, Extrac
ALPHA 3: TOP 3,TOP(2)+7: LEFT 3,LEFT(2)+WIDTH(2)+10
PICTURE 5: TOP 5,TOP(2)+30: WIDTH 5,WIDTH(0)-16: HEIGHT 5,250: STRETCH_ON 5
COLOR 5,192,192,255
END
' ==============================================================================
' ==============================================================================
Chf:
f$ = FILE_NAME$(15): TEXT 10,f$
Lis_Tag(f$): ' Liste des tags ID3 v1 et/ou v2 du fichier
CLIPBOARD_PASTE 1
RETURN
' ==============================================================================
Extrac:
' recherche du 1er tag APIC (picture)
xx% = 0
FOR i% = 1 TO COUNT(1)
    a$ = ITEM_READ$(1,i%)
    IF LEFT$(a$,5) = "APIC:"
        k% = INSTR(a$,",")
        IF k% > 0
            xx% = VAL(MID$(a$,7,k%-7))
        ELSE
            xx% = VAL(MID$(a$,7,20))
        END_IF
        EXIT_FOR
    END_IF
NEXT i%
IF xx% > 0
    Img_Tag(f$,xx%,fr$): ' extraction de l'image
    DimJpg(fr$)
    CAPTION 3,STR$(w)+" x " + STR$(h)
    WIDTH 5,HEIGHT(5)*w/h
    FILE_LOAD 5,fr$: ' affichage
END_IF
RETURN
' ==============================================================================
Dump:
EXECUTE fdum$ + f$
RETURN
' ==============================================================================
SUB Img_Tag(f$,xx%,fr$)
' Extraction de l'image de f$ du Tag APIC situé en xx%, résultat dans fr$
DIM_LOCAL n%,i%,a$,x%,lg%,nbc%,rst%
n% = 2000: dim v%(n%): ' nombre d'octets en lecture (maxi)
FILEBIN_OPEN_READ 9,f$: FILEBIN_OPEN_WRITE 8,fr$
    FILEBIN_POSITION 9,xx%: FILEBIN_BLOCK_READ 9,100,v%(0): ' début du tag 'APIC'
    lg% = v%(7)+256*v%(6) + 10: ' longueur totale du tag image
    FOR i% = 1 TO 100
        IF v%(i%)=255 AND v%(i%+1)=216: ' FF D8: début d'image jpg
            x% = xx%+i%: lg% = lg%-i%: exit_for
        END_IF
    NEXT i%
    nbc% = INT(lg%/n%): rst% = lg%-nbc%*n%: ' nombre de lectures, et reste
    FILEBIN_POSITION 9,x%
    FOR i% = 1 TO nbc%
        FILEBIN_BLOCK_READ 9,n%,v%(0): FILEBIN_BLOCK_WRITE 8,n%,v%(0)
    NEXT i%
    IF rst%>0 THEN FILEBIN_BLOCK_READ 9,rst%,v%(0): FILEBIN_BLOCK_WRITE 8,rst%,v%(0)
FILEBIN_CLOSE 9: FILEBIN_CLOSE 8
END_SUB
' ==============================================================================
SUB Lis_Tag(f$)
' Liste des tags ID3 d'un fichier mp3 -> clipboard
' Rendu: une ligne par tag:
'        ID3v1: Nom du tag + contenu
'        ID3v2: Nom du tag, Position, Longueur
DIM_LOCAL a$,sz%,v%(2000),i%,k%,v1$,v2$,rc$,lt%, xx%
rc$ = CHR$(13)+CHR$(10)

FILEBIN_OPEN_READ 9,f$: sz% = FILEBIN_SIZE(9)
FILEBIN_POSITION 9,sz%-128: FILEBIN_BLOCK_READ 9,128,v%(0)
IF v%(0)=84 AND v%(1)=65 AND v%(2)=71: ' 'TAG' (tags ID3v1)
    a$ = "--- Tags ID3v1 ---"
    a$ = a$+rc$+"Titre : ": i% = 3
    WHILE v%(i%)<>0: a$=a$+CHR$(v%(i%)): i%=i%+1: END_WHILE
    a$=a$+rc$+"Auteur: ": i% = 33
    WHILE v%(i%)<>0: a$=a$+CHR$(v%(i%)): i%=i%+1: END_WHILE
    a$=a$+rc$+"Album : ": i% = 63
    WHILE v%(i%)<>0: a$=a$+CHR$(v%(i%)): i%=i%+1: END_WHILE
    a$=a$+rc$+"Année : ": i% = 93
    WHILE v%(i%)<>0: a$=a$+CHR$(v%(i%)): i%=i%+1: END_WHILE
    a$=a$+rc$+"Comnt : ": i% = 97
    WHILE v%(i%)<>0: a$=a$+CHR$(v%(i%)): i%=i%+1: END_WHILE
    a$=a$+rc$+"Genre : "+STR$(v%(127))
    v1$ = a$
END_IF
FILEBIN_POSITION 9,0: FILEBIN_BLOCK_READ 9,9,v%(0)
IF v%(0)=73 AND v%(1)=68 AND v%(2)=51: ' 'ID3' (tags ID3v2)
    lt% = v%(8)+256*v%(7)+256*256*v%(6): ' taille totale
    a$ = "--- Tags ID3v2 ---"
    xx% = 10: ' 1er tag
    WHILE xx%<(lt%+20)
        FILEBIN_POSITION 9,xx%: FILEBIN_BLOCK_READ 9,100,v%(0)
        a$ = a$+rc$+CHR$(v%(0))+CHR$(v%(1))+CHR$(v%(2))+CHR$(v%(3)): ' nom du tag
        k% = v%(7)+256*v%(6)+10: ' longueur totale du tag
        a$ = a$+": "+STR$(xx%)+","+STR$(k%): ' indice et longueur
        xx% = xx%+k%
    END_WHILE
    v2$ = a$
END_IF
FILEBIN_CLOSE 9
CLIPBOARD_STRING_COPY v1$+rc$+v2$
END_SUB
' ==============================================================================
SUB DimJpg(f$)
' dimensions d'un jpg -> w, h : frame FF C0
' (frames: FF tt 00 yy xx ...
'  tt = type de frame, xx+256*yy taille du contenu (+2 = taille totale)
DIM_LOCAL sz,t,x,v%(10)
FILEBIN_OPEN_READ 9,f$: sz = FILEBIN_SIZE(9): x = 2
WHILE x < sz
    FILEBIN_POSITION 9,x: FILEBIN_BLOCK_READ 9,10,v%(0)
    t = v%(1): ' type de frame (FF xx)
    IF t=192 OR t=193 OR t=194 OR t=195: ' C0, C1, C2, C3 frame dimensions
        h = v%(6)+256*v%(5): w = v%(8)+256*v%(7)
        EXIT_WHILE
    END_IF
    x = x+v%(3)+256*v%(2)+2: ' frame suivant
END_WHILE
FILEBIN_CLOSE 9
END_SUB
' ==============================================================================
Mais il reste plein de choses à préciser: si ce n'est pas du jpg, s'il y a plusieurs images, etc.
Revenir en haut Aller en bas
Yannick




Nombre de messages : 8611
Age : 53
Localisation : Bretagne
Date d'inscription : 15/02/2010

tag mp3 - Page 4 Empty
MessageSujet: re   tag mp3 - Page 4 EmptyLun 6 Oct 2014 - 23:10

L' avantage d' extraire la bande son, est de pouvoir nettoyer tout les tags
et de pouvoir repartir sur quelque chose de propre et personnalisé.
Revenir en haut Aller en bas
JL35




Nombre de messages : 7095
Localisation : 77
Date d'inscription : 29/11/2007

tag mp3 - Page 4 Empty
MessageSujet: Re: tag mp3   tag mp3 - Page 4 EmptyLun 6 Oct 2014 - 23:58

Ah d'accord, je comprends mieux comme ça.

Tiens, un petit cadeau au passage, une petite sub qui permet de visualiser le dump d'un fichier (pour éviter l'utilisation d'une ressource externe, comme Frhed: c'est moins sophistiqué, mais ça fait l'essentiel).
Il faut préciser les coordonnées et la hauteur de la fenêtre d'affichage. Les boutons servent à se déplacer d'une page (flèches) ou au début ou fin, ou quitter:
Code:
SUB DumpF(f$,x%,y%,h%)
' dump de f$, affiché en x%,y% de l'écran, de hauteur h% pixels
IF LABEL("Boutdum") = 0 THEN LABEL Boutdum
IF LABEL("Dumdum") = 0 THEN LABEL Dumdum
IF LABEL("Closdum") = 0 THEN LABEL Closdum
DIM_LOCAL ff%,fd%,xd%,tp%,ads%, di%, dj%, dk%, ba$, ca$, cc$, sz%, nl%, rda$
ff%=1000: FORM ff%: TOP ff%,y%: LEFT ff%,x%: WIDTH ff%,555: HEIGHT ff%,h%
BORDER_SMALL ff%: color ff%,200,255,255: ON_CLOSE ff%,Closdum
LIST ff%+1: PARENT ff%+1,ff%: TOP ff%+1,0: WIDTH ff%+1,WIDTH(ff%)-16
HEIGHT ff%+1,HEIGHT(ff%)-35: FONT_NAME ff%+1,"Lucida Console"
BUTTON ff%+2: PARENT ff%+2,ff%: TOP ff%+2,10: WIDTH ff%+2,20: LEFT ff%+2,WIDTH(ff%+1)-21
CAPTION ff%+2,CHR$(235)
BUTTON ff%+3: PARENT ff%+3,ff%: TOP ff%+3,35: WIDTH ff%+3,20: LEFT ff%+3,LEFT(ff%+2)
CAPTION ff%+3,CHR$(233)
BUTTON ff%+4: PARENT ff%+4,ff%: TOP ff%+4,60: WIDTH ff%+4,20: LEFT ff%+4,LEFT(ff%+2)
CAPTION ff%+4,CHR$(234)
BUTTON ff%+5: PARENT ff%+5,ff%: TOP ff%+5,85: WIDTH ff%+5,20: LEFT ff%+5,LEFT(ff%+2)
FONT_BOLD ff%+5: CAPTION ff%+5,"F"
FOR di%=ff%+2 TO ff%+4: FONT_NAME di%,"Wingdings": NEXT di%
FOR di%=ff%+2 TO ff%+5: ON_CLICK di%,Boutdum: NEXT di%

nl% = INT(h%/(TEXT_HEIGHT("AB",ff%+1)-1)): ' nb de lignes affichables
tp% = 16*nl%: ' nb d'octets affichés dans la page
FILEBIN_OPEN_READ 9,f$: sz% = FILEBIN_SIZE(9): FILEBIN_CLOSE 9
CAPTION ff%,f$+"  ("+STR$(sz%)+" octets = "+HEX$(sz%)+"h)"
fd% = 0: xd% = 0: GOSUB Dumdum
WHILE fd% = 0: WAIT 100: END_WHILE: DELETE ff%: EXIT_SUB: ' clic fin
' ------------------------------------------------------------------------------
Dumdum:
FILEBIN_OPEN_READ 9,f$: FILEBIN_POSITION 9,xd%: ba$ = FILEBIN_HEXA_READ$(9,tp%)
FILEBIN_CLOSE 9
CLEAR ff%+1
ads% = xd%: rda$ = ""
FOR di% = 1 TO LEN(ba$) STEP 32
    rda$ = RIGHT$("00000"+HEX$(ads%),6) + ": ": ca$ = " "
    FOR dj% = di% TO di%+30 STEP 2
        cc$ = MID$(ba$, dj%, 2)
        rda$ = rda$ + cc$ + " ": dk% = HEX(cc$)
        IF dk% > 31
            ca$ = ca$ + CHR$(dk%)
        ELSE
            ca$ = ca$ + "."
        END_IF
    NEXT dj%
    ITEM_ADD ff%+1,rda$+ca$
    ads% = ads% + 16
NEXT di%
RETURN
' ------------------------------------------------------------------------------
Boutdum:
di% = NUMBER_CLICK
IF di% = ff%+2 THEN xd% = 0: GOTO Dumdum: ' début
IF di% = ff%+3: ' page précédente
    xd%=xd%-tp%: IF xd%<0 THEN xd%=0
    GOTO Dumdum
END_IF
IF di% = ff%+4: ' page suivante
    xd%=xd%+tp%: IF xd%>(sz%-tp%) THEN xd%=sz%-tp%
    GOTO Dumdum
END_IF
IF di% = ff%+5 THEN xd%=sz%-tp%: GOTO Dumdum: 'Fin
RETURN
' ------------------------------------------------------------------------------
Closdum:
fd% = 1
RETURN
END_SUB
Revenir en haut Aller en bas
Yannick




Nombre de messages : 8611
Age : 53
Localisation : Bretagne
Date d'inscription : 15/02/2010

tag mp3 - Page 4 Empty
MessageSujet: re   tag mp3 - Page 4 EmptyMar 7 Oct 2014 - 1:02

Merci pour le cadeau JL35.

Je vais prendre un exemple pour illustrer ce que j' écrivais plus haut.
Lorsque l' on télécharge, copie un fichier depuis un cd puis le transforme en mp3
ou que l' on se procure un mp3 d 'une facon ou d' une autre, chaque logiciel ou chaque éditeur
y va de sa facon de coder les tags.
Ainsi on peut se retrouver avec un fichier mp3 plus lourd qu' un wave ( plus d' infos, plus d' octets )
Avec toutes ces infos on peut procéder comme suit.

Récup des infos id3v1 et id3v2.3 voir plus
Récupérer la bande son
Puis recréer un fichier mp3 avec Id3v2.3 (codage maison)  + bande son
le codage maison peut, lui, se faire avec des plages fixes pour tous les marqueurs
Si il y a plusieurs APIC, on peut en éliminer ( allègement considerable en octets )

Une fois tous les fichiers sur un même format de tags "maison" 
il devient plus facile de se faire une bibliothèque de ses mp3 et d' en afficher les infos.

Perso, seuls 5 ou 6 champs m' intéressent :

Titre,Interprète,Album,Année (et encore...),Piste (Pratique pour créer une playlist),genre ( quand il peut être défini  Laughing ),
Pochette ( plus joli que l' icone par défaut  geek)
Revenir en haut Aller en bas
JL35




Nombre de messages : 7095
Localisation : 77
Date d'inscription : 29/11/2007

tag mp3 - Page 4 Empty
MessageSujet: Re: tag mp3   tag mp3 - Page 4 EmptyMar 7 Oct 2014 - 14:10

Vu comme ça je comprends ton but.
C'est vrai que seuls certains tags v1 sont intéressants, et pour les v2 seulement une image éventuelle, et encore, plus symbolique qu'autre chose, donc le plus réduite possible.
J'en conclus que tu n'as à récupérer les tags v1, plus la 1ère image v2 éventuelle.
Déjà ça, avec toutes les variantes possibles, c'est déjà du boulot pour arriver à coder quelque chose d'universel, qui passe dans tous les cas...
Revenir en haut Aller en bas
Yannick




Nombre de messages : 8611
Age : 53
Localisation : Bretagne
Date d'inscription : 15/02/2010

tag mp3 - Page 4 Empty
MessageSujet: re   tag mp3 - Page 4 EmptyMar 7 Oct 2014 - 16:12

Oui JL35, 

le principal intérêt des id3v2 pour moi est le Marqueur APIC.
Toutefois, puisque l' on sait récupérer les autres, il peut être intéressant de les avoir
dans le cas où le "taggage" n' est était fait que dans l' une des variantes id3v2 pour
pour pouvoir reconstituer un Tag id3v1 propre et complet.
Revenir en haut Aller en bas
JL35




Nombre de messages : 7095
Localisation : 77
Date d'inscription : 29/11/2007

tag mp3 - Page 4 Empty
MessageSujet: Re: tag mp3   tag mp3 - Page 4 EmptyMar 7 Oct 2014 - 17:44

Ouais... il faut quand même être motivé et avoir une belle collection de mp3 à classer et/ou harmoniser.

Pour moi je dois avoir une ou deux versions d'Au clair de la lune et du bon roi Dagobert, et aussi la mère Michel (genre: rock'n roll), alors... Very Happy
Revenir en haut Aller en bas
Yannick




Nombre de messages : 8611
Age : 53
Localisation : Bretagne
Date d'inscription : 15/02/2010

tag mp3 - Page 4 Empty
MessageSujet: re   tag mp3 - Page 4 EmptyMer 8 Oct 2014 - 3:50

@ JL35,

J' en ai un peu plus...377 rien que sur le disque dur de l' ordi 
+ mon DD de sauvegarde, heu...j' arrête de compter  Laughing 

Mais avec des noms de fichier plus Suspect  les uns que les autres 
et les Tags c' est un vrai foutware .
C' est ma faute, je ne me suis pas fixé de règle précise au départ. Embarassed

Maintenant, une chose est sûr, le prochain qui cherchera des infos sur les mp3
sera servi avec ce sujet... Laughing
Revenir en haut Aller en bas
JL35




Nombre de messages : 7095
Localisation : 77
Date d'inscription : 29/11/2007

tag mp3 - Page 4 Empty
MessageSujet: Re: tag mp3   tag mp3 - Page 4 EmptyMer 8 Oct 2014 - 11:26

C'est vrai que les musiques récupérées sur le web ont toutes des noms de 3km de long, ce n'est pas facile à manipuler, il faudrait prendre l'habitude de les renommer systématiquement en plus court, sachant que les infos sont dans les tags.
Revenir en haut Aller en bas
Yannick




Nombre de messages : 8611
Age : 53
Localisation : Bretagne
Date d'inscription : 15/02/2010

tag mp3 - Page 4 Empty
MessageSujet: re   tag mp3 - Page 4 EmptyMer 8 Oct 2014 - 11:51

Quoi de que...
Le fichier que j' ai mis dans le zip est fichier extrait d' un clip par une appli en ligne
et tu remarqueras que les Marqueurs les plus intéressants sont aux abonnés absents...

En fait, dans ce cas,  il faut découper le nom du fichier pour créer le tag avec les blocs
extraits du nom de fichier et renommer le fichier pour qu' il est un nom "propre" au sens littéral du terme.

Pour mon classement je me suis fixé des petites règles:

- les fichiers audio sont tous dans "Ma Musique"
- les fichiers "chansons" sont tous classés dans un sous dossier du nom de l' interprète exemple : "- Renaud"
( pas de sous dossiers album )
- J' ai ajouté un tiret devant le nom de l' interprète pour différencier les sous dossier "chansons" des autres
et surtout des sous dossiers placés là par des applications diverses et variées.
- Un fichier *.mp3 porte le nom de la chanson
- Toutes autres informations sont dans les tags
- Le marqueur de la piste est vide comme celui du genre ( je ne garde que le titre, l' interprète, l' album [si connu],l' année et éventuellement la pochette si elle existe.
Revenir en haut Aller en bas
Yannick




Nombre de messages : 8611
Age : 53
Localisation : Bretagne
Date d'inscription : 15/02/2010

tag mp3 - Page 4 Empty
MessageSujet: re   tag mp3 - Page 4 EmptyJeu 9 Oct 2014 - 4:12

Voilà un truc qui pourrait être utile...
Code:
dim f$,f2$
f2$="C:\Users\Yannick\Desktop\Song.mp3"

caption 0,"Mp3 Cleaner"
height 0,300 :width 0,336
font_name 0,"Courrier"
font_size 0,8

Progress_bar 3
top 3,height(0)-68 :left 3,10 : width 3,200
min 3,0 : max 3,7 : position 3,0

memo 4
top 4,5 : left 4,5 : height 4,height(0)-88 : width 4,width(0)-26

Open_dialog 5
dir_dialog 5,"C:\Users\Yannick\Music"
filter 5,"*.mp3|*.mp3"
f$=file_name$(5)
if f$<>"_"
   work()
else
   terminate
end_if

end

sub work()
   dim_local x%,tf%,v%,v1%,p%,dep%,ts%,id3v1%(128),id3v2%(3),num%

filebin_open_read 1,f$

' taille du fichier
tf%=filebin_size(1)
position 3,1
item_add 4,"Taille du fichier en octets : "+str$(tf%)

' recherche du début de la bande son
for x%=0 to tf%
   filebin_read 1,v%
   if hex$(v%)="FF" or hex$(v%)="ff"
      filebin_read 1,v1%
      if hex$(v1%)="FB" or hex$(v1%)="fb"
          p%=1
          dep%=x%
          position 3,2
          item_add 4,"Octet de début de la bande son : "+str$(dep%)
          exit_for
      end_if
   end_if
next x%
display

' recherche de la présence de id3v2
filebin_position 1,0
filebin_block_read 1,3,id3v2%(0)
pause 1000
position 3,3
if chr$(id3v2%(0))+chr$(id3v2%(1))+chr$(id3v2%(2))="ID3"
   item_add 4,"id3v2 : Oui"
else
   item_add 4,"id3v2 : Non"
end_if
display

' recherche de la présence de id3v1
filebin_position 1,tf%-128
filebin_block_read 1,128,id3v1%(0)
pause 1000
position 3,4
if chr$(id3v1%(0))+chr$(id3v1%(1))+chr$(id3v1%(2))="TAG"
   tf%=tf%-128
   item_add 4,"id3v1 : Oui"
else
   item_add 4,"id3v1 : Non"
end_if
display

' lecture/ecriture des fichiers
if p%=1
   ts%=tf%-(dep%-1)
   dim bloc%(ts%)
   position 3,5
   item_add 4,"Lecture bande son : "+file_extract_name$(f$)
   display
   filebin_position 1,dep%
   filebin_block_read 1,ts%,bloc%(0)
   filebin_close 1

   position 3,6
   item_add 4,"Ecriture : "+file_extract_name$(f2$)
   display
   if file_exists(f2$)=1
      while file_exists(f2$)=1
         num%=num%+1
         f2$=file_extract_path$(f2$)+"Song("+str$(num%)+").mp3"
      end_while
   end_if
   filebin_open_write 2,f2$
   filebin_block_write 2,ts%,bloc%(0)
   filebin_close 2
end_if

position 3,7
item_add 4,"Fin !!!..."
item_add 4,"Fichier "+f2$+" créé."
pause 3000
Terminate

end_sub
Dans la journée, je rajouterai le marqueur APE.
Revenir en haut Aller en bas
JL35




Nombre de messages : 7095
Localisation : 77
Date d'inscription : 29/11/2007

tag mp3 - Page 4 Empty
MessageSujet: Re: tag mp3   tag mp3 - Page 4 EmptyJeu 9 Oct 2014 - 13:58

C'est propre, je n'ai pas étudié le résultat mais je pense que ce que ça fait ce que tu disais dans ton post précédent.
Et c'est assez rapide pour envisager de le faire sur des séries.
Revenir en haut Aller en bas
Yannick




Nombre de messages : 8611
Age : 53
Localisation : Bretagne
Date d'inscription : 15/02/2010

tag mp3 - Page 4 Empty
MessageSujet: re   tag mp3 - Page 4 EmptyJeu 9 Oct 2014 - 14:19

Oui, cela fonctionne, du moins sur les deux fichier que j' ai testé... Wink
En fait, la "bande son" est constituée de "plages" qui commencent toutes par "FF FB"
donc si on a la première... Laughing
Il me reste le marqueur des données APE ("APETAGEX") qui est placé à la fin avant
les id3v1 ("TAG") pour avoir tout viré...

Cette appli demande à être développé...je vais me pauser dessus quelque temps... Laughing
Revenir en haut Aller en bas
JL35




Nombre de messages : 7095
Localisation : 77
Date d'inscription : 29/11/2007

tag mp3 - Page 4 Empty
MessageSujet: Re: tag mp3   tag mp3 - Page 4 EmptyJeu 9 Oct 2014 - 16:21

J'ai l'impression que les APE sont plutôt rares, mais hélas tu es bien obligé d'en tenir compte...
Revenir en haut Aller en bas
Yannick




Nombre de messages : 8611
Age : 53
Localisation : Bretagne
Date d'inscription : 15/02/2010

tag mp3 - Page 4 Empty
MessageSujet: re   tag mp3 - Page 4 EmptyJeu 9 Oct 2014 - 19:38

Effectivement, ils sont rares mais parfois ils sont là. Laughing

Dommage, dommage, j' ai regardé un petit peu du côté du compilateur pour gagner encore un peu de temps
mais certaines commandes sont encore indisponibles et d' autres marquées comme " ne sera jamais disponible..." Crying or Very sad
Celà m' obligerai à passer par la dll et c' était bien en tout panoramic... Sad
Revenir en haut Aller en bas
JL35




Nombre de messages : 7095
Localisation : 77
Date d'inscription : 29/11/2007

tag mp3 - Page 4 Empty
MessageSujet: Re: tag mp3   tag mp3 - Page 4 EmptyJeu 9 Oct 2014 - 19:44

D'un autre côté, tu n'as peut-être pas vraiment besoin que ça aille à la vitesse de l'éclair, c'est ponctuel comme utilisation.

Une petite remarque anodine dans ton code ci-dessus:
Code:
  if file_exists(f2$)=1
      while file_exists(f2$)=1
         num%=num%+1
         f2$=file_extract_path$(f2$)+"Song("+str$(num%)+").mp3"
      end_while
   end_if
le if file_exists ne sert à rien, le while fait le boulot.
Aussi, perso j'aurais mis f$ en paramètre de la sub: work(f$), et je n'aurais pas mis le terminate dans la sub, mais au retour, ça me parait plus logique:
Code:
if f$<>" " then work(): pause 3000
terminate

Sinon, ça y est, tu maîtrises bien les fichiers binaires ! Very Happy
Revenir en haut Aller en bas
Contenu sponsorisé





tag mp3 - Page 4 Empty
MessageSujet: Re: tag mp3   tag mp3 - Page 4 Empty

Revenir en haut Aller en bas
 
tag mp3
Revenir en haut 
Page 4 sur 5Aller à la page : Précédent  1, 2, 3, 4, 5  Suivant

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC :: PANORAMIC :: A l'aide!-
Sauter vers: