Example of hachoir-parser output.
logo-kubuntu.png
0) file:logo-kubuntu.png: PNG picture: 331x90x32 (alpha layer) (9.8 KB)
0) id= "\x89PNG\r\n\x1a\n": PNG identifier ('\x89PNG\r\n\x1A\n') (8 bytes)
- 8) header: Header: 331x90 pixels and 32 bits/pixel (25 bytes)
0) size= 13: Size (4 bytes)
4) tag= "IHDR": Tag (4 bytes)
8) width= 331: Width (pixels) (4 bytes)
12) height= 90: Height (pixels) (4 bytes)
16) bit_depth= 8: Bit depth (1 byte)
17.0) reserved= <null> (5 bits)
17.5) has_alpha= True: Has alpha channel? (1 bit)
17.6) color= True: Color used? (1 bit)
17.7) has_palette= False: Has a color palette? (1 bit)
18) compression= deflate: Compression method (1 byte)
19) filter= 0: Filter method (1 byte)
20) interlace= 0: Interlace method (1 byte)
21) crc32= 0x314a7414: CRC32 (4 bytes)
- 33) background: Background color: White (18 bytes)
0) size= 6: Size (4 bytes)
4) tag= "bKGD": Tag (4 bytes)
8) red= 255 (2 bytes)
10) green= 255 (2 bytes)
12) blue= 255 (2 bytes)
14) crc32= 0xa0bda793: CRC32 (4 bytes)
- 51) physical: Physical: 2835x2835 pixels per meter (21 bytes)
0) size= 9: Size (4 bytes)
4) tag= "pHYs": Tag (4 bytes)
8) pixel_per_unit_x= 2835: Pixel per unit, X axis (4 bytes)
12) pixel_per_unit_y= 2835: Pixel per unit, Y axis (4 bytes)
16) unit= Meter: Unit type (1 byte)
17) crc32= 0x009a9c18: CRC32 (4 bytes)
- 72) time= 2006-05-26 09:41:46: Timestamp (19 bytes)
0) size= 7: Size (4 bytes)
4) tag= "tIME": Tag (4 bytes)
8) year= 2006: Year (2 bytes)
10) month= 5: Month (1 byte)
11) day= 26: Day (1 byte)
12) hour= 9: Hour (1 byte)
13) minute= 41: Minute (1 byte)
14) second= 46: Second (1 byte)
15) crc32= 0x68b6c4b2: CRC32 (4 bytes)
+ 91) data[0]: Image data (8204 bytes)
+ 8295) data[1]: Image data (1715 bytes)
+ 10010) end: End (12 bytes)
kde_click.wav
0) file:kde_click.wav: Microft WAVE audio (1824 bytes)
0) signature= "RIFF": AVI header (RIFF) (4 bytes)
4) filesize= 1816 bytes: File size (4 bytes)
8) type= "WAVE": Content type ("AVI ", "WAVE", ...) (4 bytes)
- 12) format: Audio format (24 bytes)
0) tag= "fmt ": Tag (4 bytes)
4) size= 16 bytes: Size (4 bytes)
8) codec= Microsoft Pulse Code Modulation (PCM): Audio codec (2 bytes)
10) nb_channel= 2: Number of audio channel (2 bytes)
12) sample_per_sec= 22050: Sample per second (4 bytes)
16) byte_per_sec= 88200: Average byte per second (4 bytes)
20) block_align= 4: Block align (2 bytes)
22) bit_per_sample= 16: Bits per sample (2 bytes)
- 36) audio_data: Audio stream data (1732 bytes)
0) tag= "data": Tag (4 bytes)
4) size= 1724 bytes: Size (4 bytes)
8) raw_content= "|\1d\1\xca\x0b\x85\x0b\xcb\x1cx\x19\xc9\x14(...)": Raw data (1724 bytes)
- 1768) info: File informations (56 bytes)
0) tag= "LIST": Tag (4 bytes)
4) size= 48 bytes: Size (4 bytes)
8) subtag= "INFO": Sub-tag (4 bytes)
- 12) creation_date: Creation date (20 bytes)
0) tag= "ICRD": Tag (4 bytes)
4) size= 11 bytes: Size (4 bytes)
8) text= "2001-02-21" (11 bytes)
19) padding[0]= "\0" (1 byte)
- 32) producer: Producer (24 bytes)
0) tag= "ISFT": Tag (4 bytes)
4) size= 16 bytes: Size (4 bytes)
8) text= "Sound Forge 4.5" (16 bytes)
matrix_ping_pong.wmv
0) file:matrix_ping_pong.wmv: Window Media Video (wmv) (3.4 MB)
- 0) header (1391 bytes)
- 0) guid= GUID v1 (Timestamp & MAC-48): 75B22630-668E-11CF-A6D9-00AA0062CE6C (16 bytes)
0.0) time= 1996-02-14 05:13:46.303236 (60 bits)
7.4) version= Timestamp & MAC-48 (4 bits)
8.0) variant= Microsoft Corporation (3 bits)
8.3) clock= 0x1b34 (13 bits)
- 10) mac= INTEL CORPORATION [62:ce:6c]: IEEE 802 MAC address (6 bytes)
0) organization= INTEL CORPORATION (3 bytes)
3) nic= 62:ce:6c (3 bytes)
16) size= 1391 bytes (8 bytes)
- 24) content (1367 bytes)
0) obj_count= 11 (4 bytes)
4) reserved[0]= "\1\2": Padding (2 bytes)
- 6) metadata (262 bytes)
+ 0) guid= GUID v1 (Timestamp & MAC-48): 75B22633-668E-11CF-A6D9-00AA0062CE6C (16 bytes)
16) size= 262 bytes (8 bytes)
- 24) content (238 bytes)
0) size[0]= 36 (2 bytes)
2) size[1]= 86 (2 bytes)
4) size[2]= 102 (2 bytes)
6) size[3]= 2 (2 bytes)
8) size[4]= 2 (2 bytes)
10) title= "\u6b3d\u3061\u3083\u3093\uff06\u9999\u53(...)" (36 bytes)
46) author= "Nippon Television Network Corporation[NT(...)" (86 bytes)
132) copyright= "[C]Nippon Television Network Corporation(...)" (102 bytes)
234) xxx= (empty) (2 bytes)
236) yyy= (empty) (2 bytes)
- 268) bit_rates (50 bytes)
+ 0) guid= GUID v1 (Timestamp & MAC-48): 7BF875CE-468D-11D1-8D82-006097C9A2B2 (16 bytes)
16) size= 50 bytes (8 bytes)
- 24) content (26 bytes)
0) count= 4 (2 bytes)
- 2) bit_rate[0] (6 bytes)
0.0) stream_index= 1 (7 bits)
0.7) reserved= 0: Padding (9 bits)
2) avg_bitrate= 13.0 Kbit/sec (4 bytes)
+ 8) bit_rate[1] (6 bytes)
+ 14) bit_rate[2] (6 bytes)
+ 20) bit_rate[3] (6 bytes)
- 318) file_prop (104 bytes)
+ 0) guid= GUID v1 (Timestamp & MAC-48): 8CABDCA1-A947-11CF-8EE4-00C00C205365 (16 bytes)
16) size= 104 bytes (8 bytes)
- 24) content (80 bytes)
+ 0) guid= GUID v4 (Randomly generated): A68CB690-E4F7-4E5D-8AC7-FCD810D5E6EC (16 bytes)
16) file_size= 3.4 MB (8 bytes)
24) creation_date= 2003-06-16 07:57:23.235000 (8 bytes)
32) pckt_count= 465 (8 bytes)
40) play_duration= 1 min 47 sec 258 ms (8 bytes)
48) send_duration= 1 min 44 sec 126 ms (8 bytes)
56) preroll= 3358 (8 bytes)
64.0) broadcast= False: Is broadcast? (1 bit)
64.1) seekable= True: Seekable stream? (1 bit)
64.2) reserved[0]= 0: Padding (30 bits)
68) min_pckt_size= 7750 bytes (4 bytes)
72) max_pckt_size= 7750 bytes (4 bytes)
76) max_bitrate= 276.9 Kbit/sec (4 bytes)
+ 422) header_ext (46 bytes)
- 468) stream_prop[0] (114 bytes)
+ 0) guid= GUID v1 (Timestamp & MAC-48): B7DC0791-A9B7-11CF-8EE6-00C00C205365 (16 bytes)
16) size= 114 bytes (8 bytes)
- 24) content (90 bytes)
+ 0) type= GUID v1 (Timestamp & MAC-48): F8699E40-5B4D-11CF-A8FD-00805F5C442B (16 bytes)
+ 16) error_correction= GUID v1 (Timestamp & MAC-48): BFC3CD50-618F-11CF-8BB2-00AA00B4E220 (16 bytes)
32) time_offset= 0 (8 bytes)
40) data_len= 28 (4 bytes)
44) error_correct_len= 8 (4 bytes)
48.0) stream_index= 1 (7 bits)
48.7) reserved[0]= 0 (1 byte)
49.7) encrypted= False: Content is encrypted? (1 bit)
50) reserved[1]= 120 (4 bytes)
+ 54) audio_header (28 bytes)
82) error_correct= "\1\x80\1\x80\1\1\0\0": Raw data (8 bytes)
+ 582) stream_prop[1] (129 bytes)
+ 711) stream_prop[2] (129 bytes)
+ 840) stream_prop[3] (129 bytes)
+ 969) bitrate_mutex (48 bytes)
- 1017) ext_desc (140 bytes)
+ 0) guid= GUID v1 (Timestamp & MAC-48): D2D0A440-E307-11D2-97F0-00A0C95EA850 (16 bytes)
16) size= 140 bytes (8 bytes)
- 24) content (116 bytes)
0) count= 2 (2 bytes)
- 2) descriptor[0] (60 bytes)
0) name= "WMFSDKVersion": Name (30 bytes)
30) type= Unicode (2 bytes)
32) value_length= 26 (2 bytes)
34) value= "7.01.00.3055" (26 bytes)
- 62) descriptor[1] (54 bytes)
0) name= "WMFSDKNeeded": Name (28 bytes)
28) type= Unicode (2 bytes)
30) value_length= 22 (2 bytes)
32) value= "0.0.0.0000" (22 bytes)
- 1157) codec_list (210 bytes)
+ 0) guid= GUID v1 (Timestamp & MAC-48): 86D15240-311D-11D0-A3A4-00A0C90348F6 (16 bytes)
16) size= 210 bytes (8 bytes)
- 24) content (186 bytes)
+ 0) reserved[0]= GUID v1 (Timestamp & MAC-48): 86D15241-311D-11D0-A3A4-00A0C90348F6 (16 bytes)
16) count= 2 (4 bytes)
- 20) codec[0] (60 bytes)
0) type= video (2 bytes)
2) name_len= 23: Name length in character (byte=len*2) (2 bytes)
4) name= "Windows Media Video V7": Name (46 bytes)
50) desc_len= 1: Description length in character (byte=len*2) (2 bytes)
52) desc= (empty): Description (2 bytes)
54) info_len= 4 (2 bytes)
56) info= "WMV1": Raw data (4 bytes)
+ 80) codec[1] (106 bytes)
- 1391) data (3.4 MB)
+ 0) guid= GUID v1 (Timestamp & MAC-48): 75B22636-668E-11CF-A6D9-00AA0062CE6C (16 bytes)
16) size= 3.4 MB (8 bytes)
+ 24) content (3.4 MB)
usa_railroad.jpg
0) file:usa_railroad.jpg: JPEG picture (101.3 KB)
+ 0) start_image: Start of image (SOI) (2 bytes)
- 2) app0: APP0 (18 bytes)
0) header= 0xff: Header (1 byte)
1) type= 0xe0: Type (1 byte)
2) size= 16: Size (2 bytes)
- 4) content: Chunk content (14 bytes)
0) jfif= "JFIF\0": JFIF string (5 bytes)
5) ver_maj= 1: Major version (1 byte)
6) ver_min= 2: Minor version (1 byte)
7) units= dots per inch: Units (1 byte)
8) x_density= 72: X density (2 bytes)
10) y_density= 72: Y density (2 bytes)
12) thumb_w= 0: Thumbnail width (1 byte)
13) thumb_h= 0: Thumbnail height (1 byte)
- 20) exif: EXIF (5128 bytes)
0) header= 0xff: Header (1 byte)
1) type= 0xe1: Type (1 byte)
2) size= 5126: Size (2 bytes)
- 4) content: Chunk content (5124 bytes)
0) header= "Exif\0\0": Header (Exif\0\0) (6 bytes)
6) byte_order= "MM": Byte order (2 bytes)
8) header2= 42: Header2 (42) (2 bytes)
10) nb_entry= 0: Number of entries (2 bytes)
12) whatsthis= 8: What's this ?? (2 bytes)
- 14) ifd[0]: IFD (260 bytes)
0) count= 12: Number of entries (2 bytes)
- 2) entry[0]: Entry: Camera (Image input equipment) manufacturer (12 bytes)
0) tag= Camera (Image input equipment) manufacturer: Tag (2 bytes)
2) type= ASCII (8 bits): Type (2 bytes)
4) count= 9: Count (4 bytes)
8) offset= 158: Value offset (4 bytes)
+ 14) entry[1]: Entry: Camera (Input input equipment) model (12 bytes)
+ 26) entry[2]: Entry: Orientation of image (12 bytes)
+ 38) entry[3]: Entry: Image resolution width direction (12 bytes)
+ 50) entry[4]: Entry: Image resolution in height direction (12 bytes)
+ 62) entry[5]: Entry: Unit of X and Y resolution (12 bytes)
+ 74) entry[6]: Entry: Software (12 bytes)
+ 86) entry[7]: Entry: File change date and time (12 bytes)
+ 98) entry[8]: Entry: File change date and time (12 bytes)
+ 110) entry[9]: Entry: Y and C positioning (12 bytes)
+ 122) entry[10]: Entry: Copyright holder (12 bytes)
+ 134) entry[11]: Entry: Exif IFD Pointer (12 bytes)
146) next= 828: Next IFD offset (4 bytes)
150) value_entry[0]= "FUJIFILM": Value of "Camera (Image input equipment) manufacturer" (9 bytes)
159) value_entry[1]= "FinePixS2Pro": Value of "Camera (Input input equipment) model" (13 bytes)
172) value_entry[3][0]= 72: Value of "Image resolution width direction" (4 bytes)
176) value_entry[3][1]= 1: Value of "Image resolution width direction" (4 bytes)
180) value_entry[4][0]= 72: Value of "Image resolution in height direction" (4 bytes)
184) value_entry[4][1]= 1: Value of "Image resolution in height direction" (4 bytes)
188) value_entry[6]= "Adobe Photoshop 7.0": Value of "Software" (20 bytes)
208) value_entry[7]= "2003:11:03 17:38:44": Value of "File change date and time" (20 bytes)
228) value_entry[8]= "Ian Britton": Value of "File change date and time" (12 bytes)
240) value_entry[10]= "FreeFoto.com": Value of "Copyright holder" (17 bytes)
257) padding[0]= "\0\0\0" (3 bytes)
+ 274) ifd[1]: IFD (560 bytes)
+ 834) ifd[2]: IFD (94 bytes)
928) thumbnail= "\xff\xd8\xff\xe0\0\x10JFIF\0\1\2\1(...)": Thumbnail (JPEG file) (4196 bytes)
- 5148) photoshop: Photoshop (5778 bytes)
0) header= 0xff: Header (1 byte)
1) type= 0xed: Type (1 byte)
2) size= 5776: Size (2 bytes)
- 4) content: Chunk content (5774 bytes)
0) signature= "Photoshop 3.0": Photoshop version (14 bytes)
- 14) iptc: IPTC/NAA (86 bytes)
0) signature= "8BIM": 8BIM signature (4 bytes)
4) tag= 0x0404 (2 bytes)
6) name= (empty) (4 bytes)
10) size= 73 (2 bytes)
- 12) content (74 bytes)
+ 0) record_version: Record version (2 for JPEG) (7 bytes)
+ 7) author: By-line (Author) (16 bytes)
- 23) credit: Credit (29 bytes)
0) signature= 0x1c: IPTC signature (0x1c) (1 byte)
1) dataset_nb= 0x02: Dataset number (1 byte)
2) tag= 110: Tag (1 byte)
+ 3) size= 24: Content size (2 bytes)
5) content= "Ian Britton FreeFoto.com" (24 bytes)
+ 52) copyright: Copyright notice (21 bytes)
73) padding= <null> (1 byte)
+ 100) item[0] (28 bytes)
+ 128) res_info: Resolution information (28 bytes)
+ 156) item[1] (26 bytes)
+ 182) glob_angle: Global lighting angle for effects (16 bytes)
+ 198) glob_altitude: Global altitude (16 bytes)
+ 214) print_flg: Print flags: labels, crop marks, colour bars, etc. (22 bytes)
+ 236) copyright_flg: Copyright flag (14 bytes)
+ 250) item[2] (24 bytes)
+ 274) print_flg2: Print flags (2) (22 bytes)
+ 296) col_half_info: Colour half-toning information (84 bytes)
+ 380) color_trans_func: Colour transfer function (124 bytes)
+ 504) grid_guide: Grid guides informations (28 bytes)
+ 532) url_list: Unicode URL's (16 bytes)
+ 548) slices: Slices (856 bytes)
+ 1404) base_layer_id: Base value for new layers ID's (16 bytes)
+ 1420) thumb_res2: Thumbnail resource (2) (4236 bytes)
+ 5656) version: Version information (98 bytes)
+ 5754) jpeg_qual: JPEG quality (20 bytes)
+ 10926) chunk[0]: Chunk: 0xe1 (6060 bytes)
+ 16986) chunk[1]: Chunk: 0xe2 (3162 bytes)
- 20148) adobe: Image encoding information for DCT filters (Adobe) (16 bytes)
0) header= 0xff: Header (1 byte)
1) type= 0xee: Type (1 byte)
2) size= 14: Size (2 bytes)
- 4) content: Chunk content (12 bytes)
0) adobe= "Adobe": "Adobe" string (5 bytes)
5) version= 100: DCT encoder version (2 bytes)
7.0) flag00= Chop down- or subsmapling (1 bit)
7.1) flags0_reserved= 16384 (15 bits)
9) flags1= <null> (2 bytes)
11) color_transform= YCbCr (converted from RGB): Colorspace transformation code (1 byte)
- 20164) quantization[0]: Define Quantization Table (DQT) (134 bytes)
0) header= 0xff: Header (1 byte)
1) type= 0xdb: Type (1 byte)
2) size= 132: Size (2 bytes)
- 4) content: Chunk content (130 bytes)
- 0) qt[0]: Quantification table #0 (65 bytes)
0.0) is_16bit= 0 (4 bits)
0.4) index= 0 (4 bits)
1) coeff[0]= 4 (1 byte)
2) coeff[1]= 3 (1 byte)
3) coeff[8]= 3 (1 byte)
4) coeff[16]= 3 (1 byte)
5) coeff[9]= 3 (1 byte)
6) coeff[2]= 3 (1 byte)
7) coeff[3]= 4 (1 byte)
8) coeff[10]= 3 (1 byte)
(...)
+ 65) qt[1]: Quantification table #1 (65 bytes)
+ 20298) start_frame: Start of frame (baseline) (19 bytes)
- 20317) restart_interval: Define Restart Interval (DRI) (6 bytes)
0) header= 0xff: Header (1 byte)
1) type= 0xdd: Type (1 byte)
2) size= 4: Size (2 bytes)
- 4) content: Chunk content (2 bytes)
0) interval= 75: Restart inteval (2 bytes)
+ 20323) huffman[0]: Define Huffman Table (DHT) (420 bytes)
+ 20743) start_scan: Start Of Scan (SOS) (14 bytes)
20757) data= "\x95\1\x9d\x94C\xe5\xe7\x9bt\x19$:\x87\x15(...)": JPEG data (81.0 KB)
+ 103746) end_image: End of image (EOI) (2 bytes)
interlude_david_aubrun.ogg
0) file:interlude_david_aubrun.ogg: Ogg multimedia container (914.6 KB)
- 0) page[0] (58 bytes)
0) capture_pattern= "OggS" (4 bytes)
4) stream_structure_version= 0 (1 byte)
5.0) continued_packet= False (1 bit)
5.1) first_page= True (1 bit)
5.2) last_page= False (1 bit)
5.3) unused= <null> (5 bits)
6) abs_granule_pos= 0 (8 bytes)
14) serial= 0x2c3974f4 (4 bytes)
18) page= 0 (4 bytes)
22) checksum= 0x87812d62 (4 bytes)
26) lacing_size= 1 (1 byte)
+ 27) lacing (1 byte)
- 28) segments (30 bytes)
-> next= /page[1]/segments
- 0) vorbis_hdr (30 bytes)
0) type= 1 (1 byte)
1) codec= "vorbis" (6 bytes)
7) vorbis_version= 0 (4 bytes)
11) audio_channels= 2 (1 byte)
12) audio_sample_rate= 44100 (4 bytes)
16) bitrate_maximum= 0 (4 bytes)
20) bitrate_nominal= 120000 (4 bytes)
24) bitrate_minimum= 0 (4 bytes)
28.0) blocksize_0= 8 (4 bits)
28.4) blocksize_1= 11 (4 bits)
29) framing_flag= 1 (1 byte)
- 58) page[1] (4286 bytes)
0) capture_pattern= "OggS" (4 bytes)
4) stream_structure_version= 0 (1 byte)
5.0) continued_packet= False (1 bit)
5.1) first_page= False (1 bit)
5.2) last_page= False (1 bit)
5.3) unused= <null> (5 bits)
6) abs_granule_pos= 0 (8 bytes)
14) serial= 0x2c3974f4 (4 bytes)
18) page= 1 (4 bytes)
22) checksum= 0x806bff11 (4 bytes)
26) lacing_size= 17 (1 byte)
+ 27) lacing (17 bytes)
- 44) segments (4242 bytes)
-> first= /page[0]/segments
-> next= /page[2]/segments
- 0) comment (417 bytes)
0) type= 3 (1 byte)
1) codec= "vorbis" (6 bytes)
7) vendor= "Xiph.Org libVorbis I 20040629" (33 bytes)
40) count= 12 (4 bytes)
44) metadata[0]= "ARTIST=david aubrun" (23 bytes)
67) metadata[1]= "ALBUM=trip with water" (25 bytes)
92) metadata[2]= "TRACKNUMBER=2" (17 bytes)
109) metadata[3]= "TITLE=interlude symbiosys1" (30 bytes)
139) metadata[4]= "DATE=2006-10-20 14:56:34" (28 bytes)
167) metadata[5]= "ORGANIZATION=Jamendo : http://www.jamend(...)" (50 bytes)
217) metadata[6]= "COMMENT=Jamendo : http://www.jamendo.com(...)" (45 bytes)
262) metadata[7]= "DESCRIPTION=Jamendo : http://www.jamendo(...)" (49 bytes)
311) metadata[8]= "WWW=http://www.jamendo.com/album/3132" (41 bytes)
352) metadata[9]= "LICENSE=" (12 bytes)
364) metadata[10]= "WCOP=" (9 bytes)
373) metadata[11]= "WOAF=http://www.jamendo.com/track/22586" (43 bytes)
416) framing_flag= 1 (1 byte)
- 417) chunk[0] (3825 bytes)
0) type= 5 (1 byte)
1) codec= "vorbis" (6 bytes)
7) raw= "%BCV\1\0@\0\0$s\x18*F(...)": Raw data (3818 bytes)
+ 4344) page[2] (35 bytes)
+ 4379) page[3] (4380 bytes)
(...)