1
/////////////////////////////////////////////////////////////////
2
/// getID3() by James Heinrich <info@getid3.org> //
3
// available at http://getid3.sourceforge.net //
4
// or http://www.getid3.org //
5
/////////////////////////////////////////////////////////////////
7
// changelog.txt - part of getID3() //
8
// See readme.txt for more details //
10
/////////////////////////////////////////////////////////////////
12
What does the returned data structure look like?
13
================================================
15
Hint: If you take a look at the nicely-formatted output of
16
/demos/demo.browse.php you can generally see where the data you want
19
Note that what is described below is only a rough guide to what data
20
is actually returned by getID3(), since the actual data returned
21
depends entirely on what data is in your file, what type of file it
22
is, what kind of data is in the tags, etc. In addition, some formats
23
(Quicktime for example) use a freeform recursive structure that is
24
impossible to document completely.
26
In the vast majority of cases, all the data you'll need is located
27
in the root of the array or the special arrays described below in
28
Section 1 (['audio'], ['video'], ['tags_html'], ['replay_gain']).
30
It is suggested that for most applications you should use tag data
31
from the root ['tags_html'] array, as this is the only location
32
where data is stored in a consistant format: HTML-compatible
33
character entities (ie Ӓ) for characters outside the 0x20-0x7F
34
range (printable ISO-8859-1 characters). This data can be used as-is
35
for output in HTML, and can be converted to whatever character set
36
you wish to use if the output is not HTML.
38
If you want to merge all available tags (for example, ID3v2 + ID3v1)
39
into one array, you can call
40
getid3_lib::CopyTagsToComments($ThisFileInfo)
41
and you'll then have ['comments'] and ['comments_html'] which are
42
identical to ['tags'] and ['tags_html'] except the array is one
43
dimension shorter (no tag type array keys). For example, artist is:
44
['tags_html']['id3v1']['artist'][0] or ['comments_html']['artist'][0]
47
Some commonly-used information is found in these locations:
49
File type: ['fileformat'] // ex 'mp3'
50
Song length: ['playtime_string'] // ex '3:45' (minutes:seconds)
51
['playtime_seconds'] // ex 225.13 (seconds)
52
Overall bitrate: ['bitrate'] // ex 113485.71 (bits-per-second - divide by 1000 for kbps)
53
Audio frequency: ['audio']['sample_rate'] // ex 44100 (Hertz)
54
Artist name: ['comments_html']['artist'][0] // ex 'Elvis' (if CopyTagsToComments() is used - see above)
55
// more than one artist may be present, you may want to use implode:
56
// implode(' & ', ['comments_html']['artist'])
59
/////////////////////////////////////////////////////////////////
62
// SECTION 1: Values that are present for most or all file types
64
['getID3version']=>string() // version of getID3() that scanned this file (ex: '1.6.2')
65
['error']=>array() // if present, contains one or more fatal error messages
66
['warning']=>array() // if present, contains one or more non-fatal warning messages
67
['exist']=>boolean() // does this file actually exist?
68
['fileformat']=>string() // one of the standard filetype abbreviations ('mp3', 'riff', 'quicktime', etc)
69
['filename']=>string() // filename only, no path
70
['filenamepath']=>string() // full filename with path
71
['filepath']=>string() // path to file, not including filename
72
['filesize']=>integer() // filesize in bytes
73
['md5_file']=>string() // md5 hash of entire file
74
['md5_data']=>string() // md5 hash of portion of file excluding prepended and appeneded metainformation tags (ID3, APE, etc) - may be identical to ['md5_file']
75
['md5_data_source']=>string() // md5 hash of original source file before compression (currently used by FLAC, OptimFROG, WavPack v4+)
76
['sha1_file']=>string() // sha1 hash of entire file
77
['sha1_data']=>string() // sha1 hash of portion of file excluding prepended and appeneded metainformation tags (ID3, APE, etc) - may be identical to ['md5_file']
78
['avdataoffset']=>integer() // offset in bytes where audio/video data starts and prepended tags end
79
['avdataend']=>integer() // offset in bytes where audio/video data ends and appended tags start
80
['bitrate']=>double() // average bitrate for entire file (all audio/video streams), in bits per second
81
['mime_type']=>string() // if present, MIME type of scanned file
82
['playtime_seconds']=>double() // playing time of file, in seconds
83
['playtime_string']=>string() // playing time of file, formatted as <minutes>:<seconds>
84
['tags']=>array() // array of all metainformation tags present in file ('id3v1', 'id3v2', 'ape', 'riff', 'asf', etc)
86
['bitrate']=>double() // average bitrate for audio portion of file (all audio streams), in bits per second
87
['bitrate_mode']=>string() // 'cbr' (Constant Bit Rate) or 'vbr' (Variable Bit Rate)
88
['bits_per_sample']=>integer() //
89
['channelmode']=>string() // 'mono' or 'stereo'
90
['channels']=>integer() // number of audio channels
91
['codec']=>string() // name of audio compression codec
92
['compression_ratio']=>double() // ratio of compressed byte size of audio to uncompressed size
93
['dataformat']=>string() // one of the standard filetype abbreviations ('mp3', 'wma', etc)
94
['encoder']=>string() // name and version of encoder used to create file, if known
95
['lossless']=>boolean() // true = lossless compression; false = lossy compression
96
['sample_rate']=>integer()
99
['bitrate']=>integer() // average bitrate for video portion of file (all video streams), in bits per second
100
['bitrate_mode']=>string() // 'cbr' (Constant Bit Rate) or 'vbr' (Variable Bit Rate)
101
['bits_per_sample']=>integer() //
102
['codec']=>string() // name of video compression codec
103
['compression_ratio']=>double() // ratio of compressed byte size of video to uncompressed size
104
['dataformat']=>string() // one of the standard filetype abbreviations ('avi', 'mpeg', etc)
105
['encoder']=>string() // name and version of encoder used to create file, if known
106
['frame_rate']=>double() // frames per second
107
['lossless']=>boolean() // true = lossless compression; false = lossy compression
108
['resolution_x']=>integer() // horizontal dimension of video/image in pixels
109
['resolution_y']=>integer() // vertical dimension of video/image in pixels
110
['pixel_aspect_ratio']=>double() // pixel display aspect ratio
112
['tags']=>array() { // array of array of strings containing best data from any available metainformation tag (APE, ID3v2, ID3v1, Lyrics3, Vorbis, ASF, RIFF, Real, etc.)
113
[<key name>]=>array() // <key name> can be anything, usually 'artist', 'title', etc. Contains array of one or more values (eg: multiple artists are possible)
115
['tags_html']=>array() { // identical to ['tags'], but with all entries converted to HTML entities as appropriate from various source encodings
116
[<key name>]=>array() //
118
['replay_gain']=>array() { // replay gain information combined from any source that contains this information (LAME, ID3v2, Vorbis, APE, etc)
119
['audiophile']=>array() {
120
['adjustment']=>double()
121
['originator']=>string()
125
['adjustment']=>double()
126
['originator']=>string()
132
// SECTION 2: Values that are present for specific file types only
134
['aac']=>array() { // AAC - Advanced Audio Coding / MPEG-4
135
['bitrate_distribution']=>array() //
136
['header']=>array() { //
137
['channel_configuration']=>integer() //
138
['crc_present']=>boolean() //
139
['home']=>boolean() //
140
['layer']=>integer() //
141
['mpeg_version']=>integer() //
142
['original']=>boolean() //
143
['private']=>boolean() //
144
['profile_id']=>integer() //
145
['profile_text']=>string() //
146
['sample_frequency']=>integer() //
147
['sample_frequency_index']=>integer() //
148
['synch']=>integer() //
150
['header_type']=>string() //
155
['comments']=>array() { // array of array of strings containing best data from any available metainformation tag (APE, ID3v2, ID3v1, Lyrics3, Vorbis, ASF, RIFF, Real, etc.)
156
[<key name>]=>array() // <key name> can be anything, usually 'artist', 'title', etc. Contains array of one or more values (eg: multiple artists are possible)
158
['footer']=>array() //
160
['flags']=>array() //
162
['tag_version']=>integer() //
164
['header']=>array() //
166
['flags']=>array() //
168
['tag_version']=>integer() //
170
['items']=>array() { // array of array of strings containing metainformation
171
[<key name>]=>array() { // <key name> can be anything, usually 'artist', 'title', etc. Contains array of one or more values (eg: multiple artists are possible)
172
['data']=>array() { // array of one or more Unicode values
173
['data_ascii']=>array() { // array of values converted approximately from Unicode to ASCII
174
['flags']=>array() //
177
['tag_offset_end']=>integer() //
178
['tag_offset_start']=>integer() //
182
['asf']=>array() { // ASF - Advanced Streaming Format (ASF, Windows Media Audio (WMA), Windows Media Video (WMV))
183
['audio_media']=>array() { //
185
['bitrate']=>integer() //
186
['bits_per_sample']=>integer() //
187
['channels']=>integer() //
188
['codec']=>string() //
189
['codec_data']=>string() //
190
['codec_data_size']=>integer() //
191
['raw']=>array() { //
192
['nAvgBytesPerSec']=>integer() //
193
['wBitsPerSample']=>integer() //
194
['nBlockAlign']=>integer() //
195
['nChannels']=>integer() //
196
['nSamplesPerSec']=>integer() //
197
['wFormatTag']=>integer() //
199
['sample_rate']=>integer() //
202
['codec_list']=>array() { //
203
['codec_entries']=>array() { //
205
['description']=>string() //
206
['description_ascii']=>string() //
207
['information']=>string() //
208
['name']=>string() //
209
['name_ascii']=>string() //
210
['type']=>string() //
211
['type_raw']=>integer() //
214
['codec_entries_count']=>integer() //
215
['objectid']=>string() //
216
['objectid_guid']=>string() //
217
['objectsize']=>integer() //
218
['reserved']=>string() //
219
['reserved_guid']=>string() //
221
['comments']=>array() { // array of comment values, derived from ['content_description']
222
['album']=>string() //
223
['artist']=>string() //
224
['comment']=>string() //
225
['copyright']=>string() //
226
['genre']=>string() //
227
['title']=>string() //
228
['track']=>string() //
229
['year']=>string() //
231
['content_description']=>array() { // raw values - should use values from ['comments'] instead
232
['author']=>string() //
233
['author_ascii']=>string() //
234
['author_length']=>integer() //
235
['copyright']=>string() //
236
['copyright_ascii']=>string() //
237
['copyright_length']=>integer() //
238
['description']=>string() //
239
['description_ascii']=>string() //
240
['description_length']=>integer() //
241
['objectid']=>string() //
242
['objectid_guid']=>string() //
243
['objectsize']=>integer() //
244
['rating']=>string() //
245
['rating_ascii']=>string() //
246
['rating_length']=>integer() //
247
['title']=>string() //
248
['title_ascii']=>string() //
249
['title_length']=>integer() //
251
['data_object']=>array() { //
252
['fileid']=>string() //
253
['fileid_guid']=>string() //
254
['objectid']=>string() //
255
['objectid_guid']=>string() //
256
['objectsize']=>integer() //
257
['reserved']=>integer() //
258
['total_data_packets']=>integer() //
260
['extended_content_description']=>array() { //
261
['content_descriptors']=>array() { //
263
['name']=>string() //
264
['name_ascii']=>string() //
265
['name_length']=>integer() //
266
['value']=>string() //
267
['value_ascii']=>string() //
268
['value_length']=>integer() //
269
['value_type']=>integer() //
272
['content_descriptors_count']=>integer() //
273
['objectid']=>string() //
274
['objectid_guid']=>string() //
275
['objectsize']=>integer() //
277
['file_properties_object']=>array() { //
278
['creation_date']=>double() //
279
['creation_date_unix']=>double() //
280
['data_packets']=>integer() //
281
['fileid']=>string() //
282
['fileid_guid']=>string() //
283
['filesize']=>integer() //
284
['flags']=>array() { //
285
['broadcast']=>boolean() //
286
['seekable']=>boolean() //
288
['flags_raw']=>integer() //
289
['max_bitrate']=>integer() //
290
['max_packet_size']=>integer() //
291
['min_packet_size']=>integer() //
292
['objectid']=>string() //
293
['objectid_guid']=>string() //
294
['objectsize']=>integer() //
295
['play_duration']=>double() //
296
['preroll']=>integer() //
297
['send_duration']=>double() //
299
['header_extension_object']=>array() { //
300
['extension_data']=>integer() //
301
['extension_data_size']=>integer() //
302
['objectid']=>string() //
303
['objectid_guid']=>string() //
304
['objectsize']=>integer() //
305
['reserved_1']=>string() //
306
['reserved_1_guid']=>string() //
307
['reserved_2']=>integer() //
309
['header_object']=>array() { //
310
['headerobjects']=>integer() //
311
['objectid']=>string() //
312
['objectid_guid']=>string() //
313
['objectsize']=>integer() //
314
['reserved1']=>integer() //
315
['reserved2']=>integer() //
317
['marker_object']=>array() { //
318
['markers_count']=>integer() //
319
['objectid']=>string() //
320
['objectid_guid']=>string() //
321
['objectsize']=>integer() //
322
['reserved']=>string() //
323
['reserved_2']=>integer() //
324
['reserved_guid']=>string() //
326
['stream_bitrate_properties']=>array() { //
327
['bitrate_records']=>array() { //
329
['bitrate']=>integer() //
330
['flags_raw']=>integer() //
331
['flags']=>array() { //
332
['stream_number']=>integer() //
336
['bitrate_records_count']=>integer() //
337
['objectid']=>string() //
338
['objectid_guid']=>string() //
339
['objectsize']=>integer() //
341
['stream_properties_object']=>array() { //
343
['error_correct_data']=>string() //
344
['error_correct_guid']=>string() //
345
['error_correct_type']=>string() //
346
['error_data_length']=>integer() //
347
['flags_raw']=>integer() //
348
['flags']=>array() { //
349
['encrypted']=>boolean() //
351
['objectid']=>string() //
352
['objectid_guid']=>string() //
353
['objectsize']=>integer() //
354
['stream_type']=>string() //
355
['stream_type_guid']=>string() //
356
['time_offset']=>integer() //
357
['type_data_length']=>integer() //
358
['type_specific_data']=>string() //
361
['video_media']=>array() { //
363
['flags']=>integer() //
364
['format_data']=>array() { //
365
['bits_per_pixel']=>integer() //
366
['codec']=>string() //
367
['codec_data']=>boolean() //
368
['codec_fourcc']=>string() //
369
['colors_important']=>integer() //
370
['colors_used']=>integer() //
371
['format_data_size']=>integer() //
372
['horizontal_pels']=>integer() //
373
['image_height']=>integer() //
374
['image_size']=>integer() //
375
['image_width']=>integer() //
376
['reserved']=>integer() //
377
['vertical_pels']=>integer() //
379
['format_data_size']=>integer() //
380
['image_height']=>integer() //
381
['image_width']=>integer() //
387
['au']=>array() { // AU - Next/Sun AUdio format
388
['bits_per_sample']=>integer() //
389
['channels']=>integer() //
390
['comment']=>string() //
391
['data_format']=>string() //
392
['data_format_id']=>integer() //
393
['data_size']=>integer() //
394
['header_length']=>integer() //
395
['sample_rate']=>integer() //
396
['used_bits_per_sample']=>integer() //
400
['bmp']=>array() { // BMP - OS/2 or Windows BitMaP
401
['header']=>array() { //
402
['compression']=>string() //
403
['raw']=>array() { //
404
['bits_per_pixel']=>integer() //
405
['bmp_data_size']=>integer() //
406
['colors_important']=>integer() //
407
['colors_used']=>integer() //
408
['compression']=>integer() //
409
['data_offset']=>integer() //
410
['filesize']=>integer() //
411
['header_size']=>integer() //
412
['height']=>integer() //
413
['identifier']=>string() //
414
['planes']=>integer() //
415
['resolution_h']=>integer() //
416
['resolution_v']=>integer() //
417
['width']=>integer() //
420
['type_os']=>string() //
421
['type_version']=>integer() //
425
['bonk']=>array() { // BONK - lossy/lossless audio compression (www.bonkenc.org)
426
['BONK']=>array() { //
427
['channels']=>integer() //
428
['downsampling_ratio']=>integer() //
429
['joint_stereo']=>boolean() //
430
['lossless']=>boolean() //
431
['number_samples']=>integer() //
432
['number_taps']=>integer() //
433
['offset']=>integer() //
434
['sample_rate']=>integer() //
435
['samples_per_packet']=>integer() //
436
['size']=>integer() //
437
['version']=>integer() //
439
['INFO']=>array() { //
440
['size']=>integer() //
441
['offset']=>integer() //
442
['version']=>integer() //
444
['nextbit']=>integer() //
445
['offset']=>integer() //
448
['dataend']=>integer() //
449
['dataoffset']=>integer() //
453
['flac']=>array() { // FLAC - Free Lossless Audio Compressor
454
['SEEKTABLE']=>array() { //
456
['offset']=>integer() //
457
['samples']=>integer() //
459
['placeholders']=>integer() //
460
['raw']=>array() { //
461
['block_data']=>string() //
462
['block_length']=>integer() //
463
['block_type']=>integer() //
464
['block_type_text']=>string() //
465
['last_meta_block']=>boolean() //
466
['offset']=>integer() //
469
['STREAMINFO']=>array() { //
470
['audio_signature']=>string() //
471
['bits_per_sample']=>integer() //
472
['channels']=>integer() //
473
['max_block_size']=>integer() //
474
['max_frame_size']=>integer() //
475
['min_block_size']=>integer() //
476
['min_frame_size']=>integer() //
477
['raw']=>array() { //
478
['block_data']=>string() //
479
['block_length']=>integer() //
480
['block_type']=>integer() //
481
['block_type_text']=>string() //
482
['last_meta_block']=>boolean() //
483
['offset']=>integer() //
485
['sample_rate']=>integer() //
486
['samples_stream']=>integer() //
488
['VORBIS_COMMENT']=>array() { //
489
['raw']=>array() { //
490
['block_data']=>string() //
491
['block_length']=>integer() //
492
['block_type']=>integer() //
493
['block_type_text']=>string() //
494
['last_meta_block']=>boolean() //
495
['offset']=>integer() //
498
['compressed_audio_bytes']=>integer() //
499
['compression_ratio']=>double() //
500
['uncompressed_audio_bytes']=>integer() //
504
['gif']=>array() { // GIF - Graphics Interchange Format
505
['global_color_table']=>array() { //
508
['header']=>array() { //
509
['bits_per_pixel']=>integer() //
510
['flags']=>array() { //
511
['global_color_sorted']=>boolean() //
512
['global_color_table']=>boolean() //
514
['global_color_size']=>integer() //
515
['raw']=>array() { //
516
['aspect_ratio']=>integer() //
517
['bg_color_index']=>integer() //
518
['flags']=>integer() //
519
['height']=>integer() //
520
['identifier']=>string() //
521
['version']=>string() //
522
['width']=>integer() //
525
['version']=>string() //
529
['id3v1']=>array() { // ID3v1
530
['album']=>string() //
531
['artist']=>string() //
532
['comment']=>string() //
533
['genre']=>string() //
534
['genreid']=>integer() //
535
['title']=>string() //
536
['track']=>integer() //
537
['year']=>string() //
538
['padding_valid']=>boolean() //
539
['comments']=>array() //
540
['tag_offset_start']=>integer() //
541
['tag_offset_end']=>integer() //
545
['id3v2']=>array() { // ID3v2 - www.id3.org
546
[<frame name>]=>array() { // <frame name> can be any of the 4-character (3-character in ID3v2.2) frame names allowed in the ID3v2 spec. Exact contents of returned array data varies with frame type.
547
[<x>]=>array() { // some frames types allow multiple values ('COMM' for example), others do not and do not have this array level
548
['asciidata']=>boolean() //
549
['asciidescription']=>string() //
550
['data']=>boolean() //
551
['datalength']=>integer() //
552
['dataoffset']=>integer() //
553
['description']=>string() //
554
['encoding']=>string() //
555
['encodingid']=>integer() //
556
['flags']=>array() { //
557
['Encryption']=>boolean() //
558
['FileAlterPreservation']=>boolean() //
559
['GroupingIdentity']=>boolean() //
560
['ReadOnly']=>boolean() //
561
['TagAlterPreservation']=>boolean() //
562
['compression']=>boolean() //
564
['framenamelong']=>string() //
565
['language']=>string() //
566
['languagename']=>string() //
569
['comments']=>array() { // array of array of strings containing best data from any available metainformation tag (APE, ID3v2, ID3v1, Lyrics3, Vorbis, ASF, RIFF, Real, etc.)
570
[<key name>]=>array() // <key name> can be anything, usually 'artist', 'title', etc. Contains array of one or more values (eg: multiple artists are possible)
572
['flags']=>array() { //
573
['experim']=>string() //
574
['exthead']=>string() //
575
['unsynch']=>string() //
577
['header']=>boolean() //
578
['headerlength']=>integer() //
579
['majorversion']=>integer() //
580
['minorversion']=>integer() //
581
['padding']=>array() { //
582
['length']=>integer() //
583
['start']=>integer() //
584
['valid']=>boolean() //
586
['tag_offset_end']=>integer() //
587
['tag_offset_start']=>integer() //
591
['iso']=>array() { // ISO-9660 - CD-ROM Image
592
['directories']=>array() { //
595
['file_flags']=>array() { //
596
['associated']=>boolean() //
597
['directory']=>boolean() //
598
['extended']=>boolean() //
599
['hidden']=>boolean() //
600
['multiple']=>boolean() //
601
['permissions']=>boolean() //
603
['file_identifier_ascii']=>string() //
604
['filename']=>string() //
605
['filesize']=>integer() //
606
['offset_bytes']=>integer() //
607
['raw']=>array() { //
608
['extended_attribute_length']=>integer() //
609
['file_flags']=>integer() //
610
['file_identifier']=>string() //
611
['file_identifier_length']=>integer() //
612
['file_unit_size']=>integer() //
613
['filesize']=>integer() //
614
['interleave_gap_size']=>integer() //
615
['length']=>integer() //
616
['offset_logical']=>integer() //
617
['recording_date_time']=>string() //
618
['volume_sequence_number']=>integer() //
620
['recording_timestamp']=>integer() //
624
['files']=>array() { // multidimensional tree-structure array listing of all files and directories in image
625
[<directory name>]=>array() // entries of type array are directories (key is directory name), may contain files and/or other subdirectories
626
[<file name>]=>integer() // entries of type integer are files (key is file name, value is file size in bytes)
628
['path_table']=>array() { //
629
['directories']=>array() { //
631
['extended_length']=>integer() //
632
['full_path']=>string() //
633
['length']=>integer() //
634
['location_bytes']=>integer() //
635
['location_logical']=>integer() //
636
['name']=>string() //
637
['name_ascii']=>string() //
638
['parent_directory']=>integer() //
641
['offset']=>integer() //
644
['primary_volume_descriptor']=>array() { //
645
['abstract_file_identifier']=>string() //
646
['application_identifier']=>string() //
647
['bibliographic_file_identifier']=>string() //
648
['copyright_file_identifier']=>string() //
649
['data_preparer_identifier']=>string() //
650
['offset']=>integer() //
651
['publisher_identifier']=>string() //
652
['raw']=>array() { //
653
['abstract_file_identifier']=>string() //
654
['application_data']=>string() //
655
['application_identifier']=>string() //
656
['bibliographic_file_identifier']=>string() //
657
['copyright_file_identifier']=>string() //
658
['data_preparer_identifier']=>string() //
659
['file_structure_version']=>integer() //
660
['logical_block_size']=>integer() //
661
['path_table_l_location']=>integer() //
662
['path_table_l_opt_location']=>integer() //
663
['path_table_m_location']=>integer() //
664
['path_table_m_opt_location']=>integer() //
665
['path_table_size']=>integer() //
666
['publisher_identifier']=>string() //
667
['root_directory_record']=>string() //
668
['standard_identifier']=>string() //
669
['system_identifier']=>string() //
670
['unused_1']=>string() //
671
['unused_2']=>string() //
672
['unused_3']=>string() //
673
['unused_4']=>integer() //
674
['volume_creation_date_time']=>string() //
675
['volume_descriptor_type']=>integer() //
676
['volume_descriptor_version']=>integer() //
677
['volume_effective_date_time']=>string() //
678
['volume_expiration_date_time']=>string() //
679
['volume_identifier']=>string() //
680
['volume_modification_date_time']=>string() //
681
['volume_sequence_number']=>integer() //
682
['volume_set_identifier']=>string() //
683
['volume_set_size']=>integer() //
684
['volume_space_size']=>integer() //
686
['system_identifier']=>string() //
687
['volume_creation_date_time']=>integer() //
688
['volume_effective_date_time']=>boolean() //
689
['volume_expiration_date_time']=>boolean() //
690
['volume_identifier']=>string() //
691
['volume_modification_date_time']=>integer() //
692
['volume_set_identifier']=>string() //
694
['supplementary_volume_descriptor']=>array() { //
695
['abstract_file_identifier']=>string() //
696
['application_identifier']=>string() //
697
['bibliographic_file_identifier']=>string() //
698
['copyright_file_identifier']=>string() //
699
['data_preparer_identifier']=>string() //
700
['offset']=>integer() //
701
['publisher_identifier']=>string() //
702
['raw']=>array() { //
703
['abstract_file_identifier']=>string() //
704
['application_data']=>string() //
705
['application_identifier']=>string() //
706
['bibliographic_file_identifier']=>string() //
707
['copyright_file_identifier']=>string() //
708
['data_preparer_identifier']=>string() //
709
['file_structure_version']=>integer() //
710
['logical_block_size']=>integer() //
711
['path_table_l_location']=>integer() //
712
['path_table_l_opt_location']=>integer() //
713
['path_table_m_location']=>integer() //
714
['path_table_m_opt_location']=>integer() //
715
['path_table_size']=>integer() //
716
['publisher_identifier']=>string() //
717
['root_directory_record']=>string() //
718
['standard_identifier']=>string() //
719
['system_identifier']=>string() //
720
['unused_1']=>string() //
721
['unused_2']=>string() //
722
['unused_3']=>string() //
723
['unused_4']=>integer() //
724
['volume_creation_date_time']=>string() //
725
['volume_descriptor_type']=>integer() //
726
['volume_descriptor_version']=>integer() //
727
['volume_effective_date_time']=>string() //
728
['volume_expiration_date_time']=>string() //
729
['volume_identifier']=>string() //
730
['volume_modification_date_time']=>string() //
731
['volume_sequence_number']=>integer() //
732
['volume_set_identifier']=>string() //
733
['volume_set_size']=>integer() //
734
['volume_space_size']=>integer() //
736
['system_identifier']=>string() //
737
['volume_creation_date_time']=>integer() //
738
['volume_effective_date_time']=>boolean() //
739
['volume_expiration_date_time']=>boolean() //
740
['volume_identifier']=>string() //
741
['volume_modification_date_time']=>integer() //
742
['volume_set_identifier']=>string() //
747
['jpg']=>array() { // JPEG - still image
748
['exif']=>array() // data returned from PHP's exif_read_data() function
752
['la']=>array() { // LA - Lossless Audio (www.lossless-audio.com)
754
['format']=>integer() //
755
['flags']=>integer() //
757
['flags']=>array() { //
758
['seekable']=>boolean() //
759
['high_compression']=>boolean() //
761
['bits_per_sample']=>integer() //
762
['bytes_per_sample']=>integer() //
763
['bytes_per_second']=>integer() //
764
['channels']=>integer() //
765
['compression_ratio']=>double() //
766
['format_size']=>integer() //
767
['header_size']=>integer() //
768
['original_crc']=>double() //
769
['sample_rate']=>integer() //
770
['samples']=>integer() //
771
['uncompressed_size']=>integer() //
772
['version']=>double() //
773
['version_major']=>integer() //
774
['version_minor']=>integer() //
775
['footerstart']=>double() //
779
['lpac']=>array() { // LPAC - Lossless Predictive Audio Compressor
780
['block_length']=>integer() //
781
['file_version']=>integer() //
782
['flags']=>array() { //
783
['16_bit']=>boolean() //
784
['24_bit']=>boolean() //
785
['adaptive_prediction_order']=>boolean() //
786
['adaptive_quantization']=>boolean() //
787
['fast_compress']=>boolean() //
788
['is_wave']=>boolean() //
789
['joint_stereo']=>boolean() //
790
['max_prediction_order']=>integer() //
791
['quantization']=>integer() //
792
['random_access']=>boolean() //
793
['stereo']=>boolean() //
795
['raw']=>array() { //
796
['audio_type']=>integer() //
797
['parameters']=>double() //
799
['total_samples']=>integer() //
803
['lyrics3']=>array() { // Lyrics3 - metainformation tags
804
['comments']=>array() { //
805
['album']=>string() //
806
['artist']=>string() //
807
['author']=>string() //
808
['comment']=>string() //
809
['title']=>string() //
811
['flags']=>array() { //
812
['lyrics']=>boolean() //
813
['timestamps']=>boolean() //
815
['images']=>array() { //
817
['description']=>string() //
818
['filename']=>string() //
819
['timestamp']=>integer() //
822
['raw']=>array() { //
823
['offset_start']=>integer() //
824
['offset_end']=>integer() //
833
['lyrics3tagsize']=>integer() //
834
['lyrics3version']=>integer() //
835
['unparsed']=>string() //
837
['synchedlyrics']=>array() { //
840
['unsynchedlyrics']=>string() //
844
['midi']=>array() { // MIDI (Musical Instrument Digital Interface) - sequenced music
845
['comments']=>array() { //
846
['comment']=>string() //
847
['copyright']=>string() //
849
['keysignature']=>array() { //
852
['raw']=>array() { //
853
['events']=>array() { //
856
['us_qnote']=>integer() //
860
['fileformat']=>integer() //
861
['headersize']=>integer() //
862
['ticksperqnote']=>integer() //
863
['track']=>array() { //
865
['instrument']=>string() //
866
['instrumentid']=>integer() //
867
['name']=>string() //
870
['tracks']=>integer() //
872
['timesignature']=>array() { //
875
['totalticks']=>integer() //
879
['monkeys_audio']=>array() { // Monkey's Audio - lossless audio compression
880
['bitrate']=>double() //
881
['bits_per_sample']=>integer() //
882
['channels']=>integer() //
883
['compressed_size']=>integer() //
884
['compression']=>string() //
885
['compression_ratio']=>double() //
886
['flags']=>array() { //
887
['24-bit']=>boolean() //
888
['8-bit']=>boolean() //
889
['crc-32']=>boolean() //
890
['no_wav_header']=>boolean() //
891
['peak_level']=>boolean() //
892
['seek_elements']=>boolean() //
894
['frames']=>integer() //
895
['peak_level']=>integer() //
896
['peak_ratio']=>double() //
897
['playtime']=>double() //
898
['raw']=>array() { //
899
['header_tag']=>string() //
900
['nChannels']=>integer() //
901
['nCompressionLevel']=>integer() //
902
['nFinalFrameSamples']=>integer() //
903
['nFormatFlags']=>integer() //
904
['nPeakLevel']=>integer() //
905
['nSampleRate']=>integer() //
906
['nSeekElements']=>integer() //
907
['nTotalFrames']=>integer() //
908
['nVersion']=>integer() //
909
['nWAVHeaderBytes']=>integer() //
910
['nWAVTerminatingBytes']=>integer() //
912
['sample_rate']=>integer() //
913
['samples']=>integer() //
914
['samples_per_frame']=>integer() //
915
['uncompressed_size']=>integer() //
916
['version']=>double() //
920
['mpc']=>array() { // MPC (Musepack) - lossy audio compression
921
['header']=>array() { //
922
['album_gain_db']=>integer() //
923
['album_peak']=>integer() //
924
['album_peak_db']=>boolean() //
925
['title_gain_db']=>integer() //
926
['title_peak']=>integer() //
927
['title_peak_db']=>boolean() //
928
['begin_loud']=>boolean() //
929
['end_loud']=>boolean() //
930
['encoder_version']=>string() //
931
['frame_count']=>integer() //
932
['intensity_stereo']=>boolean() //
933
['last_frame_length']=>integer() //
934
['max_level']=>integer() //
935
['max_subband']=>integer() //
936
['mid_side_stereo']=>boolean() //
937
['profile']=>string() //
938
['sample_rate']=>integer() //
939
['samples']=>integer() //
940
['size']=>integer() //
941
['stream_major_version']=>integer() //
942
['stream_minor_version']=>integer() //
943
['true_gapless']=>boolean() //
944
['raw']=>array() { //
945
['album_gain']=>integer() //
946
['album_peak']=>integer() //
947
['encoder_version']=>integer() //
948
['preamble']=>string() //
949
['profile']=>integer() //
950
['sample_rate']=>integer() //
951
['title_gain']=>integer() //
952
['title_peak']=>integer() //
958
['mpeg']=>array() { // MPEG (Motion Picture Experts Group) - MPEG video and/or MPEG audio (MP3/MP2/MP1)
959
['audio']=>array() { //
960
['LAME']=>array() { //
961
['RGAD']=>array() { //
962
['peak_amplitude']=>double() //
964
['ath_type']=>integer() //
965
['audio_bytes']=>integer() //
966
['bitrate_min']=>integer() //
967
['encoder_delay']=>integer() //
968
['encoding_flags']=>array() { //
969
['nogap_next']=>boolean() //
970
['nogap_prev']=>boolean() //
971
['nspsytune']=>boolean() //
972
['nssafejoint']=>boolean() //
974
['end_padding']=>integer() //
975
['lame_tag_crc']=>integer() //
976
['lowpass_frequency']=>integer() //
977
['mp3_gain_db']=>double() //
978
['mp3_gain_factor']=>double() //
979
['mp3_gain_raw']=>integer() //
980
['music_crc']=>integer() //
981
['noise_shaping']=>integer() //
982
['noise_shaping_raw']=>integer() //
983
['not_optimal_quality']=>boolean() //
984
['not_optimal_quality_raw']=>integer() //
985
['preset_used_id']=>integer() //
986
['short_version']=>string() // ex: "LAME 3.93"
987
['long_version']=>string() // (pre-v3.90 only) ex: "LAME 3.88 (alpha)"
988
['source_sample_freq']=>string() //
989
['source_sample_freq_raw']=>integer() //
990
['stereo_mode']=>string() //
991
['stereo_mode_raw']=>integer() //
992
['surround_info']=>string() //
993
['surround_info_id']=>integer() //
994
['tag_revision']=>integer() //
995
['vbr_method']=>string() //
996
['vbr_method_raw']=>integer() //
998
['VBR_bitrate']=>double() //
999
['VBR_bytes']=>integer() //
1000
['VBR_frames']=>integer() //
1001
['VBR_method']=>string() //
1002
['VBR_scale']=>integer() //
1003
['bitrate']=>integer() //
1004
['bitrate_distribution']=>array() { //
1005
['free']=>integer() //
1007
['16']=>integer() //
1008
['24']=>integer() //
1009
['32']=>integer() //
1010
['40']=>integer() //
1011
['48']=>integer() //
1012
['56']=>integer() //
1013
['64']=>integer() //
1014
['80']=>integer() //
1015
['96']=>integer() //
1016
['112']=>integer() //
1017
['128']=>integer() //
1018
['144']=>integer() //
1019
['160']=>integer() //
1021
['bitrate_mode']=>string() //
1022
['channelmode']=>string() //
1023
['channels']=>integer() //
1024
['copyright']=>boolean() //
1025
['crc']=>integer() //
1026
['emphasis']=>string() //
1027
['frame_count']=>integer() //
1028
['framelength']=>integer() //
1029
['layer']=>integer() //
1030
['modeextension']=>string() //
1031
['original']=>boolean() //
1032
['padding']=>boolean() //
1033
['private']=>boolean() //
1034
['protection']=>boolean() //
1035
['raw']=>array() { //
1036
['bitrate']=>integer() //
1037
['channelmode']=>integer() //
1038
['copyright']=>integer() //
1039
['emphasis']=>integer() //
1040
['layer']=>integer() //
1041
['modeextension']=>integer() //
1042
['original']=>integer() //
1043
['padding']=>integer() //
1044
['private']=>integer() //
1045
['protection']=>integer() //
1046
['sample_rate']=>integer() //
1047
['synch']=>integer() //
1048
['version']=>integer() //
1050
['sample_rate']=>integer() //
1051
['stereo_distribution']=>array() { //
1052
['dual channel']=>integer() //
1053
['joint stereo']=>integer() //
1054
['mono']=>integer() //
1055
['stereo']=>integer() //
1057
['toc']=>array() { //
1060
['version']=>string() //
1061
['version_distribution']=>array() { //
1064
['2.5']=>integer() //
1066
['xing_flags']=>array() { //
1067
['bytes']=>boolean() //
1068
['frames']=>boolean() //
1069
['toc']=>boolean() //
1070
['vbr_scale']=>boolean() //
1072
['xing_flags_raw']=>string() //
1074
['video']=>array() { //
1075
['bitrate']=>integer() //
1076
['bitrate_mode']=>string() //
1077
['frame_rate']=>double() //
1078
['framesize_horizontal']=>integer() //
1079
['framesize_vertical']=>integer() //
1080
['pixel_aspect_ratio']=>double() //
1081
['pixel_aspect_ratio_text']=>string() //
1082
['raw']=>array() { //
1083
['bitrate']=>integer() //
1084
['constrained_param_flag']=>integer() //
1085
['frame_rate']=>integer() //
1086
['framesize_horizontal']=>integer() //
1087
['framesize_vertical']=>integer() //
1088
['intra_quant_flag']=>integer() //
1089
['marker_bit']=>integer() //
1090
['pixel_aspect_ratio']=>integer() //
1091
['vbv_buffer_size']=>integer() //
1097
['nsv']=>array() { // NSV - Nullsoft Streaming Video
1098
['NSVf']=>array() { //
1099
['TOC_entries_1']=>integer() //
1100
['TOC_entries_2']=>integer() //
1101
['file_size']=>integer() //
1102
['header_length']=>integer() //
1103
['identifier']=>string() //
1104
['meta_size']=>integer() //
1105
['metadata']=>string() //
1106
['playtime_ms']=>integer() //
1108
['NSVs']=>array() { //
1109
['audio_codec']=>string() //
1110
['frame_rate']=>double() //
1111
['framerate_index']=>integer() //
1112
['identifier']=>string() //
1113
['offset']=>integer() //
1114
['resolution_x']=>integer() //
1115
['resolution_y']=>integer() //
1116
['unknown1b']=>integer() //
1117
['unknown1c']=>integer() //
1118
['unknown1d']=>integer() //
1119
['unknown2a']=>integer() //
1120
['unknown2b']=>integer() //
1121
['unknown2c']=>integer() //
1122
['unknown2d']=>integer() //
1123
['unknown3a']=>integer() //
1124
['unknown3b']=>integer() //
1125
['unknown3c']=>integer() //
1126
['unknown3d']=>integer() //
1127
['video_codec']=>string() //
1129
['comments']=>array() { //
1130
['aspect']=>string() //
1131
['title']=>string() //
1136
['ofr']=>array() { // OFR (OptimFROG) - lossless audio compression
1137
['COMP']=>array() { //
1139
['channel_configuration']=>string() //
1140
['crc_32']=>boolean() //
1141
['encoder']=>string() //
1142
['offset']=>integer() //
1143
['raw']=>array() { //
1144
['algorithm_id']=>integer() //
1145
['channel_configuration']=>integer() //
1146
['encoder_id']=>integer() //
1147
['sample_type']=>integer() //
1149
['sample_count']=>integer() //
1150
['sample_type']=>string() //
1151
['size']=>integer() //
1154
['HEAD']=>array() { //
1155
['offset']=>integer() //
1156
['size']=>integer() //
1158
['OFR ']=>array() { //
1159
['channel_config']=>integer() //
1160
['channels']=>integer() //
1161
['compression']=>string() //
1162
['encoder']=>string() //
1163
['offset']=>integer() //
1164
['raw']=>array() { //
1165
['compression']=>integer() //
1166
['encoder_id']=>integer() //
1167
['sample_type']=>integer() //
1169
['sample_rate']=>integer() //
1170
['sample_type']=>string() //
1171
['size']=>integer() //
1172
['total_samples']=>integer() //
1174
['TAIL']=>array() { //
1175
['offset']=>integer() //
1176
['size']=>integer() //
1181
['ogg']=>array() { // OGG - container format for Ogg Vorbis, OggFLAC, Speex, etc
1182
['bitrate_average']=>double() //
1183
['bitrate_max']=>integer() //
1184
['bitrate_min']=>integer() //
1185
['bitrate_nominal']=>integer() //
1186
['bitstreamversion']=>integer() //
1187
['blocksize_large']=>integer() //
1188
['blocksize_small']=>integer() //
1189
['comments']=>array() { // array of array of strings containing best data from any available metainformation tag (APE, ID3v2, ID3v1, Lyrics3, Vorbis, ASF, RIFF, Real, etc.)
1190
[<key name>]=>array() // <key name> can be anything, usually 'artist', 'title', etc. Contains array of one or more values (eg: multiple artists are possible)
1192
['comments_raw']=>array() { //
1194
['dataoffset']=>integer() //
1195
['key']=>string() //
1196
['size']=>integer() //
1197
['value']=>string() //
1200
['numberofchannels']=>integer() //
1201
['pageheader']=>array() { //
1203
['flags']=>array() { //
1204
['bos']=>boolean() //
1205
['eos']=>boolean() //
1206
['fresh']=>boolean() //
1208
['flags_raw']=>integer() //
1209
['header_end_offset']=>integer() //
1210
['packet_type']=>integer() //
1211
['page_checksum']=>double() //
1212
['page_end_offset']=>integer() //
1213
['page_length']=>integer() //
1214
['page_segments']=>integer() //
1215
['page_seqno']=>integer() //
1216
['page_start_offset']=>integer() //
1217
['pcm_abs_position']=>integer() //
1218
['segment_table']=>array() { //
1221
['stream_serialno']=>integer() //
1222
['stream_structver']=>integer() //
1223
['stream_type']=>string() //
1225
['eos']=>array() { //
1226
['flags']=>array() { //
1227
['bos']=>boolean() //
1228
['eos']=>boolean() //
1229
['fresh']=>boolean() //
1231
['flags_raw']=>integer() //
1232
['header_end_offset']=>integer() //
1233
['page_checksum']=>double() //
1234
['page_end_offset']=>integer() //
1235
['page_length']=>integer() //
1236
['page_segments']=>integer() //
1237
['page_seqno']=>integer() //
1238
['page_start_offset']=>integer() //
1239
['pcm_abs_position']=>integer() //
1240
['segment_table']=>array() { //
1243
['stream_serialno']=>integer() //
1244
['stream_structver']=>integer() //
1247
['samplerate']=>integer() //
1248
['samples']=>integer() //
1249
['stop_bit']=>integer() //
1250
['vendor']=>string() //
1254
['png']=>array() { // PNG (Portable Network Graphics) - still image
1255
['IDAT']=>array() { //
1257
['header']=>array() { //
1258
['crc']=>integer() //
1259
['data_length']=>integer() //
1260
['flags']=>array() { //
1261
['ancilliary']=>boolean() //
1262
['private']=>boolean() //
1263
['reserved']=>boolean() //
1264
['safe_to_copy']=>boolean() //
1266
['type_raw']=>double() //
1267
['type_text']=>string() //
1271
['IEND']=>array() { //
1272
['header']=>array() { //
1273
['crc']=>double() //
1274
['data']=>string() //
1275
['data_length']=>integer() //
1276
['flags']=>array() { //
1277
['ancilliary']=>boolean() //
1278
['private']=>boolean() //
1279
['reserved']=>boolean() //
1280
['safe_to_copy']=>boolean() //
1282
['type_raw']=>double() //
1283
['type_text']=>string() //
1286
['IHDR']=>array() { //
1287
['color_type']=>array() { //
1288
['alpha']=>boolean() //
1289
['palette']=>boolean() //
1290
['true_color']=>boolean() //
1292
['compression_method_text']=>string() //
1293
['header']=>array() { //
1294
['crc']=>double() //
1295
['data']=>string() //
1296
['data_length']=>integer() //
1297
['flags']=>array() { //
1298
['ancilliary']=>boolean() //
1299
['private']=>boolean() //
1300
['reserved']=>boolean() //
1301
['safe_to_copy']=>boolean() //
1303
['type_raw']=>double() //
1304
['type_text']=>string() //
1306
['height']=>integer() //
1307
['raw']=>array() { //
1308
['bit_depth']=>integer() //
1309
['color_type']=>integer() //
1310
['compression_method']=>integer() //
1311
['filter_method']=>integer() //
1312
['interlace_method']=>integer() //
1314
['width']=>integer() //
1316
['PLTE']=>array() { //
1317
['header']=>array() { //
1318
['crc']=>double() //
1319
['data']=>string() //
1320
['data_length']=>integer() //
1321
['flags']=>array() { //
1322
['ancilliary']=>boolean() //
1323
['private']=>boolean() //
1324
['reserved']=>boolean() //
1325
['safe_to_copy']=>boolean() //
1327
['type_raw']=>double() //
1328
['type_text']=>string() //
1332
['comments']=>array() { // array of array of strings containing best data from any available metainformation tag (APE, ID3v2, ID3v1, Lyrics3, Vorbis, ASF, RIFF, Real, etc.)
1333
[<key name>]=>array() // <key name> can be anything, usually 'artist', 'title', etc. Contains array of one or more values (eg: multiple artists are possible)
1335
['gAMA']=>array() { //
1336
['gamma']=>double() //
1337
['header']=>array() { //
1338
['crc']=>integer() //
1339
['data']=>string() //
1340
['data_length']=>integer() //
1341
['flags']=>array() { //
1342
['ancilliary']=>boolean() //
1343
['private']=>boolean() //
1344
['reserved']=>boolean() //
1345
['safe_to_copy']=>boolean() //
1347
['type_raw']=>double() //
1348
['type_text']=>string() //
1351
['oFFs']=>array() { //
1352
['header']=>array() { //
1353
['crc']=>double() //
1354
['data']=>string() //
1355
['data_length']=>integer() //
1356
['flags']=>array() { //
1357
['ancilliary']=>boolean() //
1358
['private']=>boolean() //
1359
['reserved']=>boolean() //
1360
['safe_to_copy']=>boolean() //
1362
['type_raw']=>double() //
1363
['type_text']=>string() //
1365
['position_x']=>integer() //
1366
['position_y']=>integer() //
1367
['unit']=>string() //
1368
['unit_specifier']=>integer() //
1370
['pHYs']=>array() { //
1371
['header']=>array() { //
1372
['crc']=>integer() //
1373
['data']=>string() //
1374
['data_length']=>integer() //
1375
['flags']=>array() { //
1376
['ancilliary']=>boolean() //
1377
['private']=>boolean() //
1378
['reserved']=>boolean() //
1379
['safe_to_copy']=>boolean() //
1381
['type_raw']=>double() //
1382
['type_text']=>string() //
1384
['pixels_per_unit_x']=>integer() //
1385
['pixels_per_unit_y']=>integer() //
1386
['unit']=>string() //
1387
['unit_specifier']=>integer() //
1389
['pcLb']=>array() { //
1390
['header']=>array() { //
1391
['crc']=>double() //
1392
['data']=>string() //
1393
['data_length']=>integer() //
1394
['flags']=>array() { //
1395
['ancilliary']=>boolean() //
1396
['private']=>boolean() //
1397
['reserved']=>boolean() //
1398
['safe_to_copy']=>boolean() //
1400
['type_raw']=>double() //
1401
['type_text']=>string() //
1404
['tEXt']=>array() { //
1405
['header']=>array() { //
1406
['crc']=>integer() //
1407
['data']=>string() //
1408
['data_length']=>integer() //
1409
['flags']=>array() { //
1410
['ancilliary']=>boolean() //
1411
['private']=>boolean() //
1412
['reserved']=>boolean() //
1413
['safe_to_copy']=>boolean() //
1415
['type_raw']=>double() //
1416
['type_text']=>string() //
1418
['keyword']=>string() //
1419
['text']=>string() //
1421
['tIME']=>array() { //
1422
['day']=>integer() //
1423
['header']=>array() { //
1424
['crc']=>integer() //
1425
['data']=>string() //
1426
['data_length']=>integer() //
1427
['flags']=>array() { //
1428
['ancilliary']=>boolean() //
1429
['private']=>boolean() //
1430
['reserved']=>boolean() //
1431
['safe_to_copy']=>boolean() //
1433
['type_raw']=>double() //
1434
['type_text']=>string() //
1436
['hour']=>integer() //
1437
['minute']=>integer() //
1438
['month']=>integer() //
1439
['second']=>integer() //
1440
['unix']=>integer() //
1441
['year']=>integer() //
1443
['tRNS']=>array() { //
1444
['header']=>array() { //
1445
['crc']=>double() //
1446
['data']=>string() //
1447
['data_length']=>integer() //
1448
['flags']=>array() { //
1449
['ancilliary']=>boolean() //
1450
['private']=>boolean() //
1451
['reserved']=>boolean() //
1452
['safe_to_copy']=>boolean() //
1454
['type_raw']=>double() //
1455
['type_text']=>string() //
1457
['transparent_color_blue']=>integer() //
1458
['transparent_color_green']=>integer() //
1459
['transparent_color_red']=>integer() //
1461
['zTXt']=>array() { //
1462
['compressed_text']=>string() //
1463
['compression_method']=>integer() //
1464
['compression_method_text']=>string() //
1465
['header']=>array() { //
1466
['crc']=>double() //
1467
['data']=>string() //
1468
['data_length']=>integer() //
1469
['flags']=>array() { //
1470
['ancilliary']=>boolean() //
1471
['private']=>boolean() //
1472
['reserved']=>boolean() //
1473
['safe_to_copy']=>boolean() //
1475
['type_raw']=>double() //
1476
['type_text']=>string() //
1478
['keyword']=>string() //
1479
['text']=>string() //
1484
['quicktime']=>array() { // Quicktime - video/audio
1486
['name']=>boolean() //
1487
['offset']=>integer() //
1488
['size']=>integer() //
1490
['audio']=>array() { //
1491
['bit_depth']=>integer() //
1492
['channels']=>integer() //
1493
['codec']=>string() //
1494
['sample_rate']=>double() //
1496
['free']=>array() { //
1497
['name']=>string() //
1498
['offset']=>integer() //
1499
['size']=>integer() //
1501
['mdat']=>array() { //
1502
['name']=>string() //
1503
['offset']=>integer() //
1504
['size']=>integer() //
1506
['moov']=>array() { //
1507
['hierarchy']=>string() //
1508
['name']=>string() //
1509
['offset']=>integer() //
1510
['size']=>integer() //
1511
['subatoms']=>array() // This is an undocumentably-complex recursive array, typically containing a huge amount of seemingly disorganized data. Avoid this like the plague.
1513
['time_scale']=>integer() //
1514
['display_scale']=>integer() // 1 = normal; 0.5 = half; 2 = double
1515
['video']=>array() { //
1516
['codec']=>string() //
1517
['color_depth']=>integer() //
1518
['color_depth_name']=>string() //
1519
['resolution_x']=>double() //
1520
['resolution_y']=>double() //
1522
['wide']=>array() { //
1523
['name']=>string() //
1524
['offset']=>integer() //
1525
['size']=>integer() //
1530
['real']=>array() { // Real (RealAudio / RealVideo) - audio/video
1531
['chunks']=>array() { //
1533
['file_version']=>integer() //
1534
['headers_count']=>integer() //
1535
['length']=>integer() //
1536
['name']=>string() //
1537
['object_version']=>integer() //
1538
['offset']=>integer() //
1541
['avg_bit_rate']=>integer() //
1542
['avg_packet_size']=>integer() //
1543
['data_offset']=>integer() //
1544
['duration']=>integer() //
1545
['flags']=>array() { //
1546
['live_broadcast']=>boolean() //
1547
['perfect_play']=>boolean() //
1548
['save_enabled']=>boolean() //
1550
['flags_raw']=>integer() //
1551
['index_offset']=>integer() //
1552
['length']=>integer() //
1553
['max_bit_rate']=>integer() //
1554
['max_packet_size']=>integer() //
1555
['name']=>string() //
1556
['num_packets']=>integer() //
1557
['num_streams']=>integer() //
1558
['object_version']=>integer() //
1559
['offset']=>integer() //
1560
['preroll']=>integer() //
1563
['comments']=>array() { //
1564
['artist']=>string() //
1565
['comment']=>string() //
1566
['title']=>string() //
1571
['riff']=>array() { // RIFF (Resource Interchange File Format) - audio/video container format (AVI, WAV, CDDA, etc)
1572
['AIFC']=>array() { //
1573
['COMM']=>array() { //
1575
['data']=>string() //
1576
['offset']=>integer() //
1577
['size']=>integer() //
1580
['FVER']=>array() { //
1582
['data']=>string() //
1583
['offset']=>integer() //
1584
['size']=>integer() //
1587
['INST']=>array() { //
1589
['data']=>string() //
1590
['offset']=>integer() //
1591
['size']=>integer() //
1594
['MARK']=>array() { //
1596
['data']=>string() //
1597
['offset']=>integer() //
1598
['size']=>integer() //
1601
['SSND']=>array() { //
1603
['offset']=>integer() //
1604
['size']=>integer() //
1608
['AIFF']=>array() { //
1609
['(c) ']=>array() { //
1611
['data']=>string() //
1612
['offset']=>integer() //
1613
['size']=>integer() //
1616
['COMM']=>array() { //
1618
['data']=>string() //
1619
['offset']=>integer() //
1620
['size']=>integer() //
1623
['SSND']=>array() { //
1625
['offset']=>integer() //
1626
['size']=>integer() //
1630
['AVI ']=>array() { //
1631
['JUNK']=>array() { //
1633
['data']=>string() //
1634
['offset']=>integer() //
1635
['size']=>integer() //
1638
['hdrl']=>array() { //
1639
['avih']=>array() { //
1641
['data']=>string() //
1642
['offset']=>integer() //
1643
['size']=>integer() //
1646
['odml']=>array() { //
1647
['dmlh']=>array() { //
1649
['data']=>string() //
1650
['offset']=>integer() //
1651
['size']=>integer() //
1655
['strl']=>array() { //
1656
['JUNK']=>array() { //
1658
['offset']=>integer() //
1659
['size']=>integer() //
1662
['strf']=>array() { //
1664
['data']=>string() //
1665
['offset']=>integer() //
1666
['size']=>integer() //
1669
['strh']=>array() { //
1671
['data']=>string() //
1672
['offset']=>integer() //
1673
['size']=>integer() //
1676
['strn']=>array() { //
1678
['data']=>string() //
1679
['offset']=>integer() //
1680
['size']=>integer() //
1685
['idx1']=>array() { //
1687
['data']=>string() //
1688
['offset']=>integer() //
1689
['size']=>integer() //
1692
['movi']=>array() { //
1693
['offset']=>integer() //
1694
['size']=>integer() //
1697
['CDDA']=>array() { //
1698
['fmt ']=>array() { //
1700
['data']=>string() //
1701
['disc_id']=>integer() //
1702
['offset']=>integer() //
1703
['playtime_frames']=>integer() //
1704
['playtime_seconds']=>double() //
1705
['size']=>integer() //
1706
['start_offset_frame']=>integer() //
1707
['start_offset_seconds']=>double() //
1708
['track_num']=>integer() //
1709
['unknown1']=>integer() //
1710
['unknown6']=>integer() //
1711
['unknown7']=>integer() //
1715
['WAVE']=>array() { //
1716
['DISP']=>array() { //
1718
['data']=>string() //
1719
['offset']=>integer() //
1720
['size']=>integer() //
1723
['INFO']=>array() { //
1724
['IART']=>array() { //
1726
['data']=>string() //
1727
['offset']=>integer() //
1728
['size']=>integer() //
1731
['ICMT']=>array() { //
1733
['data']=>string() //
1734
['offset']=>integer() //
1735
['size']=>integer() //
1738
['ICOP']=>array() { //
1740
['data']=>string() //
1741
['offset']=>integer() //
1742
['size']=>integer() //
1745
['IENG']=>array() { //
1747
['data']=>string() //
1748
['offset']=>integer() //
1749
['size']=>integer() //
1752
['IGNR']=>array() { //
1754
['data']=>string() //
1755
['offset']=>integer() //
1756
['size']=>integer() //
1759
['IKEY']=>array() { //
1761
['data']=>string() //
1762
['offset']=>integer() //
1763
['size']=>integer() //
1766
['IMED']=>array() { //
1768
['data']=>string() //
1769
['offset']=>integer() //
1770
['size']=>integer() //
1773
['INAM']=>array() { //
1775
['data']=>string() //
1776
['offset']=>integer() //
1777
['size']=>integer() //
1780
['ISBJ']=>array() { //
1782
['data']=>string() //
1783
['offset']=>integer() //
1784
['size']=>integer() //
1787
['ISFT']=>array() { //
1789
['data']=>string() //
1790
['offset']=>integer() //
1791
['size']=>integer() //
1794
['ISRC']=>array() { //
1796
['data']=>string() //
1797
['offset']=>integer() //
1798
['size']=>integer() //
1801
['ISRF']=>array() { //
1803
['data']=>string() //
1804
['offset']=>integer() //
1805
['size']=>integer() //
1808
['ITCH']=>array() { //
1810
['data']=>string() //
1811
['offset']=>integer() //
1812
['size']=>integer() //
1816
['MEXT']=>array() { //
1818
['anciliary_data_length']=>integer() //
1819
['data']=>string() //
1820
['flags']=>array() { //
1821
['anciliary_data_free']=>boolean() //
1822
['anciliary_data_left']=>boolean() //
1823
['anciliary_data_right']=>boolean() //
1824
['homogenous']=>boolean() //
1826
['offset']=>integer() //
1827
['raw']=>array() { //
1828
['anciliary_data_def']=>integer() //
1829
['sound_information']=>integer() //
1831
['size']=>integer() //
1834
['bext']=>array() { //
1836
['author']=>string() //
1837
['bwf_version']=>integer() //
1838
['coding_history']=>array() { //
1841
['data']=>string() //
1842
['offset']=>integer() //
1843
['origin_date']=>string() //
1844
['origin_date_unix']=>integer() //
1845
['origin_time']=>string() //
1846
['reference']=>string() //
1847
['reserved']=>integer() //
1848
['size']=>integer() //
1849
['time_reference']=>integer() //
1850
['title']=>string() //
1853
['cart']=>array() { //
1855
['artist']=>string() //
1856
['category']=>string() //
1857
['classification']=>string() //
1858
['client_id']=>string() //
1859
['cut_id']=>string() //
1860
['data']=>string() //
1861
['end_date']=>string() //
1862
['end_time']=>string() //
1863
['offset']=>integer() //
1864
['out_cue']=>string() //
1865
['post_time']=>array() { //
1867
['timer_value']=>integer() //
1868
['usage_fourcc']=>string() //
1871
['producer_app_id']=>string() //
1872
['producer_app_version']=>string() //
1873
['size']=>integer() //
1874
['start_date']=>string() //
1875
['start_time']=>string() //
1876
['tag_text']=>array() { //
1879
['title']=>string() //
1880
['url']=>string() //
1881
['user_defined_text']=>string() //
1882
['version']=>string() //
1883
['zero_db_reference']=>integer() //
1886
['data']=>array() { //
1888
['offset']=>integer() //
1889
['size']=>integer() //
1892
['fact']=>array() { //
1894
['data']=>string() //
1895
['offset']=>integer() //
1896
['size']=>integer() //
1899
['fmt ']=>array() { //
1901
['data']=>string() //
1902
['offset']=>integer() //
1903
['size']=>integer() //
1906
['rgad']=>array() { //
1908
['data']=>string() //
1909
['offset']=>integer() //
1910
['size']=>integer() //
1914
['audio']=>array() { //
1916
['bitrate']=>integer() //
1917
['bits_per_sample']=>integer() //
1918
['channels']=>integer() //
1919
['codec']=>string() //
1920
['sample_rate']=>integer() //
1922
['bits_per_sample']=>integer() //
1923
['channels']=>integer() //
1924
['codec_fourcc']=>string() //
1925
['codec_name']=>string() //
1926
['sample_rate']=>integer() //
1927
['total_samples']=>integer() //
1929
['comments']=>array() { // array of array of strings containing best data from any available metainformation tag (APE, ID3v2, ID3v1, Lyrics3, Vorbis, ASF, RIFF, Real, etc.)
1930
[<key name>]=>array() // <key name> can be anything, usually 'artist', 'title', etc. Contains array of one or more values (eg: multiple artists are possible)
1932
['header_size']=>integer() //
1933
['raw']=>array() { //
1934
['avih']=>array() { //
1935
['dwFlags']=>integer() //
1936
['dwHeight']=>integer() //
1937
['dwInitialFrames']=>integer() //
1938
['dwLength']=>integer() //
1939
['dwMaxBytesPerSec']=>integer() //
1940
['dwMicroSecPerFrame']=>integer() //
1941
['dwPaddingGranularity']=>integer() //
1942
['dwRate']=>integer() //
1943
['dwScale']=>integer() //
1944
['dwStart']=>integer() //
1945
['dwStreams']=>integer() //
1946
['dwSuggestedBufferSize']=>integer() //
1947
['dwTotalFrames']=>integer() //
1948
['dwWidth']=>integer() //
1949
['flags']=>array() { //
1950
['capturedfile']=>boolean() //
1951
['copyrighted']=>boolean() //
1952
['hasindex']=>boolean() //
1953
['interleaved']=>boolean() //
1954
['mustuseindex']=>boolean() //
1955
['trustcktype']=>boolean() //
1958
['fact']=>array() { //
1959
['NumberOfSamples']=>integer() //
1961
['fmt ']=>array() { //
1962
['nAvgBytesPerSec']=>integer() //
1963
['wBitsPerSample']=>integer() //
1964
['nBlockAlign']=>integer() //
1965
['nChannels']=>integer() //
1966
['nSamplesPerSec']=>integer() //
1967
['wFormatTag']=>integer() //
1969
['rgad']=>array() { //
1970
['audiophile']=>array() { //
1971
['adjustment']=>integer() //
1972
['name']=>integer() //
1973
['originator']=>integer() //
1974
['signbit']=>integer() //
1976
['fPeakAmplitude']=>double() //
1977
['nAudiophileRgAdjust']=>integer() //
1978
['nRadioRgAdjust']=>integer() //
1979
['radio']=>array() { //
1980
['adjustment']=>integer() //
1981
['name']=>integer() //
1982
['originator']=>integer() //
1983
['signbit']=>integer() //
1986
['strf']=>array() { //
1987
['auds']=>array() { //
1989
['nAvgBytesPerSec']=>integer() //
1990
['wBitsPerSample']=>integer() //
1991
['nBlockAlign']=>integer() //
1992
['nChannels']=>integer() //
1993
['nSamplesPerSec']=>integer() //
1994
['wFormatTag']=>integer() //
1997
['vids']=>array() { //
1999
['biBitCount']=>integer() //
2000
['biClrImportant']=>integer() //
2001
['biClrUsed']=>integer() //
2002
['biHeight']=>integer() //
2003
['biPlanes']=>integer() //
2004
['biSize']=>integer() //
2005
['biSizeImage']=>integer() //
2006
['biWidth']=>integer() //
2007
['biXPelsPerMeter']=>integer() //
2008
['biYPelsPerMeter']=>integer() //
2009
['fourcc']=>string() //
2013
['strh']=>array() { //
2015
['dwFlags']=>integer() //
2016
['dwInitialFrames']=>integer() //
2017
['dwLength']=>integer() //
2018
['dwQuality']=>integer() //
2019
['dwRate']=>integer() //
2020
['dwSampleSize']=>integer() //
2021
['dwScale']=>integer() //
2022
['dwStart']=>integer() //
2023
['dwSuggestedBufferSize']=>integer() //
2024
['fccHandler']=>string() //
2025
['fccType']=>string() //
2026
['rcFrame']=>integer() //
2027
['wLanguage']=>integer() //
2028
['wPriority']=>integer() //
2032
['rgad']=>array() { //
2033
['audiophile']=>array() { //
2034
['adjustment']=>double() //
2035
['name']=>string() //
2036
['originator']=>string() //
2038
['peakamplitude']=>double() //
2039
['radio']=>array() { //
2040
['adjustment']=>double() //
2041
['name']=>string() //
2042
['originator']=>string() //
2045
['video']=>array() { //
2047
['codec']=>string() //
2048
['frame_height']=>integer() //
2049
['frame_rate']=>double() //
2050
['frame_width']=>integer() //
2053
['litewave']=>array() { // http://www.clearjump.com
2054
['raw']=>array() { //
2055
['compression_method']=>integer() // 1=lossy; 2=lossless
2056
['compression_flags']=>integer() //
2057
['m_dwScale']=>integer() // scalefactor for lossy compression - related to m_wQuality as: $m_wQuality = round((2000 - $m_dwScale) / 20)
2058
['m_dwBlockSize']=>integer() // number of samples in encoded blocks
2059
['m_wQuality']=>integer() // quality factor (0=most compressed lossy; 99=best quality lossy; 100=lossless)
2060
['m_wMarkDistance']=>integer() // distance between marks in bytes
2061
['m_wReserved']=>integer() //
2062
['m_dwOrgSize']=>integer() // original file size in bytes
2063
['m_bFactExists']=>integer() // indicates if 'fact' chunk exists in the original file
2064
['m_dwRiffChunkSize']=>integer() // riff chunk size in the original file
2066
['quality_factor']=>integer() // alias of ['raw']['m_wQuality']
2071
['shn']=>array() { // Shorten - lossless audio compression
2072
['seektable']=>array() { //
2073
['length']=>integer() //
2074
['offset']=>integer() //
2075
['present']=>boolean() //
2077
['version']=>integer() //
2081
['swf']=>array() { // SWF - ShockWave Flash (www.openswf.org)
2082
['header']=>array() { //
2083
['frame_count']=>integer() //
2084
['frame_height']=>integer() //
2085
['frame_width']=>integer() //
2086
['length']=>integer() //
2087
['signature']=>string() //
2088
['version']=>integer() //
2090
['bgcolor']=>string() //
2091
['tags']=>array() //
2095
['voc']=>array() { // VOC - SoundBlaster VOC audio format
2096
['blocks']=>array() { //
2098
['bits_per_sample']=>integer() //
2099
['block_offset']=>integer() //
2100
['block_size']=>integer() //
2101
['block_type_id']=>integer() //
2102
['channels']=>integer() //
2103
['compression_name']=>string() //
2104
['compression_type']=>integer() //
2105
['pack_method']=>integer() //
2106
['sample_rate']=>integer() //
2107
['sample_rate_id']=>integer() //
2108
['stereo']=>boolean() //
2109
['time_constant']=>integer() //
2110
['wFormat']=>integer() //
2113
['compressed_bits_per_sample']=>integer() //
2114
['header']=>array() { //
2115
['datablock_offset']=>integer() //
2116
['major_version']=>integer() //
2117
['minor_version']=>integer() //
2122
['vqf']=>array() { // VQF - transform-domain weighted interleave Vector Quantization Format (lossy audio)
2123
['COMM']=>array() { //
2124
['bitrate']=>integer() //
2125
['channel_mode']=>integer() //
2126
['sample_rate']=>integer() //
2127
['security_level']=>integer() //
2129
['DSIZ']=>integer() //
2130
['comments']=>array() { // array of array of strings containing best data from any available metainformation tag (APE, ID3v2, ID3v1, Lyrics3, Vorbis, ASF, RIFF, Real, etc.)
2131
[<key name>]=>array() // <key name> can be anything, usually 'artist', 'title', etc. Contains array of one or more values (eg: multiple artists are possible)
2133
['raw']=>array() { //
2134
['header_tag']=>string() //
2135
['size']=>integer() //
2136
['version']=>string() //
2141
['wavpack']=>array() { // WavPack - lossless audio compression
2142
['bits']=>integer() //
2143
['crc1']=>double() //
2144
['crc2']=>integer() //
2145
['extension']=>string() //
2146
['extra_bc']=>string() //
2147
['extras']=>string() //
2148
['flags_raw']=>integer() //
2149
['offset']=>integer() //
2150
['shift']=>integer() //
2151
['size']=>integer() //
2152
['total_samples']=>integer() //
2153
['version']=>integer() //
2157
['zip']=>array() { // ZIP - lossless data compression
2158
['central_directory']=>array() { //
2160
['compressed_size']=>integer() //
2161
['compression_method']=>string() //
2162
['create_version']=>string() //
2163
['entry_offset']=>integer() //
2164
['extract_version']=>string() //
2165
['filename']=>string() //
2166
['flags']=>array() { //
2167
['compression_speed']=>string() //
2168
['data_descriptor_used']=>boolean() //
2169
['encrypted']=>boolean() //
2171
['host_os']=>string() //
2172
['last_modified_timestamp']=>integer() //
2173
['offset']=>integer() //
2174
['raw']=>array() { //
2175
['compressed_size']=>integer() //
2176
['compression_method']=>integer() //
2177
['crc_32']=>double() //
2178
['create_version']=>integer() //
2179
['disk_number_start']=>integer() //
2180
['external_file_attrib']=>double() //
2181
['extra_field_length']=>integer() //
2182
['extract_version']=>integer() //
2183
['file_comment_length']=>integer() //
2184
['filename_length']=>integer() //
2185
['general_flags']=>integer() //
2186
['internal_file_attrib']=>integer() //
2187
['last_mod_file_date']=>integer() //
2188
['last_mod_file_time']=>integer() //
2189
['local_header_offset']=>integer() //
2190
['signature']=>integer() //
2191
['uncompressed_size']=>integer() //
2193
['uncompressed_size']=>integer() //
2196
['comments']=>array() { //
2197
['comment']=>string() //
2199
['compressed_size']=>integer() //
2200
['compression_method']=>string() //
2201
['compression_speed']=>string() //
2202
['end_central_directory']=>array() { //
2203
['comment']=>string() //
2204
['comment_length']=>integer() //
2205
['directory_entries_this_disk']=>integer() //
2206
['directory_entries_total']=>integer() //
2207
['directory_offset']=>integer() //
2208
['directory_size']=>integer() //
2209
['disk_number_current']=>integer() //
2210
['disk_number_start_directory']=>integer() //
2211
['offset']=>integer() //
2212
['signature']=>integer() //
2214
['entries']=>array() { //
2216
['compressed_size']=>integer() //
2217
['compression_method']=>string() //
2218
['extract_version']=>string() //
2219
['filename']=>string() //
2220
['flags']=>array() { //
2221
['compression_speed']=>string() //
2222
['data_descriptor_used']=>boolean() //
2223
['encrypted']=>boolean() //
2225
['host_os']=>string() //
2226
['last_modified_timestamp']=>integer() //
2227
['offset']=>integer() //
2228
['raw']=>array() { //
2229
['compressed_size']=>integer() //
2230
['compression_method']=>integer() //
2231
['crc_32']=>integer() //
2232
['extra_field_length']=>integer() //
2233
['extract_version']=>integer() //
2234
['filename_length']=>integer() //
2235
['general_flags']=>integer() //
2236
['last_mod_file_date']=>integer() //
2237
['last_mod_file_time']=>integer() //
2238
['signature']=>integer() //
2239
['uncompressed_size']=>integer() //
2241
['uncompressed_size']=>integer() //
2244
['entries_count']=>integer() //
2245
['files']=>array() { // multidimensional tree-structure array listing of all files and directories in image
2246
[<directory name>]=>array() // entries of type array are directories (key is directory name), may contain files and/or other subdirectories
2247
[<file name>]=>integer() // entries of type integer are files (key is file name, value is file size in bytes)
2249
['uncompressed_size']=>integer() //