Cherche la structure des fichiers gif, jpg, etc..

Cherche la structure des fichiers gif, jpg, etc.. - Programmation

Marsh Posté le 05-04-2001 à 15:44:18    

Je compte créer un petit prog mais il me faut lire dans un fichier image la taille de celui-ci (width et height). Pour l'instant, je n'ai réussi à trouver que la composition de l'entete du format pcx et je pense aussi bmp. Il me manque donc pleins de formats, mais surtout png, gif  et jpg. Il me faudrait un truc style doc officielle ou autre. Merci.

Reply

Marsh Posté le 05-04-2001 à 15:44:18   

Reply

Marsh Posté le 05-04-2001 à 15:45:48    

ah g peut-etre trouvé pour gif...

Reply

Marsh Posté le 05-04-2001 à 15:46:07    

En quel langage ?
En java tu as ca en natif me semble-t-il

Reply

Marsh Posté le 05-04-2001 à 15:51:07    

Ce serait en c/c++. En fait je sais accéder à un octet placé dans un fichier(fseek...) et ensuite je lis la valeur(fread...). Je souhaite donc savoir quel octet dans quel format (gif, jpg...) donne la valeur Xmax et Ymax. Mais c koa ton truc de java ?

Reply

Marsh Posté le 05-04-2001 à 16:27:27    

www.wotsit.org
déjà posté au moins 3 fois...

Reply

Marsh Posté le 05-04-2001 à 16:29:14    

moi aussi ca m'interesse beaucoup beaucoup surtout pour le format de fichier jpg. Je ne sais pas si je suis con ou quoi mais je n'ai jamais reussi a trouver une doc bien faites pour etre capable de faire moi meme un compression/decompression d fichier jpg. (je ne connais mem pas l'entete); par contre je maitrise correctement DCT/IDCT, RLE, et quatification mais comment c'est ecrit dans le fichier ?? :cry:  
 
pour le bmp :
  adresse 18 : largeur & 255  
  adresse 19 : (largeur >> 8) & 255  
  adresse 20 : (largeur >> 16) & 255  
  adresse 21 : (largeur >> 24) & 255  
  adresse 22 : hauteur & 255  
  adresse 23 : (hauteur >> 8) & 255  
  adresse 24 : (hauteur >> 16) & 255  
  adresse 25 : (hauteur >> 24) & 255

Reply

Marsh Posté le 05-04-2001 à 16:32:25    

le site http://www.wotsit.org et pas mal mais en ce qui concerne le jpg je n'ai jamais trouvé qqc de potable. Est ce que qqn a fait un truc pour lire un fichier au format jpg ?

Reply

Marsh Posté le 05-04-2001 à 19:17:29    

Ok pour : gif, pcx et bmp
Pas ok pour png et jpeg...

Reply

Marsh Posté le 05-04-2001 à 23:49:48    

PNG c'est assez complexe si tu comptes tout gérer...  
Je crois qu'un des sites de références pour ça est celui-ci:
http://graphicswiz.com/png/


---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
Reply

Marsh Posté le 06-04-2001 à 09:57:26    

Ledid a écrit a écrit :

Ce serait en c/c++. En fait je sais accéder à un octet placé dans un fichier(fseek...) et ensuite je lis la valeur(fread...). Je souhaite donc savoir quel octet dans quel format (gif, jpg...) donne la valeur Xmax et Ymax. Mais c koa ton truc de java ?




http://java.sun.com/j2se/1.3/docs/ [...] mmary.html

Reply

Marsh Posté le 06-04-2001 à 09:57:26   

Reply

Marsh Posté le 06-04-2001 à 10:00:01    

qui a un lie nsur un site pour le format jpeg qui est tres bien fait bien sur en fr ou us.

Reply

Marsh Posté le 06-04-2001 à 10:03:40    

Reply

Marsh Posté le 06-04-2001 à 13:48:28    

Heu ... c'est un peu bourin ...
ID Software a mit à disposition une partie de ses sources Q3 ...
Dans la dernière version Q3 fait des screenshots en JPEG ...
Et dans les sources ben on trouve un répertoire consacré au JPEG ... tout en C (C++ ???) écrit par un truc genre "le groupement libre du JPEG"
Attention c'est costaud (y'a plein de fichiers)
Mais c'est tout gratis (code librement diffusable ...)
Pour télecharger les sources de Q3 1.27 tu peux aller sur www.jeuxvideo.com /download/patch/lettre Q/q3 source et outils
ou sur www.idsoftware.com (je pense ... :p)
 
j'avais trouvé une doc sympa sur les formats BMP et GIF avec des exemples de code (assembleur! :jap:) sur www.pageasm.com /documents/documents divers

Reply

Marsh Posté le 06-04-2001 à 13:54:57    

Ca doit être cette bibliothèque qui est utilisée par ID :
 
http://www.ijg.org/
 
Lire la doc, hein, sinon, incomprehensible :D


---------------
brisez les rêves des gens, il en restera toujours quelque chose...  -- laissez moi troller sur discu !
Reply

Marsh Posté le 06-04-2001 à 15:12:53    

Dans wxWindows (je sais je suis chiante avec ca) y a un repetoire png et jpeg...
www.wxWindows.org... download.. dans le rep src...
 
bon des que j'ai le temps je regrade dans la doc...

Reply

Marsh Posté le 08-04-2001 à 16:15:18    

