1
1
mirror of https://github.com/wader/fq.git synced 2024-12-29 00:22:38 +03:00
fq/format/matroska/testdata/vp9.fqtest
Mattias Wadman 051a70bd4b interp: Change bit ranges to use exclusive end
All other ranges and slicing uses exclusive end so i think it make sense
to make it consistent.

Update docs and add additional example for non-byte-aligned field.

Also fixes issue showing zero bit ranges as start-NA.
2023-10-20 15:37:26 +02:00

415 lines
49 KiB
Plaintext

# ffmpeg -f lavfi -i testsrc -c:v vp9 -f matroska -t 50ms vp9.mkv
$ fq -d matroska dv vp9.mkv
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: vp9.mkv (matroska) 0x0-0x1786 (6022)
| | | elements[0:2]: 0x0-0x1786 (6022)
| | | [0]{}: element 0x0-0x28 (40)
0x0000|1a 45 df a3 |.E.. | id: "ebml" (0x1a45dfa3) 0x0-0x4 (4)
| | | type: "master"
0x0000| a3 | . | size: 35 0x4-0x5 (1)
| | | elements[0:7]: 0x5-0x28 (35)
| | | [0]{}: element 0x5-0x9 (4)
0x0000| 42 86 | B. | id: "ebml_version" (0x4286) (EBML Version) 0x5-0x7 (2)
| | | type: "uinteger"
0x0000| 81 | . | size: 1 0x7-0x8 (1)
0x0000| 01 | . | value: 1 0x8-0x9 (1)
| | | [1]{}: element 0x9-0xd (4)
0x0000| 42 f7 | B. | id: "ebml_read_version" (0x42f7) (Minimum EBML reader version) 0x9-0xb (2)
| | | type: "uinteger"
0x0000| 81 | . | size: 1 0xb-0xc (1)
0x0000| 01 | . | value: 1 0xc-0xd (1)
| | | [2]{}: element 0xd-0x11 (4)
0x0000| 42 f2 | B. | id: "ebml_max_id_length" (0x42f2) (Maximum id length) 0xd-0xf (2)
| | | type: "uinteger"
0x0000| 81| .| size: 1 0xf-0x10 (1)
0x0010|04 |. | value: 4 0x10-0x11 (1)
| | | [3]{}: element 0x11-0x15 (4)
0x0010| 42 f3 | B. | id: "ebml_max_size_length" (0x42f3) (Maximum body length) 0x11-0x13 (2)
| | | type: "uinteger"
0x0010| 81 | . | size: 1 0x13-0x14 (1)
0x0010| 08 | . | value: 8 0x14-0x15 (1)
| | | [4]{}: element 0x15-0x20 (11)
0x0010| 42 82 | B. | id: "doc_type" (0x4282) (Document content type) 0x15-0x17 (2)
| | | type: "string"
0x0010| 88 | . | size: 8 0x17-0x18 (1)
0x0010| 6d 61 74 72 6f 73 6b 61| matroska| value: "matroska" 0x18-0x20 (8)
| | | [5]{}: element 0x20-0x24 (4)
0x0020|42 87 |B. | id: "doc_type_version" (0x4287) (Document type version) 0x20-0x22 (2)
| | | type: "uinteger"
0x0020| 81 | . | size: 1 0x22-0x23 (1)
0x0020| 04 | . | value: 4 0x23-0x24 (1)
| | | [6]{}: element 0x24-0x28 (4)
0x0020| 42 85 | B. | id: "doc_type_read_version" (0x4285) (Minimum document reader version) 0x24-0x26 (2)
| | | type: "uinteger"
0x0020| 81 | . | size: 1 0x26-0x27 (1)
0x0020| 02 | . | value: 2 0x27-0x28 (1)
| | | [1]{}: element 0x28-0x1786 (5982)
0x0020| 18 53 80 67 | .S.g | id: "segment" (0x18538067) (The Root Element that contains all other Top-Level Elements) 0x28-0x2c (4)
| | | type: "master"
0x0020| 01 00 00 00| ....| size: 5970 0x2c-0x34 (8)
0x0030|00 00 17 52 |...R |
| | | elements[0:7]: 0x34-0x1786 (5970)
| | | [0]{}: element 0x34-0x79 (69)
0x0030| 11 4d 9b 74 | .M.t | id: "seek_head" (0x114d9b74) (Contains seeking information of Top-Level Elements) 0x34-0x38 (4)
| | | type: "master"
0x0030| c0 | . | size: 64 0x38-0x39 (1)
| | | elements[0:5]: 0x39-0x79 (64)
| | | [0]{}: element 0x39-0x3f (6)
0x0030| bf | . | id: "crc32" (0xbf) 0x39-0x3a (1)
| | | type: "binary"
0x0030| 84 | . | size: 4 0x3a-0x3b (1)
0x0030| bc 1f 24 7a | ..$z | value: raw bits 0x3b-0x3f (4)
| | | [1]{}: element 0x3f-0x4d (14)
0x0030| 4d| M| id: "seek" (0x4dbb) (Contains a single seek entry to an EBML Element) 0x3f-0x41 (2)
0x0040|bb |. |
| | | type: "master"
0x0040| 8b | . | size: 11 0x41-0x42 (1)
| | | elements[0:2]: 0x42-0x4d (11)
| | | [0]{}: element 0x42-0x49 (7)
0x0040| 53 ab | S. | id: "seek_id" (0x53ab) (The binary EBML ID of a Top-Level Element) 0x42-0x44 (2)
| | | type: "binary"
0x0040| 84 | . | size: 4 0x44-0x45 (1)
0x0040| 15 49 a9 66 | .I.f | value: raw bits 0x45-0x49 (4)
| | | [1]{}: element 0x49-0x4d (4)
0x0040| 53 ac | S. | id: "seek_position" (0x53ac) (The Segment Position of a Top-Level Element) 0x49-0x4b (2)
| | | type: "uinteger"
0x0040| 81 | . | size: 1 0x4b-0x4c (1)
0x0040| a1 | . | value: 161 0x4c-0x4d (1)
| | | [2]{}: element 0x4d-0x5b (14)
0x0040| 4d bb | M. | id: "seek" (0x4dbb) (Contains a single seek entry to an EBML Element) 0x4d-0x4f (2)
| | | type: "master"
0x0040| 8b| .| size: 11 0x4f-0x50 (1)
| | | elements[0:2]: 0x50-0x5b (11)
| | | [0]{}: element 0x50-0x57 (7)
0x0050|53 ab |S. | id: "seek_id" (0x53ab) (The binary EBML ID of a Top-Level Element) 0x50-0x52 (2)
| | | type: "binary"
0x0050| 84 | . | size: 4 0x52-0x53 (1)
0x0050| 16 54 ae 6b | .T.k | value: raw bits 0x53-0x57 (4)
| | | [1]{}: element 0x57-0x5b (4)
0x0050| 53 ac | S. | id: "seek_position" (0x53ac) (The Segment Position of a Top-Level Element) 0x57-0x59 (2)
| | | type: "uinteger"
0x0050| 81 | . | size: 1 0x59-0x5a (1)
0x0050| f1 | . | value: 241 0x5a-0x5b (1)
| | | [3]{}: element 0x5b-0x6a (15)
0x0050| 4d bb | M. | id: "seek" (0x4dbb) (Contains a single seek entry to an EBML Element) 0x5b-0x5d (2)
| | | type: "master"
0x0050| 8c | . | size: 12 0x5d-0x5e (1)
| | | elements[0:2]: 0x5e-0x6a (12)
| | | [0]{}: element 0x5e-0x65 (7)
0x0050| 53 ab| S.| id: "seek_id" (0x53ab) (The binary EBML ID of a Top-Level Element) 0x5e-0x60 (2)
| | | type: "binary"
0x0060|84 |. | size: 4 0x60-0x61 (1)
0x0060| 12 54 c3 67 | .T.g | value: raw bits 0x61-0x65 (4)
| | | [1]{}: element 0x65-0x6a (5)
0x0060| 53 ac | S. | id: "seek_position" (0x53ac) (The Segment Position of a Top-Level Element) 0x65-0x67 (2)
| | | type: "uinteger"
0x0060| 82 | . | size: 2 0x67-0x68 (1)
0x0060| 01 3f | .? | value: 319 0x68-0x6a (2)
| | | [4]{}: element 0x6a-0x79 (15)
0x0060| 4d bb | M. | id: "seek" (0x4dbb) (Contains a single seek entry to an EBML Element) 0x6a-0x6c (2)
| | | type: "master"
0x0060| 8c | . | size: 12 0x6c-0x6d (1)
| | | elements[0:2]: 0x6d-0x79 (12)
| | | [0]{}: element 0x6d-0x74 (7)
0x0060| 53 ab | S. | id: "seek_id" (0x53ab) (The binary EBML ID of a Top-Level Element) 0x6d-0x6f (2)
| | | type: "binary"
0x0060| 84| .| size: 4 0x6f-0x70 (1)
0x0070|1c 53 bb 6b |.S.k | value: raw bits 0x70-0x74 (4)
| | | [1]{}: element 0x74-0x79 (5)
0x0070| 53 ac | S. | id: "seek_position" (0x53ac) (The Segment Position of a Top-Level Element) 0x74-0x76 (2)
| | | type: "uinteger"
0x0070| 82 | . | size: 2 0x76-0x77 (1)
0x0070| 17 36 | .6 | value: 5942 0x77-0x79 (2)
| | | [1]{}: element 0x79-0xd5 (92)
0x0070| ec | . | id: "void" (0xec) 0x79-0x7a (1)
| | | type: "binary"
0x0070| 01 00 00 00 00 00| ......| size: 83 0x7a-0x82 (8)
0x0080|00 53 |.S |
0x0080| 00 00 00 00 00 00 00 00 00 00 00 00 00 00| ..............| value: raw bits 0x82-0xd5 (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-0x125 (80)
0x00d0| 15 49 a9 66 | .I.f | id: "info" (0x1549a966) (Contains general information about the Segment) 0xd5-0xd9 (4)
| | | type: "master"
0x00d0| cb | . | size: 75 0xd9-0xda (1)
| | | elements[0:6]: 0xda-0x125 (75)
| | | [0]{}: element 0xda-0xe0 (6)
0x00d0| bf | . | id: "crc32" (0xbf) 0xda-0xdb (1)
| | | type: "binary"
0x00d0| 84 | . | size: 4 0xdb-0xdc (1)
0x00d0| 0e 34 97 a1| .4..| value: raw bits 0xdc-0xe0 (4)
| | | [1]{}: element 0xe0-0xe7 (7)
0x00e0|2a d7 b1 |*.. | id: "timestamp_scale" (0x2ad7b1) (Base unit for Segment Ticks and Track Ticks) 0xe0-0xe3 (3)
| | | type: "uinteger"
0x00e0| 83 | . | size: 3 0xe3-0xe4 (1)
0x00e0| 0f 42 40 | .B@ | value: 1000000 0xe4-0xe7 (3)
| | | [2]{}: element 0xe7-0xf7 (16)
0x00e0| 4d 80 | M. | id: "muxing_app" (0x4d80) (Muxing application or library) 0xe7-0xe9 (2)
| | | type: "utf8"
0x00e0| 8d | . | size: 13 0xe9-0xea (1)
0x00e0| 4c 61 76 66 35 38| Lavf58| value: "Lavf58.45.100" 0xea-0xf7 (13)
0x00f0|2e 34 35 2e 31 30 30 |.45.100 |
| | | [3]{}: element 0xf7-0x107 (16)
0x00f0| 57 41 | WA | id: "writing_app" (0x5741) (Writing application) 0xf7-0xf9 (2)
| | | type: "utf8"
0x00f0| 8d | . | size: 13 0xf9-0xfa (1)
0x00f0| 4c 61 76 66 35 38| Lavf58| value: "Lavf58.45.100" 0xfa-0x107 (13)
0x0100|2e 34 35 2e 31 30 30 |.45.100 |
| | | [4]{}: element 0x107-0x11a (19)
0x0100| 73 a4 | s. | id: "segment_uuid" (0x73a4) (A randomly generated unique ID to identify the Segment amongst many others chosen) 0x107-0x109 (2)
| | | type: "binary"
0x0100| 90 | . | size: 16 0x109-0x10a (1)
0x0100| 79 44 d8 c6 65 1a| yD..e.| value: raw bits 0x10a-0x11a (16)
0x0110|1e 7d df 9a 1f 2d d5 21 ec 93 |.}...-.!.. |
| | | [5]{}: element 0x11a-0x125 (11)
0x0110| 44 89 | D. | id: "duration" (0x4489) (Duration of the Segment) 0x11a-0x11c (2)
| | | type: "float"
0x0110| 88 | . | size: 8 0x11c-0x11d (1)
0x0110| 40 44 00| @D.| value: 40 0x11d-0x125 (8)
0x0120|00 00 00 00 00 |..... |
| | | [3]{}: element 0x125-0x173 (78)
0x0120| 16 54 ae 6b | .T.k | id: "tracks" (0x1654ae6b) (A Top-Level Element of information with many tracks described) 0x125-0x129 (4)
| | | type: "master"
0x0120| c9 | . | size: 73 0x129-0x12a (1)
| | | elements[0:2]: 0x12a-0x173 (73)
| | | [0]{}: element 0x12a-0x130 (6)
0x0120| bf | . | id: "crc32" (0xbf) 0x12a-0x12b (1)
| | | type: "binary"
0x0120| 84 | . | size: 4 0x12b-0x12c (1)
0x0120| 11 c5 1b 5b| ...[| value: raw bits 0x12c-0x130 (4)
| | | [1]{}: element 0x130-0x173 (67)
0x0130|ae |. | id: "track_entry" (0xae) (Describes a track with all Elements) 0x130-0x131 (1)
| | | type: "master"
0x0130| 01 00 00 00 00 00 00 3a | .......: | size: 58 0x131-0x139 (8)
| | | elements[0:8]: 0x139-0x173 (58)
| | | [0]{}: element 0x139-0x13c (3)
0x0130| d7 | . | id: "track_number" (0xd7) (The track number as used in the Block Header) 0x139-0x13a (1)
| | | type: "uinteger"
0x0130| 81 | . | size: 1 0x13a-0x13b (1)
0x0130| 01 | . | value: 1 0x13b-0x13c (1)
| | | [1]{}: element 0x13c-0x147 (11)
0x0130| 73 c5 | s. | id: "track_uid" (0x73c5) (A unique ID to identify the Track) 0x13c-0x13e (2)
| | | type: "uinteger"
0x0130| 88 | . | size: 8 0x13e-0x13f (1)
0x0130| 3e| >| value: 4477069849203489639 0x13f-0x147 (8)
0x0140|21 bf 4e ac 62 bb 67 |!.N.b.g |
| | | [2]{}: element 0x147-0x14a (3)
0x0140| 9c | . | id: "flag_lacing" (0x9c) (Set to 1 if the track **MAY** contain blocks using lacing) 0x147-0x148 (1)
| | | type: "uinteger"
0x0140| 81 | . | size: 1 0x148-0x149 (1)
0x0140| 00 | . | value: 0 0x149-0x14a (1)
| | | [3]{}: element 0x14a-0x151 (7)
0x0140| 22 b5 9c | ".. | id: "language" (0x22b59c) (The language of the track) 0x14a-0x14d (3)
| | | type: "string"
0x0140| 83 | . | size: 3 0x14d-0x14e (1)
0x0140| 75 6e| un| value: "und" 0x14e-0x151 (3)
0x0150|64 |d |
| | | [4]{}: element 0x151-0x158 (7)
0x0150| 86 | . | id: "codec_id" (0x86) (An ID corresponding to the codec) 0x151-0x152 (1)
| | | type: "string"
0x0150| 85 | . | size: 5 0x152-0x153 (1)
0x0150| 56 5f 56 50 39 | V_VP9 | value: "V_VP9" 0x153-0x158 (5)
| | | [5]{}: element 0x158-0x15b (3)
0x0150| 83 | . | id: "track_type" (0x83) (The TrackType defines the type of each frame found in the Track) 0x158-0x159 (1)
| | | type: "uinteger"
0x0150| 81 | . | size: 1 0x159-0x15a (1)
0x0150| 01 | . | value: "video" (1) (An image) 0x15a-0x15b (1)
| | | [6]{}: element 0x15b-0x163 (8)
0x0150| 23 e3 83 | #.. | id: "default_duration" (0x23e383) (Number of nanoseconds per frame) 0x15b-0x15e (3)
| | | type: "uinteger"
0x0150| 84 | . | size: 4 0x15e-0x15f (1)
0x0150| 02| .| value: 40000000 0x15f-0x163 (4)
0x0160|62 5a 00 |bZ. |
| | | [7]{}: element 0x163-0x173 (16)
0x0160| e0 | . | id: "video" (0xe0) (Video settings) 0x163-0x164 (1)
| | | type: "master"
0x0160| 01 00 00 00 00 00 00 07 | ........ | size: 7 0x164-0x16c (8)
| | | elements[0:2]: 0x16c-0x173 (7)
| | | [0]{}: element 0x16c-0x170 (4)
0x0160| b0 | . | id: "pixel_width" (0xb0) (Width of the encoded video frames in pixels) 0x16c-0x16d (1)
| | | type: "uinteger"
0x0160| 82 | . | size: 2 0x16d-0x16e (1)
0x0160| 01 40| .@| value: 320 0x16e-0x170 (2)
| | | [1]{}: element 0x170-0x173 (3)
0x0170|ba |. | id: "pixel_height" (0xba) (Height of the encoded video frames in pixels) 0x170-0x171 (1)
| | | type: "uinteger"
0x0170| 81 | . | size: 1 0x171-0x172 (1)
0x0170| f0 | . | value: 240 0x172-0x173 (1)
| | | [4]{}: element 0x173-0x21c (169)
0x0170| 12 54 c3 67 | .T.g | id: "tags" (0x1254c367) (Element containing metadata describing Tracks) 0x173-0x177 (4)
| | | type: "master"
0x0170| 40 a3 | @. | size: 163 0x177-0x179 (2)
| | | elements[0:3]: 0x179-0x21c (163)
| | | [0]{}: element 0x179-0x17f (6)
0x0170| bf | . | id: "crc32" (0xbf) 0x179-0x17a (1)
| | | type: "binary"
0x0170| 84 | . | size: 4 0x17a-0x17b (1)
0x0170| 0f 63 70 88 | .cp. | value: raw bits 0x17b-0x17f (4)
| | | [1]{}: element 0x17f-0x1b0 (49)
0x0170| 73| s| id: "tag" (0x7373) (A single metadata descriptor) 0x17f-0x181 (2)
0x0180|73 |s |
| | | type: "master"
0x0180| 01 00 00 00 00 00 00 27 | .......' | size: 39 0x181-0x189 (8)
| | | elements[0:2]: 0x189-0x1b0 (39)
| | | [0]{}: element 0x189-0x18c (3)
0x0180| 63 c0 | c. | id: "targets" (0x63c0) (Specifies which other elements the metadata represented by the Tag applies to) 0x189-0x18b (2)
| | | type: "master"
0x0180| 80 | . | size: 0 0x18b-0x18c (1)
| | | elements[0:0]: 0x18c-0x18c (0)
| | | [1]{}: element 0x18c-0x1b0 (36)
0x0180| 67 c8 | g. | id: "simple_tag" (0x67c8) (Contains general information about the target) 0x18c-0x18e (2)
| | | type: "master"
0x0180| 01 00| ..| size: 26 0x18e-0x196 (8)
0x0190|00 00 00 00 00 1a |...... |
| | | elements[0:2]: 0x196-0x1b0 (26)
| | | [0]{}: element 0x196-0x1a0 (10)
0x0190| 45 a3 | E. | id: "tag_name" (0x45a3) (The name of the Tag that is going to be stored) 0x196-0x198 (2)
| | | type: "utf8"
0x0190| 87 | . | size: 7 0x198-0x199 (1)
0x0190| 45 4e 43 4f 44 45 52| ENCODER| value: "ENCODER" 0x199-0x1a0 (7)
| | | [1]{}: element 0x1a0-0x1b0 (16)
0x01a0|44 87 |D. | id: "tag_string" (0x4487) (The value of the Tag) 0x1a0-0x1a2 (2)
| | | type: "utf8"
0x01a0| 8d | . | size: 13 0x1a2-0x1a3 (1)
0x01a0| 4c 61 76 66 35 38 2e 34 35 2e 31 30 30| Lavf58.45.100| value: "Lavf58.45.100" 0x1a3-0x1b0 (13)
| | | [2]{}: element 0x1b0-0x21c (108)
0x01b0|73 73 |ss | id: "tag" (0x7373) (A single metadata descriptor) 0x1b0-0x1b2 (2)
| | | type: "master"
0x01b0| 01 00 00 00 00 00 00 62 | .......b | size: 98 0x1b2-0x1ba (8)
| | | elements[0:3]: 0x1ba-0x21c (98)
| | | [0]{}: element 0x1ba-0x1c8 (14)
0x01b0| 63 c0 | c. | id: "targets" (0x63c0) (Specifies which other elements the metadata represented by the Tag applies to) 0x1ba-0x1bc (2)
| | | type: "master"
0x01b0| 8b | . | size: 11 0x1bc-0x1bd (1)
| | | elements[0:1]: 0x1bd-0x1c8 (11)
| | | [0]{}: element 0x1bd-0x1c8 (11)
0x01b0| 63 c5 | c. | id: "tag_track_uid" (0x63c5) (A unique ID to identify the Track(s) the tags belong to) 0x1bd-0x1bf (2)
| | | type: "uinteger"
0x01b0| 88| .| size: 8 0x1bf-0x1c0 (1)
0x01c0|3e 21 bf 4e ac 62 bb 67 |>!.N.b.g | value: 4477069849203489639 0x1c0-0x1c8 (8)
| | | [1]{}: element 0x1c8-0x1f7 (47)
0x01c0| 67 c8 | g. | id: "simple_tag" (0x67c8) (Contains general information about the target) 0x1c8-0x1ca (2)
| | | type: "master"
0x01c0| 01 00 00 00 00 00| ......| size: 37 0x1ca-0x1d2 (8)
0x01d0|00 25 |.% |
| | | elements[0:2]: 0x1d2-0x1f7 (37)
| | | [0]{}: element 0x1d2-0x1dc (10)
0x01d0| 45 a3 | E. | id: "tag_name" (0x45a3) (The name of the Tag that is going to be stored) 0x1d2-0x1d4 (2)
| | | type: "utf8"
0x01d0| 87 | . | size: 7 0x1d4-0x1d5 (1)
0x01d0| 45 4e 43 4f 44 45 52 | ENCODER | value: "ENCODER" 0x1d5-0x1dc (7)
| | | [1]{}: element 0x1dc-0x1f7 (27)
0x01d0| 44 87 | D. | id: "tag_string" (0x4487) (The value of the Tag) 0x1dc-0x1de (2)
| | | type: "utf8"
0x01d0| 98 | . | size: 24 0x1de-0x1df (1)
0x01d0| 4c| L| value: "Lavc58.91.100 libvpx-vp9" 0x1df-0x1f7 (24)
0x01e0|61 76 63 35 38 2e 39 31 2e 31 30 30 20 6c 69 62|avc58.91.100 lib|
0x01f0|76 70 78 2d 76 70 39 |vpx-vp9 |
| | | [2]{}: element 0x1f7-0x21c (37)
0x01f0| 67 c8 | g. | id: "simple_tag" (0x67c8) (Contains general information about the target) 0x1f7-0x1f9 (2)
| | | type: "master"
0x01f0| a2 | . | size: 34 0x1f9-0x1fa (1)
| | | elements[0:2]: 0x1fa-0x21c (34)
| | | [0]{}: element 0x1fa-0x205 (11)
0x01f0| 45 a3 | E. | id: "tag_name" (0x45a3) (The name of the Tag that is going to be stored) 0x1fa-0x1fc (2)
| | | type: "utf8"
0x01f0| 88 | . | size: 8 0x1fc-0x1fd (1)
0x01f0| 44 55 52| DUR| value: "DURATION" 0x1fd-0x205 (8)
0x0200|41 54 49 4f 4e |ATION |
| | | [1]{}: element 0x205-0x21c (23)
0x0200| 44 87 | D. | id: "tag_string" (0x4487) (The value of the Tag) 0x205-0x207 (2)
| | | type: "utf8"
0x0200| 94 | . | size: 20 0x207-0x208 (1)
0x0200| 30 30 3a 30 30 3a 30 30| 00:00:00| value: "00:00:00.040000000" 0x208-0x21c (20)
0x0210|2e 30 34 30 30 30 30 30 30 30 00 00 |.040000000.. |
| | | [5]{}: element 0x21c-0x176a (5454)
0x0210| 1f 43 b6 75| .C.u| id: "cluster" (0x1f43b675) (The Top-Level Element containing the (monolithic) Block structure) 0x21c-0x220 (4)
| | | type: "master"
0x0220|55 48 |UH | size: 5448 0x220-0x222 (2)
| | | elements[0:3]: 0x222-0x176a (5448)
| | | [0]{}: element 0x222-0x228 (6)
0x0220| bf | . | id: "crc32" (0xbf) 0x222-0x223 (1)
| | | type: "binary"
0x0220| 84 | . | size: 4 0x223-0x224 (1)
0x0220| d6 e8 e7 68 | ...h | value: raw bits 0x224-0x228 (4)
| | | [1]{}: element 0x228-0x22b (3)
0x0220| e7 | . | id: "timestamp" (0xe7) (Absolute timestamp of the cluster) 0x228-0x229 (1)
| | | type: "uinteger"
0x0220| 81 | . | size: 1 0x229-0x22a (1)
0x0220| 00 | . | value: 0 0x22a-0x22b (1)
| | | [2]{}: element 0x22b-0x176a (5439)
0x0220| a3 | . | id: "simple_block" (0xa3) (Similar to Block) 0x22b-0x22c (1)
| | | type: "binary"
0x0220| 55 3c | U< | size: 5436 0x22c-0x22e (2)
0x0220| 81 | . | track_number: 1 0x22e-0x22f (1)
0x0220| 00| .| timestamp: 0 0x22f-0x231 (2)
0x0230|00 |. |
| | | flags{}: 0x231-0x232 (1)
0x0230| 80 | . | key_frame: true 0x231-0x231.1 (0.1)
0x0230| 80 | . | reserved: 0 0x231.1-0x231.4 (0.3)
0x0230| 80 | . | invisible: false 0x231.4-0x231.5 (0.1)
0x0230| 80 | . | lacing: "none" (0) 0x231.5-0x231.7 (0.2)
0x0230| 80 | . | discardable: false 0x231.7-0x232 (0.1)
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef| packet{}: (vp9_frame) 0x232-0x176a (5432)
0x0230| a2 | . | frame_marker: 2 0x232-0x232.2 (0.2)
0x0230| a2 | . | profile_low_bit: 1 0x232.2-0x232.3 (0.1)
0x0230| a2 | . | profile_high_bit: 0 0x232.3-0x232.4 (0.1)
| | | profile: 1 (8 bit, chroma subsampling: 4:2:2, 4:4:0, 4:4:4)
0x0230| a2 | . | show_existing_frame: false 0x232.4-0x232.5 (0.1)
0x0230| a2 | . | frame_type: "key_frame" (false) 0x232.5-0x232.6 (0.1)
0x0230| a2 | . | show_frame: 1 0x232.6-0x232.7 (0.1)
0x0230| a2 | . | error_resilient_mode: 0 0x232.7-0x233 (0.1)
0x0230| 49 | I | frame_sync_byte_0: 73 0x233-0x234 (1)
0x0230| 83 | . | frame_sync_byte_1: 131 0x234-0x235 (1)
0x0230| 42 | B | frame_sync_byte_2: 66 0x235-0x236 (1)
| | | bit_depth: 8
0x0230| e0 | . | color_space: "rgb" (7) 0x236-0x236.3 (0.3)
| | | color_range: 1
| | | subsampling_x: 0
| | | subsampling_y: 0
0x0230| e0 | . | reserved_zero2: 0 0x236.3-0x236.4 (0.1)
0x0230| e0 13 f0 | ... | frame_width: 320 0x236.4-0x238.4 (2)
0x0230| f0 0e f6 | ... | frame_height: 240 0x238.4-0x23a.4 (2)
0x0230| f6 0a 38 24 1c 18| ..8$..| data: raw bits 0x23a.4-0x176a (5423.4)
0x0240|4a 00 0b 70 7f d9 f9 be 8f e7 71 ff 5f 97 ef c3|J..p......q._...|
* |until 0x1769.7 (5424) | |
| | | [6]{}: element 0x176a-0x1786 (28)
0x1760| 1c 53 bb 6b | .S.k | id: "cues" (0x1c53bb6b) (A Top-Level Element to speed seeking access) 0x176a-0x176e (4)
| | | type: "master"
0x1760| 97 | . | size: 23 0x176e-0x176f (1)
| | | elements[0:2]: 0x176f-0x1786 (23)
| | | [0]{}: element 0x176f-0x1775 (6)
0x1760| bf| .| id: "crc32" (0xbf) 0x176f-0x1770 (1)
| | | type: "binary"
0x1770|84 |. | size: 4 0x1770-0x1771 (1)
0x1770| 24 c2 5b 2b | $.[+ | value: raw bits 0x1771-0x1775 (4)
| | | [1]{}: element 0x1775-0x1786 (17)
0x1770| bb | . | id: "cue_point" (0xbb) (Contains all information relative to a seek point in the Segment) 0x1775-0x1776 (1)
| | | type: "master"
0x1770| 8f | . | size: 15 0x1776-0x1777 (1)
| | | elements[0:2]: 0x1777-0x1786 (15)
| | | [0]{}: element 0x1777-0x177a (3)
0x1770| b3 | . | id: "cue_time" (0xb3) (Absolute timestamp of the seek point) 0x1777-0x1778 (1)
| | | type: "uinteger"
0x1770| 81 | . | size: 1 0x1778-0x1779 (1)
0x1770| 00 | . | value: 0 0x1779-0x177a (1)
| | | [1]{}: element 0x177a-0x1786 (12)
0x1770| b7 | . | id: "cue_track_positions" (0xb7) (Contain positions for different tracks corresponding to the timestamp) 0x177a-0x177b (1)
| | | type: "master"
0x1770| 8a | . | size: 10 0x177b-0x177c (1)
| | | elements[0:3]: 0x177c-0x1786 (10)
| | | [0]{}: element 0x177c-0x177f (3)
0x1770| f7 | . | id: "cue_track" (0xf7) (The track for which a position is given) 0x177c-0x177d (1)
| | | type: "uinteger"
0x1770| 81 | . | size: 1 0x177d-0x177e (1)
0x1770| 01 | . | value: 1 0x177e-0x177f (1)
| | | [1]{}: element 0x177f-0x1783 (4)
0x1770| f1| .| id: "cue_cluster_position" (0xf1) (The Segment Position of the Cluster containing the associated Block) 0x177f-0x1780 (1)
| | | type: "uinteger"
0x1780|82 |. | size: 2 0x1780-0x1781 (1)
0x1780| 01 e8 | .. | value: 488 0x1781-0x1783 (2)
| | | [2]{}: element 0x1783-0x1786 (3)
0x1780| f0 | . | id: "cue_relative_position" (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) 0x1783-0x1784 (1)
| | | type: "uinteger"
0x1780| 81 | . | size: 1 0x1784-0x1785 (1)
0x1780| 09| | .| | value: 9 0x1785-0x1786 (1)