Ecrire mon propre type de fichier

Ecrire mon propre type de fichier - C++ - Programmation

Marsh Posté le 16-04-2004 à 13:06:40    

Bonjour à tous,
 
j'ai créé une table de montage vidéo (style Movie Maker), dans laquelle j'affiche des images miniatures correspondant à la séquence vidéo utilisée.
 
Je veux proposer aux utilisateurs de sauvegarder et d'ouvrir un projet.
 
C'est ici que j'ai un problème: quand il y a beaucoup de séquences vidéo, c'est assez long pour le programme d'aller chercher toutes les images dans les vidéos.
Je voudrais donc enregistrer dans le fichier de sauvegarde les images (JPEG) des miniatures du Timeline.
 
Seulement, comment indiquer dans le fichier qu'on passe d'une image à une autre?
 
Et également, je voudrais stocker dans le fichier, avant ou après ces images, un XML correspondant aux paramètres des séquences vidéo utilisées, mais je ne veux pas que le XML apparaisse tel quel, pour ne pas être modifié.
 
Comment je peux faire tout ça?
 
(Je suis sous Builder 6.0)
 
Merci d'avance!!

Reply

Marsh Posté le 16-04-2004 à 13:06:40   

Reply

Marsh Posté le 16-04-2004 à 13:13:26    

pour le xml, tu peux le nommer en .connerie et le traiter ensuite comme du XML.
 
Si tu veux absolument éviter la modif en dehors de ton applic,  faudras crypter.  
 
Pour ce qui est tu timeline et compagnie c'est à toi de voir les infos dont tu as besoin

Reply

Marsh Posté le 16-04-2004 à 17:10:39    

En fait je voudrais faire un fichier de ce type là:
 
[image_1][image_2][image_n][XML_crypte]
 
Mais je ne sais pas comment indiquer dans le fichier une séparation entre deux images, ni comment lire les données d'une image à la fois...
 
Après, peut-être que je devrais mettre des champs supplémentaires, comme [nbre_images]...

Reply

Marsh Posté le 16-04-2004 à 17:18:15    

à toi d'inventer ton format de fichier avec une entête et tout le tralala

Reply

Marsh Posté le 16-04-2004 à 17:19:32    

haazheel a écrit a écrit :

Mais je ne sais pas comment indiquer dans le fichier une séparation entre deux images, ni comment lire les données d'une image à la fois...



Si tu utilises XML pour sauvegarder tes données, le probleme ne se pose + vraiment puisque tu utilises des balises qui décrivent tes images (ce sont des separations).
Pour lire les données il te faut parser ton fichier XML. En C g utilisé pour un projet la libxml (c une référence libre), qui fait ca tres bien et qu'il est possible d'utiliser avec Builder (comme avec nimporte quel compilo de C en fait).
 
Je ne peux po ten dire beaucoup +, en esperant que ca te donnera ka mem des pistes...


Message édité par lkolrn le 16-04-2004 à 17:21:57
Reply

Marsh Posté le 16-04-2004 à 17:27:02    

c'est possible de placer le contenu d'une image dans une balise XML?

Reply

Marsh Posté le 16-04-2004 à 17:45:29    

haazheel a écrit :