Bon j'ai fait une 1ère version du programme qui ne reconnait que les images au format gif. Pour mieux comprendre ce que je veux, je vous invite à télécharger le programme à l'adresse : http://ledid.multimania.com/Img2htm.zip
Je vous garanti kil n' y a pas de virus:).
Il faut placer l'executable dans un repertoire où il y a des fichiers gif et l'executer : ça vous sort un fichier htm avec toutes les images réduites à une largeur de 150 px et une hauteur en proportion. Chaque image est clickable vers "elle-meme"...
Je n'ai pas eu le temps de regarder pour les formats jpg et png mais dites-moi ce que vous en pensez et les améliorations à apporter. Merci. Je coupe internet je reviens plus tard.

Reply

Marsh Posté le 08-04-2001 à 19:51:10    

Pour le format PNG, la référence officielle est sur le site du W3C chargé de sa normalisation:
http://www.w3.org/
Le format PNG ressemble au format RIFF, composé d'une suite de chunks dont certains sont obligatoires, le premier chunk en particulier indiquant les caractéristiques essentielles des images (dimension et profondeur de colorimétrie).
Les autres chunks d'entête sont optionnels (comme les tables de couleurs, ou de conversion gamma pour les profils ICC).
A noter: le PNG ne prend pas en charge les collections d'images comme le GIF. Une extension de ce format est en cours d'étude (elle aura une extension différente, du genre .pnb pour book ou .pna pour animation), et elle fera tout ce que le GIF pour l'instant est encore le seul à faire universellement (sauf que GIF est soumis à licence).

Reply

Marsh Posté le 08-04-2001 à 21:24:32    

Ledid a écrit a écrit :

Bon j'ai fait une 1ère version du programme qui ne reconnait que les images au format gif. Pour mieux comprendre ce que je veux, je vous invite à télécharger le programme à l'adresse : http://ledid.multimania.com/Img2htm.zip
Je vous garanti kil n' y a pas de virus:).
Il faut placer l'executable dans un repertoire où il y a des fichiers gif et l'executer : ça vous sort un fichier htm avec toutes les images réduites à une largeur de 150 px et une hauteur en proportion. Chaque image est clickable vers "elle-meme"...
Je n'ai pas eu le temps de regarder pour les formats jpg et png mais dites-moi ce que vous en pensez et les améliorations à apporter. Merci. Je coupe internet je reviens plus tard.




 
C'est sympa j'ai essayé, seulement il est énorme ton exe (116 ko)
et le source généré est (comment dire...) pour le moins étrange ...c'est multi-threadé ?
cf ci-contre http://perso.wanadoo.fr/zelda-64/images/Clipboard.jpg

 

[edit]--Message édité par zop--[/edit]

Reply

Marsh Posté le 11-04-2001 à 09:44:43    

Pour la taille de l'exe j'ai pas eu le temps de modifier. Par contre j'ai :
* changé le code html ->moins étrange, plus complet
* ajouté le support bmp
* diminué la taille du fichier html qui faisait avant tjs enviro 64 ko.
Je vais essayer d'ajouter le suppport jpeg et gif grace à vos infos. Par contre : en C/C++, comment écrire dans un fichier à un endroit précis ou comment ajouter du texte à un fichier texte, sans écraser le texte d'origine ?
 
Pour ce qui est de laméthode bourrin (code jpeg dansles sources de quake3) je pense qu'une meilleure solution est de chercher dans les sources d'un petit visualisateur d'images en open source style xv, xli, qli...

Reply

Marsh Posté le 11-04-2001 à 09:55:06    

Ah et puis tout les "rectangles" à la fin du code, y en a plus...
Zop -> Qu'est ce que t'entends par multi-threadé ?
Quelles fonctions faut-il que j'ajoute au programme ?

Reply

Marsh Posté le 11-04-2001 à 10:00:59    

et puis je viens de mettre une nvlle version : http://ledid.multimania.com/Img2htm.zip

Reply

Marsh Posté le 11-04-2001 à 12:50:35    

Ledid > Je te demandais s'il comportait plusieurs threads à cause du fait que la balise <body> arrive seulement à la fin du fichier, après tout le contenu...
Ce genre de situation arrive parfois quand il manque de synchronisation dans un programme multi-threadé

Reply

Marsh Posté le 11-04-2001 à 12:52:29    

ok

Reply

Marsh Posté le 11-04-2001 à 13:13:02    

Euh ... le code JPEG utilisé par Q3 est enorme (plein de méchants fichiers ...) parce qu'il permet de compresser en JPEG ...
Mais je pense qu'on peut assez "facilement" trouver où se trouve ces 2 infos élémentaires : largeur et hauteur dans un JPEG.
Si j'y pense je regarde ca ce soir en rentrant chez moi ... :D

Reply

Marsh Posté le 11-04-2001 à 16:46:12    

HelloWorld a écrit a écrit :

Euh ... le code JPEG utilisé par Q3 est enorme (plein de méchants fichiers ...) parce qu'il permet de compresser en JPEG ...
Mais je pense qu'on peut assez "facilement" trouver où se trouve ces 2 infos élémentaires : largeur et hauteur dans un JPEG.
Si j'y pense je regarde ca ce soir en rentrant chez moi ... :D




J'insiste dans wxWindows il y a ce quil faut, c'est de l'open source, et c'est documente...
Je pense que c'est plus simple que Q3...   Mais bon

Reply

Marsh Posté le 11-04-2001 à 17:14:33    

JPA a écrit a écrit :

www.wotsit.org
déjà posté au moins 3 fois...




 
Excellent ce site. Merci !


---------------
Pipiru piru piru pipiru pi
Reply

Marsh Posté le 12-04-2001 à 14:02:02    

J'ai ajouté le support jpeg mais problème : si le nombre de fichiers jpeg excede 11, le programmme bug. Sinon j'ai toutes les infos pour le format png. Merci pour les liens, c'est grace à ceux-ci que j'y arrive petit à petit...

Reply

Marsh Posté le    

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed