OVH Cloud OVH Cloud

Lire les propriétés "Summary" d'un jpg

5 réponses
Avatar
mc
Bonjour,

J'essaie de lire le contenu des propri=E9t=E9s "Summary" d'un=20
fichier jpg. Le but est de r=E9cup=E9rer les propro=E9t=E9s=20
automatiquement remplie par l'appareil photo qui a cr=E9=E9=20
le fichier (date de la prise de vue, taille, ...)

Merci!
Marina

5 réponses

Avatar
Jean-Marc
"mc" a écrit dans le message de
news:ad7201c4884b$d90eb140$
Bonjour,



J'essaie de lire le contenu des propriétés "Summary" d'un
fichier jpg. Le but est de récupérer les proproétés
automatiquement remplie par l'appareil photo qui a créé
le fichier (date de la prise de vue, taille, ...)



Hello,
voici un lien sur une page qui donne les specs du header des fichies jpeg:
http://www.geocities.com/tapsemi/datastruct.html

avec ça, on voit que ce n'est pas compliqué:


FF FE
Comments (This marker may be absent)

FF E0
Application data marker (not of much use in general)

Donc l'idée serait d'ouvtir le fichier en mode binaire, puis de lire
l'entete jusqu'à trouver le marqueur FF E0 ou FF FE (il faudrait voir un
jpeg issu de l'appareil pour voir ou il écrit ses infos supplémentaires).
Une fois le marqueur touvé, il suffit de lire jusqu'à la fin, c'est à dire
jusqu'à ce qu'on recontre un autre marqueur (FF xx)

-
Jean-marc
Avatar
mc
Merci Jean-Marc,

On va donc essayer de faire ça... :/
Vous me conseillez de fumer quoi avant? ;)

Marina

-----Message d'origine-----

Hello,
voici un lien sur une page qui donne les specs du header


des fichies jpeg:
http://www.geocities.com/tapsemi/datastruct.html

avec ça, on voit que ce n'est pas compliqué:


FF FE
Comments (This marker may be absent)

FF E0
Application data marker (not of much use in general)

Donc l'idée serait d'ouvtir le fichier en mode binaire,


puis de lire
l'entete jusqu'à trouver le marqueur FF E0 ou FF FE (il


faudrait voir un
jpeg issu de l'appareil pour voir ou il écrit ses infos


supplémentaires).
Une fois le marqueur touvé, il suffit de lire jusqu'à la


fin, c'est à dire
jusqu'à ce qu'on recontre un autre marqueur (FF xx)

-
Jean-marc



Avatar
Jean-Marc
"mc" a écrit dans le message de
news:5d5101c48aa8$815337f0$
Merci Jean-Marc,
On va donc essayer de faire ça... :/
Vous me conseillez de fumer quoi avant? ;)



Hello,

nul besoin de fumer des substances, licites ou non, pour faire ça :-)

un petit programme qui en gros va faire ceci:

Private Sub Command1_Click()
Dim s As String
Dim a As String * 1
Dim f As Integer
Dim v As Integer

f = FreeFile
s = "C:photo.jpg"
Open s For Binary As #f
While Not EOF(f)
Get #f, , a
v = Asc(a)
Debug.Print Hex$(v); " ";
If (a>2) And (a<128) Then
Text1.Text = Text1.Text & a
Endif
Wend
Close #f
End Sub

Et ce doit rouler; il suffit de mettre quelques tests deci dela pour isoler
les marqueurs.

Cependant une remarque: j'ai examiné quelques images issues d'un appareil
photo numérique et il n'y avait pas grand chose d'exploitable.
Par exemple, dans la majorité de ce que j'ai regardé:
- Pas de champ "Comment " (pas de FF FE)
- juste un champ Application Data Marker (FF E0) qui contient uniquement
"JFIF"

Bonne chance,

Jean-marc
Avatar
mc
Ouahou! Merci beaucoup pour ce coup de pouce...
Mais quand-même, je me demande s'il reste beaucoup de
moquette autour de vous ;o)
Bon un peu de sérieux! Grâce à votre aide, j'ai un peu
mieux compris ce qu'il se passait et ainsi pu étudier
certaines de mes photos. L'information que je voulais
vraiment reprendre (le reste je peux me débrouiller)
c'est la date et l'heure du cliché, et je les ai trouvés!
pas dans un champ comment, ni dans "FF E0", mais dans un
champ "FF E1".
Ce qui m'a poussée à chercher sur le net avec cette info,
et il semble que mes phtos sont au format JPEG-DCF et non
JPEG-JFIF.
J'ai entre autre trouvé ceci:
<<"FF E1" is defined as the APP1 Marker. Exif information
such as the camera model, shutter speed, and aperture
follow this marker.>>
A partir de ce genre d'info je dois pouvoir trouver mon
bonheur!
Encore merci pour tout ça :)

Marina
Avatar
jean-marc
"mc" wrote in message
news:11f801c48c09$adb5bea0$
Ouahou! Merci beaucoup pour ce coup de pouce...
Mais quand-même, je me demande s'il reste beaucoup de
moquette autour de vous ;o)
Bon un peu de sérieux! Grâce à votre aide, j'ai un peu
mieux compris ce qu'il se passait et ainsi pu étudier
certaines de mes photos. L'information que je voulais
vraiment reprendre (le reste je peux me débrouiller)
c'est la date et l'heure du cliché, et je les ai trouvés!
pas dans un champ comment, ni dans "FF E0", mais dans un
champ "FF E1".
Ce qui m'a poussée à chercher sur le net avec cette info,
et il semble que mes phtos sont au format JPEG-DCF et non
JPEG-JFIF.
J'ai entre autre trouvé ceci:
<<"FF E1" is defined as the APP1 Marker. Exif information
such as the camera model, shutter speed, and aperture
follow this marker.>>

Hello,

merci du retour d'info :-)

--
Jean-marc