c'est possible de placer le contenu d'une image dans une balise XML?


 
<image>
  <![CDATA[ .... ici tu fout l'image encodée en base64 ou similaire ... ]]>
</image>


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

Marsh Posté le 16-04-2004 à 18:10:19    

ok, merci, reste plus qu'à encoder en base64... ;)

Reply

Marsh Posté le 16-04-2004 à 22:35:58    

Bon, je n'ai rien trouvé de bien concluant sur cette conversion... :(
 
Quelqu'un sait comment je peux faire ça?
 
Merci d'avance!

Reply

Marsh Posté le 17-04-2004 à 10:57:45    

C'est quoi, la base64 ? Un rot32 (décalage de la table ascii de 32 caractères) et une écriture en binaire devraient faire l'affaire pour ton utilisation.
Le problème avec la solution de mettre les jpeg entre des balises XML sera peut-être un problème de perfs, si tu as bcp d'images. Il te faut tester si cette solution est viable en fonction de la taille des images (ce n'est pas impossible).
 
ps : il y a aussi Xerces comme librairie XML efficace.

Reply

Marsh Posté le 17-04-2004 à 10:57:45   

Reply

Marsh Posté le 17-04-2004 à 11:07:28    

n'importe kwa

Reply

Marsh Posté le 17-04-2004 à 11:10:23    

Taz a écrit :

n'importe kwa


 
Alors comment je peux faire ça?
 
Le seul lien que j'ai trouvé c'est ça:
 
http://qadpz.idi.ntnu.no/doxy/html [...] ource.html
 
C'est correct comme code?

Reply

Marsh Posté le 17-04-2004 à 11:10:37    

Citation :

n'importe kwa


 
Intéressant, comme réponse. Mais encore ?
 
ps : ce n'est pas toi qui te faisait l'avocat de l'usage de termes français en lieu et place d'anglicismes ? Très bien, mais écrire "kwa" après cela, ça sent le ridicule...


Message édité par el muchacho le 17-04-2004 à 11:14:38
Reply

Marsh Posté le 17-04-2004 à 11:13:04    

y a aussi UUE, yEnc, et les autres trucs utilisés dans les mails & newsgroups.
 
yEnc c'est celui qui prendra le moins de place (+10% de la taille contre +33% pour les autres il me semble)


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

Marsh Posté le 17-04-2004 à 11:13:30    

el muchacho a écrit :

Intéressant, comme réponse. Mais encore ?


 
XML étant un fichier texte, je vois mal comment y balancer du binaire :??:


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

Marsh Posté le 17-04-2004 à 11:16:19    

antp a écrit :


 
XML étant un fichier texte, je vois mal comment y balancer du binaire :??:


 
Justement, dans mon idée, c'est tout le fichier qui serait écrit en binaire. L'idée étant qu'il n'apparaisse pas en clair dans un éditeur quelconque. Ceci dit, j'admets que ça sent un peu le pâté, comme idée. S'il y en a de meilleures...


Message édité par el muchacho le 17-04-2004 à 11:19:17
Reply

Marsh Posté le 17-04-2004 à 11:20:37    

Tu parles de la méthode de stockage de son fichier, avec le base64 on parlait de la méthode de stockage des images dans du XML


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

Marsh Posté le 17-04-2004 à 11:23:03    

Ok, merci. Incompréhension de ma part, alors. Je ne sais tjrs pas e qu'est le base64 et en quoi c'est utile pour le stockage des images.
Pardonnez mon ignorance. :jap:


Message édité par el muchacho le 17-04-2004 à 11:25:54
Reply

Marsh Posté le 17-04-2004 à 11:29:51    

Le base64, uue, yenc c'est utilisé pour encoder des octets entre 0 et 255 en texte, c'est-à-dire les chiffres, lettres maj/min, et quelques autres caractères.
Le mail et les news sont en texte, donc quand tu envoies du binaire (image, etc.) il doit encoder ça en texte. C'est pour ça que les fichiers envoyés par mail sont plus gros lors du transfert que leur taille d'origine.


Message édité par antp le 17-04-2004 à 11:49:43

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

Marsh Posté le 17-04-2004 à 11:31:39    

par exemple ceci :
 
Qk32AAAAAAAAAHYAAAAoAAAAEAAAABAAAAABAAQAAAAAAIAAAABDCwAAQwsAABAAAAAQAAAAAAAAAGYAAACqAAAA/2VlAAAAqgAAAP0AZWX/AKqqqgDMzMwA7u7uAP///wAAAAAAAAAAAAAAAAAAAAAAAAAAAKqqqqqqqqqqAAAAAAAAAAABERF3d0REUAEiIoiIVVVgASIiiIhVVWABIiKIiFVVYAEiIoiIVVVgASIiiIhVVWABIiKIiFVVYAEiIoiIVVVgASIiiIhVVWABIiKIiFVVYAEiIoiIVVVgAjMzmZlmZmAAAAAAAAAAAKqqqqqqqqqq
 
est la version UUEncodée d'un fichier bmp 16x16 en 16 couleurs représentant un drapeau français, faisant 246 octets avant encodage et 329 après


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

Marsh Posté le 17-04-2004 à 11:35:23    

Ah d'accord, c'est du connu.
 
edit : je me posais des questions à al con, mais à la relecture de ton post, c'est très clair.
 
Question : dans une telle application (écriture de XML), a-t'on plutôt intérêt, en terme d'espace/perfs, à écrire tout le fichier en UTF-8, ou à faire du base64 pour les binaires ?


Message édité par el muchacho le 17-04-2004 à 12:01:47
Reply

Marsh Posté le 17-04-2004 à 12:21:26    

et où je peux trouver les algos de conversion pour tous ces formats? Vraiment je trouve rien... :(

Reply

Marsh Posté le 17-04-2004 à 15:10:50    

(bref c'est blindé ascii, par d'erreur de transmission possible, puisque ça s'adapte même au transport via support texte)

Reply

Marsh Posté le 17-04-2004 à 15:54:37    

haazheel a écrit :

et où je peux trouver les algos de conversion pour tous ces formats? Vraiment je trouve rien... :(


 
Google :o
 
http://www.cix.co.uk/~mayday/code/

Reply

Marsh Posté le 17-04-2004 à 16:10:56    

ou dans le RFC :o

Reply

Marsh Posté le    

Reply

Sujets relatifs:

Leave a Replay

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