mirror of
https://github.com/wader/fq.git
synced 2024-12-18 10:52:44 +03:00
100 lines
11 KiB
Plaintext
100 lines
11 KiB
Plaintext
# ffmpeg -y -f lavfi -i sine -ac 2 -t 10ms -f mp3 file && fq file '.frame[1] | tobits' > mp3-frame-stereo
|
|
$ fq -d mp3_frame verbose /mp3-frame-stereo
|
|
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.: {} /mp3-frame-stereo (mp3_frame) 0x0-0x1a0.7 (417)
|
|
| | | header: {} 0x0-0x3.7 (4)
|
|
0x000|ff fb |.. | sync: "Correct" (0x7ff) 0x0-0x1.2 (1.3)
|
|
0x000| fb | . | mpeg_version: "MPEG Version 1" (1) 0x1.3-0x1.4 (0.2)
|
|
0x000| fb | . | layer: "Layer 3" (3) 0x1.5-0x1.6 (0.2)
|
|
| | | sample_count: 1152 0x1.7-NA (0)
|
|
0x000| fb | . | protection: "Not protected" (true) 0x1.7-0x1.7 (0.1)
|
|
0x000| 90 | . | bitrate: 128000 0x2-0x2.3 (0.4)
|
|
0x000| 90 | . | sample_rate: 44100 0x2.4-0x2.5 (0.2)
|
|
0x000| 90 | . | padding: "Not padded" (0b0) 0x2.6-0x2.6 (0.1)
|
|
0x000| 90 | . | private: 0 0x2.7-0x2.7 (0.1)
|
|
0x000| 64 | d | channels: "Joint stereo" (0b1) 0x3-0x3.1 (0.2)
|
|
0x000| 64 | d | channel_mode: "MS stereo" (0b10) 0x3.2-0x3.3 (0.2)
|
|
0x000| 64 | d | copyright: 0 0x3.4-0x3.4 (0.1)
|
|
0x000| 64 | d | original: 1 0x3.5-0x3.5 (0.1)
|
|
0x000| 64 | d | emphasis: "None" (0b0) 0x3.6-0x3.7 (0.2)
|
|
| | | side_info: {} 0x4-0x23.7 (32)
|
|
0x000| 00 00 | .. | main_data_end: 0 0x4-0x5 (1.1)
|
|
0x000| 00 | . | private_bits: 0 0x5.1-0x5.3 (0.3)
|
|
0x000| 00 | . | share0: 0 0x5.4-0x5.7 (0.4)
|
|
0x000| 02 | . | share1: 0 0x6-0x6.3 (0.4)
|
|
| | | granules: [2] 0x6.4-0x23.7 (29.4)
|
|
| | | [0]: granule {} 0x6.4-0x15.1 (14.6)
|
|
| | | channels: [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)
|
|
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: [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)
|
|
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| 0a 6b 6d d8 c2 12 cd a0 0d bf 4d 03| .km.......M.| data: 0a6b6dd8c212cda00dbf4d03018d4c35... 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) | |
|
|
| | | other_data: 0x1a1-NA (0)
|
|
| | | crc_calculated: 1855 0x1a1-NA (0)
|