mirror of
https://github.com/wader/fq.git
synced 2024-12-22 12:51:38 +03:00
interp: dump: Show field name for compound values in arrays
mp3: Remove one level of struct for granales dump: Makes it a bit easier to understand array of arrays/structs. avro_ocf: Rename ocf.go -> avro_ocr.go to have same name of source file as format pcap,pcapng: Rename tcp flow struct to tcp_connection, makes more sense i think mp4: Add ISOBMFF to format description
This commit is contained in:
parent
8dc2fdea34
commit
21ad628add
20
doc/demo.svg
20
doc/demo.svg
@ -501,13 +501,19 @@
|
||||
<text x="656" y="192">{</text>
|
||||
<text x="664" y="192">}</text>
|
||||
<text x="672" y="192">:</text>
|
||||
<text x="688" y="192">(</text>
|
||||
<text x="696" y="192">i</text>
|
||||
<text x="704" y="192">d</text>
|
||||
<text x="712" y="192">3</text>
|
||||
<text x="720" y="192">v</text>
|
||||
<text x="728" y="192">2</text>
|
||||
<text x="736" y="192">)</text>
|
||||
<text x="688" y="192">h</text>
|
||||
<text x="696" y="192">e</text>
|
||||
<text x="704" y="192">a</text>
|
||||
<text x="712" y="192">d</text>
|
||||
<text x="720" y="192">e</text>
|
||||
<text x="728" y="192">r</text>
|
||||
<text x="744" y="192">(</text>
|
||||
<text x="752" y="192">i</text>
|
||||
<text x="760" y="192">d</text>
|
||||
<text x="768" y="192">3</text>
|
||||
<text x="776" y="192">v</text>
|
||||
<text x="784" y="192">2</text>
|
||||
<text x="792" y="192">)</text>
|
||||
<text x="0" y="208" style="fill: #bbbb00">0</text>
|
||||
<text x="8" y="208" style="fill: #bbbb00">x</text>
|
||||
<text x="16" y="208" style="fill: #bbbb00">0</text>
|
||||
|
Before Width: | Height: | Size: 52 KiB After Width: | Height: | Size: 52 KiB |
@ -1,4 +1,4 @@
|
||||
<svg viewBox="0 0 880 160" width="880" height="160" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||
<svg viewBox="0 0 912 160" width="912" height="160" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||
<style>
|
||||
rect { shape-rendering: crispEdges; }
|
||||
text {
|
||||
@ -157,6 +157,9 @@
|
||||
<text x="856" y="16">{</text>
|
||||
<text x="864" y="16">}</text>
|
||||
<text x="872" y="16">:</text>
|
||||
<text x="888" y="16">b</text>
|
||||
<text x="896" y="16">o</text>
|
||||
<text x="904" y="16">x</text>
|
||||
<text x="0" y="32" style="fill: #bbbb00">0</text>
|
||||
<text x="8" y="32" style="fill: #bbbb00">x</text>
|
||||
<text x="16" y="32" style="fill: #bbbb00">d</text>
|
||||
|
Before Width: | Height: | Size: 19 KiB After Width: | Height: | Size: 19 KiB |
@ -1,4 +1,4 @@
|
||||
<svg viewBox="0 0 880 224" width="880" height="224" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||
<svg viewBox="0 0 912 224" width="912" height="224" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||
<style>
|
||||
rect { shape-rendering: crispEdges; }
|
||||
text {
|
||||
@ -159,6 +159,9 @@
|
||||
<text x="856" y="16">{</text>
|
||||
<text x="864" y="16">}</text>
|
||||
<text x="872" y="16">:</text>
|
||||
<text x="888" y="16">b</text>
|
||||
<text x="896" y="16">o</text>
|
||||
<text x="904" y="16">x</text>
|
||||
<text x="0" y="32" style="fill: #bbbb00">0</text>
|
||||
<text x="8" y="32" style="fill: #bbbb00">x</text>
|
||||
<text x="16" y="32" style="fill: #bbbb00">d</text>
|
||||
@ -339,6 +342,11 @@
|
||||
<text x="624" y="144">{</text>
|
||||
<text x="632" y="144">}</text>
|
||||
<text x="640" y="144">:</text>
|
||||
<text x="656" y="144">e</text>
|
||||
<text x="664" y="144">n</text>
|
||||
<text x="672" y="144">t</text>
|
||||
<text x="680" y="144">r</text>
|
||||
<text x="688" y="144">y</text>
|
||||
<text x="0" y="160" style="fill: #bbbb00">0</text>
|
||||
<text x="8" y="160" style="fill: #bbbb00">x</text>
|
||||
<text x="16" y="160" style="fill: #bbbb00">d</text>
|
||||
|
Before Width: | Height: | Size: 22 KiB After Width: | Height: | Size: 22 KiB |
@ -61,7 +61,7 @@
|
||||
|[`matroska`](#matroska) |Matroska file |<sub>`aac_frame` `av1_ccr` `av1_frame` `avc_au` `avc_dcr` `flac_frame` `flac_metadatablocks` `hevc_au` `hevc_dcr` `image` `mp3_frame` `mpeg_asc` `mpeg_pes_packet` `mpeg_spu` `opus_packet` `vorbis_packet` `vp8_frame` `vp9_cfm` `vp9_frame`</sub>|
|
||||
|`mp3` |MP3 file |<sub>`id3v2` `id3v1` `id3v11` `apev2` `mp3_frame`</sub>|
|
||||
|`mp3_frame` |MPEG audio layer 3 frame |<sub>`xing`</sub>|
|
||||
|[`mp4`](#mp4) |MPEG-4 file and similar |<sub>`aac_frame` `av1_ccr` `av1_frame` `flac_frame` `flac_metadatablocks` `id3v2` `image` `jpeg` `mp3_frame` `avc_au` `avc_dcr` `mpeg_es` `hevc_au` `hevc_dcr` `mpeg_pes_packet` `opus_packet` `protobuf_widevine` `pssh_playready` `vorbis_packet` `vp9_frame` `vpx_ccr` `icc_profile`</sub>|
|
||||
|[`mp4`](#mp4) |ISOBMFF MPEG-4 part 12 and similar |<sub>`aac_frame` `av1_ccr` `av1_frame` `flac_frame` `flac_metadatablocks` `id3v2` `image` `jpeg` `mp3_frame` `avc_au` `avc_dcr` `mpeg_es` `hevc_au` `hevc_dcr` `mpeg_pes_packet` `opus_packet` `protobuf_widevine` `pssh_playready` `vorbis_packet` `vp9_frame` `vpx_ccr` `icc_profile`</sub>|
|
||||
|`mpeg_asc` |MPEG-4 Audio Specific Config |<sub></sub>|
|
||||
|`mpeg_es` |MPEG Elementary Stream |<sub>`mpeg_asc` `vorbis_packet`</sub>|
|
||||
|`mpeg_pes` |MPEG Packetized elementary stream |<sub>`mpeg_pes_packet` `mpeg_spu`</sub>|
|
||||
|
16
format/inet/testdata/flow_missing_synack.fqtest
vendored
16
format/inet/testdata/flow_missing_synack.fqtest
vendored
@ -1,7 +1,7 @@
|
||||
# ssl_test.pcap from https://www.cloudshark.org/captures/a9718e5fdb28
|
||||
$ fq '.tcp_connections | d' flow_missing_synack.pcap
|
||||
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.tcp_connections[0:8]:
|
||||
| | | [0]{}:
|
||||
| | | [0]{}: tcp_connection
|
||||
| | | source_ip: "192.168.1.4"
|
||||
| | | source_port: 2061
|
||||
| | | destination_ip: "192.168.1.3"
|
||||
@ -12,7 +12,7 @@ $ fq '.tcp_connections | d' flow_missing_synack.pcap
|
||||
* |until 0x177.7 (end) (376) | |
|
||||
0x0000|16 03 01 00 35 02 00 00 31 03 01 50 83 9c 9f e3|....5...1..P....| server_stream: raw bits
|
||||
* |until 0x42b.7 (end) (1068) | |
|
||||
| | | [1]{}:
|
||||
| | | [1]{}: tcp_connection
|
||||
| | | source_ip: "192.168.1.4"
|
||||
| | | source_port: 2068
|
||||
| | | destination_ip: "192.168.1.3"
|
||||
@ -23,7 +23,7 @@ $ fq '.tcp_connections | d' flow_missing_synack.pcap
|
||||
* |until 0x177.7 (end) (376) | |
|
||||
0x0000|16 03 01 00 35 02 00 00 31 03 01 50 83 9c a5 e5|....5...1..P....| server_stream: raw bits
|
||||
* |until 0x42b.7 (end) (1068) | |
|
||||
| | | [2]{}:
|
||||
| | | [2]{}: tcp_connection
|
||||
| | | source_ip: "192.168.1.4"
|
||||
| | | source_port: 2070
|
||||
| | | destination_ip: "192.168.1.3"
|
||||
@ -34,7 +34,7 @@ $ fq '.tcp_connections | d' flow_missing_synack.pcap
|
||||
* |until 0x2ad.7 (end) (686) | |
|
||||
0x0000|16 03 01 00 35 02 00 00 31 03 01 50 83 9c a8 b2|....5...1..P....| server_stream: raw bits
|
||||
* |until 0x53c.7 (end) (1341) | |
|
||||
| | | [3]{}:
|
||||
| | | [3]{}: tcp_connection
|
||||
| | | source_ip: "192.168.1.4"
|
||||
| | | source_port: 2071
|
||||
| | | destination_ip: "192.168.1.3"
|
||||
@ -45,7 +45,7 @@ $ fq '.tcp_connections | d' flow_missing_synack.pcap
|
||||
* |until 0x2df.7 (end) (736) | |
|
||||
0x0000|16 03 01 00 51 02 00 00 4d 03 01 50 83 9c a8 fc|....Q...M..P....| server_stream: raw bits
|
||||
* |until 0x1b7.7 (end) (440) | |
|
||||
| | | [4]{}:
|
||||
| | | [4]{}: tcp_connection
|
||||
| | | source_ip: "192.168.1.4"
|
||||
| | | source_port: 2072
|
||||
| | | destination_ip: "192.168.1.3"
|
||||
@ -56,7 +56,7 @@ $ fq '.tcp_connections | d' flow_missing_synack.pcap
|
||||
* |until 0x2fd.7 (end) (766) | |
|
||||
0x0000|16 03 01 00 51 02 00 00 4d 03 01 50 83 9c a8 d8|....Q...M..P....| server_stream: raw bits
|
||||
* |until 0x1b7.7 (end) (440) | |
|
||||
| | | [5]{}:
|
||||
| | | [5]{}: tcp_connection
|
||||
| | | source_ip: "192.168.1.4"
|
||||
| | | source_port: 2073
|
||||
| | | destination_ip: "192.168.1.3"
|
||||
@ -67,7 +67,7 @@ $ fq '.tcp_connections | d' flow_missing_synack.pcap
|
||||
* |until 0x2fd.7 (end) (766) | |
|
||||
0x0000|16 03 01 00 51 02 00 00 4d 03 01 50 83 9c b2 45|....Q...M..P...E| server_stream: raw bits
|
||||
* |until 0x2d73.7 (end) (11636) | |
|
||||
| | | [6]{}:
|
||||
| | | [6]{}: tcp_connection
|
||||
| | | source_ip: "192.168.1.4"
|
||||
| | | source_port: 2078
|
||||
| | | destination_ip: "192.168.1.3"
|
||||
@ -78,7 +78,7 @@ $ fq '.tcp_connections | d' flow_missing_synack.pcap
|
||||
* |until 0x38c.7 (end) (909) | |
|
||||
0x0000|16 03 01 00 51 02 00 00 4d 03 01 50 83 9d 7c ac|....Q...M..P..|.| server_stream: raw bits
|
||||
* |until 0x2d5.7 (end) (726) | |
|
||||
| | | [7]{}:
|
||||
| | | [7]{}: tcp_connection
|
||||
| | | source_ip: "192.168.1.4"
|
||||
| | | source_port: 2085
|
||||
| | | destination_ip: "192.168.1.3"
|
||||
|
210
format/matroska/testdata/mp3.fqtest
vendored
210
format/matroska/testdata/mp3.fqtest
vendored
@ -371,43 +371,41 @@ $ fq -d matroska dv /mp3.mkv
|
||||
0x230| 00 | . | private_bits: 0 0x236.1-0x236.5 (0.5)
|
||||
0x230| 00 0a | .. | share0: 0 0x236.6-0x237.1 (0.4)
|
||||
| | | granules[0:2]: 0x237.2-0x245.7 (14.6)
|
||||
| | | [0]{}: granule 0x237.2-0x23e.4 (7.3)
|
||||
| | | channels[0:1]: 0x237.2-0x23e.4 (7.3)
|
||||
| | | [0]{}: channel 0x237.2-0x23e.4 (7.3)
|
||||
0x230| 0a 2c | ., | part2_3_length: 651 0x237.2-0x238.5 (1.4)
|
||||
0x230| 2c 43 | ,C | big_values: 33 0x238.6-0x239.6 (1.1)
|
||||
0x230| 43 2e | C. | global_gain: 151 0x239.7-0x23a.6 (1)
|
||||
0x230| 2e 55 | .U | scalefac_compress: 2 0x23a.7-0x23b.2 (0.4)
|
||||
0x230| 55 | U | blocksplit_flag: 1 0x23b.3-0x23b.3 (0.1)
|
||||
0x230| 55 | U | block_type: "start block" (1) 0x23b.4-0x23b.5 (0.2)
|
||||
0x230| 55 | U | switch_point: 0 0x23b.6-0x23b.6 (0.1)
|
||||
0x230| 55 94 | U. | table_select0: 25 0x23b.7-0x23c.3 (0.5)
|
||||
0x230| 94 80 | .. | table_select1: 9 0x23c.4-0x23d (0.5)
|
||||
0x230| 80 | . | subblock_gain0: 0 0x23d.1-0x23d.3 (0.3)
|
||||
0x230| 80 | . | subblock_gain1: 0 0x23d.4-0x23d.6 (0.3)
|
||||
0x230| 80 01 | .. | subblock_gain2: 0 0x23d.7-0x23e.1 (0.3)
|
||||
0x230| 01 | . | preflag: 0 0x23e.2-0x23e.2 (0.1)
|
||||
0x230| 01 | . | scalefac_scale: 0 0x23e.3-0x23e.3 (0.1)
|
||||
0x230| 01 | . | count1table_select: 0 0x23e.4-0x23e.4 (0.1)
|
||||
| | | [1]{}: granule 0x23e.5-0x245.7 (7.3)
|
||||
| | | channels[0:1]: 0x23e.5-0x245.7 (7.3)
|
||||
| | | [0]{}: channel 0x23e.5-0x245.7 (7.3)
|
||||
0x230| 01 81| ..| part2_3_length: 770 0x23e.5-0x240 (1.4)
|
||||
| | | [0][0:1]: granule 0x237.2-0x23e.4 (7.3)
|
||||
| | | [0]{}: channel 0x237.2-0x23e.4 (7.3)
|
||||
0x230| 0a 2c | ., | part2_3_length: 651 0x237.2-0x238.5 (1.4)
|
||||
0x230| 2c 43 | ,C | big_values: 33 0x238.6-0x239.6 (1.1)
|
||||
0x230| 43 2e | C. | global_gain: 151 0x239.7-0x23a.6 (1)
|
||||
0x230| 2e 55 | .U | scalefac_compress: 2 0x23a.7-0x23b.2 (0.4)
|
||||
0x230| 55 | U | blocksplit_flag: 1 0x23b.3-0x23b.3 (0.1)
|
||||
0x230| 55 | U | block_type: "start block" (1) 0x23b.4-0x23b.5 (0.2)
|
||||
0x230| 55 | U | switch_point: 0 0x23b.6-0x23b.6 (0.1)
|
||||
0x230| 55 94 | U. | table_select0: 25 0x23b.7-0x23c.3 (0.5)
|
||||
0x230| 94 80 | .. | table_select1: 9 0x23c.4-0x23d (0.5)
|
||||
0x230| 80 | . | subblock_gain0: 0 0x23d.1-0x23d.3 (0.3)
|
||||
0x230| 80 | . | subblock_gain1: 0 0x23d.4-0x23d.6 (0.3)
|
||||
0x230| 80 01 | .. | subblock_gain2: 0 0x23d.7-0x23e.1 (0.3)
|
||||
0x230| 01 | . | preflag: 0 0x23e.2-0x23e.2 (0.1)
|
||||
0x230| 01 | . | scalefac_scale: 0 0x23e.3-0x23e.3 (0.1)
|
||||
0x230| 01 | . | count1table_select: 0 0x23e.4-0x23e.4 (0.1)
|
||||
| | | [1][0:1]: granule 0x23e.5-0x245.7 (7.3)
|
||||
| | | [0]{}: channel 0x23e.5-0x245.7 (7.3)
|
||||
0x230| 01 81| ..| part2_3_length: 770 0x23e.5-0x240 (1.4)
|
||||
0x240|15 |. |
|
||||
0x240|15 66 |.f | big_values: 85 0x240.1-0x241.1 (1.1)
|
||||
0x240| 66 23 | f# | global_gain: 152 0x241.2-0x242.1 (1)
|
||||
0x240| 23 | # | scalefac_compress: 8 0x242.2-0x242.5 (0.4)
|
||||
0x240| 23 | # | blocksplit_flag: 1 0x242.6-0x242.6 (0.1)
|
||||
0x240| 23 3a | #: | block_type: "3 short windows" (2) 0x242.7-0x243 (0.2)
|
||||
0x240| 3a | : | switch_point: 0 0x243.1-0x243.1 (0.1)
|
||||
0x240| 3a | : | table_select0: 29 0x243.2-0x243.6 (0.5)
|
||||
0x240| 3a d0 | :. | table_select1: 13 0x243.7-0x244.3 (0.5)
|
||||
0x240| d0 | . | subblock_gain0: 0 0x244.4-0x244.6 (0.3)
|
||||
0x240| d0 00 | .. | subblock_gain1: 0 0x244.7-0x245.1 (0.3)
|
||||
0x240| 00 | . | subblock_gain2: 0 0x245.2-0x245.4 (0.3)
|
||||
0x240| 00 | . | preflag: 0 0x245.5-0x245.5 (0.1)
|
||||
0x240| 00 | . | scalefac_scale: 0 0x245.6-0x245.6 (0.1)
|
||||
0x240| 00 | . | count1table_select: 0 0x245.7-0x245.7 (0.1)
|
||||
0x240|15 66 |.f | big_values: 85 0x240.1-0x241.1 (1.1)
|
||||
0x240| 66 23 | f# | global_gain: 152 0x241.2-0x242.1 (1)
|
||||
0x240| 23 | # | scalefac_compress: 8 0x242.2-0x242.5 (0.4)
|
||||
0x240| 23 | # | blocksplit_flag: 1 0x242.6-0x242.6 (0.1)
|
||||
0x240| 23 3a | #: | block_type: "3 short windows" (2) 0x242.7-0x243 (0.2)
|
||||
0x240| 3a | : | switch_point: 0 0x243.1-0x243.1 (0.1)
|
||||
0x240| 3a | : | table_select0: 29 0x243.2-0x243.6 (0.5)
|
||||
0x240| 3a d0 | :. | table_select1: 13 0x243.7-0x244.3 (0.5)
|
||||
0x240| d0 | . | subblock_gain0: 0 0x244.4-0x244.6 (0.3)
|
||||
0x240| d0 00 | .. | subblock_gain1: 0 0x244.7-0x245.1 (0.3)
|
||||
0x240| 00 | . | subblock_gain2: 0 0x245.2-0x245.4 (0.3)
|
||||
0x240| 00 | . | preflag: 0 0x245.5-0x245.5 (0.1)
|
||||
0x240| 00 | . | scalefac_scale: 0 0x245.6-0x245.6 (0.1)
|
||||
0x240| 00 | . | count1table_select: 0 0x245.7-0x245.7 (0.1)
|
||||
0x240| 07 aa c3 8e 33 85 d3 64 f1 a1| ....3..d..| data: raw bits 0x246-0x300.7 (187)
|
||||
0x250|c1 08 1c 58 1f 5e 1f 18 1c 46 04 1e 89 e5 b3 2e|...X.^...F......|
|
||||
* |until 0x300.7 (187) | |
|
||||
@ -446,43 +444,41 @@ $ fq -d matroska dv /mp3.mkv
|
||||
0x300| 82 | . | private_bits: 0 0x30d.1-0x30d.5 (0.5)
|
||||
0x300| 82 0a | .. | share0: 8 0x30d.6-0x30e.1 (0.4)
|
||||
| | | granules[0:2]: 0x30e.2-0x31c.7 (14.6)
|
||||
| | | [0]{}: granule 0x30e.2-0x315.4 (7.3)
|
||||
| | | channels[0:1]: 0x30e.2-0x315.4 (7.3)
|
||||
| | | [0]{}: channel 0x30e.2-0x315.4 (7.3)
|
||||
0x300| 0a 60| .`| part2_3_length: 664 0x30e.2-0x30f.5 (1.4)
|
||||
0x300| 60| `| big_values: 16 0x30f.6-0x310.6 (1.1)
|
||||
| | | [0][0:1]: granule 0x30e.2-0x315.4 (7.3)
|
||||
| | | [0]{}: channel 0x30e.2-0x315.4 (7.3)
|
||||
0x300| 0a 60| .`| part2_3_length: 664 0x30e.2-0x30f.5 (1.4)
|
||||
0x300| 60| `| big_values: 16 0x30f.6-0x310.6 (1.1)
|
||||
0x310|21 |! |
|
||||
0x310|21 10 |!. | global_gain: 136 0x310.7-0x311.6 (1)
|
||||
0x310| 10 bd | .. | scalefac_compress: 5 0x311.7-0x312.2 (0.4)
|
||||
0x310| bd | . | blocksplit_flag: 1 0x312.3-0x312.3 (0.1)
|
||||
0x310| bd | . | block_type: "end" (3) 0x312.4-0x312.5 (0.2)
|
||||
0x310| bd | . | switch_point: 0 0x312.6-0x312.6 (0.1)
|
||||
0x310| bd f1 | .. | table_select0: 31 0x312.7-0x313.3 (0.5)
|
||||
0x310| f1 00 | .. | table_select1: 2 0x313.4-0x314 (0.5)
|
||||
0x310| 00 | . | subblock_gain0: 0 0x314.1-0x314.3 (0.3)
|
||||
0x310| 00 | . | subblock_gain1: 0 0x314.4-0x314.6 (0.3)
|
||||
0x310| 00 01 | .. | subblock_gain2: 0 0x314.7-0x315.1 (0.3)
|
||||
0x310| 01 | . | preflag: 0 0x315.2-0x315.2 (0.1)
|
||||
0x310| 01 | . | scalefac_scale: 0 0x315.3-0x315.3 (0.1)
|
||||
0x310| 01 | . | count1table_select: 0 0x315.4-0x315.4 (0.1)
|
||||
| | | [1]{}: granule 0x315.5-0x31c.7 (7.3)
|
||||
| | | channels[0:1]: 0x315.5-0x31c.7 (7.3)
|
||||
| | | [0]{}: channel 0x315.5-0x31c.7 (7.3)
|
||||
0x310| 01 59 04 | .Y. | part2_3_length: 690 0x315.5-0x317 (1.4)
|
||||
0x310| 04 a1 | .. | big_values: 18 0x317.1-0x318.1 (1.1)
|
||||
0x310| a1 e2 | .. | global_gain: 135 0x318.2-0x319.1 (1)
|
||||
0x310| e2 | . | scalefac_compress: 8 0x319.2-0x319.5 (0.4)
|
||||
0x310| e2 | . | blocksplit_flag: 1 0x319.6-0x319.6 (0.1)
|
||||
0x310| e2 be | .. | block_type: "start block" (1) 0x319.7-0x31a (0.2)
|
||||
0x310| be | . | switch_point: 0 0x31a.1-0x31a.1 (0.1)
|
||||
0x310| be | . | table_select0: 31 0x31a.2-0x31a.6 (0.5)
|
||||
0x310| be 20 | . | table_select1: 2 0x31a.7-0x31b.3 (0.5)
|
||||
0x310| 20 | | subblock_gain0: 0 0x31b.4-0x31b.6 (0.3)
|
||||
0x310| 20 00 | . | subblock_gain1: 0 0x31b.7-0x31c.1 (0.3)
|
||||
0x310| 00 | . | subblock_gain2: 0 0x31c.2-0x31c.4 (0.3)
|
||||
0x310| 00 | . | preflag: 0 0x31c.5-0x31c.5 (0.1)
|
||||
0x310| 00 | . | scalefac_scale: 0 0x31c.6-0x31c.6 (0.1)
|
||||
0x310| 00 | . | count1table_select: 0 0x31c.7-0x31c.7 (0.1)
|
||||
0x310|21 10 |!. | global_gain: 136 0x310.7-0x311.6 (1)
|
||||
0x310| 10 bd | .. | scalefac_compress: 5 0x311.7-0x312.2 (0.4)
|
||||
0x310| bd | . | blocksplit_flag: 1 0x312.3-0x312.3 (0.1)
|
||||
0x310| bd | . | block_type: "end" (3) 0x312.4-0x312.5 (0.2)
|
||||
0x310| bd | . | switch_point: 0 0x312.6-0x312.6 (0.1)
|
||||
0x310| bd f1 | .. | table_select0: 31 0x312.7-0x313.3 (0.5)
|
||||
0x310| f1 00 | .. | table_select1: 2 0x313.4-0x314 (0.5)
|
||||
0x310| 00 | . | subblock_gain0: 0 0x314.1-0x314.3 (0.3)
|
||||
0x310| 00 | . | subblock_gain1: 0 0x314.4-0x314.6 (0.3)
|
||||
0x310| 00 01 | .. | subblock_gain2: 0 0x314.7-0x315.1 (0.3)
|
||||
0x310| 01 | . | preflag: 0 0x315.2-0x315.2 (0.1)
|
||||
0x310| 01 | . | scalefac_scale: 0 0x315.3-0x315.3 (0.1)
|
||||
0x310| 01 | . | count1table_select: 0 0x315.4-0x315.4 (0.1)
|
||||
| | | [1][0:1]: granule 0x315.5-0x31c.7 (7.3)
|
||||
| | | [0]{}: channel 0x315.5-0x31c.7 (7.3)
|
||||
0x310| 01 59 04 | .Y. | part2_3_length: 690 0x315.5-0x317 (1.4)
|
||||
0x310| 04 a1 | .. | big_values: 18 0x317.1-0x318.1 (1.1)
|
||||
0x310| a1 e2 | .. | global_gain: 135 0x318.2-0x319.1 (1)
|
||||
0x310| e2 | . | scalefac_compress: 8 0x319.2-0x319.5 (0.4)
|
||||
0x310| e2 | . | blocksplit_flag: 1 0x319.6-0x319.6 (0.1)
|
||||
0x310| e2 be | .. | block_type: "start block" (1) 0x319.7-0x31a (0.2)
|
||||
0x310| be | . | switch_point: 0 0x31a.1-0x31a.1 (0.1)
|
||||
0x310| be | . | table_select0: 31 0x31a.2-0x31a.6 (0.5)
|
||||
0x310| be 20 | . | table_select1: 2 0x31a.7-0x31b.3 (0.5)
|
||||
0x310| 20 | | subblock_gain0: 0 0x31b.4-0x31b.6 (0.3)
|
||||
0x310| 20 00 | . | subblock_gain1: 0 0x31b.7-0x31c.1 (0.3)
|
||||
0x310| 00 | . | subblock_gain2: 0 0x31c.2-0x31c.4 (0.3)
|
||||
0x310| 00 | . | preflag: 0 0x31c.5-0x31c.5 (0.1)
|
||||
0x310| 00 | . | scalefac_scale: 0 0x31c.6-0x31c.6 (0.1)
|
||||
0x310| 00 | . | count1table_select: 0 0x31c.7-0x31c.7 (0.1)
|
||||
0x310| 01 d9 81| ...| data: raw bits 0x31d-0x3ce.7 (178)
|
||||
0x320|38 05 c9 80 20 04 f1 80 8e 07 01 96 d2 b0 19 91|8... ...........|
|
||||
* |until 0x3ce.7 (178) | |
|
||||
@ -527,43 +523,41 @@ $ fq -d matroska dv /mp3.mkv
|
||||
0x3e0| 80 | . | private_bits: 0 0x3ee.1-0x3ee.5 (0.5)
|
||||
0x3e0| 80 0d| ..| share0: 0 0x3ee.6-0x3ef.1 (0.4)
|
||||
| | | granules[0:2]: 0x3ef.2-0x3fd.7 (14.6)
|
||||
| | | [0]{}: granule 0x3ef.2-0x3f6.4 (7.3)
|
||||
| | | channels[0:1]: 0x3ef.2-0x3f6.4 (7.3)
|
||||
| | | [0]{}: channel 0x3ef.2-0x3f6.4 (7.3)
|
||||
0x3e0| 0d| .| part2_3_length: 889 0x3ef.2-0x3f0.5 (1.4)
|
||||
| | | [0][0:1]: granule 0x3ef.2-0x3f6.4 (7.3)
|
||||
| | | [0]{}: channel 0x3ef.2-0x3f6.4 (7.3)
|
||||
0x3e0| 0d| .| part2_3_length: 889 0x3ef.2-0x3f0.5 (1.4)
|
||||
0x3f0|e4 |. |
|
||||
0x3f0|e4 c9 |.. | big_values: 100 0x3f0.6-0x3f1.6 (1.1)
|
||||
0x3f0| c9 7b | .{ | global_gain: 189 0x3f1.7-0x3f2.6 (1)
|
||||
0x3f0| 7b f9 | {. | scalefac_compress: 15 0x3f2.7-0x3f3.2 (0.4)
|
||||
0x3f0| f9 | . | blocksplit_flag: 1 0x3f3.3-0x3f3.3 (0.1)
|
||||
0x3f0| f9 | . | block_type: "3 short windows" (2) 0x3f3.4-0x3f3.5 (0.2)
|
||||
0x3f0| f9 | . | switch_point: 0 0x3f3.6-0x3f3.6 (0.1)
|
||||
0x3f0| f9 89 | .. | table_select0: 24 0x3f3.7-0x3f4.3 (0.5)
|
||||
0x3f0| 89 84 | .. | table_select1: 19 0x3f4.4-0x3f5 (0.5)
|
||||
0x3f0| 84 | . | subblock_gain0: 0 0x3f5.1-0x3f5.3 (0.3)
|
||||
0x3f0| 84 | . | subblock_gain1: 2 0x3f5.4-0x3f5.6 (0.3)
|
||||
0x3f0| 84 91 | .. | subblock_gain2: 2 0x3f5.7-0x3f6.1 (0.3)
|
||||
0x3f0| 91 | . | preflag: 0 0x3f6.2-0x3f6.2 (0.1)
|
||||
0x3f0| 91 | . | scalefac_scale: 1 0x3f6.3-0x3f6.3 (0.1)
|
||||
0x3f0| 91 | . | count1table_select: 0 0x3f6.4-0x3f6.4 (0.1)
|
||||
| | | [1]{}: granule 0x3f6.5-0x3fd.7 (7.3)
|
||||
| | | channels[0:1]: 0x3f6.5-0x3fd.7 (7.3)
|
||||
| | | [0]{}: channel 0x3f6.5-0x3fd.7 (7.3)
|
||||
0x3f0| 91 30 8d | .0. | part2_3_length: 609 0x3f6.5-0x3f8 (1.4)
|
||||
0x3f0| 8d a3 | .. | big_values: 54 0x3f8.1-0x3f9.1 (1.1)
|
||||
0x3f0| a3 03 | .. | global_gain: 140 0x3f9.2-0x3fa.1 (1)
|
||||
0x3f0| 03 | . | scalefac_compress: 0 0x3fa.2-0x3fa.5 (0.4)
|
||||
0x3f0| 03 | . | blocksplit_flag: 1 0x3fa.6-0x3fa.6 (0.1)
|
||||
0x3f0| 03 b2 | .. | block_type: "end" (3) 0x3fa.7-0x3fb (0.2)
|
||||
0x3f0| b2 | . | switch_point: 0 0x3fb.1-0x3fb.1 (0.1)
|
||||
0x3f0| b2 | . | table_select0: 25 0x3fb.2-0x3fb.6 (0.5)
|
||||
0x3f0| b2 f0 | .. | table_select1: 15 0x3fb.7-0x3fc.3 (0.5)
|
||||
0x3f0| f0 | . | subblock_gain0: 0 0x3fc.4-0x3fc.6 (0.3)
|
||||
0x3f0| f0 00 | .. | subblock_gain1: 0 0x3fc.7-0x3fd.1 (0.3)
|
||||
0x3f0| 00 | . | subblock_gain2: 0 0x3fd.2-0x3fd.4 (0.3)
|
||||
0x3f0| 00 | . | preflag: 0 0x3fd.5-0x3fd.5 (0.1)
|
||||
0x3f0| 00 | . | scalefac_scale: 0 0x3fd.6-0x3fd.6 (0.1)
|
||||
0x3f0| 00 | . | count1table_select: 0 0x3fd.7-0x3fd.7 (0.1)
|
||||
0x3f0|e4 c9 |.. | big_values: 100 0x3f0.6-0x3f1.6 (1.1)
|
||||
0x3f0| c9 7b | .{ | global_gain: 189 0x3f1.7-0x3f2.6 (1)
|
||||
0x3f0| 7b f9 | {. | scalefac_compress: 15 0x3f2.7-0x3f3.2 (0.4)
|
||||
0x3f0| f9 | . | blocksplit_flag: 1 0x3f3.3-0x3f3.3 (0.1)
|
||||
0x3f0| f9 | . | block_type: "3 short windows" (2) 0x3f3.4-0x3f3.5 (0.2)
|
||||
0x3f0| f9 | . | switch_point: 0 0x3f3.6-0x3f3.6 (0.1)
|
||||
0x3f0| f9 89 | .. | table_select0: 24 0x3f3.7-0x3f4.3 (0.5)
|
||||
0x3f0| 89 84 | .. | table_select1: 19 0x3f4.4-0x3f5 (0.5)
|
||||
0x3f0| 84 | . | subblock_gain0: 0 0x3f5.1-0x3f5.3 (0.3)
|
||||
0x3f0| 84 | . | subblock_gain1: 2 0x3f5.4-0x3f5.6 (0.3)
|
||||
0x3f0| 84 91 | .. | subblock_gain2: 2 0x3f5.7-0x3f6.1 (0.3)
|
||||
0x3f0| 91 | . | preflag: 0 0x3f6.2-0x3f6.2 (0.1)
|
||||
0x3f0| 91 | . | scalefac_scale: 1 0x3f6.3-0x3f6.3 (0.1)
|
||||
0x3f0| 91 | . | count1table_select: 0 0x3f6.4-0x3f6.4 (0.1)
|
||||
| | | [1][0:1]: granule 0x3f6.5-0x3fd.7 (7.3)
|
||||
| | | [0]{}: channel 0x3f6.5-0x3fd.7 (7.3)
|
||||
0x3f0| 91 30 8d | .0. | part2_3_length: 609 0x3f6.5-0x3f8 (1.4)
|
||||
0x3f0| 8d a3 | .. | big_values: 54 0x3f8.1-0x3f9.1 (1.1)
|
||||
0x3f0| a3 03 | .. | global_gain: 140 0x3f9.2-0x3fa.1 (1)
|
||||
0x3f0| 03 | . | scalefac_compress: 0 0x3fa.2-0x3fa.5 (0.4)
|
||||
0x3f0| 03 | . | blocksplit_flag: 1 0x3fa.6-0x3fa.6 (0.1)
|
||||
0x3f0| 03 b2 | .. | block_type: "end" (3) 0x3fa.7-0x3fb (0.2)
|
||||
0x3f0| b2 | . | switch_point: 0 0x3fb.1-0x3fb.1 (0.1)
|
||||
0x3f0| b2 | . | table_select0: 25 0x3fb.2-0x3fb.6 (0.5)
|
||||
0x3f0| b2 f0 | .. | table_select1: 15 0x3fb.7-0x3fc.3 (0.5)
|
||||
0x3f0| f0 | . | subblock_gain0: 0 0x3fc.4-0x3fc.6 (0.3)
|
||||
0x3f0| f0 00 | .. | subblock_gain1: 0 0x3fc.7-0x3fd.1 (0.3)
|
||||
0x3f0| 00 | . | subblock_gain2: 0 0x3fd.2-0x3fd.4 (0.3)
|
||||
0x3f0| 00 | . | preflag: 0 0x3fd.5-0x3fd.5 (0.1)
|
||||
0x3f0| 00 | . | scalefac_scale: 0 0x3fd.6-0x3fd.6 (0.1)
|
||||
0x3f0| 00 | . | count1table_select: 0 0x3fd.7-0x3fd.7 (0.1)
|
||||
0x3f0| 53 ca| S.| data: raw bits 0x3fe-0x49d.7 (160)
|
||||
0x400|1e 59 fd 29 ba 0b 84 d4 8a f8 8d cb a0 77 10 07|.Y.).........w..|
|
||||
* |until 0x49d.7 (160) | |
|
||||
|
70
format/mp3/testdata/header-zeros-frames.fqtest
vendored
70
format/mp3/testdata/header-zeros-frames.fqtest
vendored
@ -56,43 +56,41 @@ $ fq -d mp3 dv /header-zeros-frames.mp3
|
||||
0x030| 00 | . | private_bits: 0 0x35.1-0x35.5 (0.5)
|
||||
0x030| 00 0a | .. | share0: 0 0x35.6-0x36.1 (0.4)
|
||||
| | | granules[0:2]: 0x36.2-0x44.7 (14.6)
|
||||
| | | [0]{}: granule 0x36.2-0x3d.4 (7.3)
|
||||
| | | channels[0:1]: 0x36.2-0x3d.4 (7.3)
|
||||
| | | [0]{}: channel 0x36.2-0x3d.4 (7.3)
|
||||
0x030| 0a 2c | ., | part2_3_length: 651 0x36.2-0x37.5 (1.4)
|
||||
0x030| 2c 43 | ,C | big_values: 33 0x37.6-0x38.6 (1.1)
|
||||
0x030| 43 2e | C. | global_gain: 151 0x38.7-0x39.6 (1)
|
||||
0x030| 2e 55 | .U | scalefac_compress: 2 0x39.7-0x3a.2 (0.4)
|
||||
0x030| 55 | U | blocksplit_flag: 1 0x3a.3-0x3a.3 (0.1)
|
||||
0x030| 55 | U | block_type: "start block" (1) 0x3a.4-0x3a.5 (0.2)
|
||||
0x030| 55 | U | switch_point: 0 0x3a.6-0x3a.6 (0.1)
|
||||
0x030| 55 94 | U. | table_select0: 25 0x3a.7-0x3b.3 (0.5)
|
||||
0x030| 94 80 | .. | table_select1: 9 0x3b.4-0x3c (0.5)
|
||||
0x030| 80 | . | subblock_gain0: 0 0x3c.1-0x3c.3 (0.3)
|
||||
0x030| 80 | . | subblock_gain1: 0 0x3c.4-0x3c.6 (0.3)
|
||||
0x030| 80 01 | .. | subblock_gain2: 0 0x3c.7-0x3d.1 (0.3)
|
||||
0x030| 01 | . | preflag: 0 0x3d.2-0x3d.2 (0.1)
|
||||
0x030| 01 | . | scalefac_scale: 0 0x3d.3-0x3d.3 (0.1)
|
||||
0x030| 01 | . | count1table_select: 0 0x3d.4-0x3d.4 (0.1)
|
||||
| | | [1]{}: granule 0x3d.5-0x44.7 (7.3)
|
||||
| | | channels[0:1]: 0x3d.5-0x44.7 (7.3)
|
||||
| | | [0]{}: channel 0x3d.5-0x44.7 (7.3)
|
||||
0x030| 01 80 93| ...| part2_3_length: 769 0x3d.5-0x3f (1.4)
|
||||
0x030| 93| .| big_values: 77 0x3f.1-0x40.1 (1.1)
|
||||
| | | [0][0:1]: granule 0x36.2-0x3d.4 (7.3)
|
||||
| | | [0]{}: channel 0x36.2-0x3d.4 (7.3)
|
||||
0x030| 0a 2c | ., | part2_3_length: 651 0x36.2-0x37.5 (1.4)
|
||||
0x030| 2c 43 | ,C | big_values: 33 0x37.6-0x38.6 (1.1)
|
||||
0x030| 43 2e | C. | global_gain: 151 0x38.7-0x39.6 (1)
|
||||
0x030| 2e 55 | .U | scalefac_compress: 2 0x39.7-0x3a.2 (0.4)
|
||||
0x030| 55 | U | blocksplit_flag: 1 0x3a.3-0x3a.3 (0.1)
|
||||
0x030| 55 | U | block_type: "start block" (1) 0x3a.4-0x3a.5 (0.2)
|
||||
0x030| 55 | U | switch_point: 0 0x3a.6-0x3a.6 (0.1)
|
||||
0x030| 55 94 | U. | table_select0: 25 0x3a.7-0x3b.3 (0.5)
|
||||
0x030| 94 80 | .. | table_select1: 9 0x3b.4-0x3c (0.5)
|
||||
0x030| 80 | . | subblock_gain0: 0 0x3c.1-0x3c.3 (0.3)
|
||||
0x030| 80 | . | subblock_gain1: 0 0x3c.4-0x3c.6 (0.3)
|
||||
0x030| 80 01 | .. | subblock_gain2: 0 0x3c.7-0x3d.1 (0.3)
|
||||
0x030| 01 | . | preflag: 0 0x3d.2-0x3d.2 (0.1)
|
||||
0x030| 01 | . | scalefac_scale: 0 0x3d.3-0x3d.3 (0.1)
|
||||
0x030| 01 | . | count1table_select: 0 0x3d.4-0x3d.4 (0.1)
|
||||
| | | [1][0:1]: granule 0x3d.5-0x44.7 (7.3)
|
||||
| | | [0]{}: channel 0x3d.5-0x44.7 (7.3)
|
||||
0x030| 01 80 93| ...| part2_3_length: 769 0x3d.5-0x3f (1.4)
|
||||
0x030| 93| .| big_values: 77 0x3f.1-0x40.1 (1.1)
|
||||
0x040|6b |k |
|
||||
0x040|6b 27 |k' | global_gain: 172 0x40.2-0x41.1 (1)
|
||||
0x040| 27 | ' | scalefac_compress: 9 0x41.2-0x41.5 (0.4)
|
||||
0x040| 27 | ' | blocksplit_flag: 1 0x41.6-0x41.6 (0.1)
|
||||
0x040| 27 30 | '0 | block_type: "3 short windows" (2) 0x41.7-0x42 (0.2)
|
||||
0x040| 30 | 0 | switch_point: 0 0x42.1-0x42.1 (0.1)
|
||||
0x040| 30 | 0 | table_select0: 24 0x42.2-0x42.6 (0.5)
|
||||
0x040| 30 80 | 0. | table_select1: 8 0x42.7-0x43.3 (0.5)
|
||||
0x040| 80 | . | subblock_gain0: 0 0x43.4-0x43.6 (0.3)
|
||||
0x040| 80 00 | .. | subblock_gain1: 0 0x43.7-0x44.1 (0.3)
|
||||
0x040| 00 | . | subblock_gain2: 0 0x44.2-0x44.4 (0.3)
|
||||
0x040| 00 | . | preflag: 0 0x44.5-0x44.5 (0.1)
|
||||
0x040| 00 | . | scalefac_scale: 0 0x44.6-0x44.6 (0.1)
|
||||
0x040| 00 | . | count1table_select: 0 0x44.7-0x44.7 (0.1)
|
||||
0x040|6b 27 |k' | global_gain: 172 0x40.2-0x41.1 (1)
|
||||
0x040| 27 | ' | scalefac_compress: 9 0x41.2-0x41.5 (0.4)
|
||||
0x040| 27 | ' | blocksplit_flag: 1 0x41.6-0x41.6 (0.1)
|
||||
0x040| 27 30 | '0 | block_type: "3 short windows" (2) 0x41.7-0x42 (0.2)
|
||||
0x040| 30 | 0 | switch_point: 0 0x42.1-0x42.1 (0.1)
|
||||
0x040| 30 | 0 | table_select0: 24 0x42.2-0x42.6 (0.5)
|
||||
0x040| 30 80 | 0. | table_select1: 8 0x42.7-0x43.3 (0.5)
|
||||
0x040| 80 | . | subblock_gain0: 0 0x43.4-0x43.6 (0.3)
|
||||
0x040| 80 00 | .. | subblock_gain1: 0 0x43.7-0x44.1 (0.3)
|
||||
0x040| 00 | . | subblock_gain2: 0 0x44.2-0x44.4 (0.3)
|
||||
0x040| 00 | . | preflag: 0 0x44.5-0x44.5 (0.1)
|
||||
0x040| 00 | . | scalefac_scale: 0 0x44.6-0x44.6 (0.1)
|
||||
0x040| 00 | . | count1table_select: 0 0x44.7-0x44.7 (0.1)
|
||||
0x040| 07 aa c3 8e 33 85 d3 64 f1 a1 c1| ....3..d...| data: raw bits 0x45-0xff.7 (187)
|
||||
0x050|08 1c 58 1f 5e 1f 18 1c 46 04 1e 89 e5 b3 2e 5a|..X.^...F......Z|
|
||||
* |until 0xff.7 (end) (187) | |
|
||||
|
124
format/mp3/testdata/headerfooter.fqtest
vendored
124
format/mp3/testdata/headerfooter.fqtest
vendored
@ -73,39 +73,37 @@ $ fq -d mp3 dv /headerfooter.mp3
|
||||
0x040| 00 | . | private_bits: 0 0x42.1-0x42.5 (0.5)
|
||||
0x040| 00 09 | .. | share0: 0 0x42.6-0x43.1 (0.4)
|
||||
| | | granules[0:2]: 0x43.2-0x51.7 (14.6)
|
||||
| | | [0]{}: granule 0x43.2-0x4a.4 (7.3)
|
||||
| | | channels[0:1]: 0x43.2-0x4a.4 (7.3)
|
||||
| | | [0]{}: channel 0x43.2-0x4a.4 (7.3)
|
||||
0x040| 09 bc | .. | part2_3_length: 623 0x43.2-0x44.5 (1.4)
|
||||
0x040| bc 33 | .3 | big_values: 25 0x44.6-0x45.6 (1.1)
|
||||
0x040| 33 46 | 3F | global_gain: 163 0x45.7-0x46.6 (1)
|
||||
0x040| 46 47 | FG | scalefac_compress: 2 0x46.7-0x47.2 (0.4)
|
||||
0x040| 47 | G | blocksplit_flag: 0 0x47.3-0x47.3 (0.1)
|
||||
0x040| 47 bc | G. | table_select0: 15 0x47.4-0x48 (0.5)
|
||||
0x040| bc | . | table_select1: 15 0x48.1-0x48.5 (0.5)
|
||||
0x040| bc c1 | .. | table_select2: 6 0x48.6-0x49.2 (0.5)
|
||||
0x040| c1 | . | region_address1: 0 0x49.3-0x49.6 (0.4)
|
||||
0x040| c1 01 | .. | region_address2: 4 0x49.7-0x4a.1 (0.3)
|
||||
0x040| 01 | . | preflag: 0 0x4a.2-0x4a.2 (0.1)
|
||||
0x040| 01 | . | scalefac_scale: 0 0x4a.3-0x4a.3 (0.1)
|
||||
0x040| 01 | . | count1table_select: 0 0x4a.4-0x4a.4 (0.1)
|
||||
| | | [1]{}: granule 0x4a.5-0x51.7 (7.3)
|
||||
| | | channels[0:1]: 0x4a.5-0x51.7 (7.3)
|
||||
| | | [0]{}: channel 0x4a.5-0x51.7 (7.3)
|
||||
0x040| 01 4a 86 | .J. | part2_3_length: 661 0x4a.5-0x4c (1.4)
|
||||
0x040| 86 ab | .. | big_values: 26 0x4c.1-0x4d.1 (1.1)
|
||||
0x040| ab 34 | .4 | global_gain: 172 0x4d.2-0x4e.1 (1)
|
||||
0x040| 34 | 4 | scalefac_compress: 13 0x4e.2-0x4e.5 (0.4)
|
||||
0x040| 34 | 4 | blocksplit_flag: 0 0x4e.6-0x4e.6 (0.1)
|
||||
0x040| 34 c4| 4.| table_select0: 12 0x4e.7-0x4f.3 (0.5)
|
||||
0x040| c4| .| table_select1: 9 0x4f.4-0x50 (0.5)
|
||||
| | | [0][0:1]: granule 0x43.2-0x4a.4 (7.3)
|
||||
| | | [0]{}: channel 0x43.2-0x4a.4 (7.3)
|
||||
0x040| 09 bc | .. | part2_3_length: 623 0x43.2-0x44.5 (1.4)
|
||||
0x040| bc 33 | .3 | big_values: 25 0x44.6-0x45.6 (1.1)
|
||||
0x040| 33 46 | 3F | global_gain: 163 0x45.7-0x46.6 (1)
|
||||
0x040| 46 47 | FG | scalefac_compress: 2 0x46.7-0x47.2 (0.4)
|
||||
0x040| 47 | G | blocksplit_flag: 0 0x47.3-0x47.3 (0.1)
|
||||
0x040| 47 bc | G. | table_select0: 15 0x47.4-0x48 (0.5)
|
||||
0x040| bc | . | table_select1: 15 0x48.1-0x48.5 (0.5)
|
||||
0x040| bc c1 | .. | table_select2: 6 0x48.6-0x49.2 (0.5)
|
||||
0x040| c1 | . | region_address1: 0 0x49.3-0x49.6 (0.4)
|
||||
0x040| c1 01 | .. | region_address2: 4 0x49.7-0x4a.1 (0.3)
|
||||
0x040| 01 | . | preflag: 0 0x4a.2-0x4a.2 (0.1)
|
||||
0x040| 01 | . | scalefac_scale: 0 0x4a.3-0x4a.3 (0.1)
|
||||
0x040| 01 | . | count1table_select: 0 0x4a.4-0x4a.4 (0.1)
|
||||
| | | [1][0:1]: granule 0x4a.5-0x51.7 (7.3)
|
||||
| | | [0]{}: channel 0x4a.5-0x51.7 (7.3)
|
||||
0x040| 01 4a 86 | .J. | part2_3_length: 661 0x4a.5-0x4c (1.4)
|
||||
0x040| 86 ab | .. | big_values: 26 0x4c.1-0x4d.1 (1.1)
|
||||
0x040| ab 34 | .4 | global_gain: 172 0x4d.2-0x4e.1 (1)
|
||||
0x040| 34 | 4 | scalefac_compress: 13 0x4e.2-0x4e.5 (0.4)
|
||||
0x040| 34 | 4 | blocksplit_flag: 0 0x4e.6-0x4e.6 (0.1)
|
||||
0x040| 34 c4| 4.| table_select0: 12 0x4e.7-0x4f.3 (0.5)
|
||||
0x040| c4| .| table_select1: 9 0x4f.4-0x50 (0.5)
|
||||
0x050|a4 |. |
|
||||
0x050|a4 |. | table_select2: 9 0x50.1-0x50.5 (0.5)
|
||||
0x050|a4 c4 |.. | region_address1: 3 0x50.6-0x51.1 (0.4)
|
||||
0x050| c4 | . | region_address2: 0 0x51.2-0x51.4 (0.3)
|
||||
0x050| c4 | . | preflag: 1 0x51.5-0x51.5 (0.1)
|
||||
0x050| c4 | . | scalefac_scale: 0 0x51.6-0x51.6 (0.1)
|
||||
0x050| c4 | . | count1table_select: 0 0x51.7-0x51.7 (0.1)
|
||||
0x050|a4 |. | table_select2: 9 0x50.1-0x50.5 (0.5)
|
||||
0x050|a4 c4 |.. | region_address1: 3 0x50.6-0x51.1 (0.4)
|
||||
0x050| c4 | . | region_address2: 0 0x51.2-0x51.4 (0.3)
|
||||
0x050| c4 | . | preflag: 1 0x51.5-0x51.5 (0.1)
|
||||
0x050| c4 | . | scalefac_scale: 0 0x51.6-0x51.6 (0.1)
|
||||
0x050| c4 | . | count1table_select: 0 0x51.7-0x51.7 (0.1)
|
||||
0x050| 00 5a b0 55 89 9a ad 48 5b 05 b0 42 03 50| .Z.U...H[..B.P| data: raw bits 0x52-0x10c.7 (187)
|
||||
0x060|26 02 66 42 ce b0 b4 da 23 1a 08 10 20 84 2c 10|&.fB....#... .,.|
|
||||
* |until 0x10c.7 (187) | |
|
||||
@ -132,39 +130,37 @@ $ fq -d mp3 dv /headerfooter.mp3
|
||||
0x110| 03 | . | private_bits: 0 0x112.1-0x112.5 (0.5)
|
||||
0x110| 03 c0 | .. | share0: 15 0x112.6-0x113.1 (0.4)
|
||||
| | | granules[0:2]: 0x113.2-0x121.7 (14.6)
|
||||
| | | [0]{}: granule 0x113.2-0x11a.4 (7.3)
|
||||
| | | channels[0:1]: 0x113.2-0x11a.4 (7.3)
|
||||
| | | [0]{}: channel 0x113.2-0x11a.4 (7.3)
|
||||
0x110| c0 00 | .. | part2_3_length: 0 0x113.2-0x114.5 (1.4)
|
||||
0x110| 00 01 | .. | big_values: 0 0x114.6-0x115.6 (1.1)
|
||||
0x110| 01 a4 | .. | global_gain: 210 0x115.7-0x116.6 (1)
|
||||
0x110| a4 00 | .. | scalefac_compress: 0 0x116.7-0x117.2 (0.4)
|
||||
0x110| 00 | . | blocksplit_flag: 0 0x117.3-0x117.3 (0.1)
|
||||
0x110| 00 00 | .. | table_select0: 0 0x117.4-0x118 (0.5)
|
||||
0x110| 00 | . | table_select1: 0 0x118.1-0x118.5 (0.5)
|
||||
0x110| 00 00 | .. | table_select2: 0 0x118.6-0x119.2 (0.5)
|
||||
0x110| 00 | . | region_address1: 0 0x119.3-0x119.6 (0.4)
|
||||
0x110| 00 20 | . | region_address2: 0 0x119.7-0x11a.1 (0.3)
|
||||
0x110| 20 | | preflag: 1 0x11a.2-0x11a.2 (0.1)
|
||||
0x110| 20 | | scalefac_scale: 0 0x11a.3-0x11a.3 (0.1)
|
||||
0x110| 20 | | count1table_select: 0 0x11a.4-0x11a.4 (0.1)
|
||||
| | | [1]{}: granule 0x11a.5-0x121.7 (7.3)
|
||||
| | | channels[0:1]: 0x11a.5-0x121.7 (7.3)
|
||||
| | | [0]{}: channel 0x11a.5-0x121.7 (7.3)
|
||||
0x110| 20 00 00 | .. | part2_3_length: 0 0x11a.5-0x11c (1.4)
|
||||
0x110| 00 34 | .4 | big_values: 0 0x11c.1-0x11d.1 (1.1)
|
||||
0x110| 34 80 | 4. | global_gain: 210 0x11d.2-0x11e.1 (1)
|
||||
0x110| 80 | . | scalefac_compress: 0 0x11e.2-0x11e.5 (0.4)
|
||||
0x110| 80 | . | blocksplit_flag: 0 0x11e.6-0x11e.6 (0.1)
|
||||
0x110| 80 00| ..| table_select0: 0 0x11e.7-0x11f.3 (0.5)
|
||||
0x110| 00| .| table_select1: 0 0x11f.4-0x120 (0.5)
|
||||
| | | [0][0:1]: granule 0x113.2-0x11a.4 (7.3)
|
||||
| | | [0]{}: channel 0x113.2-0x11a.4 (7.3)
|
||||
0x110| c0 00 | .. | part2_3_length: 0 0x113.2-0x114.5 (1.4)
|
||||
0x110| 00 01 | .. | big_values: 0 0x114.6-0x115.6 (1.1)
|
||||
0x110| 01 a4 | .. | global_gain: 210 0x115.7-0x116.6 (1)
|
||||
0x110| a4 00 | .. | scalefac_compress: 0 0x116.7-0x117.2 (0.4)
|
||||
0x110| 00 | . | blocksplit_flag: 0 0x117.3-0x117.3 (0.1)
|
||||
0x110| 00 00 | .. | table_select0: 0 0x117.4-0x118 (0.5)
|
||||
0x110| 00 | . | table_select1: 0 0x118.1-0x118.5 (0.5)
|
||||
0x110| 00 00 | .. | table_select2: 0 0x118.6-0x119.2 (0.5)
|
||||
0x110| 00 | . | region_address1: 0 0x119.3-0x119.6 (0.4)
|
||||
0x110| 00 20 | . | region_address2: 0 0x119.7-0x11a.1 (0.3)
|
||||
0x110| 20 | | preflag: 1 0x11a.2-0x11a.2 (0.1)
|
||||
0x110| 20 | | scalefac_scale: 0 0x11a.3-0x11a.3 (0.1)
|
||||
0x110| 20 | | count1table_select: 0 0x11a.4-0x11a.4 (0.1)
|
||||
| | | [1][0:1]: granule 0x11a.5-0x121.7 (7.3)
|
||||
| | | [0]{}: channel 0x11a.5-0x121.7 (7.3)
|
||||
0x110| 20 00 00 | .. | part2_3_length: 0 0x11a.5-0x11c (1.4)
|
||||
0x110| 00 34 | .4 | big_values: 0 0x11c.1-0x11d.1 (1.1)
|
||||
0x110| 34 80 | 4. | global_gain: 210 0x11d.2-0x11e.1 (1)
|
||||
0x110| 80 | . | scalefac_compress: 0 0x11e.2-0x11e.5 (0.4)
|
||||
0x110| 80 | . | blocksplit_flag: 0 0x11e.6-0x11e.6 (0.1)
|
||||
0x110| 80 00| ..| table_select0: 0 0x11e.7-0x11f.3 (0.5)
|
||||
0x110| 00| .| table_select1: 0 0x11f.4-0x120 (0.5)
|
||||
0x120|00 |. |
|
||||
0x120|00 |. | table_select2: 0 0x120.1-0x120.5 (0.5)
|
||||
0x120|00 04 |.. | region_address1: 0 0x120.6-0x121.1 (0.4)
|
||||
0x120| 04 | . | region_address2: 0 0x121.2-0x121.4 (0.3)
|
||||
0x120| 04 | . | preflag: 1 0x121.5-0x121.5 (0.1)
|
||||
0x120| 04 | . | scalefac_scale: 0 0x121.6-0x121.6 (0.1)
|
||||
0x120| 04 | . | count1table_select: 0 0x121.7-0x121.7 (0.1)
|
||||
0x120|00 |. | table_select2: 0 0x120.1-0x120.5 (0.5)
|
||||
0x120|00 04 |.. | region_address1: 0 0x120.6-0x121.1 (0.4)
|
||||
0x120| 04 | . | region_address2: 0 0x121.2-0x121.4 (0.3)
|
||||
0x120| 04 | . | preflag: 1 0x121.5-0x121.5 (0.1)
|
||||
0x120| 04 | . | scalefac_scale: 0 0x121.6-0x121.6 (0.1)
|
||||
0x120| 04 | . | count1table_select: 0 0x121.7-0x121.7 (0.1)
|
||||
0x120| 55 55 55 55 55 55 55 55 55 55 55 55 55 55| UUUUUUUUUUUUUU| data: raw bits 0x122-0x1c2.7 (161)
|
||||
0x130|55 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55|UUUUUUUUUUUUUUUU|
|
||||
* |until 0x1c2.7 (161) | |
|
||||
|
378
format/mp3/testdata/test.fqtest
vendored
378
format/mp3/testdata/test.fqtest
vendored
@ -78,68 +78,66 @@ $ fq -d mp3 dv /test.mp3
|
||||
0x040| 00 | . | share0: 0 0x42.4-0x42.7 (0.4)
|
||||
0x040| 00 | . | share1: 0 0x43-0x43.3 (0.4)
|
||||
| | | granules[0:2]: 0x43.4-0x60.7 (29.4)
|
||||
| | | [0]{}: granule 0x43.4-0x52.1 (14.6)
|
||||
| | | channels[0:2]: 0x43.4-0x52.1 (14.6)
|
||||
| | | [0]{}: channel 0x43.4-0x4a.6 (7.3)
|
||||
0x040| 00 00 | .. | part2_3_length: 0 0x43.4-0x44.7 (1.4)
|
||||
0x040| 00 00 | .. | big_values: 0 0x45-0x46 (1.1)
|
||||
0x040| 00 00 | .. | global_gain: 0 0x46.1-0x47 (1)
|
||||
0x040| 00 | . | scalefac_compress: 0 0x47.1-0x47.4 (0.4)
|
||||
0x040| 00 | . | blocksplit_flag: 0 0x47.5-0x47.5 (0.1)
|
||||
0x040| 00 00 | .. | table_select0: 0 0x47.6-0x48.2 (0.5)
|
||||
0x040| 00 | . | table_select1: 0 0x48.3-0x48.7 (0.5)
|
||||
0x040| 00 | . | table_select2: 0 0x49-0x49.4 (0.5)
|
||||
0x040| 00 00 | .. | region_address1: 0 0x49.5-0x4a (0.4)
|
||||
0x040| 00 | . | region_address2: 0 0x4a.1-0x4a.3 (0.3)
|
||||
0x040| 00 | . | preflag: 0 0x4a.4-0x4a.4 (0.1)
|
||||
0x040| 00 | . | scalefac_scale: 0 0x4a.5-0x4a.5 (0.1)
|
||||
0x040| 00 | . | count1table_select: 0 0x4a.6-0x4a.6 (0.1)
|
||||
| | | [1]{}: channel 0x4a.7-0x52.1 (7.3)
|
||||
0x040| 00 00 00 | ... | part2_3_length: 0 0x4a.7-0x4c.2 (1.4)
|
||||
0x040| 00 00 | .. | big_values: 0 0x4c.3-0x4d.3 (1.1)
|
||||
0x040| 00 00 | .. | global_gain: 0 0x4d.4-0x4e.3 (1)
|
||||
0x040| 00 | . | scalefac_compress: 0 0x4e.4-0x4e.7 (0.4)
|
||||
0x040| 00| .| blocksplit_flag: 0 0x4f-0x4f (0.1)
|
||||
0x040| 00| .| table_select0: 0 0x4f.1-0x4f.5 (0.5)
|
||||
0x040| 00| .| table_select1: 0 0x4f.6-0x50.2 (0.5)
|
||||
| | | [0][0:2]: granule 0x43.4-0x52.1 (14.6)
|
||||
| | | [0]{}: channel 0x43.4-0x4a.6 (7.3)
|
||||
0x040| 00 00 | .. | part2_3_length: 0 0x43.4-0x44.7 (1.4)
|
||||
0x040| 00 00 | .. | big_values: 0 0x45-0x46 (1.1)
|
||||
0x040| 00 00 | .. | global_gain: 0 0x46.1-0x47 (1)
|
||||
0x040| 00 | . | scalefac_compress: 0 0x47.1-0x47.4 (0.4)
|
||||
0x040| 00 | . | blocksplit_flag: 0 0x47.5-0x47.5 (0.1)
|
||||
0x040| 00 00 | .. | table_select0: 0 0x47.6-0x48.2 (0.5)
|
||||
0x040| 00 | . | table_select1: 0 0x48.3-0x48.7 (0.5)
|
||||
0x040| 00 | . | table_select2: 0 0x49-0x49.4 (0.5)
|
||||
0x040| 00 00 | .. | region_address1: 0 0x49.5-0x4a (0.4)
|
||||
0x040| 00 | . | region_address2: 0 0x4a.1-0x4a.3 (0.3)
|
||||
0x040| 00 | . | preflag: 0 0x4a.4-0x4a.4 (0.1)
|
||||
0x040| 00 | . | scalefac_scale: 0 0x4a.5-0x4a.5 (0.1)
|
||||
0x040| 00 | . | count1table_select: 0 0x4a.6-0x4a.6 (0.1)
|
||||
| | | [1]{}: channel 0x4a.7-0x52.1 (7.3)
|
||||
0x040| 00 00 00 | ... | part2_3_length: 0 0x4a.7-0x4c.2 (1.4)
|
||||
0x040| 00 00 | .. | big_values: 0 0x4c.3-0x4d.3 (1.1)
|
||||
0x040| 00 00 | .. | global_gain: 0 0x4d.4-0x4e.3 (1)
|
||||
0x040| 00 | . | scalefac_compress: 0 0x4e.4-0x4e.7 (0.4)
|
||||
0x040| 00| .| blocksplit_flag: 0 0x4f-0x4f (0.1)
|
||||
0x040| 00| .| table_select0: 0 0x4f.1-0x4f.5 (0.5)
|
||||
0x040| 00| .| table_select1: 0 0x4f.6-0x50.2 (0.5)
|
||||
0x050|00 |. |
|
||||
0x050|00 |. | table_select2: 0 0x50.3-0x50.7 (0.5)
|
||||
0x050| 00 | . | region_address1: 0 0x51-0x51.3 (0.4)
|
||||
0x050| 00 | . | region_address2: 0 0x51.4-0x51.6 (0.3)
|
||||
0x050| 00 | . | preflag: 0 0x51.7-0x51.7 (0.1)
|
||||
0x050| 00 | . | scalefac_scale: 0 0x52-0x52 (0.1)
|
||||
0x050| 00 | . | count1table_select: 0 0x52.1-0x52.1 (0.1)
|
||||
| | | [1]{}: granule 0x52.2-0x60.7 (14.6)
|
||||
| | | channels[0:2]: 0x52.2-0x60.7 (14.6)
|
||||
| | | [0]{}: channel 0x52.2-0x59.4 (7.3)
|
||||
0x050| 00 00 | .. | part2_3_length: 0 0x52.2-0x53.5 (1.4)
|
||||
0x050| 00 00 | .. | big_values: 0 0x53.6-0x54.6 (1.1)
|
||||
0x050| 00 00 | .. | global_gain: 0 0x54.7-0x55.6 (1)
|
||||
0x050| 00 00 | .. | scalefac_compress: 0 0x55.7-0x56.2 (0.4)
|
||||
0x050| 00 | . | blocksplit_flag: 0 0x56.3-0x56.3 (0.1)
|
||||
0x050| 00 00 | .. | table_select0: 0 0x56.4-0x57 (0.5)
|
||||
0x050| 00 | . | table_select1: 0 0x57.1-0x57.5 (0.5)
|
||||
0x050| 00 00 | .. | table_select2: 0 0x57.6-0x58.2 (0.5)
|
||||
0x050| 00 | . | region_address1: 0 0x58.3-0x58.6 (0.4)
|
||||
0x050| 00 00 | .. | region_address2: 0 0x58.7-0x59.1 (0.3)
|
||||
0x050| 00 | . | preflag: 0 0x59.2-0x59.2 (0.1)
|
||||
0x050| 00 | . | scalefac_scale: 0 0x59.3-0x59.3 (0.1)
|
||||
0x050| 00 | . | count1table_select: 0 0x59.4-0x59.4 (0.1)
|
||||
| | | [1]{}: channel 0x59.5-0x60.7 (7.3)
|
||||
0x050| 00 00 00 | ... | part2_3_length: 0 0x59.5-0x5b (1.4)
|
||||
0x050| 00 00 | .. | big_values: 0 0x5b.1-0x5c.1 (1.1)
|
||||
0x050| 00 00 | .. | global_gain: 0 0x5c.2-0x5d.1 (1)
|
||||
0x050| 00 | . | scalefac_compress: 0 0x5d.2-0x5d.5 (0.4)
|
||||
0x050| 00 | . | blocksplit_flag: 0 0x5d.6-0x5d.6 (0.1)
|
||||
0x050| 00 00 | .. | table_select0: 0 0x5d.7-0x5e.3 (0.5)
|
||||
0x050| 00 00| ..| table_select1: 0 0x5e.4-0x5f (0.5)
|
||||
0x050| 00| .| table_select2: 0 0x5f.1-0x5f.5 (0.5)
|
||||
0x050| 00| .| region_address1: 0 0x5f.6-0x60.1 (0.4)
|
||||
0x050|00 |. | table_select2: 0 0x50.3-0x50.7 (0.5)
|
||||
0x050| 00 | . | region_address1: 0 0x51-0x51.3 (0.4)
|
||||
0x050| 00 | . | region_address2: 0 0x51.4-0x51.6 (0.3)
|
||||
0x050| 00 | . | preflag: 0 0x51.7-0x51.7 (0.1)
|
||||
0x050| 00 | . | scalefac_scale: 0 0x52-0x52 (0.1)
|
||||
0x050| 00 | . | count1table_select: 0 0x52.1-0x52.1 (0.1)
|
||||
| | | [1][0:2]: granule 0x52.2-0x60.7 (14.6)
|
||||
| | | [0]{}: channel 0x52.2-0x59.4 (7.3)
|
||||
0x050| 00 00 | .. | part2_3_length: 0 0x52.2-0x53.5 (1.4)
|
||||
0x050| 00 00 | .. | big_values: 0 0x53.6-0x54.6 (1.1)
|
||||
0x050| 00 00 | .. | global_gain: 0 0x54.7-0x55.6 (1)
|
||||
0x050| 00 00 | .. | scalefac_compress: 0 0x55.7-0x56.2 (0.4)
|
||||
0x050| 00 | . | blocksplit_flag: 0 0x56.3-0x56.3 (0.1)
|
||||
0x050| 00 00 | .. | table_select0: 0 0x56.4-0x57 (0.5)
|
||||
0x050| 00 | . | table_select1: 0 0x57.1-0x57.5 (0.5)
|
||||
0x050| 00 00 | .. | table_select2: 0 0x57.6-0x58.2 (0.5)
|
||||
0x050| 00 | . | region_address1: 0 0x58.3-0x58.6 (0.4)
|
||||
0x050| 00 00 | .. | region_address2: 0 0x58.7-0x59.1 (0.3)
|
||||
0x050| 00 | . | preflag: 0 0x59.2-0x59.2 (0.1)
|
||||
0x050| 00 | . | scalefac_scale: 0 0x59.3-0x59.3 (0.1)
|
||||
0x050| 00 | . | count1table_select: 0 0x59.4-0x59.4 (0.1)
|
||||
| | | [1]{}: channel 0x59.5-0x60.7 (7.3)
|
||||
0x050| 00 00 00 | ... | part2_3_length: 0 0x59.5-0x5b (1.4)
|
||||
0x050| 00 00 | .. | big_values: 0 0x5b.1-0x5c.1 (1.1)
|
||||
0x050| 00 00 | .. | global_gain: 0 0x5c.2-0x5d.1 (1)
|
||||
0x050| 00 | . | scalefac_compress: 0 0x5d.2-0x5d.5 (0.4)
|
||||
0x050| 00 | . | blocksplit_flag: 0 0x5d.6-0x5d.6 (0.1)
|
||||
0x050| 00 00 | .. | table_select0: 0 0x5d.7-0x5e.3 (0.5)
|
||||
0x050| 00 00| ..| table_select1: 0 0x5e.4-0x5f (0.5)
|
||||
0x050| 00| .| table_select2: 0 0x5f.1-0x5f.5 (0.5)
|
||||
0x050| 00| .| region_address1: 0 0x5f.6-0x60.1 (0.4)
|
||||
0x060|00 |. |
|
||||
0x060|00 |. | region_address2: 0 0x60.2-0x60.4 (0.3)
|
||||
0x060|00 |. | preflag: 0 0x60.5-0x60.5 (0.1)
|
||||
0x060|00 |. | scalefac_scale: 0 0x60.6-0x60.6 (0.1)
|
||||
0x060|00 |. | count1table_select: 0 0x60.7-0x60.7 (0.1)
|
||||
0x060|00 |. | region_address2: 0 0x60.2-0x60.4 (0.3)
|
||||
0x060|00 |. | preflag: 0 0x60.5-0x60.5 (0.1)
|
||||
0x060|00 |. | scalefac_scale: 0 0x60.6-0x60.6 (0.1)
|
||||
0x060|00 |. | count1table_select: 0 0x60.7-0x60.7 (0.1)
|
||||
| | | xing{}: (xing) 0x61-0xfc.7 (156)
|
||||
0x060| 49 6e 66 6f | Info | header: "Info" 0x61-0x64.7 (4)
|
||||
| | | present_flags{}: 0x65-0x68.7 (4)
|
||||
@ -299,76 +297,74 @@ $ fq -d mp3 dv /test.mp3
|
||||
0x110| 00 | . | share0: 0 0x112.4-0x112.7 (0.4)
|
||||
0x110| 02 | . | share1: 0 0x113-0x113.3 (0.4)
|
||||
| | | granules[0:2]: 0x113.4-0x130.7 (29.4)
|
||||
| | | [0]{}: granule 0x113.4-0x122.1 (14.6)
|
||||
| | | channels[0:2]: 0x113.4-0x122.1 (14.6)
|
||||
| | | [0]{}: channel 0x113.4-0x11a.6 (7.3)
|
||||
0x110| 02 6b | .k | part2_3_length: 619 0x113.4-0x114.7 (1.4)
|
||||
0x110| 0b ce | .. | big_values: 23 0x115-0x116 (1.1)
|
||||
0x110| ce 9d | .. | global_gain: 157 0x116.1-0x117 (1)
|
||||
0x110| 9d | . | scalefac_compress: 3 0x117.1-0x117.4 (0.4)
|
||||
0x110| 9d | . | blocksplit_flag: 1 0x117.5-0x117.5 (0.1)
|
||||
0x110| 9d | . | block_type: "start block" (1) 0x117.6-0x117.7 (0.2)
|
||||
0x110| 60 | ` | switch_point: 0 0x118-0x118 (0.1)
|
||||
0x110| 60 | ` | table_select0: 24 0x118.1-0x118.5 (0.5)
|
||||
0x110| 60 60 | `` | table_select1: 3 0x118.6-0x119.2 (0.5)
|
||||
0x110| 60 | ` | subblock_gain0: 0 0x119.3-0x119.5 (0.3)
|
||||
0x110| 60 00 | `. | subblock_gain1: 0 0x119.6-0x11a (0.3)
|
||||
0x110| 00 | . | subblock_gain2: 0 0x11a.1-0x11a.3 (0.3)
|
||||
0x110| 00 | . | preflag: 0 0x11a.4-0x11a.4 (0.1)
|
||||
0x110| 00 | . | scalefac_scale: 0 0x11a.5-0x11a.5 (0.1)
|
||||
0x110| 00 | . | count1table_select: 0 0x11a.6-0x11a.6 (0.1)
|
||||
| | | [1]{}: channel 0x11a.7-0x122.1 (7.3)
|
||||
0x110| 00 00 00 | ... | part2_3_length: 0 0x11a.7-0x11c.2 (1.4)
|
||||
0x110| 00 0d | .. | big_values: 0 0x11c.3-0x11d.3 (1.1)
|
||||
0x110| 0d 20 | . | global_gain: 210 0x11d.4-0x11e.3 (1)
|
||||
0x110| 20 | | scalefac_compress: 0 0x11e.4-0x11e.7 (0.4)
|
||||
0x110| a0| .| blocksplit_flag: 1 0x11f-0x11f (0.1)
|
||||
0x110| a0| .| block_type: "start block" (1) 0x11f.1-0x11f.2 (0.2)
|
||||
0x110| a0| .| switch_point: 0 0x11f.3-0x11f.3 (0.1)
|
||||
0x110| a0| .| table_select0: 0 0x11f.4-0x120 (0.5)
|
||||
| | | [0][0:2]: granule 0x113.4-0x122.1 (14.6)
|
||||
| | | [0]{}: channel 0x113.4-0x11a.6 (7.3)
|
||||
0x110| 02 6b | .k | part2_3_length: 619 0x113.4-0x114.7 (1.4)
|
||||
0x110| 0b ce | .. | big_values: 23 0x115-0x116 (1.1)
|
||||
0x110| ce 9d | .. | global_gain: 157 0x116.1-0x117 (1)
|
||||
0x110| 9d | . | scalefac_compress: 3 0x117.1-0x117.4 (0.4)
|
||||
0x110| 9d | . | blocksplit_flag: 1 0x117.5-0x117.5 (0.1)
|
||||
0x110| 9d | . | block_type: "start block" (1) 0x117.6-0x117.7 (0.2)
|
||||
0x110| 60 | ` | switch_point: 0 0x118-0x118 (0.1)
|
||||
0x110| 60 | ` | table_select0: 24 0x118.1-0x118.5 (0.5)
|
||||
0x110| 60 60 | `` | table_select1: 3 0x118.6-0x119.2 (0.5)
|
||||
0x110| 60 | ` | subblock_gain0: 0 0x119.3-0x119.5 (0.3)
|
||||
0x110| 60 00 | `. | subblock_gain1: 0 0x119.6-0x11a (0.3)
|
||||
0x110| 00 | . | subblock_gain2: 0 0x11a.1-0x11a.3 (0.3)
|
||||
0x110| 00 | . | preflag: 0 0x11a.4-0x11a.4 (0.1)
|
||||
0x110| 00 | . | scalefac_scale: 0 0x11a.5-0x11a.5 (0.1)
|
||||
0x110| 00 | . | count1table_select: 0 0x11a.6-0x11a.6 (0.1)
|
||||
| | | [1]{}: channel 0x11a.7-0x122.1 (7.3)
|
||||
0x110| 00 00 00 | ... | part2_3_length: 0 0x11a.7-0x11c.2 (1.4)
|
||||
0x110| 00 0d | .. | big_values: 0 0x11c.3-0x11d.3 (1.1)
|
||||
0x110| 0d 20 | . | global_gain: 210 0x11d.4-0x11e.3 (1)
|
||||
0x110| 20 | | scalefac_compress: 0 0x11e.4-0x11e.7 (0.4)
|
||||
0x110| a0| .| blocksplit_flag: 1 0x11f-0x11f (0.1)
|
||||
0x110| a0| .| block_type: "start block" (1) 0x11f.1-0x11f.2 (0.2)
|
||||
0x110| a0| .| switch_point: 0 0x11f.3-0x11f.3 (0.1)
|
||||
0x110| a0| .| table_select0: 0 0x11f.4-0x120 (0.5)
|
||||
0x120|00 |. |
|
||||
0x120|00 |. | table_select1: 0 0x120.1-0x120.5 (0.5)
|
||||
0x120|00 01 |.. | subblock_gain0: 0 0x120.6-0x121 (0.3)
|
||||
0x120| 01 | . | subblock_gain1: 0 0x121.1-0x121.3 (0.3)
|
||||
0x120| 01 | . | subblock_gain2: 0 0x121.4-0x121.6 (0.3)
|
||||
0x120| 01 | . | preflag: 1 0x121.7-0x121.7 (0.1)
|
||||
0x120| 18 | . | scalefac_scale: 0 0x122-0x122 (0.1)
|
||||
0x120| 18 | . | count1table_select: 0 0x122.1-0x122.1 (0.1)
|
||||
| | | [1]{}: granule 0x122.2-0x130.7 (14.6)
|
||||
| | | channels[0:2]: 0x122.2-0x130.7 (14.6)
|
||||
| | | [0]{}: channel 0x122.2-0x129.4 (7.3)
|
||||
0x120| 18 c9 | .. | part2_3_length: 1586 0x122.2-0x123.5 (1.4)
|
||||
0x120| c9 99 | .. | big_values: 204 0x123.6-0x124.6 (1.1)
|
||||
0x120| 99 51 | .Q | global_gain: 168 0x124.7-0x125.6 (1)
|
||||
0x120| 51 b9 | Q. | scalefac_compress: 13 0x125.7-0x126.2 (0.4)
|
||||
0x120| b9 | . | blocksplit_flag: 1 0x126.3-0x126.3 (0.1)
|
||||
0x120| b9 | . | block_type: "3 short windows" (2) 0x126.4-0x126.5 (0.2)
|
||||
0x120| b9 | . | switch_point: 0 0x126.6-0x126.6 (0.1)
|
||||
0x120| b9 a7 | .. | table_select0: 26 0x126.7-0x127.3 (0.5)
|
||||
0x120| a7 80 | .. | table_select1: 15 0x127.4-0x128 (0.5)
|
||||
0x120| 80 | . | subblock_gain0: 0 0x128.1-0x128.3 (0.3)
|
||||
0x120| 80 | . | subblock_gain1: 0 0x128.4-0x128.6 (0.3)
|
||||
0x120| 80 00 | .. | subblock_gain2: 0 0x128.7-0x129.1 (0.3)
|
||||
0x120| 00 | . | preflag: 0 0x129.2-0x129.2 (0.1)
|
||||
0x120| 00 | . | scalefac_scale: 0 0x129.3-0x129.3 (0.1)
|
||||
0x120| 00 | . | count1table_select: 0 0x129.4-0x129.4 (0.1)
|
||||
| | | [1]{}: channel 0x129.5-0x130.7 (7.3)
|
||||
0x120| 00 00 00 | ... | part2_3_length: 0 0x129.5-0x12b (1.4)
|
||||
0x120| 00 34 | .4 | big_values: 0 0x12b.1-0x12c.1 (1.1)
|
||||
0x120| 34 83 | 4. | global_gain: 210 0x12c.2-0x12d.1 (1)
|
||||
0x120| 83 | . | scalefac_compress: 0 0x12d.2-0x12d.5 (0.4)
|
||||
0x120| 83 | . | blocksplit_flag: 1 0x12d.6-0x12d.6 (0.1)
|
||||
0x120| 83 00 | .. | block_type: "3 short windows" (2) 0x12d.7-0x12e (0.2)
|
||||
0x120| 00 | . | switch_point: 0 0x12e.1-0x12e.1 (0.1)
|
||||
0x120| 00 | . | table_select0: 0 0x12e.2-0x12e.6 (0.5)
|
||||
0x120| 00 00| ..| table_select1: 0 0x12e.7-0x12f.3 (0.5)
|
||||
0x120| 00| .| subblock_gain0: 0 0x12f.4-0x12f.6 (0.3)
|
||||
0x120| 00| .| subblock_gain1: 0 0x12f.7-0x130.1 (0.3)
|
||||
0x120|00 |. | table_select1: 0 0x120.1-0x120.5 (0.5)
|
||||
0x120|00 01 |.. | subblock_gain0: 0 0x120.6-0x121 (0.3)
|
||||
0x120| 01 | . | subblock_gain1: 0 0x121.1-0x121.3 (0.3)
|
||||
0x120| 01 | . | subblock_gain2: 0 0x121.4-0x121.6 (0.3)
|
||||
0x120| 01 | . | preflag: 1 0x121.7-0x121.7 (0.1)
|
||||
0x120| 18 | . | scalefac_scale: 0 0x122-0x122 (0.1)
|
||||
0x120| 18 | . | count1table_select: 0 0x122.1-0x122.1 (0.1)
|
||||
| | | [1][0:2]: granule 0x122.2-0x130.7 (14.6)
|
||||
| | | [0]{}: channel 0x122.2-0x129.4 (7.3)
|
||||
0x120| 18 c9 | .. | part2_3_length: 1586 0x122.2-0x123.5 (1.4)
|
||||
0x120| c9 99 | .. | big_values: 204 0x123.6-0x124.6 (1.1)
|
||||
0x120| 99 51 | .Q | global_gain: 168 0x124.7-0x125.6 (1)
|
||||
0x120| 51 b9 | Q. | scalefac_compress: 13 0x125.7-0x126.2 (0.4)
|
||||
0x120| b9 | . | blocksplit_flag: 1 0x126.3-0x126.3 (0.1)
|
||||
0x120| b9 | . | block_type: "3 short windows" (2) 0x126.4-0x126.5 (0.2)
|
||||
0x120| b9 | . | switch_point: 0 0x126.6-0x126.6 (0.1)
|
||||
0x120| b9 a7 | .. | table_select0: 26 0x126.7-0x127.3 (0.5)
|
||||
0x120| a7 80 | .. | table_select1: 15 0x127.4-0x128 (0.5)
|
||||
0x120| 80 | . | subblock_gain0: 0 0x128.1-0x128.3 (0.3)
|
||||
0x120| 80 | . | subblock_gain1: 0 0x128.4-0x128.6 (0.3)
|
||||
0x120| 80 00 | .. | subblock_gain2: 0 0x128.7-0x129.1 (0.3)
|
||||
0x120| 00 | . | preflag: 0 0x129.2-0x129.2 (0.1)
|
||||
0x120| 00 | . | scalefac_scale: 0 0x129.3-0x129.3 (0.1)
|
||||
0x120| 00 | . | count1table_select: 0 0x129.4-0x129.4 (0.1)
|
||||
| | | [1]{}: channel 0x129.5-0x130.7 (7.3)
|
||||
0x120| 00 00 00 | ... | part2_3_length: 0 0x129.5-0x12b (1.4)
|
||||
0x120| 00 34 | .4 | big_values: 0 0x12b.1-0x12c.1 (1.1)
|
||||
0x120| 34 83 | 4. | global_gain: 210 0x12c.2-0x12d.1 (1)
|
||||
0x120| 83 | . | scalefac_compress: 0 0x12d.2-0x12d.5 (0.4)
|
||||
0x120| 83 | . | blocksplit_flag: 1 0x12d.6-0x12d.6 (0.1)
|
||||
0x120| 83 00 | .. | block_type: "3 short windows" (2) 0x12d.7-0x12e (0.2)
|
||||
0x120| 00 | . | switch_point: 0 0x12e.1-0x12e.1 (0.1)
|
||||
0x120| 00 | . | table_select0: 0 0x12e.2-0x12e.6 (0.5)
|
||||
0x120| 00 00| ..| table_select1: 0 0x12e.7-0x12f.3 (0.5)
|
||||
0x120| 00| .| subblock_gain0: 0 0x12f.4-0x12f.6 (0.3)
|
||||
0x120| 00| .| subblock_gain1: 0 0x12f.7-0x130.1 (0.3)
|
||||
0x130|00 |. |
|
||||
0x130|00 |. | subblock_gain2: 0 0x130.2-0x130.4 (0.3)
|
||||
0x130|00 |. | preflag: 0 0x130.5-0x130.5 (0.1)
|
||||
0x130|00 |. | scalefac_scale: 0 0x130.6-0x130.6 (0.1)
|
||||
0x130|00 |. | count1table_select: 0 0x130.7-0x130.7 (0.1)
|
||||
0x130|00 |. | subblock_gain2: 0 0x130.2-0x130.4 (0.3)
|
||||
0x130|00 |. | preflag: 0 0x130.5-0x130.5 (0.1)
|
||||
0x130|00 |. | scalefac_scale: 0 0x130.6-0x130.6 (0.1)
|
||||
0x130|00 |. | count1table_select: 0 0x130.7-0x130.7 (0.1)
|
||||
0x130| 0a 6b 6d d8 c2 12 cd a0 0d bf 4d 03 01 8d 4c| .km.......M...L| data: raw bits 0x131-0x2ad.7 (381)
|
||||
0x140|35 18 20 0c 1d db 6b 6d 7d df 7f e3 72 fb 62 10|5. ...km}...r.b.|
|
||||
* |until 0x2ad.7 (381) | |
|
||||
@ -396,71 +392,69 @@ $ fq -d mp3 dv /test.mp3
|
||||
0x2b0| 8f | . | share0: 15 0x2b3.4-0x2b3.7 (0.4)
|
||||
0x2b0| f3 | . | share1: 15 0x2b4-0x2b4.3 (0.4)
|
||||
| | | granules[0:2]: 0x2b4.4-0x2d1.7 (29.4)
|
||||
| | | [0]{}: granule 0x2b4.4-0x2c3.1 (14.6)
|
||||
| | | channels[0:2]: 0x2b4.4-0x2c3.1 (14.6)
|
||||
| | | [0]{}: channel 0x2b4.4-0x2bb.6 (7.3)
|
||||
0x2b0| f3 19 | .. | part2_3_length: 793 0x2b4.4-0x2b5.7 (1.4)
|
||||
0x2b0| 1f c8 | .. | big_values: 63 0x2b6-0x2b7 (1.1)
|
||||
0x2b0| c8 47 | .G | global_gain: 144 0x2b7.1-0x2b8 (1)
|
||||
0x2b0| 47 | G | scalefac_compress: 8 0x2b8.1-0x2b8.4 (0.4)
|
||||
0x2b0| 47 | G | blocksplit_flag: 1 0x2b8.5-0x2b8.5 (0.1)
|
||||
0x2b0| 47 | G | block_type: "end" (3) 0x2b8.6-0x2b8.7 (0.2)
|
||||
0x2b0| 3d | = | switch_point: 0 0x2b9-0x2b9 (0.1)
|
||||
0x2b0| 3d | = | table_select0: 15 0x2b9.1-0x2b9.5 (0.5)
|
||||
0x2b0| 3d 00 | =. | table_select1: 8 0x2b9.6-0x2ba.2 (0.5)
|
||||
0x2b0| 00 | . | subblock_gain0: 0 0x2ba.3-0x2ba.5 (0.3)
|
||||
0x2b0| 00 00 | .. | subblock_gain1: 0 0x2ba.6-0x2bb (0.3)
|
||||
0x2b0| 00 | . | subblock_gain2: 0 0x2bb.1-0x2bb.3 (0.3)
|
||||
0x2b0| 00 | . | preflag: 0 0x2bb.4-0x2bb.4 (0.1)
|
||||
0x2b0| 00 | . | scalefac_scale: 0 0x2bb.5-0x2bb.5 (0.1)
|
||||
0x2b0| 00 | . | count1table_select: 0 0x2bb.6-0x2bb.6 (0.1)
|
||||
| | | [1]{}: channel 0x2bb.7-0x2c3.1 (7.3)
|
||||
0x2b0| 00 00 00 | ... | part2_3_length: 0 0x2bb.7-0x2bd.2 (1.4)
|
||||
0x2b0| 00 0d | .. | big_values: 0 0x2bd.3-0x2be.3 (1.1)
|
||||
0x2b0| 0d 20| . | global_gain: 210 0x2be.4-0x2bf.3 (1)
|
||||
0x2b0| 20| | scalefac_compress: 0 0x2bf.4-0x2bf.7 (0.4)
|
||||
0x2c0|e0 |. | blocksplit_flag: 1 0x2c0-0x2c0 (0.1)
|
||||
0x2c0|e0 |. | block_type: "end" (3) 0x2c0.1-0x2c0.2 (0.2)
|
||||
0x2c0|e0 |. | switch_point: 0 0x2c0.3-0x2c0.3 (0.1)
|
||||
0x2c0|e0 00 |.. | table_select0: 0 0x2c0.4-0x2c1 (0.5)
|
||||
0x2c0| 00 | . | table_select1: 0 0x2c1.1-0x2c1.5 (0.5)
|
||||
0x2c0| 00 01 | .. | subblock_gain0: 0 0x2c1.6-0x2c2 (0.3)
|
||||
0x2c0| 01 | . | subblock_gain1: 0 0x2c2.1-0x2c2.3 (0.3)
|
||||
0x2c0| 01 | . | subblock_gain2: 0 0x2c2.4-0x2c2.6 (0.3)
|
||||
0x2c0| 01 | . | preflag: 1 0x2c2.7-0x2c2.7 (0.1)
|
||||
0x2c0| 00 | . | scalefac_scale: 0 0x2c3-0x2c3 (0.1)
|
||||
0x2c0| 00 | . | count1table_select: 0 0x2c3.1-0x2c3.1 (0.1)
|
||||
| | | [1]{}: granule 0x2c3.2-0x2d1.7 (14.6)
|
||||
| | | channels[0:2]: 0x2c3.2-0x2d1.7 (14.6)
|
||||
| | | [0]{}: channel 0x2c3.2-0x2ca.4 (7.3)
|
||||
0x2c0| 00 00 | .. | part2_3_length: 0 0x2c3.2-0x2c4.5 (1.4)
|
||||
0x2c0| 00 01 | .. | big_values: 0 0x2c4.6-0x2c5.6 (1.1)
|
||||
0x2c0| 01 a4 | .. | global_gain: 210 0x2c5.7-0x2c6.6 (1)
|
||||
0x2c0| a4 00 | .. | scalefac_compress: 0 0x2c6.7-0x2c7.2 (0.4)
|
||||
0x2c0| 00 | . | blocksplit_flag: 0 0x2c7.3-0x2c7.3 (0.1)
|
||||
0x2c0| 00 00 | .. | table_select0: 0 0x2c7.4-0x2c8 (0.5)
|
||||
0x2c0| 00 | . | table_select1: 0 0x2c8.1-0x2c8.5 (0.5)
|
||||
0x2c0| 00 00 | .. | table_select2: 0 0x2c8.6-0x2c9.2 (0.5)
|
||||
0x2c0| 00 | . | region_address1: 0 0x2c9.3-0x2c9.6 (0.4)
|
||||
0x2c0| 00 20 | . | region_address2: 0 0x2c9.7-0x2ca.1 (0.3)
|
||||
0x2c0| 20 | | preflag: 1 0x2ca.2-0x2ca.2 (0.1)
|
||||
0x2c0| 20 | | scalefac_scale: 0 0x2ca.3-0x2ca.3 (0.1)
|
||||
0x2c0| 20 | | count1table_select: 0 0x2ca.4-0x2ca.4 (0.1)
|
||||
| | | [1]{}: channel 0x2ca.5-0x2d1.7 (7.3)
|
||||
0x2c0| 20 00 00 | .. | part2_3_length: 0 0x2ca.5-0x2cc (1.4)
|
||||
0x2c0| 00 34 | .4 | big_values: 0 0x2cc.1-0x2cd.1 (1.1)
|
||||
0x2c0| 34 80 | 4. | global_gain: 210 0x2cd.2-0x2ce.1 (1)
|
||||
0x2c0| 80 | . | scalefac_compress: 0 0x2ce.2-0x2ce.5 (0.4)
|
||||
0x2c0| 80 | . | blocksplit_flag: 0 0x2ce.6-0x2ce.6 (0.1)
|
||||
0x2c0| 80 00| ..| table_select0: 0 0x2ce.7-0x2cf.3 (0.5)
|
||||
0x2c0| 00| .| table_select1: 0 0x2cf.4-0x2d0 (0.5)
|
||||
| | | [0][0:2]: granule 0x2b4.4-0x2c3.1 (14.6)
|
||||
| | | [0]{}: channel 0x2b4.4-0x2bb.6 (7.3)
|
||||
0x2b0| f3 19 | .. | part2_3_length: 793 0x2b4.4-0x2b5.7 (1.4)
|
||||
0x2b0| 1f c8 | .. | big_values: 63 0x2b6-0x2b7 (1.1)
|
||||
0x2b0| c8 47 | .G | global_gain: 144 0x2b7.1-0x2b8 (1)
|
||||
0x2b0| 47 | G | scalefac_compress: 8 0x2b8.1-0x2b8.4 (0.4)
|
||||
0x2b0| 47 | G | blocksplit_flag: 1 0x2b8.5-0x2b8.5 (0.1)
|
||||
0x2b0| 47 | G | block_type: "end" (3) 0x2b8.6-0x2b8.7 (0.2)
|
||||
0x2b0| 3d | = | switch_point: 0 0x2b9-0x2b9 (0.1)
|
||||
0x2b0| 3d | = | table_select0: 15 0x2b9.1-0x2b9.5 (0.5)
|
||||
0x2b0| 3d 00 | =. | table_select1: 8 0x2b9.6-0x2ba.2 (0.5)
|
||||
0x2b0| 00 | . | subblock_gain0: 0 0x2ba.3-0x2ba.5 (0.3)
|
||||
0x2b0| 00 00 | .. | subblock_gain1: 0 0x2ba.6-0x2bb (0.3)
|
||||
0x2b0| 00 | . | subblock_gain2: 0 0x2bb.1-0x2bb.3 (0.3)
|
||||
0x2b0| 00 | . | preflag: 0 0x2bb.4-0x2bb.4 (0.1)
|
||||
0x2b0| 00 | . | scalefac_scale: 0 0x2bb.5-0x2bb.5 (0.1)
|
||||
0x2b0| 00 | . | count1table_select: 0 0x2bb.6-0x2bb.6 (0.1)
|
||||
| | | [1]{}: channel 0x2bb.7-0x2c3.1 (7.3)
|
||||
0x2b0| 00 00 00 | ... | part2_3_length: 0 0x2bb.7-0x2bd.2 (1.4)
|
||||
0x2b0| 00 0d | .. | big_values: 0 0x2bd.3-0x2be.3 (1.1)
|
||||
0x2b0| 0d 20| . | global_gain: 210 0x2be.4-0x2bf.3 (1)
|
||||
0x2b0| 20| | scalefac_compress: 0 0x2bf.4-0x2bf.7 (0.4)
|
||||
0x2c0|e0 |. | blocksplit_flag: 1 0x2c0-0x2c0 (0.1)
|
||||
0x2c0|e0 |. | block_type: "end" (3) 0x2c0.1-0x2c0.2 (0.2)
|
||||
0x2c0|e0 |. | switch_point: 0 0x2c0.3-0x2c0.3 (0.1)
|
||||
0x2c0|e0 00 |.. | table_select0: 0 0x2c0.4-0x2c1 (0.5)
|
||||
0x2c0| 00 | . | table_select1: 0 0x2c1.1-0x2c1.5 (0.5)
|
||||
0x2c0| 00 01 | .. | subblock_gain0: 0 0x2c1.6-0x2c2 (0.3)
|
||||
0x2c0| 01 | . | subblock_gain1: 0 0x2c2.1-0x2c2.3 (0.3)
|
||||
0x2c0| 01 | . | subblock_gain2: 0 0x2c2.4-0x2c2.6 (0.3)
|
||||
0x2c0| 01 | . | preflag: 1 0x2c2.7-0x2c2.7 (0.1)
|
||||
0x2c0| 00 | . | scalefac_scale: 0 0x2c3-0x2c3 (0.1)
|
||||
0x2c0| 00 | . | count1table_select: 0 0x2c3.1-0x2c3.1 (0.1)
|
||||
| | | [1][0:2]: granule 0x2c3.2-0x2d1.7 (14.6)
|
||||
| | | [0]{}: channel 0x2c3.2-0x2ca.4 (7.3)
|
||||
0x2c0| 00 00 | .. | part2_3_length: 0 0x2c3.2-0x2c4.5 (1.4)
|
||||
0x2c0| 00 01 | .. | big_values: 0 0x2c4.6-0x2c5.6 (1.1)
|
||||
0x2c0| 01 a4 | .. | global_gain: 210 0x2c5.7-0x2c6.6 (1)
|
||||
0x2c0| a4 00 | .. | scalefac_compress: 0 0x2c6.7-0x2c7.2 (0.4)
|
||||
0x2c0| 00 | . | blocksplit_flag: 0 0x2c7.3-0x2c7.3 (0.1)
|
||||
0x2c0| 00 00 | .. | table_select0: 0 0x2c7.4-0x2c8 (0.5)
|
||||
0x2c0| 00 | . | table_select1: 0 0x2c8.1-0x2c8.5 (0.5)
|
||||
0x2c0| 00 00 | .. | table_select2: 0 0x2c8.6-0x2c9.2 (0.5)
|
||||
0x2c0| 00 | . | region_address1: 0 0x2c9.3-0x2c9.6 (0.4)
|
||||
0x2c0| 00 20 | . | region_address2: 0 0x2c9.7-0x2ca.1 (0.3)
|
||||
0x2c0| 20 | | preflag: 1 0x2ca.2-0x2ca.2 (0.1)
|
||||
0x2c0| 20 | | scalefac_scale: 0 0x2ca.3-0x2ca.3 (0.1)
|
||||
0x2c0| 20 | | count1table_select: 0 0x2ca.4-0x2ca.4 (0.1)
|
||||
| | | [1]{}: channel 0x2ca.5-0x2d1.7 (7.3)
|
||||
0x2c0| 20 00 00 | .. | part2_3_length: 0 0x2ca.5-0x2cc (1.4)
|
||||
0x2c0| 00 34 | .4 | big_values: 0 0x2cc.1-0x2cd.1 (1.1)
|
||||
0x2c0| 34 80 | 4. | global_gain: 210 0x2cd.2-0x2ce.1 (1)
|
||||
0x2c0| 80 | . | scalefac_compress: 0 0x2ce.2-0x2ce.5 (0.4)
|
||||
0x2c0| 80 | . | blocksplit_flag: 0 0x2ce.6-0x2ce.6 (0.1)
|
||||
0x2c0| 80 00| ..| table_select0: 0 0x2ce.7-0x2cf.3 (0.5)
|
||||
0x2c0| 00| .| table_select1: 0 0x2cf.4-0x2d0 (0.5)
|
||||
0x2d0|00 |. |
|
||||
0x2d0|00 |. | table_select2: 0 0x2d0.1-0x2d0.5 (0.5)
|
||||
0x2d0|00 04 |.. | region_address1: 0 0x2d0.6-0x2d1.1 (0.4)
|
||||
0x2d0| 04 | . | region_address2: 0 0x2d1.2-0x2d1.4 (0.3)
|
||||
0x2d0| 04 | . | preflag: 1 0x2d1.5-0x2d1.5 (0.1)
|
||||
0x2d0| 04 | . | scalefac_scale: 0 0x2d1.6-0x2d1.6 (0.1)
|
||||
0x2d0| 04 | . | count1table_select: 0 0x2d1.7-0x2d1.7 (0.1)
|
||||
0x2d0|00 |. | table_select2: 0 0x2d0.1-0x2d0.5 (0.5)
|
||||
0x2d0|00 04 |.. | region_address1: 0 0x2d0.6-0x2d1.1 (0.4)
|
||||
0x2d0| 04 | . | region_address2: 0 0x2d1.2-0x2d1.4 (0.3)
|
||||
0x2d0| 04 | . | preflag: 1 0x2d1.5-0x2d1.5 (0.1)
|
||||
0x2d0| 04 | . | scalefac_scale: 0 0x2d1.6-0x2d1.6 (0.1)
|
||||
0x2d0| 04 | . | count1table_select: 0 0x2d1.7-0x2d1.7 (0.1)
|
||||
0x2d0| 2e 31 30 30 55 55 55 55 55 55 55 55 55 55| .100UUUUUUUUUU| data: raw bits 0x2d2-0x3e5.7 (276)
|
||||
0x2e0|55 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55|UUUUUUUUUUUUUUUU|
|
||||
* |until 0x3e5.7 (276) | |
|
||||
|
@ -54,7 +54,7 @@ var iccProfileFormat decode.Group
|
||||
func init() {
|
||||
registry.MustRegister(decode.Format{
|
||||
Name: format.MP4,
|
||||
Description: "MPEG-4 file and similar",
|
||||
Description: "ISOBMFF MPEG-4 part 12 and similar",
|
||||
Groups: []string{
|
||||
format.PROBE,
|
||||
format.IMAGE, // avif
|
||||
|
210
format/mp4/testdata/mp3.fqtest
vendored
210
format/mp4/testdata/mp3.fqtest
vendored
@ -346,43 +346,41 @@ $ fq -d mp4 dv /mp3.mp4
|
||||
0x030| 00 | . | private_bits: 0 0x31.1-0x31.5 (0.5)
|
||||
0x030| 00 0a | .. | share0: 0 0x31.6-0x32.1 (0.4)
|
||||
| | | granules[0:2]: 0x32.2-0x40.7 (14.6)
|
||||
| | | [0]{}: granule 0x32.2-0x39.4 (7.3)
|
||||
| | | channels[0:1]: 0x32.2-0x39.4 (7.3)
|
||||
| | | [0]{}: channel 0x32.2-0x39.4 (7.3)
|
||||
0x030| 0a 2c | ., | part2_3_length: 651 0x32.2-0x33.5 (1.4)
|
||||
0x030| 2c 43 | ,C | big_values: 33 0x33.6-0x34.6 (1.1)
|
||||
0x030| 43 2e | C. | global_gain: 151 0x34.7-0x35.6 (1)
|
||||
0x030| 2e 55 | .U | scalefac_compress: 2 0x35.7-0x36.2 (0.4)
|
||||
0x030| 55 | U | blocksplit_flag: 1 0x36.3-0x36.3 (0.1)
|
||||
0x030| 55 | U | block_type: "start block" (1) 0x36.4-0x36.5 (0.2)
|
||||
0x030| 55 | U | switch_point: 0 0x36.6-0x36.6 (0.1)
|
||||
0x030| 55 94 | U. | table_select0: 25 0x36.7-0x37.3 (0.5)
|
||||
0x030| 94 80 | .. | table_select1: 9 0x37.4-0x38 (0.5)
|
||||
0x030| 80 | . | subblock_gain0: 0 0x38.1-0x38.3 (0.3)
|
||||
0x030| 80 | . | subblock_gain1: 0 0x38.4-0x38.6 (0.3)
|
||||
0x030| 80 01 | .. | subblock_gain2: 0 0x38.7-0x39.1 (0.3)
|
||||
0x030| 01 | . | preflag: 0 0x39.2-0x39.2 (0.1)
|
||||
0x030| 01 | . | scalefac_scale: 0 0x39.3-0x39.3 (0.1)
|
||||
0x030| 01 | . | count1table_select: 0 0x39.4-0x39.4 (0.1)
|
||||
| | | [1]{}: granule 0x39.5-0x40.7 (7.3)
|
||||
| | | channels[0:1]: 0x39.5-0x40.7 (7.3)
|
||||
| | | [0]{}: channel 0x39.5-0x40.7 (7.3)
|
||||
0x030| 01 81 15 | ... | part2_3_length: 770 0x39.5-0x3b (1.4)
|
||||
0x030| 15 66 | .f | big_values: 85 0x3b.1-0x3c.1 (1.1)
|
||||
0x030| 66 23 | f# | global_gain: 152 0x3c.2-0x3d.1 (1)
|
||||
0x030| 23 | # | scalefac_compress: 8 0x3d.2-0x3d.5 (0.4)
|
||||
0x030| 23 | # | blocksplit_flag: 1 0x3d.6-0x3d.6 (0.1)
|
||||
0x030| 23 3a | #: | block_type: "3 short windows" (2) 0x3d.7-0x3e (0.2)
|
||||
0x030| 3a | : | switch_point: 0 0x3e.1-0x3e.1 (0.1)
|
||||
0x030| 3a | : | table_select0: 29 0x3e.2-0x3e.6 (0.5)
|
||||
0x030| 3a d0| :.| table_select1: 13 0x3e.7-0x3f.3 (0.5)
|
||||
0x030| d0| .| subblock_gain0: 0 0x3f.4-0x3f.6 (0.3)
|
||||
0x030| d0| .| subblock_gain1: 0 0x3f.7-0x40.1 (0.3)
|
||||
| | | [0][0:1]: granule 0x32.2-0x39.4 (7.3)
|
||||
| | | [0]{}: channel 0x32.2-0x39.4 (7.3)
|
||||
0x030| 0a 2c | ., | part2_3_length: 651 0x32.2-0x33.5 (1.4)
|
||||
0x030| 2c 43 | ,C | big_values: 33 0x33.6-0x34.6 (1.1)
|
||||
0x030| 43 2e | C. | global_gain: 151 0x34.7-0x35.6 (1)
|
||||
0x030| 2e 55 | .U | scalefac_compress: 2 0x35.7-0x36.2 (0.4)
|
||||
0x030| 55 | U | blocksplit_flag: 1 0x36.3-0x36.3 (0.1)
|
||||
0x030| 55 | U | block_type: "start block" (1) 0x36.4-0x36.5 (0.2)
|
||||
0x030| 55 | U | switch_point: 0 0x36.6-0x36.6 (0.1)
|
||||
0x030| 55 94 | U. | table_select0: 25 0x36.7-0x37.3 (0.5)
|
||||
0x030| 94 80 | .. | table_select1: 9 0x37.4-0x38 (0.5)
|
||||
0x030| 80 | . | subblock_gain0: 0 0x38.1-0x38.3 (0.3)
|
||||
0x030| 80 | . | subblock_gain1: 0 0x38.4-0x38.6 (0.3)
|
||||
0x030| 80 01 | .. | subblock_gain2: 0 0x38.7-0x39.1 (0.3)
|
||||
0x030| 01 | . | preflag: 0 0x39.2-0x39.2 (0.1)
|
||||
0x030| 01 | . | scalefac_scale: 0 0x39.3-0x39.3 (0.1)
|
||||
0x030| 01 | . | count1table_select: 0 0x39.4-0x39.4 (0.1)
|
||||
| | | [1][0:1]: granule 0x39.5-0x40.7 (7.3)
|
||||
| | | [0]{}: channel 0x39.5-0x40.7 (7.3)
|
||||
0x030| 01 81 15 | ... | part2_3_length: 770 0x39.5-0x3b (1.4)
|
||||
0x030| 15 66 | .f | big_values: 85 0x3b.1-0x3c.1 (1.1)
|
||||
0x030| 66 23 | f# | global_gain: 152 0x3c.2-0x3d.1 (1)
|
||||
0x030| 23 | # | scalefac_compress: 8 0x3d.2-0x3d.5 (0.4)
|
||||
0x030| 23 | # | blocksplit_flag: 1 0x3d.6-0x3d.6 (0.1)
|
||||
0x030| 23 3a | #: | block_type: "3 short windows" (2) 0x3d.7-0x3e (0.2)
|
||||
0x030| 3a | : | switch_point: 0 0x3e.1-0x3e.1 (0.1)
|
||||
0x030| 3a | : | table_select0: 29 0x3e.2-0x3e.6 (0.5)
|
||||
0x030| 3a d0| :.| table_select1: 13 0x3e.7-0x3f.3 (0.5)
|
||||
0x030| d0| .| subblock_gain0: 0 0x3f.4-0x3f.6 (0.3)
|
||||
0x030| d0| .| subblock_gain1: 0 0x3f.7-0x40.1 (0.3)
|
||||
0x040|00 |. |
|
||||
0x040|00 |. | subblock_gain2: 0 0x40.2-0x40.4 (0.3)
|
||||
0x040|00 |. | preflag: 0 0x40.5-0x40.5 (0.1)
|
||||
0x040|00 |. | scalefac_scale: 0 0x40.6-0x40.6 (0.1)
|
||||
0x040|00 |. | count1table_select: 0 0x40.7-0x40.7 (0.1)
|
||||
0x040|00 |. | subblock_gain2: 0 0x40.2-0x40.4 (0.3)
|
||||
0x040|00 |. | preflag: 0 0x40.5-0x40.5 (0.1)
|
||||
0x040|00 |. | scalefac_scale: 0 0x40.6-0x40.6 (0.1)
|
||||
0x040|00 |. | count1table_select: 0 0x40.7-0x40.7 (0.1)
|
||||
0x040| 07 aa c3 8e 33 85 d3 64 f1 a1 c1 08 1c 58 1f| ....3..d.....X.| data: raw bits 0x41-0xfb.7 (187)
|
||||
0x050|5e 1f 18 1c 46 04 1e 89 e5 b3 2e 5a 0f a8 3b 13|^...F......Z..;.|
|
||||
* |until 0xfb.7 (187) | |
|
||||
@ -409,43 +407,41 @@ $ fq -d mp4 dv /mp3.mp4
|
||||
0x100| 82 | . | private_bits: 0 0x101.1-0x101.5 (0.5)
|
||||
0x100| 82 0a | .. | share0: 8 0x101.6-0x102.1 (0.4)
|
||||
| | | granules[0:2]: 0x102.2-0x110.7 (14.6)
|
||||
| | | [0]{}: granule 0x102.2-0x109.4 (7.3)
|
||||
| | | channels[0:1]: 0x102.2-0x109.4 (7.3)
|
||||
| | | [0]{}: channel 0x102.2-0x109.4 (7.3)
|
||||
0x100| 0a 60 | .` | part2_3_length: 664 0x102.2-0x103.5 (1.4)
|
||||
0x100| 60 21 | `! | big_values: 16 0x103.6-0x104.6 (1.1)
|
||||
0x100| 21 10 | !. | global_gain: 136 0x104.7-0x105.6 (1)
|
||||
0x100| 10 bd | .. | scalefac_compress: 5 0x105.7-0x106.2 (0.4)
|
||||
0x100| bd | . | blocksplit_flag: 1 0x106.3-0x106.3 (0.1)
|
||||
0x100| bd | . | block_type: "end" (3) 0x106.4-0x106.5 (0.2)
|
||||
0x100| bd | . | switch_point: 0 0x106.6-0x106.6 (0.1)
|
||||
0x100| bd f1 | .. | table_select0: 31 0x106.7-0x107.3 (0.5)
|
||||
0x100| f1 00 | .. | table_select1: 2 0x107.4-0x108 (0.5)
|
||||
0x100| 00 | . | subblock_gain0: 0 0x108.1-0x108.3 (0.3)
|
||||
0x100| 00 | . | subblock_gain1: 0 0x108.4-0x108.6 (0.3)
|
||||
0x100| 00 01 | .. | subblock_gain2: 0 0x108.7-0x109.1 (0.3)
|
||||
0x100| 01 | . | preflag: 0 0x109.2-0x109.2 (0.1)
|
||||
0x100| 01 | . | scalefac_scale: 0 0x109.3-0x109.3 (0.1)
|
||||
0x100| 01 | . | count1table_select: 0 0x109.4-0x109.4 (0.1)
|
||||
| | | [1]{}: granule 0x109.5-0x110.7 (7.3)
|
||||
| | | channels[0:1]: 0x109.5-0x110.7 (7.3)
|
||||
| | | [0]{}: channel 0x109.5-0x110.7 (7.3)
|
||||
0x100| 01 59 04 | .Y. | part2_3_length: 690 0x109.5-0x10b (1.4)
|
||||
0x100| 04 a1 | .. | big_values: 18 0x10b.1-0x10c.1 (1.1)
|
||||
0x100| a1 e2 | .. | global_gain: 135 0x10c.2-0x10d.1 (1)
|
||||
0x100| e2 | . | scalefac_compress: 8 0x10d.2-0x10d.5 (0.4)
|
||||
0x100| e2 | . | blocksplit_flag: 1 0x10d.6-0x10d.6 (0.1)
|
||||
0x100| e2 be | .. | block_type: "start block" (1) 0x10d.7-0x10e (0.2)
|
||||
0x100| be | . | switch_point: 0 0x10e.1-0x10e.1 (0.1)
|
||||
0x100| be | . | table_select0: 31 0x10e.2-0x10e.6 (0.5)
|
||||
0x100| be 20| . | table_select1: 2 0x10e.7-0x10f.3 (0.5)
|
||||
0x100| 20| | subblock_gain0: 0 0x10f.4-0x10f.6 (0.3)
|
||||
0x100| 20| | subblock_gain1: 0 0x10f.7-0x110.1 (0.3)
|
||||
| | | [0][0:1]: granule 0x102.2-0x109.4 (7.3)
|
||||
| | | [0]{}: channel 0x102.2-0x109.4 (7.3)
|
||||
0x100| 0a 60 | .` | part2_3_length: 664 0x102.2-0x103.5 (1.4)
|
||||
0x100| 60 21 | `! | big_values: 16 0x103.6-0x104.6 (1.1)
|
||||
0x100| 21 10 | !. | global_gain: 136 0x104.7-0x105.6 (1)
|
||||
0x100| 10 bd | .. | scalefac_compress: 5 0x105.7-0x106.2 (0.4)
|
||||
0x100| bd | . | blocksplit_flag: 1 0x106.3-0x106.3 (0.1)
|
||||
0x100| bd | . | block_type: "end" (3) 0x106.4-0x106.5 (0.2)
|
||||
0x100| bd | . | switch_point: 0 0x106.6-0x106.6 (0.1)
|
||||
0x100| bd f1 | .. | table_select0: 31 0x106.7-0x107.3 (0.5)
|
||||
0x100| f1 00 | .. | table_select1: 2 0x107.4-0x108 (0.5)
|
||||
0x100| 00 | . | subblock_gain0: 0 0x108.1-0x108.3 (0.3)
|
||||
0x100| 00 | . | subblock_gain1: 0 0x108.4-0x108.6 (0.3)
|
||||
0x100| 00 01 | .. | subblock_gain2: 0 0x108.7-0x109.1 (0.3)
|
||||
0x100| 01 | . | preflag: 0 0x109.2-0x109.2 (0.1)
|
||||
0x100| 01 | . | scalefac_scale: 0 0x109.3-0x109.3 (0.1)
|
||||
0x100| 01 | . | count1table_select: 0 0x109.4-0x109.4 (0.1)
|
||||
| | | [1][0:1]: granule 0x109.5-0x110.7 (7.3)
|
||||
| | | [0]{}: channel 0x109.5-0x110.7 (7.3)
|
||||
0x100| 01 59 04 | .Y. | part2_3_length: 690 0x109.5-0x10b (1.4)
|
||||
0x100| 04 a1 | .. | big_values: 18 0x10b.1-0x10c.1 (1.1)
|
||||
0x100| a1 e2 | .. | global_gain: 135 0x10c.2-0x10d.1 (1)
|
||||
0x100| e2 | . | scalefac_compress: 8 0x10d.2-0x10d.5 (0.4)
|
||||
0x100| e2 | . | blocksplit_flag: 1 0x10d.6-0x10d.6 (0.1)
|
||||
0x100| e2 be | .. | block_type: "start block" (1) 0x10d.7-0x10e (0.2)
|
||||
0x100| be | . | switch_point: 0 0x10e.1-0x10e.1 (0.1)
|
||||
0x100| be | . | table_select0: 31 0x10e.2-0x10e.6 (0.5)
|
||||
0x100| be 20| . | table_select1: 2 0x10e.7-0x10f.3 (0.5)
|
||||
0x100| 20| | subblock_gain0: 0 0x10f.4-0x10f.6 (0.3)
|
||||
0x100| 20| | subblock_gain1: 0 0x10f.7-0x110.1 (0.3)
|
||||
0x110|00 |. |
|
||||
0x110|00 |. | subblock_gain2: 0 0x110.2-0x110.4 (0.3)
|
||||
0x110|00 |. | preflag: 0 0x110.5-0x110.5 (0.1)
|
||||
0x110|00 |. | scalefac_scale: 0 0x110.6-0x110.6 (0.1)
|
||||
0x110|00 |. | count1table_select: 0 0x110.7-0x110.7 (0.1)
|
||||
0x110|00 |. | subblock_gain2: 0 0x110.2-0x110.4 (0.3)
|
||||
0x110|00 |. | preflag: 0 0x110.5-0x110.5 (0.1)
|
||||
0x110|00 |. | scalefac_scale: 0 0x110.6-0x110.6 (0.1)
|
||||
0x110|00 |. | count1table_select: 0 0x110.7-0x110.7 (0.1)
|
||||
0x110| 01 d9 81 38 05 c9 80 20 04 f1 80 8e 07 01 96| ...8... .......| data: raw bits 0x111-0x1c2.7 (178)
|
||||
0x120|d2 b0 19 91 ec 2a 39 85 70 0d c9 82 90 07 39 81|.....*9.p.....9.|
|
||||
* |until 0x1c2.7 (178) | |
|
||||
@ -473,43 +469,41 @@ $ fq -d mp4 dv /mp3.mp4
|
||||
0x1d0| 80 | . | private_bits: 0 0x1d2.1-0x1d2.5 (0.5)
|
||||
0x1d0| 80 0d | .. | share0: 0 0x1d2.6-0x1d3.1 (0.4)
|
||||
| | | granules[0:2]: 0x1d3.2-0x1e1.7 (14.6)
|
||||
| | | [0]{}: granule 0x1d3.2-0x1da.4 (7.3)
|
||||
| | | channels[0:1]: 0x1d3.2-0x1da.4 (7.3)
|
||||
| | | [0]{}: channel 0x1d3.2-0x1da.4 (7.3)
|
||||
0x1d0| 0d e4 | .. | part2_3_length: 889 0x1d3.2-0x1d4.5 (1.4)
|
||||
0x1d0| e4 c9 | .. | big_values: 100 0x1d4.6-0x1d5.6 (1.1)
|
||||
0x1d0| c9 7b | .{ | global_gain: 189 0x1d5.7-0x1d6.6 (1)
|
||||
0x1d0| 7b f9 | {. | scalefac_compress: 15 0x1d6.7-0x1d7.2 (0.4)
|
||||
0x1d0| f9 | . | blocksplit_flag: 1 0x1d7.3-0x1d7.3 (0.1)
|
||||
0x1d0| f9 | . | block_type: "3 short windows" (2) 0x1d7.4-0x1d7.5 (0.2)
|
||||
0x1d0| f9 | . | switch_point: 0 0x1d7.6-0x1d7.6 (0.1)
|
||||
0x1d0| f9 89 | .. | table_select0: 24 0x1d7.7-0x1d8.3 (0.5)
|
||||
0x1d0| 89 84 | .. | table_select1: 19 0x1d8.4-0x1d9 (0.5)
|
||||
0x1d0| 84 | . | subblock_gain0: 0 0x1d9.1-0x1d9.3 (0.3)
|
||||
0x1d0| 84 | . | subblock_gain1: 2 0x1d9.4-0x1d9.6 (0.3)
|
||||
0x1d0| 84 91 | .. | subblock_gain2: 2 0x1d9.7-0x1da.1 (0.3)
|
||||
0x1d0| 91 | . | preflag: 0 0x1da.2-0x1da.2 (0.1)
|
||||
0x1d0| 91 | . | scalefac_scale: 1 0x1da.3-0x1da.3 (0.1)
|
||||
0x1d0| 91 | . | count1table_select: 0 0x1da.4-0x1da.4 (0.1)
|
||||
| | | [1]{}: granule 0x1da.5-0x1e1.7 (7.3)
|
||||
| | | channels[0:1]: 0x1da.5-0x1e1.7 (7.3)
|
||||
| | | [0]{}: channel 0x1da.5-0x1e1.7 (7.3)
|
||||
0x1d0| 91 30 8d | .0. | part2_3_length: 609 0x1da.5-0x1dc (1.4)
|
||||
0x1d0| 8d a3 | .. | big_values: 54 0x1dc.1-0x1dd.1 (1.1)
|
||||
0x1d0| a3 03 | .. | global_gain: 140 0x1dd.2-0x1de.1 (1)
|
||||
0x1d0| 03 | . | scalefac_compress: 0 0x1de.2-0x1de.5 (0.4)
|
||||
0x1d0| 03 | . | blocksplit_flag: 1 0x1de.6-0x1de.6 (0.1)
|
||||
0x1d0| 03 b2| ..| block_type: "end" (3) 0x1de.7-0x1df (0.2)
|
||||
0x1d0| b2| .| switch_point: 0 0x1df.1-0x1df.1 (0.1)
|
||||
0x1d0| b2| .| table_select0: 25 0x1df.2-0x1df.6 (0.5)
|
||||
0x1d0| b2| .| table_select1: 15 0x1df.7-0x1e0.3 (0.5)
|
||||
| | | [0][0:1]: granule 0x1d3.2-0x1da.4 (7.3)
|
||||
| | | [0]{}: channel 0x1d3.2-0x1da.4 (7.3)
|
||||
0x1d0| 0d e4 | .. | part2_3_length: 889 0x1d3.2-0x1d4.5 (1.4)
|
||||
0x1d0| e4 c9 | .. | big_values: 100 0x1d4.6-0x1d5.6 (1.1)
|
||||
0x1d0| c9 7b | .{ | global_gain: 189 0x1d5.7-0x1d6.6 (1)
|
||||
0x1d0| 7b f9 | {. | scalefac_compress: 15 0x1d6.7-0x1d7.2 (0.4)
|
||||
0x1d0| f9 | . | blocksplit_flag: 1 0x1d7.3-0x1d7.3 (0.1)
|
||||
0x1d0| f9 | . | block_type: "3 short windows" (2) 0x1d7.4-0x1d7.5 (0.2)
|
||||
0x1d0| f9 | . | switch_point: 0 0x1d7.6-0x1d7.6 (0.1)
|
||||
0x1d0| f9 89 | .. | table_select0: 24 0x1d7.7-0x1d8.3 (0.5)
|
||||
0x1d0| 89 84 | .. | table_select1: 19 0x1d8.4-0x1d9 (0.5)
|
||||
0x1d0| 84 | . | subblock_gain0: 0 0x1d9.1-0x1d9.3 (0.3)
|
||||
0x1d0| 84 | . | subblock_gain1: 2 0x1d9.4-0x1d9.6 (0.3)
|
||||
0x1d0| 84 91 | .. | subblock_gain2: 2 0x1d9.7-0x1da.1 (0.3)
|
||||
0x1d0| 91 | . | preflag: 0 0x1da.2-0x1da.2 (0.1)
|
||||
0x1d0| 91 | . | scalefac_scale: 1 0x1da.3-0x1da.3 (0.1)
|
||||
0x1d0| 91 | . | count1table_select: 0 0x1da.4-0x1da.4 (0.1)
|
||||
| | | [1][0:1]: granule 0x1da.5-0x1e1.7 (7.3)
|
||||
| | | [0]{}: channel 0x1da.5-0x1e1.7 (7.3)
|
||||
0x1d0| 91 30 8d | .0. | part2_3_length: 609 0x1da.5-0x1dc (1.4)
|
||||
0x1d0| 8d a3 | .. | big_values: 54 0x1dc.1-0x1dd.1 (1.1)
|
||||
0x1d0| a3 03 | .. | global_gain: 140 0x1dd.2-0x1de.1 (1)
|
||||
0x1d0| 03 | . | scalefac_compress: 0 0x1de.2-0x1de.5 (0.4)
|
||||
0x1d0| 03 | . | blocksplit_flag: 1 0x1de.6-0x1de.6 (0.1)
|
||||
0x1d0| 03 b2| ..| block_type: "end" (3) 0x1de.7-0x1df (0.2)
|
||||
0x1d0| b2| .| switch_point: 0 0x1df.1-0x1df.1 (0.1)
|
||||
0x1d0| b2| .| table_select0: 25 0x1df.2-0x1df.6 (0.5)
|
||||
0x1d0| b2| .| table_select1: 15 0x1df.7-0x1e0.3 (0.5)
|
||||
0x1e0|f0 |. |
|
||||
0x1e0|f0 |. | subblock_gain0: 0 0x1e0.4-0x1e0.6 (0.3)
|
||||
0x1e0|f0 00 |.. | subblock_gain1: 0 0x1e0.7-0x1e1.1 (0.3)
|
||||
0x1e0| 00 | . | subblock_gain2: 0 0x1e1.2-0x1e1.4 (0.3)
|
||||
0x1e0| 00 | . | preflag: 0 0x1e1.5-0x1e1.5 (0.1)
|
||||
0x1e0| 00 | . | scalefac_scale: 0 0x1e1.6-0x1e1.6 (0.1)
|
||||
0x1e0| 00 | . | count1table_select: 0 0x1e1.7-0x1e1.7 (0.1)
|
||||
0x1e0|f0 |. | subblock_gain0: 0 0x1e0.4-0x1e0.6 (0.3)
|
||||
0x1e0|f0 00 |.. | subblock_gain1: 0 0x1e0.7-0x1e1.1 (0.3)
|
||||
0x1e0| 00 | . | subblock_gain2: 0 0x1e1.2-0x1e1.4 (0.3)
|
||||
0x1e0| 00 | . | preflag: 0 0x1e1.5-0x1e1.5 (0.1)
|
||||
0x1e0| 00 | . | scalefac_scale: 0 0x1e1.6-0x1e1.6 (0.1)
|
||||
0x1e0| 00 | . | count1table_select: 0 0x1e1.7-0x1e1.7 (0.1)
|
||||
0x1e0| 53 ca 1e 59 fd 29 ba 0b 84 d4 8a f8 8d cb| S..Y.)........| data: raw bits 0x1e2-0x281.7 (160)
|
||||
0x1f0|a0 77 10 07 47 8b 8c 7b 2e 82 33 01 c4 c0 04 9f|.w..G..{..3.....|
|
||||
* |until 0x281.7 (160) | |
|
||||
|
2
format/mp4/testdata/path.fqtest
vendored
2
format/mp4/testdata/path.fqtest
vendored
@ -1,5 +1,5 @@
|
||||
$ fq -d mp4 'mp4_path(".moov.trak[1]")' /fragmented.mp4
|
||||
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.boxes[1].boxes[2]{}:
|
||||
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.boxes[1].boxes[2]{}: box
|
||||
0x280| 00 00 01 bf | .... | size: 447
|
||||
0x280| 74 72 61 6b | trak | type: "trak" (Container for an individual track or stream)
|
||||
0x280| 00 00 00 5c| ...\| boxes[0:2]:
|
||||
|
4
format/mp4/testdata/size64.fqtest
vendored
4
format/mp4/testdata/size64.fqtest
vendored
@ -2,7 +2,7 @@
|
||||
# fq -d raw 'tobytes[0:100]' size64.mp4 > size64
|
||||
# TODO: test that don't uses decode failure?
|
||||
$ fq -d mp4 '.boxes[] | d' /size64
|
||||
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.boxes[0]{}:
|
||||
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.boxes[0]{}: box
|
||||
0x00|00 00 00 1c |.... | size: 28
|
||||
0x00| 66 74 79 70 | ftyp | type: "ftyp" (File type and compatibility)
|
||||
0x00| 69 73 6f 6d | isom | major_brand: "isom"
|
||||
@ -11,7 +11,7 @@ $ fq -d mp4 '.boxes[] | d' /size64
|
||||
0x10|69 73 6f 6d |isom | [0]: "isom" (All files based on the ISO Base Media File Format)
|
||||
0x10| 69 73 6f 32 | iso2 | [1]: "iso2" (All files based on the 2004 edition of the ISO file format)
|
||||
0x10| 6d 70 34 31 | mp41 | [2]: "mp41" (MP4 version 1)
|
||||
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.boxes[1]{}:
|
||||
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.boxes[1]{}: box
|
||||
0x10| 00 00 00 01| ....| size: 1 (Use 64 bit size)
|
||||
0x20|6d 64 61 74 |mdat | type: "mdat" (Media data container)
|
||||
0x20| 00 00 00 01 ad 85 9d aa | ........ | size64: 7206182314
|
||||
|
210
format/mp4/testdata/stz2.fqtest
vendored
210
format/mp4/testdata/stz2.fqtest
vendored
@ -303,43 +303,41 @@ $ fq -d mp4 'dv' stz2.mp4
|
||||
0x280| 00 | . | private_bits: 0 0x289.1-0x289.5 (0.5)
|
||||
0x280| 00 0a | .. | share0: 0 0x289.6-0x28a.1 (0.4)
|
||||
| | | granules[0:2]: 0x28a.2-0x298.7 (14.6)
|
||||
| | | [0]{}: granule 0x28a.2-0x291.4 (7.3)
|
||||
| | | channels[0:1]: 0x28a.2-0x291.4 (7.3)
|
||||
| | | [0]{}: channel 0x28a.2-0x291.4 (7.3)
|
||||
0x280| 0a 2c | ., | part2_3_length: 651 0x28a.2-0x28b.5 (1.4)
|
||||
0x280| 2c 43 | ,C | big_values: 33 0x28b.6-0x28c.6 (1.1)
|
||||
0x280| 43 2e | C. | global_gain: 151 0x28c.7-0x28d.6 (1)
|
||||
0x280| 2e 55 | .U | scalefac_compress: 2 0x28d.7-0x28e.2 (0.4)
|
||||
0x280| 55 | U | blocksplit_flag: 1 0x28e.3-0x28e.3 (0.1)
|
||||
0x280| 55 | U | block_type: "start block" (1) 0x28e.4-0x28e.5 (0.2)
|
||||
0x280| 55 | U | switch_point: 0 0x28e.6-0x28e.6 (0.1)
|
||||
0x280| 55 94| U.| table_select0: 25 0x28e.7-0x28f.3 (0.5)
|
||||
0x280| 94| .| table_select1: 9 0x28f.4-0x290 (0.5)
|
||||
| | | [0][0:1]: granule 0x28a.2-0x291.4 (7.3)
|
||||
| | | [0]{}: channel 0x28a.2-0x291.4 (7.3)
|
||||
0x280| 0a 2c | ., | part2_3_length: 651 0x28a.2-0x28b.5 (1.4)
|
||||
0x280| 2c 43 | ,C | big_values: 33 0x28b.6-0x28c.6 (1.1)
|
||||
0x280| 43 2e | C. | global_gain: 151 0x28c.7-0x28d.6 (1)
|
||||
0x280| 2e 55 | .U | scalefac_compress: 2 0x28d.7-0x28e.2 (0.4)
|
||||
0x280| 55 | U | blocksplit_flag: 1 0x28e.3-0x28e.3 (0.1)
|
||||
0x280| 55 | U | block_type: "start block" (1) 0x28e.4-0x28e.5 (0.2)
|
||||
0x280| 55 | U | switch_point: 0 0x28e.6-0x28e.6 (0.1)
|
||||
0x280| 55 94| U.| table_select0: 25 0x28e.7-0x28f.3 (0.5)
|
||||
0x280| 94| .| table_select1: 9 0x28f.4-0x290 (0.5)
|
||||
0x290|80 |. |
|
||||
0x290|80 |. | subblock_gain0: 0 0x290.1-0x290.3 (0.3)
|
||||
0x290|80 |. | subblock_gain1: 0 0x290.4-0x290.6 (0.3)
|
||||
0x290|80 01 |.. | subblock_gain2: 0 0x290.7-0x291.1 (0.3)
|
||||
0x290| 01 | . | preflag: 0 0x291.2-0x291.2 (0.1)
|
||||
0x290| 01 | . | scalefac_scale: 0 0x291.3-0x291.3 (0.1)
|
||||
0x290| 01 | . | count1table_select: 0 0x291.4-0x291.4 (0.1)
|
||||
| | | [1]{}: granule 0x291.5-0x298.7 (7.3)
|
||||
| | | channels[0:1]: 0x291.5-0x298.7 (7.3)
|
||||
| | | [0]{}: channel 0x291.5-0x298.7 (7.3)
|
||||
0x290| 01 81 15 | ... | part2_3_length: 770 0x291.5-0x293 (1.4)
|
||||
0x290| 15 66 | .f | big_values: 85 0x293.1-0x294.1 (1.1)
|
||||
0x290| 66 23 | f# | global_gain: 152 0x294.2-0x295.1 (1)
|
||||
0x290| 23 | # | scalefac_compress: 8 0x295.2-0x295.5 (0.4)
|
||||
0x290| 23 | # | blocksplit_flag: 1 0x295.6-0x295.6 (0.1)
|
||||
0x290| 23 3a | #: | block_type: "3 short windows" (2) 0x295.7-0x296 (0.2)
|
||||
0x290| 3a | : | switch_point: 0 0x296.1-0x296.1 (0.1)
|
||||
0x290| 3a | : | table_select0: 29 0x296.2-0x296.6 (0.5)
|
||||
0x290| 3a d0 | :. | table_select1: 13 0x296.7-0x297.3 (0.5)
|
||||
0x290| d0 | . | subblock_gain0: 0 0x297.4-0x297.6 (0.3)
|
||||
0x290| d0 00 | .. | subblock_gain1: 0 0x297.7-0x298.1 (0.3)
|
||||
0x290| 00 | . | subblock_gain2: 0 0x298.2-0x298.4 (0.3)
|
||||
0x290| 00 | . | preflag: 0 0x298.5-0x298.5 (0.1)
|
||||
0x290| 00 | . | scalefac_scale: 0 0x298.6-0x298.6 (0.1)
|
||||
0x290| 00 | . | count1table_select: 0 0x298.7-0x298.7 (0.1)
|
||||
0x290|80 |. | subblock_gain0: 0 0x290.1-0x290.3 (0.3)
|
||||
0x290|80 |. | subblock_gain1: 0 0x290.4-0x290.6 (0.3)
|
||||
0x290|80 01 |.. | subblock_gain2: 0 0x290.7-0x291.1 (0.3)
|
||||
0x290| 01 | . | preflag: 0 0x291.2-0x291.2 (0.1)
|
||||
0x290| 01 | . | scalefac_scale: 0 0x291.3-0x291.3 (0.1)
|
||||
0x290| 01 | . | count1table_select: 0 0x291.4-0x291.4 (0.1)
|
||||
| | | [1][0:1]: granule 0x291.5-0x298.7 (7.3)
|
||||
| | | [0]{}: channel 0x291.5-0x298.7 (7.3)
|
||||
0x290| 01 81 15 | ... | part2_3_length: 770 0x291.5-0x293 (1.4)
|
||||
0x290| 15 66 | .f | big_values: 85 0x293.1-0x294.1 (1.1)
|
||||
0x290| 66 23 | f# | global_gain: 152 0x294.2-0x295.1 (1)
|
||||
0x290| 23 | # | scalefac_compress: 8 0x295.2-0x295.5 (0.4)
|
||||
0x290| 23 | # | blocksplit_flag: 1 0x295.6-0x295.6 (0.1)
|
||||
0x290| 23 3a | #: | block_type: "3 short windows" (2) 0x295.7-0x296 (0.2)
|
||||
0x290| 3a | : | switch_point: 0 0x296.1-0x296.1 (0.1)
|
||||
0x290| 3a | : | table_select0: 29 0x296.2-0x296.6 (0.5)
|
||||
0x290| 3a d0 | :. | table_select1: 13 0x296.7-0x297.3 (0.5)
|
||||
0x290| d0 | . | subblock_gain0: 0 0x297.4-0x297.6 (0.3)
|
||||
0x290| d0 00 | .. | subblock_gain1: 0 0x297.7-0x298.1 (0.3)
|
||||
0x290| 00 | . | subblock_gain2: 0 0x298.2-0x298.4 (0.3)
|
||||
0x290| 00 | . | preflag: 0 0x298.5-0x298.5 (0.1)
|
||||
0x290| 00 | . | scalefac_scale: 0 0x298.6-0x298.6 (0.1)
|
||||
0x290| 00 | . | count1table_select: 0 0x298.7-0x298.7 (0.1)
|
||||
0x290| 07 aa c3 8e 33 85 d3| ....3..| data: raw bits 0x299-0x353.7 (187)
|
||||
0x2a0|64 f1 a1 c1 08 1c 58 1f 5e 1f 18 1c 46 04 1e 89|d.....X.^...F...|
|
||||
* |until 0x353.7 (187) | |
|
||||
@ -366,43 +364,41 @@ $ fq -d mp4 'dv' stz2.mp4
|
||||
0x350| 82 | . | private_bits: 0 0x359.1-0x359.5 (0.5)
|
||||
0x350| 82 0a | .. | share0: 8 0x359.6-0x35a.1 (0.4)
|
||||
| | | granules[0:2]: 0x35a.2-0x368.7 (14.6)
|
||||
| | | [0]{}: granule 0x35a.2-0x361.4 (7.3)
|
||||
| | | channels[0:1]: 0x35a.2-0x361.4 (7.3)
|
||||
| | | [0]{}: channel 0x35a.2-0x361.4 (7.3)
|
||||
0x350| 0a 60 | .` | part2_3_length: 664 0x35a.2-0x35b.5 (1.4)
|
||||
0x350| 60 21 | `! | big_values: 16 0x35b.6-0x35c.6 (1.1)
|
||||
0x350| 21 10 | !. | global_gain: 136 0x35c.7-0x35d.6 (1)
|
||||
0x350| 10 bd | .. | scalefac_compress: 5 0x35d.7-0x35e.2 (0.4)
|
||||
0x350| bd | . | blocksplit_flag: 1 0x35e.3-0x35e.3 (0.1)
|
||||
0x350| bd | . | block_type: "end" (3) 0x35e.4-0x35e.5 (0.2)
|
||||
0x350| bd | . | switch_point: 0 0x35e.6-0x35e.6 (0.1)
|
||||
0x350| bd f1| ..| table_select0: 31 0x35e.7-0x35f.3 (0.5)
|
||||
0x350| f1| .| table_select1: 2 0x35f.4-0x360 (0.5)
|
||||
| | | [0][0:1]: granule 0x35a.2-0x361.4 (7.3)
|
||||
| | | [0]{}: channel 0x35a.2-0x361.4 (7.3)
|
||||
0x350| 0a 60 | .` | part2_3_length: 664 0x35a.2-0x35b.5 (1.4)
|
||||
0x350| 60 21 | `! | big_values: 16 0x35b.6-0x35c.6 (1.1)
|
||||
0x350| 21 10 | !. | global_gain: 136 0x35c.7-0x35d.6 (1)
|
||||
0x350| 10 bd | .. | scalefac_compress: 5 0x35d.7-0x35e.2 (0.4)
|
||||
0x350| bd | . | blocksplit_flag: 1 0x35e.3-0x35e.3 (0.1)
|
||||
0x350| bd | . | block_type: "end" (3) 0x35e.4-0x35e.5 (0.2)
|
||||
0x350| bd | . | switch_point: 0 0x35e.6-0x35e.6 (0.1)
|
||||
0x350| bd f1| ..| table_select0: 31 0x35e.7-0x35f.3 (0.5)
|
||||
0x350| f1| .| table_select1: 2 0x35f.4-0x360 (0.5)
|
||||
0x360|00 |. |
|
||||
0x360|00 |. | subblock_gain0: 0 0x360.1-0x360.3 (0.3)
|
||||
0x360|00 |. | subblock_gain1: 0 0x360.4-0x360.6 (0.3)
|
||||
0x360|00 01 |.. | subblock_gain2: 0 0x360.7-0x361.1 (0.3)
|
||||
0x360| 01 | . | preflag: 0 0x361.2-0x361.2 (0.1)
|
||||
0x360| 01 | . | scalefac_scale: 0 0x361.3-0x361.3 (0.1)
|
||||
0x360| 01 | . | count1table_select: 0 0x361.4-0x361.4 (0.1)
|
||||
| | | [1]{}: granule 0x361.5-0x368.7 (7.3)
|
||||
| | | channels[0:1]: 0x361.5-0x368.7 (7.3)
|
||||
| | | [0]{}: channel 0x361.5-0x368.7 (7.3)
|
||||
0x360| 01 59 04 | .Y. | part2_3_length: 690 0x361.5-0x363 (1.4)
|
||||
0x360| 04 a1 | .. | big_values: 18 0x363.1-0x364.1 (1.1)
|
||||
0x360| a1 e2 | .. | global_gain: 135 0x364.2-0x365.1 (1)
|
||||
0x360| e2 | . | scalefac_compress: 8 0x365.2-0x365.5 (0.4)
|
||||
0x360| e2 | . | blocksplit_flag: 1 0x365.6-0x365.6 (0.1)
|
||||
0x360| e2 be | .. | block_type: "start block" (1) 0x365.7-0x366 (0.2)
|
||||
0x360| be | . | switch_point: 0 0x366.1-0x366.1 (0.1)
|
||||
0x360| be | . | table_select0: 31 0x366.2-0x366.6 (0.5)
|
||||
0x360| be 20 | . | table_select1: 2 0x366.7-0x367.3 (0.5)
|
||||
0x360| 20 | | subblock_gain0: 0 0x367.4-0x367.6 (0.3)
|
||||
0x360| 20 00 | . | subblock_gain1: 0 0x367.7-0x368.1 (0.3)
|
||||
0x360| 00 | . | subblock_gain2: 0 0x368.2-0x368.4 (0.3)
|
||||
0x360| 00 | . | preflag: 0 0x368.5-0x368.5 (0.1)
|
||||
0x360| 00 | . | scalefac_scale: 0 0x368.6-0x368.6 (0.1)
|
||||
0x360| 00 | . | count1table_select: 0 0x368.7-0x368.7 (0.1)
|
||||
0x360|00 |. | subblock_gain0: 0 0x360.1-0x360.3 (0.3)
|
||||
0x360|00 |. | subblock_gain1: 0 0x360.4-0x360.6 (0.3)
|
||||
0x360|00 01 |.. | subblock_gain2: 0 0x360.7-0x361.1 (0.3)
|
||||
0x360| 01 | . | preflag: 0 0x361.2-0x361.2 (0.1)
|
||||
0x360| 01 | . | scalefac_scale: 0 0x361.3-0x361.3 (0.1)
|
||||
0x360| 01 | . | count1table_select: 0 0x361.4-0x361.4 (0.1)
|
||||
| | | [1][0:1]: granule 0x361.5-0x368.7 (7.3)
|
||||
| | | [0]{}: channel 0x361.5-0x368.7 (7.3)
|
||||
0x360| 01 59 04 | .Y. | part2_3_length: 690 0x361.5-0x363 (1.4)
|
||||
0x360| 04 a1 | .. | big_values: 18 0x363.1-0x364.1 (1.1)
|
||||
0x360| a1 e2 | .. | global_gain: 135 0x364.2-0x365.1 (1)
|
||||
0x360| e2 | . | scalefac_compress: 8 0x365.2-0x365.5 (0.4)
|
||||
0x360| e2 | . | blocksplit_flag: 1 0x365.6-0x365.6 (0.1)
|
||||
0x360| e2 be | .. | block_type: "start block" (1) 0x365.7-0x366 (0.2)
|
||||
0x360| be | . | switch_point: 0 0x366.1-0x366.1 (0.1)
|
||||
0x360| be | . | table_select0: 31 0x366.2-0x366.6 (0.5)
|
||||
0x360| be 20 | . | table_select1: 2 0x366.7-0x367.3 (0.5)
|
||||
0x360| 20 | | subblock_gain0: 0 0x367.4-0x367.6 (0.3)
|
||||
0x360| 20 00 | . | subblock_gain1: 0 0x367.7-0x368.1 (0.3)
|
||||
0x360| 00 | . | subblock_gain2: 0 0x368.2-0x368.4 (0.3)
|
||||
0x360| 00 | . | preflag: 0 0x368.5-0x368.5 (0.1)
|
||||
0x360| 00 | . | scalefac_scale: 0 0x368.6-0x368.6 (0.1)
|
||||
0x360| 00 | . | count1table_select: 0 0x368.7-0x368.7 (0.1)
|
||||
0x360| 01 d9 81 38 05 c9 80| ...8...| data: raw bits 0x369-0x41a.7 (178)
|
||||
0x370|20 04 f1 80 8e 07 01 96 d2 b0 19 91 ec 2a 39 85| ............*9.|
|
||||
* |until 0x41a.7 (178) | |
|
||||
@ -431,43 +427,41 @@ $ fq -d mp4 'dv' stz2.mp4
|
||||
0x420| 80 | . | private_bits: 0 0x42a.1-0x42a.5 (0.5)
|
||||
0x420| 80 0d | .. | share0: 0 0x42a.6-0x42b.1 (0.4)
|
||||
| | | granules[0:2]: 0x42b.2-0x439.7 (14.6)
|
||||
| | | [0]{}: granule 0x42b.2-0x432.4 (7.3)
|
||||
| | | channels[0:1]: 0x42b.2-0x432.4 (7.3)
|
||||
| | | [0]{}: channel 0x42b.2-0x432.4 (7.3)
|
||||
0x420| 0d e4 | .. | part2_3_length: 889 0x42b.2-0x42c.5 (1.4)
|
||||
0x420| e4 c9 | .. | big_values: 100 0x42c.6-0x42d.6 (1.1)
|
||||
0x420| c9 7b | .{ | global_gain: 189 0x42d.7-0x42e.6 (1)
|
||||
0x420| 7b f9| {.| scalefac_compress: 15 0x42e.7-0x42f.2 (0.4)
|
||||
0x420| f9| .| blocksplit_flag: 1 0x42f.3-0x42f.3 (0.1)
|
||||
0x420| f9| .| block_type: "3 short windows" (2) 0x42f.4-0x42f.5 (0.2)
|
||||
0x420| f9| .| switch_point: 0 0x42f.6-0x42f.6 (0.1)
|
||||
0x420| f9| .| table_select0: 24 0x42f.7-0x430.3 (0.5)
|
||||
| | | [0][0:1]: granule 0x42b.2-0x432.4 (7.3)
|
||||
| | | [0]{}: channel 0x42b.2-0x432.4 (7.3)
|
||||
0x420| 0d e4 | .. | part2_3_length: 889 0x42b.2-0x42c.5 (1.4)
|
||||
0x420| e4 c9 | .. | big_values: 100 0x42c.6-0x42d.6 (1.1)
|
||||
0x420| c9 7b | .{ | global_gain: 189 0x42d.7-0x42e.6 (1)
|
||||
0x420| 7b f9| {.| scalefac_compress: 15 0x42e.7-0x42f.2 (0.4)
|
||||
0x420| f9| .| blocksplit_flag: 1 0x42f.3-0x42f.3 (0.1)
|
||||
0x420| f9| .| block_type: "3 short windows" (2) 0x42f.4-0x42f.5 (0.2)
|
||||
0x420| f9| .| switch_point: 0 0x42f.6-0x42f.6 (0.1)
|
||||
0x420| f9| .| table_select0: 24 0x42f.7-0x430.3 (0.5)
|
||||
0x430|89 |. |
|
||||
0x430|89 84 |.. | table_select1: 19 0x430.4-0x431 (0.5)
|
||||
0x430| 84 | . | subblock_gain0: 0 0x431.1-0x431.3 (0.3)
|
||||
0x430| 84 | . | subblock_gain1: 2 0x431.4-0x431.6 (0.3)
|
||||
0x430| 84 91 | .. | subblock_gain2: 2 0x431.7-0x432.1 (0.3)
|
||||
0x430| 91 | . | preflag: 0 0x432.2-0x432.2 (0.1)
|
||||
0x430| 91 | . | scalefac_scale: 1 0x432.3-0x432.3 (0.1)
|
||||
0x430| 91 | . | count1table_select: 0 0x432.4-0x432.4 (0.1)
|
||||
| | | [1]{}: granule 0x432.5-0x439.7 (7.3)
|
||||
| | | channels[0:1]: 0x432.5-0x439.7 (7.3)
|
||||
| | | [0]{}: channel 0x432.5-0x439.7 (7.3)
|
||||
0x430| 91 30 8d | .0. | part2_3_length: 609 0x432.5-0x434 (1.4)
|
||||
0x430| 8d a3 | .. | big_values: 54 0x434.1-0x435.1 (1.1)
|
||||
0x430| a3 03 | .. | global_gain: 140 0x435.2-0x436.1 (1)
|
||||
0x430| 03 | . | scalefac_compress: 0 0x436.2-0x436.5 (0.4)
|
||||
0x430| 03 | . | blocksplit_flag: 1 0x436.6-0x436.6 (0.1)
|
||||
0x430| 03 b2 | .. | block_type: "end" (3) 0x436.7-0x437 (0.2)
|
||||
0x430| b2 | . | switch_point: 0 0x437.1-0x437.1 (0.1)
|
||||
0x430| b2 | . | table_select0: 25 0x437.2-0x437.6 (0.5)
|
||||
0x430| b2 f0 | .. | table_select1: 15 0x437.7-0x438.3 (0.5)
|
||||
0x430| f0 | . | subblock_gain0: 0 0x438.4-0x438.6 (0.3)
|
||||
0x430| f0 00 | .. | subblock_gain1: 0 0x438.7-0x439.1 (0.3)
|
||||
0x430| 00 | . | subblock_gain2: 0 0x439.2-0x439.4 (0.3)
|
||||
0x430| 00 | . | preflag: 0 0x439.5-0x439.5 (0.1)
|
||||
0x430| 00 | . | scalefac_scale: 0 0x439.6-0x439.6 (0.1)
|
||||
0x430| 00 | . | count1table_select: 0 0x439.7-0x439.7 (0.1)
|
||||
0x430|89 84 |.. | table_select1: 19 0x430.4-0x431 (0.5)
|
||||
0x430| 84 | . | subblock_gain0: 0 0x431.1-0x431.3 (0.3)
|
||||
0x430| 84 | . | subblock_gain1: 2 0x431.4-0x431.6 (0.3)
|
||||
0x430| 84 91 | .. | subblock_gain2: 2 0x431.7-0x432.1 (0.3)
|
||||
0x430| 91 | . | preflag: 0 0x432.2-0x432.2 (0.1)
|
||||
0x430| 91 | . | scalefac_scale: 1 0x432.3-0x432.3 (0.1)
|
||||
0x430| 91 | . | count1table_select: 0 0x432.4-0x432.4 (0.1)
|
||||
| | | [1][0:1]: granule 0x432.5-0x439.7 (7.3)
|
||||
| | | [0]{}: channel 0x432.5-0x439.7 (7.3)
|
||||
0x430| 91 30 8d | .0. | part2_3_length: 609 0x432.5-0x434 (1.4)
|
||||
0x430| 8d a3 | .. | big_values: 54 0x434.1-0x435.1 (1.1)
|
||||
0x430| a3 03 | .. | global_gain: 140 0x435.2-0x436.1 (1)
|
||||
0x430| 03 | . | scalefac_compress: 0 0x436.2-0x436.5 (0.4)
|
||||
0x430| 03 | . | blocksplit_flag: 1 0x436.6-0x436.6 (0.1)
|
||||
0x430| 03 b2 | .. | block_type: "end" (3) 0x436.7-0x437 (0.2)
|
||||
0x430| b2 | . | switch_point: 0 0x437.1-0x437.1 (0.1)
|
||||
0x430| b2 | . | table_select0: 25 0x437.2-0x437.6 (0.5)
|
||||
0x430| b2 f0 | .. | table_select1: 15 0x437.7-0x438.3 (0.5)
|
||||
0x430| f0 | . | subblock_gain0: 0 0x438.4-0x438.6 (0.3)
|
||||
0x430| f0 00 | .. | subblock_gain1: 0 0x438.7-0x439.1 (0.3)
|
||||
0x430| 00 | . | subblock_gain2: 0 0x439.2-0x439.4 (0.3)
|
||||
0x430| 00 | . | preflag: 0 0x439.5-0x439.5 (0.1)
|
||||
0x430| 00 | . | scalefac_scale: 0 0x439.6-0x439.6 (0.1)
|
||||
0x430| 00 | . | count1table_select: 0 0x439.7-0x439.7 (0.1)
|
||||
0x430| 53 ca 1e 59 fd 29| S..Y.)| data: raw bits 0x43a-0x4d9.7 (160)
|
||||
0x440|ba 0b 84 d4 8a f8 8d cb a0 77 10 07 47 8b 8c 7b|.........w..G..{|
|
||||
* |until 0x4d9.7 (160) | |
|
||||
|
@ -303,41 +303,41 @@ func frameDecode(d *decode.D, in interface{}) interface{} {
|
||||
|
||||
// TODO: mpeg_version 2 use 1, otherwise 2
|
||||
granuleCount := 2
|
||||
granuleNr := 0
|
||||
d.FieldStructArrayLoop("granules", "granule", func() bool { return granuleNr < granuleCount }, func(d *decode.D) {
|
||||
channelNr := 0
|
||||
d.FieldStructArrayLoop("channels", "channel", func() bool { return channelNr < channelCount }, func(d *decode.D) {
|
||||
// TODO: tables and interpret values a bit
|
||||
d.FieldU12("part2_3_length")
|
||||
d.FieldU9("big_values")
|
||||
d.FieldU8("global_gain")
|
||||
d.FieldU4("scalefac_compress")
|
||||
blocksplitFlag := d.FieldU1("blocksplit_flag")
|
||||
d.FieldArray("granules", func(d *decode.D) {
|
||||
for i := 0; i < granuleCount; i++ {
|
||||
d.FieldArray("granule", func(d *decode.D) {
|
||||
for j := 0; j < channelCount; j++ {
|
||||
d.FieldStruct("channel", func(d *decode.D) {
|
||||
// TODO: tables and interpret values a bit
|
||||
d.FieldU12("part2_3_length")
|
||||
d.FieldU9("big_values")
|
||||
d.FieldU8("global_gain")
|
||||
d.FieldU4("scalefac_compress")
|
||||
blocksplitFlag := d.FieldU1("blocksplit_flag")
|
||||
|
||||
if blocksplitFlag == 1 {
|
||||
d.FieldU2("block_type", blockTypeNames)
|
||||
d.FieldU1("switch_point")
|
||||
d.FieldU5("table_select0")
|
||||
d.FieldU5("table_select1")
|
||||
d.FieldU3("subblock_gain0")
|
||||
d.FieldU3("subblock_gain1")
|
||||
d.FieldU3("subblock_gain2")
|
||||
} else {
|
||||
d.FieldU5("table_select0")
|
||||
d.FieldU5("table_select1")
|
||||
d.FieldU5("table_select2")
|
||||
d.FieldU4("region_address1")
|
||||
d.FieldU3("region_address2")
|
||||
}
|
||||
if blocksplitFlag == 1 {
|
||||
d.FieldU2("block_type", blockTypeNames)
|
||||
d.FieldU1("switch_point")
|
||||
d.FieldU5("table_select0")
|
||||
d.FieldU5("table_select1")
|
||||
d.FieldU3("subblock_gain0")
|
||||
d.FieldU3("subblock_gain1")
|
||||
d.FieldU3("subblock_gain2")
|
||||
} else {
|
||||
d.FieldU5("table_select0")
|
||||
d.FieldU5("table_select1")
|
||||
d.FieldU5("table_select2")
|
||||
d.FieldU4("region_address1")
|
||||
d.FieldU3("region_address2")
|
||||
}
|
||||
|
||||
d.FieldU1("preflag")
|
||||
d.FieldU1("scalefac_scale")
|
||||
d.FieldU1("count1table_select")
|
||||
|
||||
channelNr++
|
||||
})
|
||||
|
||||
granuleNr++
|
||||
d.FieldU1("preflag")
|
||||
d.FieldU1("scalefac_scale")
|
||||
d.FieldU1("count1table_select")
|
||||
})
|
||||
}
|
||||
})
|
||||
}
|
||||
})
|
||||
})
|
||||
}
|
||||
|
70
format/mpeg/testdata/mp3-frame-mono.fqtest
vendored
70
format/mpeg/testdata/mp3-frame-mono.fqtest
vendored
@ -21,43 +21,41 @@ $ fq -d mp3_frame dv /mp3-frame-mono
|
||||
0x00| 00 | . | private_bits: 0 0x5.1-0x5.5 (0.5)
|
||||
0x00| 00 0a | .. | share0: 0 0x5.6-0x6.1 (0.4)
|
||||
| | | granules[0:2]: 0x6.2-0x14.7 (14.6)
|
||||
| | | [0]{}: granule 0x6.2-0xd.4 (7.3)
|
||||
| | | channels[0:1]: 0x6.2-0xd.4 (7.3)
|
||||
| | | [0]{}: channel 0x6.2-0xd.4 (7.3)
|
||||
0x00| 0a 2c | ., | part2_3_length: 651 0x6.2-0x7.5 (1.4)
|
||||
0x00| 2c 43 | ,C | big_values: 33 0x7.6-0x8.6 (1.1)
|
||||
0x00| 43 2e | C. | global_gain: 151 0x8.7-0x9.6 (1)
|
||||
0x00| 2e 55 | .U | scalefac_compress: 2 0x9.7-0xa.2 (0.4)
|
||||
0x00| 55 | U | blocksplit_flag: 1 0xa.3-0xa.3 (0.1)
|
||||
0x00| 55 | U | block_type: "start block" (1) 0xa.4-0xa.5 (0.2)
|
||||
0x00| 55 | U | switch_point: 0 0xa.6-0xa.6 (0.1)
|
||||
0x00| 55 94 | U. | table_select0: 25 0xa.7-0xb.3 (0.5)
|
||||
0x00| 94 80 | .. | table_select1: 9 0xb.4-0xc (0.5)
|
||||
0x00| 80 | . | subblock_gain0: 0 0xc.1-0xc.3 (0.3)
|
||||
0x00| 80 | . | subblock_gain1: 0 0xc.4-0xc.6 (0.3)
|
||||
0x00| 80 01 | .. | subblock_gain2: 0 0xc.7-0xd.1 (0.3)
|
||||
0x00| 01 | . | preflag: 0 0xd.2-0xd.2 (0.1)
|
||||
0x00| 01 | . | scalefac_scale: 0 0xd.3-0xd.3 (0.1)
|
||||
0x00| 01 | . | count1table_select: 0 0xd.4-0xd.4 (0.1)
|
||||
| | | [1]{}: granule 0xd.5-0x14.7 (7.3)
|
||||
| | | channels[0:1]: 0xd.5-0x14.7 (7.3)
|
||||
| | | [0]{}: channel 0xd.5-0x14.7 (7.3)
|
||||
0x00| 01 80 93| ...| part2_3_length: 769 0xd.5-0xf (1.4)
|
||||
0x00| 93| .| big_values: 77 0xf.1-0x10.1 (1.1)
|
||||
| | | [0][0:1]: granule 0x6.2-0xd.4 (7.3)
|
||||
| | | [0]{}: channel 0x6.2-0xd.4 (7.3)
|
||||
0x00| 0a 2c | ., | part2_3_length: 651 0x6.2-0x7.5 (1.4)
|
||||
0x00| 2c 43 | ,C | big_values: 33 0x7.6-0x8.6 (1.1)
|
||||
0x00| 43 2e | C. | global_gain: 151 0x8.7-0x9.6 (1)
|
||||
0x00| 2e 55 | .U | scalefac_compress: 2 0x9.7-0xa.2 (0.4)
|
||||
0x00| 55 | U | blocksplit_flag: 1 0xa.3-0xa.3 (0.1)
|
||||
0x00| 55 | U | block_type: "start block" (1) 0xa.4-0xa.5 (0.2)
|
||||
0x00| 55 | U | switch_point: 0 0xa.6-0xa.6 (0.1)
|
||||
0x00| 55 94 | U. | table_select0: 25 0xa.7-0xb.3 (0.5)
|
||||
0x00| 94 80 | .. | table_select1: 9 0xb.4-0xc (0.5)
|
||||
0x00| 80 | . | subblock_gain0: 0 0xc.1-0xc.3 (0.3)
|
||||
0x00| 80 | . | subblock_gain1: 0 0xc.4-0xc.6 (0.3)
|
||||
0x00| 80 01 | .. | subblock_gain2: 0 0xc.7-0xd.1 (0.3)
|
||||
0x00| 01 | . | preflag: 0 0xd.2-0xd.2 (0.1)
|
||||
0x00| 01 | . | scalefac_scale: 0 0xd.3-0xd.3 (0.1)
|
||||
0x00| 01 | . | count1table_select: 0 0xd.4-0xd.4 (0.1)
|
||||
| | | [1][0:1]: granule 0xd.5-0x14.7 (7.3)
|
||||
| | | [0]{}: channel 0xd.5-0x14.7 (7.3)
|
||||
0x00| 01 80 93| ...| part2_3_length: 769 0xd.5-0xf (1.4)
|
||||
0x00| 93| .| big_values: 77 0xf.1-0x10.1 (1.1)
|
||||
0x10|6b |k |
|
||||
0x10|6b 27 |k' | global_gain: 172 0x10.2-0x11.1 (1)
|
||||
0x10| 27 | ' | scalefac_compress: 9 0x11.2-0x11.5 (0.4)
|
||||
0x10| 27 | ' | blocksplit_flag: 1 0x11.6-0x11.6 (0.1)
|
||||
0x10| 27 30 | '0 | block_type: "3 short windows" (2) 0x11.7-0x12 (0.2)
|
||||
0x10| 30 | 0 | switch_point: 0 0x12.1-0x12.1 (0.1)
|
||||
0x10| 30 | 0 | table_select0: 24 0x12.2-0x12.6 (0.5)
|
||||
0x10| 30 80 | 0. | table_select1: 8 0x12.7-0x13.3 (0.5)
|
||||
0x10| 80 | . | subblock_gain0: 0 0x13.4-0x13.6 (0.3)
|
||||
0x10| 80 00 | .. | subblock_gain1: 0 0x13.7-0x14.1 (0.3)
|
||||
0x10| 00 | . | subblock_gain2: 0 0x14.2-0x14.4 (0.3)
|
||||
0x10| 00 | . | preflag: 0 0x14.5-0x14.5 (0.1)
|
||||
0x10| 00 | . | scalefac_scale: 0 0x14.6-0x14.6 (0.1)
|
||||
0x10| 00 | . | count1table_select: 0 0x14.7-0x14.7 (0.1)
|
||||
0x10|6b 27 |k' | global_gain: 172 0x10.2-0x11.1 (1)
|
||||
0x10| 27 | ' | scalefac_compress: 9 0x11.2-0x11.5 (0.4)
|
||||
0x10| 27 | ' | blocksplit_flag: 1 0x11.6-0x11.6 (0.1)
|
||||
0x10| 27 30 | '0 | block_type: "3 short windows" (2) 0x11.7-0x12 (0.2)
|
||||
0x10| 30 | 0 | switch_point: 0 0x12.1-0x12.1 (0.1)
|
||||
0x10| 30 | 0 | table_select0: 24 0x12.2-0x12.6 (0.5)
|
||||
0x10| 30 80 | 0. | table_select1: 8 0x12.7-0x13.3 (0.5)
|
||||
0x10| 80 | . | subblock_gain0: 0 0x13.4-0x13.6 (0.3)
|
||||
0x10| 80 00 | .. | subblock_gain1: 0 0x13.7-0x14.1 (0.3)
|
||||
0x10| 00 | . | subblock_gain2: 0 0x14.2-0x14.4 (0.3)
|
||||
0x10| 00 | . | preflag: 0 0x14.5-0x14.5 (0.1)
|
||||
0x10| 00 | . | scalefac_scale: 0 0x14.6-0x14.6 (0.1)
|
||||
0x10| 00 | . | count1table_select: 0 0x14.7-0x14.7 (0.1)
|
||||
0x10| 07 aa c3 8e 33 85 d3 64 f1 a1 c1| ....3..d...| data: raw bits 0x15-0xcf.7 (187)
|
||||
0x20|08 1c 58 1f 5e 1f 18 1c 46 04 1e 89 e5 b3 2e 5a|..X.^...F......Z|
|
||||
* |until 0xcf.7 (end) (187) | |
|
||||
|
134
format/mpeg/testdata/mp3-frame-stereo.fqtest
vendored
134
format/mpeg/testdata/mp3-frame-stereo.fqtest
vendored
@ -22,76 +22,74 @@ $ fq -d mp3_frame dv /mp3-frame-stereo
|
||||
0x000| 00 | . | share0: 0 0x5.4-0x5.7 (0.4)
|
||||
0x000| 02 | . | share1: 0 0x6-0x6.3 (0.4)
|
||||
| | | granules[0:2]: 0x6.4-0x23.7 (29.4)
|
||||
| | | [0]{}: granule 0x6.4-0x15.1 (14.6)
|
||||
| | | channels[0:2]: 0x6.4-0x15.1 (14.6)
|
||||
| | | [0]{}: channel 0x6.4-0xd.6 (7.3)
|
||||
0x000| 02 6b | .k | part2_3_length: 619 0x6.4-0x7.7 (1.4)
|
||||
0x000| 0b ce | .. | big_values: 23 0x8-0x9 (1.1)
|
||||
0x000| ce 9d | .. | global_gain: 157 0x9.1-0xa (1)
|
||||
0x000| 9d | . | scalefac_compress: 3 0xa.1-0xa.4 (0.4)
|
||||
0x000| 9d | . | blocksplit_flag: 1 0xa.5-0xa.5 (0.1)
|
||||
0x000| 9d | . | block_type: "start block" (1) 0xa.6-0xa.7 (0.2)
|
||||
0x000| 60 | ` | switch_point: 0 0xb-0xb (0.1)
|
||||
0x000| 60 | ` | table_select0: 24 0xb.1-0xb.5 (0.5)
|
||||
0x000| 60 60 | `` | table_select1: 3 0xb.6-0xc.2 (0.5)
|
||||
0x000| 60 | ` | subblock_gain0: 0 0xc.3-0xc.5 (0.3)
|
||||
0x000| 60 00 | `. | subblock_gain1: 0 0xc.6-0xd (0.3)
|
||||
0x000| 00 | . | subblock_gain2: 0 0xd.1-0xd.3 (0.3)
|
||||
0x000| 00 | . | preflag: 0 0xd.4-0xd.4 (0.1)
|
||||
0x000| 00 | . | scalefac_scale: 0 0xd.5-0xd.5 (0.1)
|
||||
0x000| 00 | . | count1table_select: 0 0xd.6-0xd.6 (0.1)
|
||||
| | | [1]{}: channel 0xd.7-0x15.1 (7.3)
|
||||
0x000| 00 00 00| ...| part2_3_length: 0 0xd.7-0xf.2 (1.4)
|
||||
0x000| 00| .| big_values: 0 0xf.3-0x10.3 (1.1)
|
||||
| | | [0][0:2]: granule 0x6.4-0x15.1 (14.6)
|
||||
| | | [0]{}: channel 0x6.4-0xd.6 (7.3)
|
||||
0x000| 02 6b | .k | part2_3_length: 619 0x6.4-0x7.7 (1.4)
|
||||
0x000| 0b ce | .. | big_values: 23 0x8-0x9 (1.1)
|
||||
0x000| ce 9d | .. | global_gain: 157 0x9.1-0xa (1)
|
||||
0x000| 9d | . | scalefac_compress: 3 0xa.1-0xa.4 (0.4)
|
||||
0x000| 9d | . | blocksplit_flag: 1 0xa.5-0xa.5 (0.1)
|
||||
0x000| 9d | . | block_type: "start block" (1) 0xa.6-0xa.7 (0.2)
|
||||
0x000| 60 | ` | switch_point: 0 0xb-0xb (0.1)
|
||||
0x000| 60 | ` | table_select0: 24 0xb.1-0xb.5 (0.5)
|
||||
0x000| 60 60 | `` | table_select1: 3 0xb.6-0xc.2 (0.5)
|
||||
0x000| 60 | ` | subblock_gain0: 0 0xc.3-0xc.5 (0.3)
|
||||
0x000| 60 00 | `. | subblock_gain1: 0 0xc.6-0xd (0.3)
|
||||
0x000| 00 | . | subblock_gain2: 0 0xd.1-0xd.3 (0.3)
|
||||
0x000| 00 | . | preflag: 0 0xd.4-0xd.4 (0.1)
|
||||
0x000| 00 | . | scalefac_scale: 0 0xd.5-0xd.5 (0.1)
|
||||
0x000| 00 | . | count1table_select: 0 0xd.6-0xd.6 (0.1)
|
||||
| | | [1]{}: channel 0xd.7-0x15.1 (7.3)
|
||||
0x000| 00 00 00| ...| part2_3_length: 0 0xd.7-0xf.2 (1.4)
|
||||
0x000| 00| .| big_values: 0 0xf.3-0x10.3 (1.1)
|
||||
0x010|0d |. |
|
||||
0x010|0d 20 |. | global_gain: 210 0x10.4-0x11.3 (1)
|
||||
0x010| 20 | | scalefac_compress: 0 0x11.4-0x11.7 (0.4)
|
||||
0x010| a0 | . | blocksplit_flag: 1 0x12-0x12 (0.1)
|
||||
0x010| a0 | . | block_type: "start block" (1) 0x12.1-0x12.2 (0.2)
|
||||
0x010| a0 | . | switch_point: 0 0x12.3-0x12.3 (0.1)
|
||||
0x010| a0 00 | .. | table_select0: 0 0x12.4-0x13 (0.5)
|
||||
0x010| 00 | . | table_select1: 0 0x13.1-0x13.5 (0.5)
|
||||
0x010| 00 01 | .. | subblock_gain0: 0 0x13.6-0x14 (0.3)
|
||||
0x010| 01 | . | subblock_gain1: 0 0x14.1-0x14.3 (0.3)
|
||||
0x010| 01 | . | subblock_gain2: 0 0x14.4-0x14.6 (0.3)
|
||||
0x010| 01 | . | preflag: 1 0x14.7-0x14.7 (0.1)
|
||||
0x010| 18 | . | scalefac_scale: 0 0x15-0x15 (0.1)
|
||||
0x010| 18 | . | count1table_select: 0 0x15.1-0x15.1 (0.1)
|
||||
| | | [1]{}: granule 0x15.2-0x23.7 (14.6)
|
||||
| | | channels[0:2]: 0x15.2-0x23.7 (14.6)
|
||||
| | | [0]{}: channel 0x15.2-0x1c.4 (7.3)
|
||||
0x010| 18 c9 | .. | part2_3_length: 1586 0x15.2-0x16.5 (1.4)
|
||||
0x010| c9 99 | .. | big_values: 204 0x16.6-0x17.6 (1.1)
|
||||
0x010| 99 51 | .Q | global_gain: 168 0x17.7-0x18.6 (1)
|
||||
0x010| 51 b9 | Q. | scalefac_compress: 13 0x18.7-0x19.2 (0.4)
|
||||
0x010| b9 | . | blocksplit_flag: 1 0x19.3-0x19.3 (0.1)
|
||||
0x010| b9 | . | block_type: "3 short windows" (2) 0x19.4-0x19.5 (0.2)
|
||||
0x010| b9 | . | switch_point: 0 0x19.6-0x19.6 (0.1)
|
||||
0x010| b9 a7 | .. | table_select0: 26 0x19.7-0x1a.3 (0.5)
|
||||
0x010| a7 80 | .. | table_select1: 15 0x1a.4-0x1b (0.5)
|
||||
0x010| 80 | . | subblock_gain0: 0 0x1b.1-0x1b.3 (0.3)
|
||||
0x010| 80 | . | subblock_gain1: 0 0x1b.4-0x1b.6 (0.3)
|
||||
0x010| 80 00 | .. | subblock_gain2: 0 0x1b.7-0x1c.1 (0.3)
|
||||
0x010| 00 | . | preflag: 0 0x1c.2-0x1c.2 (0.1)
|
||||
0x010| 00 | . | scalefac_scale: 0 0x1c.3-0x1c.3 (0.1)
|
||||
0x010| 00 | . | count1table_select: 0 0x1c.4-0x1c.4 (0.1)
|
||||
| | | [1]{}: channel 0x1c.5-0x23.7 (7.3)
|
||||
0x010| 00 00 00 | ... | part2_3_length: 0 0x1c.5-0x1e (1.4)
|
||||
0x010| 00 34| .4| big_values: 0 0x1e.1-0x1f.1 (1.1)
|
||||
0x010| 34| 4| global_gain: 210 0x1f.2-0x20.1 (1)
|
||||
0x010|0d 20 |. | global_gain: 210 0x10.4-0x11.3 (1)
|
||||
0x010| 20 | | scalefac_compress: 0 0x11.4-0x11.7 (0.4)
|
||||
0x010| a0 | . | blocksplit_flag: 1 0x12-0x12 (0.1)
|
||||
0x010| a0 | . | block_type: "start block" (1) 0x12.1-0x12.2 (0.2)
|
||||
0x010| a0 | . | switch_point: 0 0x12.3-0x12.3 (0.1)
|
||||
0x010| a0 00 | .. | table_select0: 0 0x12.4-0x13 (0.5)
|
||||
0x010| 00 | . | table_select1: 0 0x13.1-0x13.5 (0.5)
|
||||
0x010| 00 01 | .. | subblock_gain0: 0 0x13.6-0x14 (0.3)
|
||||
0x010| 01 | . | subblock_gain1: 0 0x14.1-0x14.3 (0.3)
|
||||
0x010| 01 | . | subblock_gain2: 0 0x14.4-0x14.6 (0.3)
|
||||
0x010| 01 | . | preflag: 1 0x14.7-0x14.7 (0.1)
|
||||
0x010| 18 | . | scalefac_scale: 0 0x15-0x15 (0.1)
|
||||
0x010| 18 | . | count1table_select: 0 0x15.1-0x15.1 (0.1)
|
||||
| | | [1][0:2]: granule 0x15.2-0x23.7 (14.6)
|
||||
| | | [0]{}: channel 0x15.2-0x1c.4 (7.3)
|
||||
0x010| 18 c9 | .. | part2_3_length: 1586 0x15.2-0x16.5 (1.4)
|
||||
0x010| c9 99 | .. | big_values: 204 0x16.6-0x17.6 (1.1)
|
||||
0x010| 99 51 | .Q | global_gain: 168 0x17.7-0x18.6 (1)
|
||||
0x010| 51 b9 | Q. | scalefac_compress: 13 0x18.7-0x19.2 (0.4)
|
||||
0x010| b9 | . | blocksplit_flag: 1 0x19.3-0x19.3 (0.1)
|
||||
0x010| b9 | . | block_type: "3 short windows" (2) 0x19.4-0x19.5 (0.2)
|
||||
0x010| b9 | . | switch_point: 0 0x19.6-0x19.6 (0.1)
|
||||
0x010| b9 a7 | .. | table_select0: 26 0x19.7-0x1a.3 (0.5)
|
||||
0x010| a7 80 | .. | table_select1: 15 0x1a.4-0x1b (0.5)
|
||||
0x010| 80 | . | subblock_gain0: 0 0x1b.1-0x1b.3 (0.3)
|
||||
0x010| 80 | . | subblock_gain1: 0 0x1b.4-0x1b.6 (0.3)
|
||||
0x010| 80 00 | .. | subblock_gain2: 0 0x1b.7-0x1c.1 (0.3)
|
||||
0x010| 00 | . | preflag: 0 0x1c.2-0x1c.2 (0.1)
|
||||
0x010| 00 | . | scalefac_scale: 0 0x1c.3-0x1c.3 (0.1)
|
||||
0x010| 00 | . | count1table_select: 0 0x1c.4-0x1c.4 (0.1)
|
||||
| | | [1]{}: channel 0x1c.5-0x23.7 (7.3)
|
||||
0x010| 00 00 00 | ... | part2_3_length: 0 0x1c.5-0x1e (1.4)
|
||||
0x010| 00 34| .4| big_values: 0 0x1e.1-0x1f.1 (1.1)
|
||||
0x010| 34| 4| global_gain: 210 0x1f.2-0x20.1 (1)
|
||||
0x020|83 |. |
|
||||
0x020|83 |. | scalefac_compress: 0 0x20.2-0x20.5 (0.4)
|
||||
0x020|83 |. | blocksplit_flag: 1 0x20.6-0x20.6 (0.1)
|
||||
0x020|83 00 |.. | block_type: "3 short windows" (2) 0x20.7-0x21 (0.2)
|
||||
0x020| 00 | . | switch_point: 0 0x21.1-0x21.1 (0.1)
|
||||
0x020| 00 | . | table_select0: 0 0x21.2-0x21.6 (0.5)
|
||||
0x020| 00 00 | .. | table_select1: 0 0x21.7-0x22.3 (0.5)
|
||||
0x020| 00 | . | subblock_gain0: 0 0x22.4-0x22.6 (0.3)
|
||||
0x020| 00 00 | .. | subblock_gain1: 0 0x22.7-0x23.1 (0.3)
|
||||
0x020| 00 | . | subblock_gain2: 0 0x23.2-0x23.4 (0.3)
|
||||
0x020| 00 | . | preflag: 0 0x23.5-0x23.5 (0.1)
|
||||
0x020| 00 | . | scalefac_scale: 0 0x23.6-0x23.6 (0.1)
|
||||
0x020| 00 | . | count1table_select: 0 0x23.7-0x23.7 (0.1)
|
||||
0x020|83 |. | scalefac_compress: 0 0x20.2-0x20.5 (0.4)
|
||||
0x020|83 |. | blocksplit_flag: 1 0x20.6-0x20.6 (0.1)
|
||||
0x020|83 00 |.. | block_type: "3 short windows" (2) 0x20.7-0x21 (0.2)
|
||||
0x020| 00 | . | switch_point: 0 0x21.1-0x21.1 (0.1)
|
||||
0x020| 00 | . | table_select0: 0 0x21.2-0x21.6 (0.5)
|
||||
0x020| 00 00 | .. | table_select1: 0 0x21.7-0x22.3 (0.5)
|
||||
0x020| 00 | . | subblock_gain0: 0 0x22.4-0x22.6 (0.3)
|
||||
0x020| 00 00 | .. | subblock_gain1: 0 0x22.7-0x23.1 (0.3)
|
||||
0x020| 00 | . | subblock_gain2: 0 0x23.2-0x23.4 (0.3)
|
||||
0x020| 00 | . | preflag: 0 0x23.5-0x23.5 (0.1)
|
||||
0x020| 00 | . | scalefac_scale: 0 0x23.6-0x23.6 (0.1)
|
||||
0x020| 00 | . | count1table_select: 0 0x23.7-0x23.7 (0.1)
|
||||
0x020| 0a 6b 6d d8 c2 12 cd a0 0d bf 4d 03| .km.......M.| data: raw bits 0x24-0x1a0.7 (381)
|
||||
0x030|01 8d 4c 35 18 20 0c 1d db 6b 6d 7d df 7f e3 72|..L5. ...km}...r|
|
||||
* |until 0x1a0.7 (end) (381) | |
|
||||
|
@ -50,7 +50,7 @@ func fieldFlows(d *decode.D, fd *flowsdecoder.Decoder, tcpStreamFormat decode.Gr
|
||||
|
||||
d.FieldArray("tcp_connections", func(d *decode.D) {
|
||||
for _, s := range fd.TCPConnections {
|
||||
d.FieldStruct("flow", func(d *decode.D) {
|
||||
d.FieldStruct("tcp_connection", func(d *decode.D) {
|
||||
d.FieldValueStr("source_ip", s.ClientEndpoint.IP.String())
|
||||
d.FieldValueU("source_port", uint64(s.ClientEndpoint.Port), format.TCPPortMap)
|
||||
d.FieldValueStr("destination_ip", s.ServerEndpoint.IP.String())
|
||||
|
@ -1,7 +1,7 @@
|
||||
# from https://wiki.wireshark.org/Development/PcapNg
|
||||
# TODO: move once we can have decode value tests somehow
|
||||
$ fq '.[0].blocks[0]' /dhcp_little_endian.pcapng
|
||||
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.[0].blocks[0]{}:
|
||||
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.[0].blocks[0]{}: block
|
||||
0x00|0a 0d 0d 0a |.... | type: "section_header" (0xa0d0d0a) (Section Header Block)
|
||||
0x00| 1c 00 00 00 | .... | length: 28
|
||||
0x00| 4d 3c 2b 1a | M<+. | byte_order_magic: "little_endian" (0x4d3c2b1a)
|
||||
|
2
format/pcap/testdata/http_gzip.fqtest
vendored
2
format/pcap/testdata/http_gzip.fqtest
vendored
@ -608,7 +608,7 @@ $ fq -d pcap dv /http_gzip.cap
|
||||
| | | payload: raw bits 0x6ab-NA (0)
|
||||
| | | ipv4_reassembled[0:0]: 0x6ab-NA (0)
|
||||
| | | tcp_connections[0:1]: 0x6ab-NA (0)
|
||||
| | | [0]{}: flow 0x6ab-NA (0)
|
||||
| | | [0]{}: tcp_connection 0x6ab-NA (0)
|
||||
| | | source_ip: "192.168.69.2" 0x6ab-NA (0)
|
||||
| | | source_port: 34059 0x6ab-NA (0)
|
||||
| | | destination_ip: "192.168.69.1" 0x6ab-NA (0)
|
||||
|
2
format/pcap/testdata/ipv6_http.fqtest
vendored
2
format/pcap/testdata/ipv6_http.fqtest
vendored
@ -3482,7 +3482,7 @@ $ fq -d pcap dv ipv6_http.pcap
|
||||
| | | payload: raw bits 0x23c7-NA (0)
|
||||
| | | ipv4_reassembled[0:0]: 0x23c7-NA (0)
|
||||
| | | tcp_connections[0:1]: 0x23c7-NA (0)
|
||||
| | | [0]{}: flow 0x23c7-NA (0)
|
||||
| | | [0]{}: tcp_connection 0x23c7-NA (0)
|
||||
| | | source_ip: "2001:6f8:102d:0:2d0:9ff:fee3:e8de" 0x23c7-NA (0)
|
||||
| | | source_port: 59201 0x23c7-NA (0)
|
||||
| | | destination_ip: "2001:6f8:900:7c0::2" 0x23c7-NA (0)
|
||||
|
4
format/pcap/testdata/many_interfaces.fqtest
vendored
4
format/pcap/testdata/many_interfaces.fqtest
vendored
@ -5486,7 +5486,7 @@ $ fq -d pcapng dv /many_interfaces.pcapng
|
||||
0x51b0| 6c 00 00 00| | l...| | footer_length: 108 0x51b4-0x51b7.7 (4)
|
||||
| | | ipv4_reassembled[0:0]: 0x51b8-NA (0)
|
||||
| | | tcp_connections[0:2]: 0x51b8-NA (0)
|
||||
| | | [0]{}: flow 0x51b8-NA (0)
|
||||
| | | [0]{}: tcp_connection 0x51b8-NA (0)
|
||||
| | | source_ip: "192.168.1.139" 0x51b8-NA (0)
|
||||
| | | source_port: 50981 0x51b8-NA (0)
|
||||
| | | destination_ip: "74.125.228.227" 0x51b8-NA (0)
|
||||
@ -5497,7 +5497,7 @@ $ fq -d pcapng dv /many_interfaces.pcapng
|
||||
* |until 0x7b0.7 (end) (1969) | |
|
||||
0x000|16 03 03 00 5a 02 00 00 56 03 03 55 d0 e5 ff ab|....Z...V..U....| server_stream: raw bits 0x0-0x35b.7 (860)
|
||||
* |until 0x35b.7 (end) (860) | |
|
||||
| | | [1]{}: flow 0x51b8-NA (0)
|
||||
| | | [1]{}: tcp_connection 0x51b8-NA (0)
|
||||
| | | source_ip: "192.168.1.139" 0x51b8-NA (0)
|
||||
| | | source_port: 50982 0x51b8-NA (0)
|
||||
| | | destination_ip: "74.125.228.227" 0x51b8-NA (0)
|
||||
|
2
format/pcap/testdata/sll2_tcp.fqtest
vendored
2
format/pcap/testdata/sll2_tcp.fqtest
vendored
@ -334,7 +334,7 @@ $ fq -d pcap dv /sll2_tcp.pcap
|
||||
| | | payload: raw bits 0x1e5-NA (0)
|
||||
| | | ipv4_reassembled[0:0]: 0x1e5-NA (0)
|
||||
| | | tcp_connections[0:1]: 0x1e5-NA (0)
|
||||
| | | [0]{}: flow 0x1e5-NA (0)
|
||||
| | | [0]{}: tcp_connection 0x1e5-NA (0)
|
||||
| | | source_ip: "127.0.0.1" 0x1e5-NA (0)
|
||||
| | | source_port: 47174 0x1e5-NA (0)
|
||||
| | | destination_ip: "127.0.0.1" 0x1e5-NA (0)
|
||||
|
2
format/rtmp/testdata/rtmp_sample.cap.fqtest
vendored
2
format/rtmp/testdata/rtmp_sample.cap.fqtest
vendored
@ -1,6 +1,6 @@
|
||||
$ fq '.tcp_connections | dv' rtmp_sample.cap
|
||||
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.tcp_connections[0:1]: 0x2268-NA (0)
|
||||
| | | [0]{}: flow 0x2268-NA (0)
|
||||
| | | [0]{}: tcp_connection 0x2268-NA (0)
|
||||
| | | source_ip: "192.168.43.1" 0x2268-NA (0)
|
||||
| | | source_port: 1177 0x2268-NA (0)
|
||||
| | | destination_ip: "192.168.43.128" 0x2268-NA (0)
|
||||
|
@ -137,7 +137,7 @@ func dumpEx(v *decode.Value, buf []byte, cw *columnwriter.Writer, depth int, roo
|
||||
cfmt(colField, "%s", deco.Object.F("{}"))
|
||||
}
|
||||
cprint(colField, ":")
|
||||
if opts.Verbose && isInArray {
|
||||
if isInArray {
|
||||
cfmt(colField, " %s", v.Name)
|
||||
}
|
||||
if vv.Description != "" {
|
||||
|
2
pkg/interp/testdata/args.fqtest
vendored
2
pkg/interp/testdata/args.fqtest
vendored
@ -151,7 +151,7 @@ macho Mach-O macOS executable
|
||||
matroska Matroska file
|
||||
mp3 MP3 file
|
||||
mp3_frame MPEG audio layer 3 frame
|
||||
mp4 MPEG-4 file and similar
|
||||
mp4 ISOBMFF MPEG-4 part 12 and similar
|
||||
mpeg_asc MPEG-4 Audio Specific Config
|
||||
mpeg_es MPEG Elementary Stream
|
||||
mpeg_pes MPEG Packetized elementary stream
|
||||
|
4
pkg/interp/testdata/decode.fqtest
vendored
4
pkg/interp/testdata/decode.fqtest
vendored
@ -76,7 +76,7 @@ $ fq -o force=true -d png d /test.mp3
|
||||
| | | error: png: BitBufRange: failed at position 0 (read size 2315363 seek pos 0): outside buffer
|
||||
0x000|49 44 33 04 00 00 00 00 |ID3..... | signature: raw bits (invalid)
|
||||
| | | chunks[0:1]:
|
||||
| | | [0]{}:
|
||||
| | | [0]{}: chunk
|
||||
0x000| 00 23 54 53 | .#TS | length: 2315347
|
||||
0x000| 53 45 00 00| SE..| type: "SE\x00\x00"
|
||||
0x000| 53 | S | ancillary: true
|
||||
@ -92,7 +92,7 @@ $ fq -d raw 'png({force: true}) | d' /test.mp3
|
||||
| | | error: png: BitBufRange: failed at position 0 (read size 2315363 seek pos 0): outside buffer
|
||||
0x000|49 44 33 04 00 00 00 00 |ID3..... | signature: raw bits (invalid)
|
||||
| | | chunks[0:1]:
|
||||
| | | [0]{}:
|
||||
| | | [0]{}: chunk
|
||||
0x000| 00 23 54 53 | .#TS | length: 2315347
|
||||
0x000| 53 45 00 00| SE..| type: "SE\x00\x00"
|
||||
0x000| 53 | S | ancillary: true
|
||||
|
8
pkg/interp/testdata/display.fqtest
vendored
8
pkg/interp/testdata/display.fqtest
vendored
@ -11,16 +11,16 @@ mp3> display({depth: 1})
|
||||
mp3> display({depth: 2})
|
||||
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: /test.mp3 (mp3)
|
||||
| | | headers[0:1]:
|
||||
0x000|49 44 33 04 00 00 00 00 00 23 54 53 53 45 00 00|ID3......#TSSE..| [0]{}: (id3v2)
|
||||
0x000|49 44 33 04 00 00 00 00 00 23 54 53 53 45 00 00|ID3......#TSSE..| [0]{}: header (id3v2)
|
||||
* |until 0x2c.7 (45) | |
|
||||
| | | frames[0:3]:
|
||||
0x020| ff fb 40| ..@| [0]{}: (mp3_frame)
|
||||
0x020| ff fb 40| ..@| [0]{}: frame (mp3_frame)
|
||||
0x030|c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................|
|
||||
* |until 0xe2.7 (182) | |
|
||||
0x0e0| ff fb 50 c4 00 00 0a 2c 43 2e 55 94 80| ..P....,C.U..| [1]{}: (mp3_frame)
|
||||
0x0e0| ff fb 50 c4 00 00 0a 2c 43 2e 55 94 80| ..P....,C.U..| [1]{}: frame (mp3_frame)
|
||||
0x0f0|01 80 93 6b 27 30 80 00 07 aa c3 8e 33 85 d3 64|...k'0......3..d|
|
||||
* |until 0x1b2.7 (208) | |
|
||||
0x1b0| ff fb 52 c4 04 83 c9 14 39 29 3c c3 00| ..R.....9)<..| [2]{}: (mp3_frame)
|
||||
0x1b0| ff fb 52 c4 04 83 c9 14 39 29 3c c3 00| ..R.....9)<..| [2]{}: frame (mp3_frame)
|
||||
0x1c0|00 00 00 34 80 00 00 04 11 4b 36 4a 08 83 58 c9|...4.....K6J..X.|
|
||||
* |until 0x283.7 (end) (209) | |
|
||||
| | | footers[0:0]:
|
||||
|
2
pkg/interp/testdata/grep.fqtest
vendored
2
pkg/interp/testdata/grep.fqtest
vendored
@ -64,7 +64,7 @@ mp3> grep_by(. == 44100)
|
||||
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|
|
||||
0x1b0| 52 | R |.frames[2].header.sample_rate: 44100 (0)
|
||||
mp3> grep_by(format == "id3v2")
|
||||
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.headers[0]{}: (id3v2)
|
||||
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.headers[0]{}: header (id3v2)
|
||||
0x00|49 44 33 |ID3 | magic: "ID3" (valid)
|
||||
0x00| 04 | . | version: 4
|
||||
0x00| 00 | . | revision: 0
|
||||
|
2
pkg/interp/testdata/slurp.fqtest
vendored
2
pkg/interp/testdata/slurp.fqtest
vendored
@ -88,7 +88,7 @@ null> ^D
|
||||
$ fq -d mp3 -i . /test.mp3
|
||||
mp3> .frames[0] | slurp("f")
|
||||
mp3> $f[]
|
||||
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.frames[0]{}: (mp3_frame)
|
||||
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.frames[0]{}: frame (mp3_frame)
|
||||
0x20| ff fb 40| ..@| header{}:
|
||||
0x30|c0 |. |
|
||||
0x30| 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00| ...............| side_info{}:
|
||||
|
2
pkg/interp/testdata/value.fqtest
vendored
2
pkg/interp/testdata/value.fqtest
vendored
@ -22,7 +22,7 @@ $ fq -d mp3 '.headers[0][]' /test.mp3
|
||||
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|
|
||||
0x0| 00 00 00 23 | ...# |.headers[0].size: 35
|
||||
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.headers[0].frames[0:1]:
|
||||
0x00| 54 53 53 45 00 00| TSSE..| [0]{}:
|
||||
0x00| 54 53 53 45 00 00| TSSE..| [0]{}: frame
|
||||
0x10|00 0f 00 00 03 4c 61 76 66 35 38 2e 34 35 2e 31|.....Lavf58.45.1|
|
||||
0x20|30 30 00 |00. |
|
||||
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|
|
||||
|
460
pkg/interp/testdata/value_array.fqtest
vendored
460
pkg/interp/testdata/value_array.fqtest
vendored
@ -1,7 +1,7 @@
|
||||
$ fq -i -d mp3 . /test.mp3
|
||||
mp3> .headers | ., tovalue, type, length?
|
||||
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.headers[0:1]:
|
||||
0x00|49 44 33 04 00 00 00 00 00 23 54 53 53 45 00 00|ID3......#TSSE..| [0]{}: (id3v2)
|
||||
0x00|49 44 33 04 00 00 00 00 00 23 54 53 53 45 00 00|ID3......#TSSE..| [0]{}: header (id3v2)
|
||||
* |until 0x2c.7 (45) | |
|
||||
[
|
||||
{
|
||||
@ -42,7 +42,7 @@ mp3> .headers | ., tovalue, type, length?
|
||||
"array"
|
||||
1
|
||||
mp3> .headers[0] | ., type, length?
|
||||
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.headers[0]{}: (id3v2)
|
||||
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.headers[0]{}: header (id3v2)
|
||||
0x00|49 44 33 |ID3 | magic: "ID3" (valid)
|
||||
0x00| 04 | . | version: 4
|
||||
0x00| 00 | . | revision: 0
|
||||
@ -210,44 +210,40 @@ mp3> .headers[0] = 1
|
||||
"padding": "<5>AAAAAAA=",
|
||||
"side_info": {
|
||||
"granules": [
|
||||
{
|
||||
"channels": [
|
||||
{
|
||||
"big_values": 0,
|
||||
"blocksplit_flag": 0,
|
||||
"count1table_select": 0,
|
||||
"global_gain": 0,
|
||||
"part2_3_length": 0,
|
||||
"preflag": 0,
|
||||
"region_address1": 0,
|
||||
"region_address2": 0,
|
||||
"scalefac_compress": 0,
|
||||
"scalefac_scale": 0,
|
||||
"table_select0": 0,
|
||||
"table_select1": 0,
|
||||
"table_select2": 0
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"channels": [
|
||||
{
|
||||
"big_values": 0,
|
||||
"blocksplit_flag": 0,
|
||||
"count1table_select": 0,
|
||||
"global_gain": 0,
|
||||
"part2_3_length": 0,
|
||||
"preflag": 0,
|
||||
"region_address1": 0,
|
||||
"region_address2": 0,
|
||||
"scalefac_compress": 0,
|
||||
"scalefac_scale": 0,
|
||||
"table_select0": 0,
|
||||
"table_select1": 0,
|
||||
"table_select2": 0
|
||||
}
|
||||
]
|
||||
}
|
||||
[
|
||||
{
|
||||
"big_values": 0,
|
||||
"blocksplit_flag": 0,
|
||||
"count1table_select": 0,
|
||||
"global_gain": 0,
|
||||
"part2_3_length": 0,
|
||||
"preflag": 0,
|
||||
"region_address1": 0,
|
||||
"region_address2": 0,
|
||||
"scalefac_compress": 0,
|
||||
"scalefac_scale": 0,
|
||||
"table_select0": 0,
|
||||
"table_select1": 0,
|
||||
"table_select2": 0
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"big_values": 0,
|
||||
"blocksplit_flag": 0,
|
||||
"count1table_select": 0,
|
||||
"global_gain": 0,
|
||||
"part2_3_length": 0,
|
||||
"preflag": 0,
|
||||
"region_address1": 0,
|
||||
"region_address2": 0,
|
||||
"scalefac_compress": 0,
|
||||
"scalefac_scale": 0,
|
||||
"table_select0": 0,
|
||||
"table_select1": 0,
|
||||
"table_select2": 0
|
||||
}
|
||||
]
|
||||
],
|
||||
"main_data_end": 0,
|
||||
"private_bits": 0,
|
||||
@ -411,48 +407,44 @@ mp3> .headers[0] = 1
|
||||
"other_data": "<0>",
|
||||
"side_info": {
|
||||
"granules": [
|
||||
{
|
||||
"channels": [
|
||||
{
|
||||
"big_values": 33,
|
||||
"block_type": "start block",
|
||||
"blocksplit_flag": 1,
|
||||
"count1table_select": 0,
|
||||
"global_gain": 151,
|
||||
"part2_3_length": 651,
|
||||
"preflag": 0,
|
||||
"scalefac_compress": 2,
|
||||
"scalefac_scale": 0,
|
||||
"subblock_gain0": 0,
|
||||
"subblock_gain1": 0,
|
||||
"subblock_gain2": 0,
|
||||
"switch_point": 0,
|
||||
"table_select0": 25,
|
||||
"table_select1": 9
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"channels": [
|
||||
{
|
||||
"big_values": 77,
|
||||
"block_type": "3 short windows",
|
||||
"blocksplit_flag": 1,
|
||||
"count1table_select": 0,
|
||||
"global_gain": 172,
|
||||
"part2_3_length": 769,
|
||||
"preflag": 0,
|
||||
"scalefac_compress": 9,
|
||||
"scalefac_scale": 0,
|
||||
"subblock_gain0": 0,
|
||||
"subblock_gain1": 0,
|
||||
"subblock_gain2": 0,
|
||||
"switch_point": 0,
|
||||
"table_select0": 24,
|
||||
"table_select1": 8
|
||||
}
|
||||
]
|
||||
}
|
||||
[
|
||||
{
|
||||
"big_values": 33,
|
||||
"block_type": "start block",
|
||||
"blocksplit_flag": 1,
|
||||
"count1table_select": 0,
|
||||
"global_gain": 151,
|
||||
"part2_3_length": 651,
|
||||
"preflag": 0,
|
||||
"scalefac_compress": 2,
|
||||
"scalefac_scale": 0,
|
||||
"subblock_gain0": 0,
|
||||
"subblock_gain1": 0,
|
||||
"subblock_gain2": 0,
|
||||
"switch_point": 0,
|
||||
"table_select0": 25,
|
||||
"table_select1": 9
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"big_values": 77,
|
||||
"block_type": "3 short windows",
|
||||
"blocksplit_flag": 1,
|
||||
"count1table_select": 0,
|
||||
"global_gain": 172,
|
||||
"part2_3_length": 769,
|
||||
"preflag": 0,
|
||||
"scalefac_compress": 9,
|
||||
"scalefac_scale": 0,
|
||||
"subblock_gain0": 0,
|
||||
"subblock_gain1": 0,
|
||||
"subblock_gain2": 0,
|
||||
"switch_point": 0,
|
||||
"table_select0": 24,
|
||||
"table_select1": 8
|
||||
}
|
||||
]
|
||||
],
|
||||
"main_data_end": 0,
|
||||
"private_bits": 0,
|
||||
@ -482,46 +474,42 @@ mp3> .headers[0] = 1
|
||||
"padding_byte": "<1>qg==",
|
||||
"side_info": {
|
||||
"granules": [
|
||||
{
|
||||
"channels": [
|
||||
{
|
||||
"big_values": 28,
|
||||
"block_type": "end",
|
||||
"blocksplit_flag": 1,
|
||||
"count1table_select": 0,
|
||||
"global_gain": 148,
|
||||
"part2_3_length": 581,
|
||||
"preflag": 0,
|
||||
"scalefac_compress": 9,
|
||||
"scalefac_scale": 0,
|
||||
"subblock_gain0": 0,
|
||||
"subblock_gain1": 0,
|
||||
"subblock_gain2": 0,
|
||||
"switch_point": 0,
|
||||
"table_select0": 12,
|
||||
"table_select1": 6
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"channels": [
|
||||
{
|
||||
"big_values": 0,
|
||||
"blocksplit_flag": 0,
|
||||
"count1table_select": 0,
|
||||
"global_gain": 210,
|
||||
"part2_3_length": 0,
|
||||
"preflag": 1,
|
||||
"region_address1": 0,
|
||||
"region_address2": 0,
|
||||
"scalefac_compress": 0,
|
||||
"scalefac_scale": 0,
|
||||
"table_select0": 0,
|
||||
"table_select1": 0,
|
||||
"table_select2": 0
|
||||
}
|
||||
]
|
||||
}
|
||||
[
|
||||
{
|
||||
"big_values": 28,
|
||||
"block_type": "end",
|
||||
"blocksplit_flag": 1,
|
||||
"count1table_select": 0,
|
||||
"global_gain": 148,
|
||||
"part2_3_length": 581,
|
||||
"preflag": 0,
|
||||
"scalefac_compress": 9,
|
||||
"scalefac_scale": 0,
|
||||
"subblock_gain0": 0,
|
||||
"subblock_gain1": 0,
|
||||
"subblock_gain2": 0,
|
||||
"switch_point": 0,
|
||||
"table_select0": 12,
|
||||
"table_select1": 6
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"big_values": 0,
|
||||
"blocksplit_flag": 0,
|
||||
"count1table_select": 0,
|
||||
"global_gain": 210,
|
||||
"part2_3_length": 0,
|
||||
"preflag": 1,
|
||||
"region_address1": 0,
|
||||
"region_address2": 0,
|
||||
"scalefac_compress": 0,
|
||||
"scalefac_scale": 0,
|
||||
"table_select0": 0,
|
||||
"table_select1": 0,
|
||||
"table_select2": 0
|
||||
}
|
||||
]
|
||||
],
|
||||
"main_data_end": 9,
|
||||
"private_bits": 0,
|
||||
@ -560,44 +548,40 @@ mp3> .headers[0] |= empty
|
||||
"padding": "<5>AAAAAAA=",
|
||||
"side_info": {
|
||||
"granules": [
|
||||
{
|
||||
"channels": [
|
||||
{
|
||||
"big_values": 0,
|
||||
"blocksplit_flag": 0,
|
||||
"count1table_select": 0,
|
||||
"global_gain": 0,
|
||||
"part2_3_length": 0,
|
||||
"preflag": 0,
|
||||
"region_address1": 0,
|
||||
"region_address2": 0,
|
||||
"scalefac_compress": 0,
|
||||
"scalefac_scale": 0,
|
||||
"table_select0": 0,
|
||||
"table_select1": 0,
|
||||
"table_select2": 0
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"channels": [
|
||||
{
|
||||
"big_values": 0,
|
||||
"blocksplit_flag": 0,
|
||||
"count1table_select": 0,
|
||||
"global_gain": 0,
|
||||
"part2_3_length": 0,
|
||||
"preflag": 0,
|
||||
"region_address1": 0,
|
||||
"region_address2": 0,
|
||||
"scalefac_compress": 0,
|
||||
"scalefac_scale": 0,
|
||||
"table_select0": 0,
|
||||
"table_select1": 0,
|
||||
"table_select2": 0
|
||||
}
|
||||
]
|
||||
}
|
||||
[
|
||||
{
|
||||
"big_values": 0,
|
||||
"blocksplit_flag": 0,
|
||||
"count1table_select": 0,
|
||||
"global_gain": 0,
|
||||
"part2_3_length": 0,
|
||||
"preflag": 0,
|
||||
"region_address1": 0,
|
||||
"region_address2": 0,
|
||||
"scalefac_compress": 0,
|
||||
"scalefac_scale": 0,
|
||||
"table_select0": 0,
|
||||
"table_select1": 0,
|
||||
"table_select2": 0
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"big_values": 0,
|
||||
"blocksplit_flag": 0,
|
||||
"count1table_select": 0,
|
||||
"global_gain": 0,
|
||||
"part2_3_length": 0,
|
||||
"preflag": 0,
|
||||
"region_address1": 0,
|
||||
"region_address2": 0,
|
||||
"scalefac_compress": 0,
|
||||
"scalefac_scale": 0,
|
||||
"table_select0": 0,
|
||||
"table_select1": 0,
|
||||
"table_select2": 0
|
||||
}
|
||||
]
|
||||
],
|
||||
"main_data_end": 0,
|
||||
"private_bits": 0,
|
||||
@ -761,48 +745,44 @@ mp3> .headers[0] |= empty
|
||||
"other_data": "<0>",
|
||||
"side_info": {
|
||||
"granules": [
|
||||
{
|
||||
"channels": [
|
||||
{
|
||||
"big_values": 33,
|
||||
"block_type": "start block",
|
||||
"blocksplit_flag": 1,
|
||||
"count1table_select": 0,
|
||||
"global_gain": 151,
|
||||
"part2_3_length": 651,
|
||||
"preflag": 0,
|
||||
"scalefac_compress": 2,
|
||||
"scalefac_scale": 0,
|
||||
"subblock_gain0": 0,
|
||||
"subblock_gain1": 0,
|
||||
"subblock_gain2": 0,
|
||||
"switch_point": 0,
|
||||
"table_select0": 25,
|
||||
"table_select1": 9
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"channels": [
|
||||
{
|
||||
"big_values": 77,
|
||||
"block_type": "3 short windows",
|
||||
"blocksplit_flag": 1,
|
||||
"count1table_select": 0,
|
||||
"global_gain": 172,
|
||||
"part2_3_length": 769,
|
||||
"preflag": 0,
|
||||
"scalefac_compress": 9,
|
||||
"scalefac_scale": 0,
|
||||
"subblock_gain0": 0,
|
||||
"subblock_gain1": 0,
|
||||
"subblock_gain2": 0,
|
||||
"switch_point": 0,
|
||||
"table_select0": 24,
|
||||
"table_select1": 8
|
||||
}
|
||||
]
|
||||
}
|
||||
[
|
||||
{
|
||||
"big_values": 33,
|
||||
"block_type": "start block",
|
||||
"blocksplit_flag": 1,
|
||||
"count1table_select": 0,
|
||||
"global_gain": 151,
|
||||
"part2_3_length": 651,
|
||||
"preflag": 0,
|
||||
"scalefac_compress": 2,
|
||||
"scalefac_scale": 0,
|
||||
"subblock_gain0": 0,
|
||||
"subblock_gain1": 0,
|
||||
"subblock_gain2": 0,
|
||||
"switch_point": 0,
|
||||
"table_select0": 25,
|
||||
"table_select1": 9
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"big_values": 77,
|
||||
"block_type": "3 short windows",
|
||||
"blocksplit_flag": 1,
|
||||
"count1table_select": 0,
|
||||
"global_gain": 172,
|
||||
"part2_3_length": 769,
|
||||
"preflag": 0,
|
||||
"scalefac_compress": 9,
|
||||
"scalefac_scale": 0,
|
||||
"subblock_gain0": 0,
|
||||
"subblock_gain1": 0,
|
||||
"subblock_gain2": 0,
|
||||
"switch_point": 0,
|
||||
"table_select0": 24,
|
||||
"table_select1": 8
|
||||
}
|
||||
]
|
||||
],
|
||||
"main_data_end": 0,
|
||||
"private_bits": 0,
|
||||
@ -832,46 +812,42 @@ mp3> .headers[0] |= empty
|
||||
"padding_byte": "<1>qg==",
|
||||
"side_info": {
|
||||
"granules": [
|
||||
{
|
||||
"channels": [
|
||||
{
|
||||
"big_values": 28,
|
||||
"block_type": "end",
|
||||
"blocksplit_flag": 1,
|
||||
"count1table_select": 0,
|
||||
"global_gain": 148,
|
||||
"part2_3_length": 581,
|
||||
"preflag": 0,
|
||||
"scalefac_compress": 9,
|
||||
"scalefac_scale": 0,
|
||||
"subblock_gain0": 0,
|
||||
"subblock_gain1": 0,
|
||||
"subblock_gain2": 0,
|
||||
"switch_point": 0,
|
||||
"table_select0": 12,
|
||||
"table_select1": 6
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"channels": [
|
||||
{
|
||||
"big_values": 0,
|
||||
"blocksplit_flag": 0,
|
||||
"count1table_select": 0,
|
||||
"global_gain": 210,
|
||||
"part2_3_length": 0,
|
||||
"preflag": 1,
|
||||
"region_address1": 0,
|
||||
"region_address2": 0,
|
||||
"scalefac_compress": 0,
|
||||
"scalefac_scale": 0,
|
||||
"table_select0": 0,
|
||||
"table_select1": 0,
|
||||
"table_select2": 0
|
||||
}
|
||||
]
|
||||
}
|
||||
[
|
||||
{
|
||||
"big_values": 28,
|
||||
"block_type": "end",
|
||||
"blocksplit_flag": 1,
|
||||
"count1table_select": 0,
|
||||
"global_gain": 148,
|
||||
"part2_3_length": 581,
|
||||
"preflag": 0,
|
||||
"scalefac_compress": 9,
|
||||
"scalefac_scale": 0,
|
||||
"subblock_gain0": 0,
|
||||
"subblock_gain1": 0,
|
||||
"subblock_gain2": 0,
|
||||
"switch_point": 0,
|
||||
"table_select0": 12,
|
||||
"table_select1": 6
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"big_values": 0,
|
||||
"blocksplit_flag": 0,
|
||||
"count1table_select": 0,
|
||||
"global_gain": 210,
|
||||
"part2_3_length": 0,
|
||||
"preflag": 1,
|
||||
"region_address1": 0,
|
||||
"region_address2": 0,
|
||||
"scalefac_compress": 0,
|
||||
"scalefac_scale": 0,
|
||||
"table_select0": 0,
|
||||
"table_select1": 0,
|
||||
"table_select2": 0
|
||||
}
|
||||
]
|
||||
],
|
||||
"main_data_end": 9,
|
||||
"private_bits": 0,
|
||||
|
456
pkg/interp/testdata/value_object.fqtest
vendored
456
pkg/interp/testdata/value_object.fqtest
vendored
@ -129,44 +129,40 @@ mp3> .headers[0].flags.a = 1
|
||||
"padding": "<5>AAAAAAA=",
|
||||
"side_info": {
|
||||
"granules": [
|
||||
{
|
||||
"channels": [
|
||||
{
|
||||
"big_values": 0,
|
||||
"blocksplit_flag": 0,
|
||||
"count1table_select": 0,
|
||||
"global_gain": 0,
|
||||
"part2_3_length": 0,
|
||||
"preflag": 0,
|
||||
"region_address1": 0,
|
||||
"region_address2": 0,
|
||||
"scalefac_compress": 0,
|
||||
"scalefac_scale": 0,
|
||||
"table_select0": 0,
|
||||
"table_select1": 0,
|
||||
"table_select2": 0
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"channels": [
|
||||
{
|
||||
"big_values": 0,
|
||||
"blocksplit_flag": 0,
|
||||
"count1table_select": 0,
|
||||
"global_gain": 0,
|
||||
"part2_3_length": 0,
|
||||
"preflag": 0,
|
||||
"region_address1": 0,
|
||||
"region_address2": 0,
|
||||
"scalefac_compress": 0,
|
||||
"scalefac_scale": 0,
|
||||
"table_select0": 0,
|
||||
"table_select1": 0,
|
||||
"table_select2": 0
|
||||
}
|
||||
]
|
||||
}
|
||||
[
|
||||
{
|
||||
"big_values": 0,
|
||||
"blocksplit_flag": 0,
|
||||
"count1table_select": 0,
|
||||
"global_gain": 0,
|
||||
"part2_3_length": 0,
|
||||
"preflag": 0,
|
||||
"region_address1": 0,
|
||||
"region_address2": 0,
|
||||
"scalefac_compress": 0,
|
||||
"scalefac_scale": 0,
|
||||
"table_select0": 0,
|
||||
"table_select1": 0,
|
||||
"table_select2": 0
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"big_values": 0,
|
||||
"blocksplit_flag": 0,
|
||||
"count1table_select": 0,
|
||||
"global_gain": 0,
|
||||
"part2_3_length": 0,
|
||||
"preflag": 0,
|
||||
"region_address1": 0,
|
||||
"region_address2": 0,
|
||||
"scalefac_compress": 0,
|
||||
"scalefac_scale": 0,
|
||||
"table_select0": 0,
|
||||
"table_select1": 0,
|
||||
"table_select2": 0
|
||||
}
|
||||
]
|
||||
],
|
||||
"main_data_end": 0,
|
||||
"private_bits": 0,
|
||||
@ -330,48 +326,44 @@ mp3> .headers[0].flags.a = 1
|
||||
"other_data": "<0>",
|
||||
"side_info": {
|
||||
"granules": [
|
||||
{
|
||||
"channels": [
|
||||
{
|
||||
"big_values": 33,
|
||||
"block_type": "start block",
|
||||
"blocksplit_flag": 1,
|
||||
"count1table_select": 0,
|
||||
"global_gain": 151,
|
||||
"part2_3_length": 651,
|
||||
"preflag": 0,
|
||||
"scalefac_compress": 2,
|
||||
"scalefac_scale": 0,
|
||||
"subblock_gain0": 0,
|
||||
"subblock_gain1": 0,
|
||||
"subblock_gain2": 0,
|
||||
"switch_point": 0,
|
||||
"table_select0": 25,
|
||||
"table_select1": 9
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"channels": [
|
||||
{
|
||||
"big_values": 77,
|
||||
"block_type": "3 short windows",
|
||||
"blocksplit_flag": 1,
|
||||
"count1table_select": 0,
|
||||
"global_gain": 172,
|
||||
"part2_3_length": 769,
|
||||
"preflag": 0,
|
||||
"scalefac_compress": 9,
|
||||
"scalefac_scale": 0,
|
||||
"subblock_gain0": 0,
|
||||
"subblock_gain1": 0,
|
||||
"subblock_gain2": 0,
|
||||
"switch_point": 0,
|
||||
"table_select0": 24,
|
||||
"table_select1": 8
|
||||
}
|
||||
]
|
||||
}
|
||||
[
|
||||
{
|
||||
"big_values": 33,
|
||||
"block_type": "start block",
|
||||
"blocksplit_flag": 1,
|
||||
"count1table_select": 0,
|
||||
"global_gain": 151,
|
||||
"part2_3_length": 651,
|
||||
"preflag": 0,
|
||||
"scalefac_compress": 2,
|
||||
"scalefac_scale": 0,
|
||||
"subblock_gain0": 0,
|
||||
"subblock_gain1": 0,
|
||||
"subblock_gain2": 0,
|
||||
"switch_point": 0,
|
||||
"table_select0": 25,
|
||||
"table_select1": 9
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"big_values": 77,
|
||||
"block_type": "3 short windows",
|
||||
"blocksplit_flag": 1,
|
||||
"count1table_select": 0,
|
||||
"global_gain": 172,
|
||||
"part2_3_length": 769,
|
||||
"preflag": 0,
|
||||
"scalefac_compress": 9,
|
||||
"scalefac_scale": 0,
|
||||
"subblock_gain0": 0,
|
||||
"subblock_gain1": 0,
|
||||
"subblock_gain2": 0,
|
||||
"switch_point": 0,
|
||||
"table_select0": 24,
|
||||
"table_select1": 8
|
||||
}
|
||||
]
|
||||
],
|
||||
"main_data_end": 0,
|
||||
"private_bits": 0,
|
||||
@ -401,46 +393,42 @@ mp3> .headers[0].flags.a = 1
|
||||
"padding_byte": "<1>qg==",
|
||||
"side_info": {
|
||||
"granules": [
|
||||
{
|
||||
"channels": [
|
||||
{
|
||||
"big_values": 28,
|
||||
"block_type": "end",
|
||||
"blocksplit_flag": 1,
|
||||
"count1table_select": 0,
|
||||
"global_gain": 148,
|
||||
"part2_3_length": 581,
|
||||
"preflag": 0,
|
||||
"scalefac_compress": 9,
|
||||
"scalefac_scale": 0,
|
||||
"subblock_gain0": 0,
|
||||
"subblock_gain1": 0,
|
||||
"subblock_gain2": 0,
|
||||
"switch_point": 0,
|
||||
"table_select0": 12,
|
||||
"table_select1": 6
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"channels": [
|
||||
{
|
||||
"big_values": 0,
|
||||
"blocksplit_flag": 0,
|
||||
"count1table_select": 0,
|
||||
"global_gain": 210,
|
||||
"part2_3_length": 0,
|
||||
"preflag": 1,
|
||||
"region_address1": 0,
|
||||
"region_address2": 0,
|
||||
"scalefac_compress": 0,
|
||||
"scalefac_scale": 0,
|
||||
"table_select0": 0,
|
||||
"table_select1": 0,
|
||||
"table_select2": 0
|
||||
}
|
||||
]
|
||||
}
|
||||
[
|
||||
{
|
||||
"big_values": 28,
|
||||
"block_type": "end",
|
||||
"blocksplit_flag": 1,
|
||||
"count1table_select": 0,
|
||||
"global_gain": 148,
|
||||
"part2_3_length": 581,
|
||||
"preflag": 0,
|
||||
"scalefac_compress": 9,
|
||||
"scalefac_scale": 0,
|
||||
"subblock_gain0": 0,
|
||||
"subblock_gain1": 0,
|
||||
"subblock_gain2": 0,
|
||||
"switch_point": 0,
|
||||
"table_select0": 12,
|
||||
"table_select1": 6
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"big_values": 0,
|
||||
"blocksplit_flag": 0,
|
||||
"count1table_select": 0,
|
||||
"global_gain": 210,
|
||||
"part2_3_length": 0,
|
||||
"preflag": 1,
|
||||
"region_address1": 0,
|
||||
"region_address2": 0,
|
||||
"scalefac_compress": 0,
|
||||
"scalefac_scale": 0,
|
||||
"table_select0": 0,
|
||||
"table_select1": 0,
|
||||
"table_select2": 0
|
||||
}
|
||||
]
|
||||
],
|
||||
"main_data_end": 9,
|
||||
"private_bits": 0,
|
||||
@ -513,44 +501,40 @@ mp3> .headers[0].flags.a |= empty
|
||||
"padding": "<5>AAAAAAA=",
|
||||
"side_info": {
|
||||
"granules": [
|
||||
{
|
||||
"channels": [
|
||||
{
|
||||
"big_values": 0,
|
||||
"blocksplit_flag": 0,
|
||||
"count1table_select": 0,
|
||||
"global_gain": 0,
|
||||
"part2_3_length": 0,
|
||||
"preflag": 0,
|
||||
"region_address1": 0,
|
||||
"region_address2": 0,
|
||||
"scalefac_compress": 0,
|
||||
"scalefac_scale": 0,
|
||||
"table_select0": 0,
|
||||
"table_select1": 0,
|
||||
"table_select2": 0
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"channels": [
|
||||
{
|
||||
"big_values": 0,
|
||||
"blocksplit_flag": 0,
|
||||
"count1table_select": 0,
|
||||
"global_gain": 0,
|
||||
"part2_3_length": 0,
|
||||
"preflag": 0,
|
||||
"region_address1": 0,
|
||||
"region_address2": 0,
|
||||
"scalefac_compress": 0,
|
||||
"scalefac_scale": 0,
|
||||
"table_select0": 0,
|
||||
"table_select1": 0,
|
||||
"table_select2": 0
|
||||
}
|
||||
]
|
||||
}
|
||||
[
|
||||
{
|
||||
"big_values": 0,
|
||||
"blocksplit_flag": 0,
|
||||
"count1table_select": 0,
|
||||
"global_gain": 0,
|
||||
"part2_3_length": 0,
|
||||
"preflag": 0,
|
||||
"region_address1": 0,
|
||||
"region_address2": 0,
|
||||
"scalefac_compress": 0,
|
||||
"scalefac_scale": 0,
|
||||
"table_select0": 0,
|
||||
"table_select1": 0,
|
||||
"table_select2": 0
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"big_values": 0,
|
||||
"blocksplit_flag": 0,
|
||||
"count1table_select": 0,
|
||||
"global_gain": 0,
|
||||
"part2_3_length": 0,
|
||||
"preflag": 0,
|
||||
"region_address1": 0,
|
||||
"region_address2": 0,
|
||||
"scalefac_compress": 0,
|
||||
"scalefac_scale": 0,
|
||||
"table_select0": 0,
|
||||
"table_select1": 0,
|
||||
"table_select2": 0
|
||||
}
|
||||
]
|
||||
],
|
||||
"main_data_end": 0,
|
||||
"private_bits": 0,
|
||||
@ -714,48 +698,44 @@ mp3> .headers[0].flags.a |= empty
|
||||
"other_data": "<0>",
|
||||
"side_info": {
|
||||
"granules": [
|
||||
{
|
||||
"channels": [
|
||||
{
|
||||
"big_values": 33,
|
||||
"block_type": "start block",
|
||||
"blocksplit_flag": 1,
|
||||
"count1table_select": 0,
|
||||
"global_gain": 151,
|
||||
"part2_3_length": 651,
|
||||
"preflag": 0,
|
||||
"scalefac_compress": 2,
|
||||
"scalefac_scale": 0,
|
||||
"subblock_gain0": 0,
|
||||
"subblock_gain1": 0,
|
||||
"subblock_gain2": 0,
|
||||
"switch_point": 0,
|
||||
"table_select0": 25,
|
||||
"table_select1": 9
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"channels": [
|
||||
{
|
||||
"big_values": 77,
|
||||
"block_type": "3 short windows",
|
||||
"blocksplit_flag": 1,
|
||||
"count1table_select": 0,
|
||||
"global_gain": 172,
|
||||
"part2_3_length": 769,
|
||||
"preflag": 0,
|
||||
"scalefac_compress": 9,
|
||||
"scalefac_scale": 0,
|
||||
"subblock_gain0": 0,
|
||||
"subblock_gain1": 0,
|
||||
"subblock_gain2": 0,
|
||||
"switch_point": 0,
|
||||
"table_select0": 24,
|
||||
"table_select1": 8
|
||||
}
|
||||
]
|
||||
}
|
||||
[
|
||||
{
|
||||
"big_values": 33,
|
||||
"block_type": "start block",
|
||||
"blocksplit_flag": 1,
|
||||
"count1table_select": 0,
|
||||
"global_gain": 151,
|
||||
"part2_3_length": 651,
|
||||
"preflag": 0,
|
||||
"scalefac_compress": 2,
|
||||
"scalefac_scale": 0,
|
||||
"subblock_gain0": 0,
|
||||
"subblock_gain1": 0,
|
||||
"subblock_gain2": 0,
|
||||
"switch_point": 0,
|
||||
"table_select0": 25,
|
||||
"table_select1": 9
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"big_values": 77,
|
||||
"block_type": "3 short windows",
|
||||
"blocksplit_flag": 1,
|
||||
"count1table_select": 0,
|
||||
"global_gain": 172,
|
||||
"part2_3_length": 769,
|
||||
"preflag": 0,
|
||||
"scalefac_compress": 9,
|
||||
"scalefac_scale": 0,
|
||||
"subblock_gain0": 0,
|
||||
"subblock_gain1": 0,
|
||||
"subblock_gain2": 0,
|
||||
"switch_point": 0,
|
||||
"table_select0": 24,
|
||||
"table_select1": 8
|
||||
}
|
||||
]
|
||||
],
|
||||
"main_data_end": 0,
|
||||
"private_bits": 0,
|
||||
@ -785,46 +765,42 @@ mp3> .headers[0].flags.a |= empty
|
||||
"padding_byte": "<1>qg==",
|
||||
"side_info": {
|
||||
"granules": [
|
||||
{
|
||||
"channels": [
|
||||
{
|
||||
"big_values": 28,
|
||||
"block_type": "end",
|
||||
"blocksplit_flag": 1,
|
||||
"count1table_select": 0,
|
||||
"global_gain": 148,
|
||||
"part2_3_length": 581,
|
||||
"preflag": 0,
|
||||
"scalefac_compress": 9,
|
||||
"scalefac_scale": 0,
|
||||
"subblock_gain0": 0,
|
||||
"subblock_gain1": 0,
|
||||
"subblock_gain2": 0,
|
||||
"switch_point": 0,
|
||||
"table_select0": 12,
|
||||
"table_select1": 6
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"channels": [
|
||||
{
|
||||
"big_values": 0,
|
||||
"blocksplit_flag": 0,
|
||||
"count1table_select": 0,
|
||||
"global_gain": 210,
|
||||
"part2_3_length": 0,
|
||||
"preflag": 1,
|
||||
"region_address1": 0,
|
||||
"region_address2": 0,
|
||||
"scalefac_compress": 0,
|
||||
"scalefac_scale": 0,
|
||||
"table_select0": 0,
|
||||
"table_select1": 0,
|
||||
"table_select2": 0
|
||||
}
|
||||
]
|
||||
}
|
||||
[
|
||||
{
|
||||
"big_values": 28,
|
||||
"block_type": "end",
|
||||
"blocksplit_flag": 1,
|
||||
"count1table_select": 0,
|
||||
"global_gain": 148,
|
||||
"part2_3_length": 581,
|
||||
"preflag": 0,
|
||||
"scalefac_compress": 9,
|
||||
"scalefac_scale": 0,
|
||||
"subblock_gain0": 0,
|
||||
"subblock_gain1": 0,
|
||||
"subblock_gain2": 0,
|
||||
"switch_point": 0,
|
||||
"table_select0": 12,
|
||||
"table_select1": 6
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"big_values": 0,
|
||||
"blocksplit_flag": 0,
|
||||
"count1table_select": 0,
|
||||
"global_gain": 210,
|
||||
"part2_3_length": 0,
|
||||
"preflag": 1,
|
||||
"region_address1": 0,
|
||||
"region_address2": 0,
|
||||
"scalefac_compress": 0,
|
||||
"scalefac_scale": 0,
|
||||
"table_select0": 0,
|
||||
"table_select1": 0,
|
||||
"table_select2": 0
|
||||
}
|
||||
]
|
||||
],
|
||||
"main_data_end": 9,
|
||||
"private_bits": 0,
|
||||
|
Loading…
Reference in New Issue
Block a user