J'ai besoin de trouver la taille d'un fichier jpeg (jfif) de l'image. L'image n'est pas enregistrée en tant que fichier autonome, donc je ne peux pas utiliser GetFileSize ou toute autre API tels celui-ci (l'image est placée dans un cours d'eau et pas d'autres en-tête est présent, à l'exception de l'habituel jpeg/jfif en-tête(s).
J'ai fait quelques recherches et découvert que les images JPEG sont composés de différentes parties, chaque partie commençant avec un cadre marqueur (0xFF; XX), et la taille de cette image. En utilisant cette information, j'ai été en mesure d'analyser beaucoup d'informations à partir du fichier.
Le problème est que je ne trouve pas la taille des données compressées, comme il semble, il n'y a pas de cadre de marqueur pour les données compressées. Aussi, il semble que les données compressées suit le SOS (FF;DA) marqueur et l'image se termine avec la Fin De l'Image (MI) (FF; D9) marqueur.
Une façon d'y parvenir serait de rechercher la MI marqueur à partir de l'octet pour octet, mais je pense que la compression de données peut contenir cette combinaison d'octets, non?
Savez-vous facilement et de façon correcte à trouver la taille totale de l'image? (Je préfère un peu de code/idée sans aucune bibliothèque externe s'il vous plaît :) ) ?
En gros, j'ai besoin de la distance (en octets) entre le Début de l'Image(SOI-FFE0) et à la Fin de l'Image (de MI-FFD9).