1
1
mirror of https://github.com/wader/fq.git synced 2024-11-28 11:42:50 +03:00
fq/format/matroska/testdata/vorbis.fqtest
Mattias Wadman 1b32b42f93 decode: Major decode API refactor
Generate more code
More generic and comfortable API
Improve and Update format decoder to new API
Add some more format tests
2021-11-15 21:12:07 +01:00

488 lines
61 KiB
Plaintext

# ffmpeg -f lavfi -i sine -ac 2 -strict experimental -c:a vorbis -f matroska -t 50ms vorbis.mkv
$ fq -d matroska verbose /vorbis.mkv
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.: {} /vorbis.mkv (matroska) 0x0-0x10fa.7 (4347)
| | | elements: [2] 0x0-0x10fa.7 (4347)
| | | [0]: element {} 0x0-0x27.7 (40)
0x0000|1a 45 df a3 |.E.. | id: "EBML" (0x1a45dfa3) 0x0-0x3.7 (4)
| | | type: "master" (7) 0x4-NA (0)
0x0000| a3 | . | size: 35 0x4-0x4.7 (1)
| | | elements: [7] 0x5-0x27.7 (35)
| | | [0]: element {} 0x5-0x8.7 (4)
0x0000| 42 86 | B. | id: "EBMLVersion" (0x4286) 0x5-0x6.7 (2)
| | | type: "uinteger" (1) 0x7-NA (0)
0x0000| 81 | . | size: 1 0x7-0x7.7 (1)
0x0000| 01 | . | value: 1 0x8-0x8.7 (1)
| | | [1]: element {} 0x9-0xc.7 (4)
0x0000| 42 f7 | B. | id: "EBMLReadVersion" (0x42f7) 0x9-0xa.7 (2)
| | | type: "uinteger" (1) 0xb-NA (0)
0x0000| 81 | . | size: 1 0xb-0xb.7 (1)
0x0000| 01 | . | value: 1 0xc-0xc.7 (1)
| | | [2]: element {} 0xd-0x10.7 (4)
0x0000| 42 f2 | B. | id: "EBMLMaxIDLength" (0x42f2) 0xd-0xe.7 (2)
| | | type: "uinteger" (1) 0xf-NA (0)
0x0000| 81| .| size: 1 0xf-0xf.7 (1)
0x0010|04 |. | value: 4 0x10-0x10.7 (1)
| | | [3]: element {} 0x11-0x14.7 (4)
0x0010| 42 f3 | B. | id: "EBMLMaxSizeLength" (0x42f3) 0x11-0x12.7 (2)
| | | type: "uinteger" (1) 0x13-NA (0)
0x0010| 81 | . | size: 1 0x13-0x13.7 (1)
0x0010| 08 | . | value: 8 0x14-0x14.7 (1)
| | | [4]: element {} 0x15-0x1f.7 (11)
0x0010| 42 82 | B. | id: "DocType" (0x4282) 0x15-0x16.7 (2)
| | | type: "string" (3) 0x17-NA (0)
0x0010| 88 | . | size: 8 0x17-0x17.7 (1)
0x0010| 6d 61 74 72 6f 73 6b 61| matroska| value: "matroska" 0x18-0x1f.7 (8)
| | | [5]: element {} 0x20-0x23.7 (4)
0x0020|42 87 |B. | id: "DocTypeVersion" (0x4287) 0x20-0x21.7 (2)
| | | type: "uinteger" (1) 0x22-NA (0)
0x0020| 81 | . | size: 1 0x22-0x22.7 (1)
0x0020| 04 | . | value: 4 0x23-0x23.7 (1)
| | | [6]: element {} 0x24-0x27.7 (4)
0x0020| 42 85 | B. | id: "DocTypeReadVersion" (0x4285) 0x24-0x25.7 (2)
| | | type: "uinteger" (1) 0x26-NA (0)
0x0020| 81 | . | size: 1 0x26-0x26.7 (1)
0x0020| 02 | . | value: 2 0x27-0x27.7 (1)
| | | [1]: element {} 0x28-0x10fa.7 (4307)
0x0020| 18 53 80 67 | .S.g | id: "Segment" (0x18538067) 0x28-0x2b.7 (4)
| | | type: "master" (7) 0x2c-NA (0)
0x0020| 01 00 00 00| ....| size: 4295 0x2c-0x33.7 (8)
0x0030|00 00 10 c7 |.... |
| | | elements: [7] 0x34-0x10fa.7 (4295)
| | | [0]: element {} 0x34-0x78.7 (69)
0x0030| 11 4d 9b 74 | .M.t | id: "SeekHead" (0x114d9b74) (Contains the Segment Position of other Top-Level Elements.) 0x34-0x37.7 (4)
| | | type: "master" (7) 0x38-NA (0)
0x0030| c0 | . | size: 64 0x38-0x38.7 (1)
| | | elements: [5] 0x39-0x78.7 (64)
| | | [0]: element {} 0x39-0x3e.7 (6)
0x0030| bf | . | id: "CRC-32" (0xbf) 0x39-0x39.7 (1)
| | | type: "binary" (6) 0x3a-NA (0)
0x0030| 84 | . | size: 4 0x3a-0x3a.7 (1)
0x0030| 90 29 34 92 | .)4. | value: raw bits 0x3b-0x3e.7 (4)
| | | [1]: element {} 0x3f-0x4c.7 (14)
0x0030| 4d| M| id: "Seek" (0x4dbb) (Contains a single seek entry to an EBML Element.) 0x3f-0x40.7 (2)
0x0040|bb |. |
| | | type: "master" (7) 0x41-NA (0)
0x0040| 8b | . | size: 11 0x41-0x41.7 (1)
| | | elements: [2] 0x42-0x4c.7 (11)
| | | [0]: element {} 0x42-0x48.7 (7)
0x0040| 53 ab | S. | id: "SeekID" (0x53ab) (The binary ID corresponding to the Element name.) 0x42-0x43.7 (2)
| | | type: "binary" (6) 0x44-NA (0)
0x0040| 84 | . | size: 4 0x44-0x44.7 (1)
0x0040| 15 49 a9 66 | .I.f | value: raw bits 0x45-0x48.7 (4)
| | | [1]: element {} 0x49-0x4c.7 (4)
0x0040| 53 ac | S. | id: "SeekPosition" (0x53ac) (The Segment Position of the Element.) 0x49-0x4a.7 (2)
| | | type: "uinteger" (1) 0x4b-NA (0)
0x0040| 81 | . | size: 1 0x4b-0x4b.7 (1)
0x0040| a1 | . | value: 161 0x4c-0x4c.7 (1)
| | | [2]: element {} 0x4d-0x5a.7 (14)
0x0040| 4d bb | M. | id: "Seek" (0x4dbb) (Contains a single seek entry to an EBML Element.) 0x4d-0x4e.7 (2)
| | | type: "master" (7) 0x4f-NA (0)
0x0040| 8b| .| size: 11 0x4f-0x4f.7 (1)
| | | elements: [2] 0x50-0x5a.7 (11)
| | | [0]: element {} 0x50-0x56.7 (7)
0x0050|53 ab |S. | id: "SeekID" (0x53ab) (The binary ID corresponding to the Element name.) 0x50-0x51.7 (2)
| | | type: "binary" (6) 0x52-NA (0)
0x0050| 84 | . | size: 4 0x52-0x52.7 (1)
0x0050| 16 54 ae 6b | .T.k | value: raw bits 0x53-0x56.7 (4)
| | | [1]: element {} 0x57-0x5a.7 (4)
0x0050| 53 ac | S. | id: "SeekPosition" (0x53ac) (The Segment Position of the Element.) 0x57-0x58.7 (2)
| | | type: "uinteger" (1) 0x59-NA (0)
0x0050| 81 | . | size: 1 0x59-0x59.7 (1)
0x0050| f1 | . | value: 241 0x5a-0x5a.7 (1)
| | | [3]: element {} 0x5b-0x69.7 (15)
0x0050| 4d bb | M. | id: "Seek" (0x4dbb) (Contains a single seek entry to an EBML Element.) 0x5b-0x5c.7 (2)
| | | type: "master" (7) 0x5d-NA (0)
0x0050| 8c | . | size: 12 0x5d-0x5d.7 (1)
| | | elements: [2] 0x5e-0x69.7 (12)
| | | [0]: element {} 0x5e-0x64.7 (7)
0x0050| 53 ab| S.| id: "SeekID" (0x53ab) (The binary ID corresponding to the Element name.) 0x5e-0x5f.7 (2)
| | | type: "binary" (6) 0x60-NA (0)
0x0060|84 |. | size: 4 0x60-0x60.7 (1)
0x0060| 12 54 c3 67 | .T.g | value: raw bits 0x61-0x64.7 (4)
| | | [1]: element {} 0x65-0x69.7 (5)
0x0060| 53 ac | S. | id: "SeekPosition" (0x53ac) (The Segment Position of the Element.) 0x65-0x66.7 (2)
| | | type: "uinteger" (1) 0x67-NA (0)
0x0060| 82 | . | size: 2 0x67-0x67.7 (1)
0x0060| 0e 22 | ." | value: 3618 0x68-0x69.7 (2)
| | | [4]: element {} 0x6a-0x78.7 (15)
0x0060| 4d bb | M. | id: "Seek" (0x4dbb) (Contains a single seek entry to an EBML Element.) 0x6a-0x6b.7 (2)
| | | type: "master" (7) 0x6c-NA (0)
0x0060| 8c | . | size: 12 0x6c-0x6c.7 (1)
| | | elements: [2] 0x6d-0x78.7 (12)
| | | [0]: element {} 0x6d-0x73.7 (7)
0x0060| 53 ab | S. | id: "SeekID" (0x53ab) (The binary ID corresponding to the Element name.) 0x6d-0x6e.7 (2)
| | | type: "binary" (6) 0x6f-NA (0)
0x0060| 84| .| size: 4 0x6f-0x6f.7 (1)
0x0070|1c 53 bb 6b |.S.k | value: raw bits 0x70-0x73.7 (4)
| | | [1]: element {} 0x74-0x78.7 (5)
0x0070| 53 ac | S. | id: "SeekPosition" (0x53ac) (The Segment Position of the Element.) 0x74-0x75.7 (2)
| | | type: "uinteger" (1) 0x76-NA (0)
0x0070| 82 | . | size: 2 0x76-0x76.7 (1)
0x0070| 10 ab | .. | value: 4267 0x77-0x78.7 (2)
| | | [1]: element {} 0x79-0xd4.7 (92)
0x0070| ec | . | id: "Void" (0xec) 0x79-0x79.7 (1)
| | | type: "binary" (6) 0x7a-NA (0)
0x0070| 01 00 00 00 00 00| ......| size: 83 0x7a-0x81.7 (8)
0x0080|00 53 |.S |
0x0080| 00 00 00 00 00 00 00 00 00 00 00 00 00 00| ..............| value: raw bits 0x82-0xd4.7 (83)
0x0090|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................|
* |until 0xd4.7 (83) | |
| | | [2]: element {} 0xd5-0x124.7 (80)
0x00d0| 15 49 a9 66 | .I.f | id: "Info" (0x1549a966) (Contains general information about the Segment.) 0xd5-0xd8.7 (4)
| | | type: "master" (7) 0xd9-NA (0)
0x00d0| cb | . | size: 75 0xd9-0xd9.7 (1)
| | | elements: [6] 0xda-0x124.7 (75)
| | | [0]: element {} 0xda-0xdf.7 (6)
0x00d0| bf | . | id: "CRC-32" (0xbf) 0xda-0xda.7 (1)
| | | type: "binary" (6) 0xdb-NA (0)
0x00d0| 84 | . | size: 4 0xdb-0xdb.7 (1)
0x00d0| c8 e4 2e a2| ....| value: raw bits 0xdc-0xdf.7 (4)
| | | [1]: element {} 0xe0-0xe6.7 (7)
0x00e0|2a d7 b1 |*.. | id: "TimestampScale" (0x2ad7b1) (Timestamp scale in nanoseconds (1.000.000 means all timestamps in the Segment are expressed in milliseconds).) 0xe0-0xe2.7 (3)
| | | type: "uinteger" (1) 0xe3-NA (0)
0x00e0| 83 | . | size: 3 0xe3-0xe3.7 (1)
0x00e0| 0f 42 40 | .B@ | value: 1000000 0xe4-0xe6.7 (3)
| | | [2]: element {} 0xe7-0xf6.7 (16)
0x00e0| 4d 80 | M. | id: "MuxingApp" (0x4d80) (Muxing application or library (example: "libmatroska-0.4.3").) 0xe7-0xe8.7 (2)
| | | type: "UTF8" (4) 0xe9-NA (0)
0x00e0| 8d | . | size: 13 0xe9-0xe9.7 (1)
0x00e0| 4c 61 76 66 35 38| Lavf58| value: "Lavf58.45.100" 0xea-0xf6.7 (13)
0x00f0|2e 34 35 2e 31 30 30 |.45.100 |
| | | [3]: element {} 0xf7-0x106.7 (16)
0x00f0| 57 41 | WA | id: "WritingApp" (0x5741) (Writing application (example: "mkvmerge-0.3.3").) 0xf7-0xf8.7 (2)
| | | type: "UTF8" (4) 0xf9-NA (0)
0x00f0| 8d | . | size: 13 0xf9-0xf9.7 (1)
0x00f0| 4c 61 76 66 35 38| Lavf58| value: "Lavf58.45.100" 0xfa-0x106.7 (13)
0x0100|2e 34 35 2e 31 30 30 |.45.100 |
| | | [4]: element {} 0x107-0x119.7 (19)
0x0100| 73 a4 | s. | id: "SegmentUID" (0x73a4) (A randomly generated unique ID to identify the Segment amongst many others (128 bits).) 0x107-0x108.7 (2)
| | | type: "binary" (6) 0x109-NA (0)
0x0100| 90 | . | size: 16 0x109-0x109.7 (1)
0x0100| 55 86 bb 9d 18 21| U....!| value: raw bits 0x10a-0x119.7 (16)
0x0110|a2 81 c3 5e 58 4d 99 67 81 5b |...^XM.g.[ |
| | | [5]: element {} 0x11a-0x124.7 (11)
0x0110| 44 89 | D. | id: "Duration" (0x4489) (Duration of the Segment in nanoseconds based on TimestampScale.) 0x11a-0x11b.7 (2)
| | | type: "float" (2) 0x11c-NA (0)
0x0110| 88 | . | size: 8 0x11c-0x11c.7 (1)
0x0110| 40 49 00| @I.| value: 50 0x11d-0x124.7 (8)
0x0120|00 00 00 00 00 |..... |
| | | [3]: element {} 0x125-0xe55.7 (3377)
0x0120| 16 54 ae 6b | .T.k | id: "Tracks" (0x1654ae6b) (A Top-Level Element of information with many tracks described.) 0x125-0x128.7 (4)
| | | type: "master" (7) 0x129-NA (0)
0x0120| 4d 2b | M+ | size: 3371 0x129-0x12a.7 (2)
| | | elements: [2] 0x12b-0xe55.7 (3371)
| | | [0]: element {} 0x12b-0x130.7 (6)
0x0120| bf | . | id: "CRC-32" (0xbf) 0x12b-0x12b.7 (1)
| | | type: "binary" (6) 0x12c-NA (0)
0x0120| 84 | . | size: 4 0x12c-0x12c.7 (1)
0x0120| 09 8a 9a| ...| value: raw bits 0x12d-0x130.7 (4)
0x0130|0d |. |
| | | [1]: element {} 0x131-0xe55.7 (3365)
0x0130| ae | . | id: "TrackEntry" (0xae) (Describes a track with all Elements.) 0x131-0x131.7 (1)
| | | type: "master" (7) 0x132-NA (0)
0x0130| 01 00 00 00 00 00 0d 1c | ........ | size: 3356 0x132-0x139.7 (8)
| | | elements: [8] 0x13a-0xe55.7 (3356)
| | | [0]: element {} 0x13a-0x13c.7 (3)
0x0130| d7 | . | id: "TrackNumber" (0xd7) (The track number as used in the Block Header (using more than 127 tracks is not encouraged, though the design allows an unlimited number).) 0x13a-0x13a.7 (1)
| | | type: "uinteger" (1) 0x13b-NA (0)
0x0130| 81 | . | size: 1 0x13b-0x13b.7 (1)
0x0130| 01 | . | value: 1 0x13c-0x13c.7 (1)
| | | [1]: element {} 0x13d-0x147.7 (11)
0x0130| 73 c5 | s. | id: "TrackUID" (0x73c5) (A unique ID to identify the Track. This SHOULD be kept the same when making a direct stream copy of the Track to another file.) 0x13d-0x13e.7 (2)
| | | type: "uinteger" (1) 0x13f-NA (0)
0x0130| 88| .| size: 8 0x13f-0x13f.7 (1)
0x0140|2e 55 8d bf 90 c9 26 0f |.U....&. | value: 3338730552672462351 0x140-0x147.7 (8)
| | | [2]: element {} 0x148-0x14a.7 (3)
0x0140| 9c | . | id: "FlagLacing" (0x9c) (Set if the track MAY contain blocks using lacing. (1 bit)) 0x148-0x148.7 (1)
| | | type: "uinteger" (1) 0x149-NA (0)
0x0140| 81 | . | size: 1 0x149-0x149.7 (1)
0x0140| 00 | . | value: 0 0x14a-0x14a.7 (1)
| | | [3]: element {} 0x14b-0x151.7 (7)
0x0140| 22 b5 9c | ".. | id: "Language" (0x22b59c) (Specifies the language of the track in the . This Element MUST be ignored if the LanguageIETF Element is used in the same TrackEntry.) 0x14b-0x14d.7 (3)
| | | type: "string" (3) 0x14e-NA (0)
0x0140| 83 | . | size: 3 0x14e-0x14e.7 (1)
0x0140| 75| u| value: "und" 0x14f-0x151.7 (3)
0x0150|6e 64 |nd |
| | | [4]: element {} 0x152-0x15b.7 (10)
0x0150| 86 | . | id: "CodecID" (0x86) (An ID corresponding to the codec, see the for more info.) 0x152-0x152.7 (1)
| | | type: "string" (3) 0x153-NA (0)
0x0150| 88 | . | size: 8 0x153-0x153.7 (1)
0x0150| 41 5f 56 4f 52 42 49 53 | A_VORBIS | value: "A_VORBIS" 0x154-0x15b.7 (8)
| | | [5]: element {} 0x15c-0x15e.7 (3)
0x0150| 83 | . | id: "TrackType" (0x83) (A set of track types coded on 8 bits.) 0x15c-0x15c.7 (1)
| | | type: "uinteger" (1) 0x15d-NA (0)
0x0150| 81 | . | size: 1 0x15d-0x15d.7 (1)
0x0150| 02 | . | value: "audio" (2) 0x15e-0x15e.7 (1)
| | | [6]: element {} 0x15f-0x171.7 (19)
0x0150| e1| .| id: "Audio" (0xe1) (Audio settings.) 0x15f-0x15f.7 (1)
| | | type: "master" (7) 0x160-NA (0)
0x0160|91 |. | size: 17 0x160-0x160.7 (1)
| | | elements: [3] 0x161-0x171.7 (17)
| | | [0]: element {} 0x161-0x163.7 (3)
0x0160| 9f | . | id: "Channels" (0x9f) (Numbers of channels in the track.) 0x161-0x161.7 (1)
| | | type: "uinteger" (1) 0x162-NA (0)
0x0160| 81 | . | size: 1 0x162-0x162.7 (1)
0x0160| 02 | . | value: 2 0x163-0x163.7 (1)
| | | [1]: element {} 0x164-0x16d.7 (10)
0x0160| b5 | . | id: "SamplingFrequency" (0xb5) (Sampling frequency in Hz.) 0x164-0x164.7 (1)
| | | type: "float" (2) 0x165-NA (0)
0x0160| 88 | . | size: 8 0x165-0x165.7 (1)
0x0160| 40 e5 88 80 00 00 00 00 | @....... | value: 44100 0x166-0x16d.7 (8)
| | | [2]: element {} 0x16e-0x171.7 (4)
0x0160| 62 64| bd| id: "BitDepth" (0x6264) (Bits per sample, mostly used for PCM.) 0x16e-0x16f.7 (2)
| | | type: "uinteger" (1) 0x170-NA (0)
0x0170|81 |. | size: 1 0x170-0x170.7 (1)
0x0170| 20 | | value: 32 0x171-0x171.7 (1)
| | | [7]: element {} 0x172-0xe55.7 (3300)
0x0170| 63 a2 | c. | id: "CodecPrivate" (0x63a2) (Private data only known to the codec.) 0x172-0x173.7 (2)
| | | type: "binary" (6) 0x174-NA (0)
0x0170| 4c e0 | L. | size: 3296 0x174-0x175.7 (2)
0x0170| 02 | . | num_packets: 2 0x176-0x176.7 (1)
| | | laces: [2] 0x177-0x178.7 (2)
0x0170| 1e | . | [0]: lace 30 0x177-0x177.7 (1)
0x0170| 10 | . | [1]: lace 16 0x178-0x178.7 (1)
| | | packets: [3] 0x179-0xe55.7 (3293)
| | | [0]: packet {} (vorbis_packet) 0x179-0x196.7 (30)
0x0170| 01 | . | packet_type: "Identification" (1) 0x179-0x179.7 (1)
0x0170| 76 6f 72 62 69 73| vorbis| magic: "vorbis" (valid) 0x17a-0x17f.7 (6)
0x0180|00 00 00 00 |.... | vorbis_version: 0 (valid) 0x180-0x183.7 (4)
0x0180| 02 | . | audio_channels: 2 0x184-0x184.7 (1)
0x0180| 44 ac 00 00 | D... | audio_sample_rate: 44100 0x185-0x188.7 (4)
0x0180| 00 00 00 00 | .... | bitrate_maximum: 0 0x189-0x18c.7 (4)
0x0180| 00 00 00| ...| bitrate_nominal: 0 0x18d-0x190.7 (4)
0x0190|00 |. |
0x0190| 00 00 00 00 | .... | bitrate_minimum: 0 0x191-0x194.7 (4)
0x0190| bb | . | blocksize_1: 2048 0x195-0x195.3 (0.4)
0x0190| bb | . | blocksize_0: 2048 0x195.4-0x195.7 (0.4)
0x0190| 01 | . | padding0: raw bits (all zero) 0x196-0x196.6 (0.7)
0x0190| 01 | . | framing_flag: 1 (valid) 0x196.7-0x196.7 (0.1)
| | | [1]: packet {} (vorbis_packet) 0x197-0x1a6.7 (16)
0x0190| 03 | . | packet_type: "Comment" (3) 0x197-0x197.7 (1)
0x0190| 76 6f 72 62 69 73 | vorbis | magic: "vorbis" (valid) 0x198-0x19d.7 (6)
| | | comment: {} (vorbis_comment) 0x19e-0x1a5.7 (8)
0x0190| 00 00| ..| vendor_length: 0 0x19e-0x1a1.7 (4)
0x01a0|00 00 |.. |
| | | vendor: "" 0x1a2-NA (0)
0x01a0| 00 00 00 00 | .... | user_comment_list_length: 0 0x1a2-0x1a5.7 (4)
| | | user_comments: [0] 0x1a6-NA (0)
0x01a0| 01 | . | padding0: raw bits (all zero) 0x1a6-0x1a6.6 (0.7)
0x01a0| 01 | . | frame_bit: 1 (valid) 0x1a6.7-0x1a6.7 (0.1)
| | | [2]: packet {} (vorbis_packet) 0x1a7-0xe55.7 (3247)
0x01a0| 05 | . | packet_type: "Setup" (5) 0x1a7-0x1a7.7 (1)
0x01a0| 76 6f 72 62 69 73 | vorbis | magic: "vorbis" (valid) 0x1a8-0x1ad.7 (6)
0x01a0| 1c | . | vorbis_codebook_count: 29 0x1ae-0x1ae.7 (1)
0x01a0| 42| B| codecooke_sync: 0x564342 (valid) 0x1af-0x1b1.7 (3)
0x01b0|43 56 |CV |
0x01b0| 02 00 | .. | codebook_dimensions: 2 0x1b2-0x1b3.7 (2)
0x01b0| 10 00 00 | ... | codebook_entries: 16 0x1b4-0x1b6.7 (3)
0x01b0| 84 74 9a 59 aa 01 22 cc 40| .t.Y..".@| unknown0: raw bits 0x1b7-0xe55.7 (3231)
0x01c0|86 81 d0 90 95 00 00 02 00 00 60 84 22 0c 31 20|..........`.".1 |
* |until 0xe55.7 (3231) | |
| | | [4]: element {} 0xe56-0xefa.7 (165)
0x0e50| 12 54 c3 67 | .T.g | id: "Tags" (0x1254c367) (Element containing metadata describing Tracks, Editions, Chapters, Attachments, or the Segment as a whole. A list of valid tags can be found) 0xe56-0xe59.7 (4)
| | | type: "master" (7) 0xe5a-NA (0)
0x0e50| 40 9f | @. | size: 159 0xe5a-0xe5b.7 (2)
| | | elements: [3] 0xe5c-0xefa.7 (159)
| | | [0]: element {} 0xe5c-0xe61.7 (6)
0x0e50| bf | . | id: "CRC-32" (0xbf) 0xe5c-0xe5c.7 (1)
| | | type: "binary" (6) 0xe5d-NA (0)
0x0e50| 84 | . | size: 4 0xe5d-0xe5d.7 (1)
0x0e50| 9f 31| .1| value: raw bits 0xe5e-0xe61.7 (4)
0x0e60|b2 9c |.. |
| | | [1]: element {} 0xe62-0xe92.7 (49)
0x0e60| 73 73 | ss | id: "Tag" (0x7373) (A single metadata descriptor.) 0xe62-0xe63.7 (2)
| | | type: "master" (7) 0xe64-NA (0)
0x0e60| 01 00 00 00 00 00 00 27 | .......' | size: 39 0xe64-0xe6b.7 (8)
| | | elements: [2] 0xe6c-0xe92.7 (39)
| | | [0]: element {} 0xe6c-0xe6e.7 (3)
0x0e60| 63 c0 | c. | id: "Targets" (0x63c0) (Specifies which other elements the metadata represented by the Tag applies to. If empty or not present, then the Tag describes everything in the Segment.) 0xe6c-0xe6d.7 (2)
| | | type: "master" (7) 0xe6e-NA (0)
0x0e60| 80 | . | size: 0 0xe6e-0xe6e.7 (1)
| | | elements: [0] 0xe6f-NA (0)
| | | [1]: element {} 0xe6f-0xe92.7 (36)
0x0e60| 67| g| id: "SimpleTag" (0x67c8) (Contains general information about the target.) 0xe6f-0xe70.7 (2)
0x0e70|c8 |. |
| | | type: "master" (7) 0xe71-NA (0)
0x0e70| 01 00 00 00 00 00 00 1a | ........ | size: 26 0xe71-0xe78.7 (8)
| | | elements: [2] 0xe79-0xe92.7 (26)
| | | [0]: element {} 0xe79-0xe82.7 (10)
0x0e70| 45 a3 | E. | id: "TagName" (0x45a3) (The name of the Tag that is going to be stored.) 0xe79-0xe7a.7 (2)
| | | type: "UTF8" (4) 0xe7b-NA (0)
0x0e70| 87 | . | size: 7 0xe7b-0xe7b.7 (1)
0x0e70| 45 4e 43 4f| ENCO| value: "ENCODER" 0xe7c-0xe82.7 (7)
0x0e80|44 45 52 |DER |
| | | [1]: element {} 0xe83-0xe92.7 (16)
0x0e80| 44 87 | D. | id: "TagString" (0x4487) (The value of the Tag.) 0xe83-0xe84.7 (2)
| | | type: "UTF8" (4) 0xe85-NA (0)
0x0e80| 8d | . | size: 13 0xe85-0xe85.7 (1)
0x0e80| 4c 61 76 66 35 38 2e 34 35 2e| Lavf58.45.| value: "Lavf58.45.100" 0xe86-0xe92.7 (13)
0x0e90|31 30 30 |100 |
| | | [2]: element {} 0xe93-0xefa.7 (104)
0x0e90| 73 73 | ss | id: "Tag" (0x7373) (A single metadata descriptor.) 0xe93-0xe94.7 (2)
| | | type: "master" (7) 0xe95-NA (0)
0x0e90| 01 00 00 00 00 00 00 5e | .......^ | size: 94 0xe95-0xe9c.7 (8)
| | | elements: [3] 0xe9d-0xefa.7 (94)
| | | [0]: element {} 0xe9d-0xeaa.7 (14)
0x0e90| 63 c0 | c. | id: "Targets" (0x63c0) (Specifies which other elements the metadata represented by the Tag applies to. If empty or not present, then the Tag describes everything in the Segment.) 0xe9d-0xe9e.7 (2)
| | | type: "master" (7) 0xe9f-NA (0)
0x0e90| 8b| .| size: 11 0xe9f-0xe9f.7 (1)
| | | elements: [1] 0xea0-0xeaa.7 (11)
| | | [0]: element {} 0xea0-0xeaa.7 (11)
0x0ea0|63 c5 |c. | id: "TagTrackUID" (0x63c5) (A unique ID to identify the Track(s) the tags belong to. If the value is 0 at this level, the tags apply to all tracks in the Segment.) 0xea0-0xea1.7 (2)
| | | type: "uinteger" (1) 0xea2-NA (0)
0x0ea0| 88 | . | size: 8 0xea2-0xea2.7 (1)
0x0ea0| 2e 55 8d bf 90 c9 26 0f | .U....&. | value: 3338730552672462351 0xea3-0xeaa.7 (8)
| | | [1]: element {} 0xeab-0xed5.7 (43)
0x0ea0| 67 c8 | g. | id: "SimpleTag" (0x67c8) (Contains general information about the target.) 0xeab-0xeac.7 (2)
| | | type: "master" (7) 0xead-NA (0)
0x0ea0| 01 00 00| ...| size: 33 0xead-0xeb4.7 (8)
0x0eb0|00 00 00 00 21 |....! |
| | | elements: [2] 0xeb5-0xed5.7 (33)
| | | [0]: element {} 0xeb5-0xebe.7 (10)
0x0eb0| 45 a3 | E. | id: "TagName" (0x45a3) (The name of the Tag that is going to be stored.) 0xeb5-0xeb6.7 (2)
| | | type: "UTF8" (4) 0xeb7-NA (0)
0x0eb0| 87 | . | size: 7 0xeb7-0xeb7.7 (1)
0x0eb0| 45 4e 43 4f 44 45 52 | ENCODER | value: "ENCODER" 0xeb8-0xebe.7 (7)
| | | [1]: element {} 0xebf-0xed5.7 (23)
0x0eb0| 44| D| id: "TagString" (0x4487) (The value of the Tag.) 0xebf-0xec0.7 (2)
0x0ec0|87 |. |
| | | type: "UTF8" (4) 0xec1-NA (0)
0x0ec0| 94 | . | size: 20 0xec1-0xec1.7 (1)
0x0ec0| 4c 61 76 63 35 38 2e 39 31 2e 31 30 30 20| Lavc58.91.100 | value: "Lavc58.91.100 vorbis" 0xec2-0xed5.7 (20)
0x0ed0|76 6f 72 62 69 73 |vorbis |
| | | [2]: element {} 0xed6-0xefa.7 (37)
0x0ed0| 67 c8 | g. | id: "SimpleTag" (0x67c8) (Contains general information about the target.) 0xed6-0xed7.7 (2)
| | | type: "master" (7) 0xed8-NA (0)
0x0ed0| a2 | . | size: 34 0xed8-0xed8.7 (1)
| | | elements: [2] 0xed9-0xefa.7 (34)
| | | [0]: element {} 0xed9-0xee3.7 (11)
0x0ed0| 45 a3 | E. | id: "TagName" (0x45a3) (The name of the Tag that is going to be stored.) 0xed9-0xeda.7 (2)
| | | type: "UTF8" (4) 0xedb-NA (0)
0x0ed0| 88 | . | size: 8 0xedb-0xedb.7 (1)
0x0ed0| 44 55 52 41| DURA| value: "DURATION" 0xedc-0xee3.7 (8)
0x0ee0|54 49 4f 4e |TION |
| | | [1]: element {} 0xee4-0xefa.7 (23)
0x0ee0| 44 87 | D. | id: "TagString" (0x4487) (The value of the Tag.) 0xee4-0xee5.7 (2)
| | | type: "UTF8" (4) 0xee6-NA (0)
0x0ee0| 94 | . | size: 20 0xee6-0xee6.7 (1)
0x0ee0| 30 30 3a 30 30 3a 30 30 2e| 00:00:00.| value: "00:00:00.050000000" 0xee7-0xefa.7 (20)
0x0ef0|30 35 30 30 30 30 30 30 30 00 00 |050000000.. |
| | | [5]: element {} 0xefb-0x10de.7 (484)
0x0ef0| 1f 43 b6 75 | .C.u | id: "Cluster" (0x1f43b675) (The Top-Level Element containing the (monolithic) Block structure.) 0xefb-0xefe.7 (4)
| | | type: "master" (7) 0xeff-NA (0)
0x0ef0| 41| A| size: 478 0xeff-0xf00.7 (2)
0x0f00|de |. |
| | | elements: [5] 0xf01-0x10de.7 (478)
| | | [0]: element {} 0xf01-0xf06.7 (6)
0x0f00| bf | . | id: "CRC-32" (0xbf) 0xf01-0xf01.7 (1)
| | | type: "binary" (6) 0xf02-NA (0)
0x0f00| 84 | . | size: 4 0xf02-0xf02.7 (1)
0x0f00| c7 72 04 8d | .r.. | value: raw bits 0xf03-0xf06.7 (4)
| | | [1]: element {} 0xf07-0xf09.7 (3)
0x0f00| e7 | . | id: "Timestamp" (0xe7) (Absolute timestamp of the cluster (based on TimestampScale).) 0xf07-0xf07.7 (1)
| | | type: "uinteger" (1) 0xf08-NA (0)
0x0f00| 81 | . | size: 1 0xf08-0xf08.7 (1)
0x0f00| 00 | . | value: 0 0xf09-0xf09.7 (1)
| | | [2]: element {} 0xf0a-0xfc6.7 (189)
0x0f00| a3 | . | id: "SimpleBlock" (0xa3) (Similar to but without all the extra information, mostly used to reduced overhead when no extra feature is needed. (see )) 0xf0a-0xf0a.7 (1)
| | | type: "binary" (6) 0xf0b-NA (0)
0x0f00| 40 ba | @. | size: 186 0xf0b-0xf0c.7 (2)
0x0f00| 81 | . | track_number: 1 0xf0d-0xf0d.7 (1)
0x0f00| 00 00| ..| timestamp: 0 0xf0e-0xf0f.7 (2)
| | | flags: {} 0xf10-0xf10.7 (1)
0x0f10|80 |. | key_frame: true 0xf10-0xf10 (0.1)
0x0f10|80 |. | reserved: 0 0xf10.1-0xf10.3 (0.3)
0x0f10|80 |. | invisible: false 0xf10.4-0xf10.4 (0.1)
0x0f10|80 |. | lacing: 0 0xf10.5-0xf10.6 (0.2)
0x0f10|80 |. | discardable: false 0xf10.7-0xf10.7 (0.1)
| | | packet: {} (vorbis_packet) 0xf11-0xf11.7 (1)
0x0f10| be | . | packet_type: "Audio" (0) 0xf11-0xf11.7 (1)
0x0f10| b7 f2 81 46 74 15 42 0b 52 08 17 32 8e 43| ...Ft.B.R..2.C| data: raw bits 0xf12-0xfc6.7 (181)
0x0f20|08 65 84 84 f6 56 3e d0 88 ae 42 68 41 0a e1 42|.e...V>...BhA..B|
* |until 0xfc6.7 (181) | |
| | | [3]: element {} 0xfc7-0x1018.7 (82)
0x0fc0| a3 | . | id: "SimpleBlock" (0xa3) (Similar to but without all the extra information, mostly used to reduced overhead when no extra feature is needed. (see )) 0xfc7-0xfc7.7 (1)
| | | type: "binary" (6) 0xfc8-NA (0)
0x0fc0| d0 | . | size: 80 0xfc8-0xfc8.7 (1)
0x0fc0| 81 | . | track_number: 1 0xfc9-0xfc9.7 (1)
0x0fc0| 00 17 | .. | timestamp: 23 0xfca-0xfcb.7 (2)
| | | flags: {} 0xfcc-0xfcc.7 (1)
0x0fc0| 80 | . | key_frame: true 0xfcc-0xfcc (0.1)
0x0fc0| 80 | . | reserved: 0 0xfcc.1-0xfcc.3 (0.3)
0x0fc0| 80 | . | invisible: false 0xfcc.4-0xfcc.4 (0.1)
0x0fc0| 80 | . | lacing: 0 0xfcc.5-0xfcc.6 (0.2)
0x0fc0| 80 | . | discardable: false 0xfcc.7-0xfcc.7 (0.1)
| | | packet: {} (vorbis_packet) 0xfcd-0xfcd.7 (1)
0x0fc0| be | . | packet_type: "Audio" (0) 0xfcd-0xfcd.7 (1)
0x0fc0| 13 a2| ..| data: raw bits 0xfce-0x1018.7 (75)
0x0fd0|9b 06 0a b6 ff 13 10 ff 25 62 ec 8f d9 f7 a2 11|........%b......|
* |until 0x1018.7 (75) | |
| | | [4]: element {} 0x1019-0x10de.7 (198)
0x1010| a0 | . | id: "BlockGroup" (0xa0) (Basic container of information containing a single Block and information specific to that Block.) 0x1019-0x1019.7 (1)
| | | type: "master" (7) 0x101a-NA (0)
0x1010| 01 00 00 00 00 00| ......| size: 189 0x101a-0x1021.7 (8)
0x1020|00 bd |.. |
| | | elements: [2] 0x1022-0x10de.7 (189)
| | | [0]: element {} 0x1022-0x10d7.7 (182)
0x1020| a1 | . | id: "Block" (0xa1) (Block containing the actual data to be rendered and a timestamp relative to the Cluster Timestamp. (see )) 0x1022-0x1022.7 (1)
| | | type: "binary" (6) 0x1023-NA (0)
0x1020| 40 b3 | @. | size: 179 0x1023-0x1024.7 (2)
0x1020| 81 | . | track_number: 1 0x1025-0x1025.7 (1)
0x1020| 00 2e | .. | timestamp: 46 0x1026-0x1027.7 (2)
| | | flags: {} 0x1028-0x1028.7 (1)
0x1020| 00 | . | reserved: 0 0x1028-0x1028.3 (0.4)
0x1020| 00 | . | invisible: false 0x1028.4-0x1028.4 (0.1)
0x1020| 00 | . | lacing: 0 0x1028.5-0x1028.6 (0.2)
0x1020| 00 | . | not_used: false 0x1028.7-0x1028.7 (0.1)
| | | packet: {} (vorbis_packet) 0x1029-0x1029.7 (1)
0x1020| be | . | packet_type: "Audio" (0) 0x1029-0x1029.7 (1)
0x1020| a7 f2 81 46 bb c2| ...F..| data: raw bits 0x102a-0x10d7.7 (174)
0x1030|48 52 08 27 b8 83 10 ca 08 b1 a7 f2 81 46 bb c2|HR.'.........F..|
* |until 0x10d7.7 (174) | |
| | | [1]: element {} 0x10d8-0x10de.7 (7)
0x10d0| 75 a2 | u. | id: "DiscardPadding" (0x75a2) (Duration in nanoseconds of the silent data added to the Block (padding at the end of the Block for positive value, at the beginning of the Block for negative value). The duration of DiscardPadding is not calculated in the duration of the TrackEntry and SHOULD be discarded during playback.) 0x10d8-0x10d9.7 (2)
| | | type: "integer" (0) 0x10da-NA (0)
0x10d0| 84 | . | size: 4 0x10da-0x10da.7 (1)
0x10d0| 01 1f e0 25 | ...% | value: 18866213 0x10db-0x10de.7 (4)
| | | [6]: element {} 0x10df-0x10fa.7 (28)
0x10d0| 1c| .| id: "Cues" (0x1c53bb6b) (A Top-Level Element to speed seeking access. All entries are local to the Segment.) 0x10df-0x10e2.7 (4)
0x10e0|53 bb 6b |S.k |
| | | type: "master" (7) 0x10e3-NA (0)
0x10e0| 97 | . | size: 23 0x10e3-0x10e3.7 (1)
| | | elements: [2] 0x10e4-0x10fa.7 (23)
| | | [0]: element {} 0x10e4-0x10e9.7 (6)
0x10e0| bf | . | id: "CRC-32" (0xbf) 0x10e4-0x10e4.7 (1)
| | | type: "binary" (6) 0x10e5-NA (0)
0x10e0| 84 | . | size: 4 0x10e5-0x10e5.7 (1)
0x10e0| 9d ea 5a 51 | ..ZQ | value: raw bits 0x10e6-0x10e9.7 (4)
| | | [1]: element {} 0x10ea-0x10fa.7 (17)
0x10e0| bb | . | id: "CuePoint" (0xbb) (Contains all information relative to a seek point in the Segment.) 0x10ea-0x10ea.7 (1)
| | | type: "master" (7) 0x10eb-NA (0)
0x10e0| 8f | . | size: 15 0x10eb-0x10eb.7 (1)
| | | elements: [2] 0x10ec-0x10fa.7 (15)
| | | [0]: element {} 0x10ec-0x10ee.7 (3)
0x10e0| b3 | . | id: "CueTime" (0xb3) (Absolute timestamp according to the Segment time base.) 0x10ec-0x10ec.7 (1)
| | | type: "uinteger" (1) 0x10ed-NA (0)
0x10e0| 81 | . | size: 1 0x10ed-0x10ed.7 (1)
0x10e0| 00 | . | value: 0 0x10ee-0x10ee.7 (1)
| | | [1]: element {} 0x10ef-0x10fa.7 (12)
0x10e0| b7| .| id: "CueTrackPositions" (0xb7) (Contain positions for different tracks corresponding to the timestamp.) 0x10ef-0x10ef.7 (1)
| | | type: "master" (7) 0x10f0-NA (0)
0x10f0|8a |. | size: 10 0x10f0-0x10f0.7 (1)
| | | elements: [3] 0x10f1-0x10fa.7 (10)
| | | [0]: element {} 0x10f1-0x10f3.7 (3)
0x10f0| f7 | . | id: "CueTrack" (0xf7) (The track for which a position is given.) 0x10f1-0x10f1.7 (1)
| | | type: "uinteger" (1) 0x10f2-NA (0)
0x10f0| 81 | . | size: 1 0x10f2-0x10f2.7 (1)
0x10f0| 01 | . | value: 1 0x10f3-0x10f3.7 (1)
| | | [1]: element {} 0x10f4-0x10f7.7 (4)
0x10f0| f1 | . | id: "CueClusterPosition" (0xf1) (The Segment Position of the Cluster containing the associated Block.) 0x10f4-0x10f4.7 (1)
| | | type: "uinteger" (1) 0x10f5-NA (0)
0x10f0| 82 | . | size: 2 0x10f5-0x10f5.7 (1)
0x10f0| 0e c7 | .. | value: 3783 0x10f6-0x10f7.7 (2)
| | | [2]: element {} 0x10f8-0x10fa.7 (3)
0x10f0| f0 | . | id: "CueRelativePosition" (0xf0) (The relative position inside the Cluster of the referenced SimpleBlock or BlockGroup with 0 being the first possible position for an Element inside that Cluster.) 0x10f8-0x10f8.7 (1)
| | | type: "uinteger" (1) 0x10f9-NA (0)
0x10f0| 81 | . | size: 1 0x10f9-0x10f9.7 (1)
0x10f0| 09| | .| | value: 9 0x10fa-0x10fa.7 (1)