# ffmpeg -f lavfi -i sine=r=96000 -t 1ms -ac 2 -c:a pcm_s24le -f mov lpcm.mp4 $ fq dv lpcm.mp4 |00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: lpcm.mp4 (mp4) 0x0-0x511.7 (1298) | | | boxes[0:4]: 0x0-0x511.7 (1298) | | | [0]{}: box 0x0-0x13.7 (20) 0x000|00 00 00 14 |.... | size: 20 0x0-0x3.7 (4) 0x000| 66 74 79 70 | ftyp | type: "ftyp" (File type and compatibility) 0x4-0x7.7 (4) 0x000| 71 74 20 20 | qt | major_brand: "qt " 0x8-0xb.7 (4) 0x000| 00 00 02 00| ....| minor_version: 512 0xc-0xf.7 (4) | | | brands[0:1]: 0x10-0x13.7 (4) 0x010|71 74 20 20 |qt | [0]: "qt" brand 0x10-0x13.7 (4) | | | [1]{}: box 0x14-0x1b.7 (8) 0x010| 00 00 00 08 | .... | size: 8 0x14-0x17.7 (4) 0x010| 77 69 64 65 | wide | type: "wide" (Expansion space reservation) 0x18-0x1b.7 (4) | | | data: raw bits 0x1c-NA (0) | | | [2]{}: box 0x1c-0x263.7 (584) 0x010| 00 00 02 48| ...H| size: 584 0x1c-0x1f.7 (4) 0x020|6d 64 61 74 |mdat | type: "mdat" (Media data container) 0x20-0x23.7 (4) 0x020| 00 00 00 00 00 00 70 53 00 70 53 00| ......pS.pS.| data: raw bits 0x24-0x263.7 (576) 0x030|2b a6 00 2b a6 00 9b f9 00 9b f9 00 57 4c 01 57|+..+........WL.W| * |until 0x263.7 (576) | | | | | [3]{}: box 0x264-0x511.7 (686) 0x260| 00 00 02 ae | .... | size: 686 0x264-0x267.7 (4) 0x260| 6d 6f 6f 76 | moov | type: "moov" (Container for all the meta-data) 0x268-0x26b.7 (4) | | | boxes[0:3]: 0x26c-0x511.7 (678) | | | [0]{}: box 0x26c-0x2d7.7 (108) 0x260| 00 00 00 6c| ...l| size: 108 0x26c-0x26f.7 (4) 0x270|6d 76 68 64 |mvhd | type: "mvhd" (Movie header, overall declarations) 0x270-0x273.7 (4) 0x270| 00 | . | version: 0 0x274-0x274.7 (1) 0x270| 00 00 00 | ... | flags: 0 0x275-0x277.7 (3) 0x270| 00 00 00 00 | .... | creation_time: 0 (1904-01-04T00:00:00Z) 0x278-0x27b.7 (4) 0x270| 00 00 00 00| ....| modification_time: 0 (1904-01-04T00:00:00Z) 0x27c-0x27f.7 (4) 0x280|00 00 03 e8 |.... | time_scale: 1000 0x280-0x283.7 (4) 0x280| 00 00 00 01 | .... | duration: 1 0x284-0x287.7 (4) 0x280| 00 01 00 00 | .... | preferred_rate: 1 0x288-0x28b.7 (4) 0x280| 01 00 | .. | preferred_volume: 1 0x28c-0x28d.7 (2) 0x280| 00 00| ..| reserved: "\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00" 0x28e-0x297.7 (10) 0x290|00 00 00 00 00 00 00 00 |........ | | | | matrix_structure{}: 0x298-0x2bb.7 (36) 0x290| 00 01 00 00 | .... | a: 1 0x298-0x29b.7 (4) 0x290| 00 00 00 00| ....| b: 0 0x29c-0x29f.7 (4) 0x2a0|00 00 00 00 |.... | u: 0 0x2a0-0x2a3.7 (4) 0x2a0| 00 00 00 00 | .... | c: 0 0x2a4-0x2a7.7 (4) 0x2a0| 00 01 00 00 | .... | d: 1 0x2a8-0x2ab.7 (4) 0x2a0| 00 00 00 00| ....| v: 0 0x2ac-0x2af.7 (4) 0x2b0|00 00 00 00 |.... | x: 0 0x2b0-0x2b3.7 (4) 0x2b0| 00 00 00 00 | .... | y: 0 0x2b4-0x2b7.7 (4) 0x2b0| 40 00 00 00 | @... | w: 1 0x2b8-0x2bb.7 (4) 0x2b0| 00 00 00 00| ....| preview_time: 0 0x2bc-0x2bf.7 (4) 0x2c0|00 00 00 00 |.... | preview_duration: 0 0x2c0-0x2c3.7 (4) 0x2c0| 00 00 00 00 | .... | poster_time: 0 0x2c4-0x2c7.7 (4) 0x2c0| 00 00 00 00 | .... | selection_time: 0 0x2c8-0x2cb.7 (4) 0x2c0| 00 00 00 00| ....| selection_duration: 0 0x2cc-0x2cf.7 (4) 0x2d0|00 00 00 00 |.... | current_time: 0 0x2d0-0x2d3.7 (4) 0x2d0| 00 00 00 02 | .... | next_track_id: 2 0x2d4-0x2d7.7 (4) | | | [1]{}: box 0x2d8-0x4f0.7 (537) 0x2d0| 00 00 02 19 | .... | size: 537 0x2d8-0x2db.7 (4) 0x2d0| 74 72 61 6b| trak| type: "trak" (Container for an individual track or stream) 0x2dc-0x2df.7 (4) | | | boxes[0:3]: 0x2e0-0x4f0.7 (529) | | | [0]{}: box 0x2e0-0x33b.7 (92) 0x2e0|00 00 00 5c |...\ | size: 92 0x2e0-0x2e3.7 (4) 0x2e0| 74 6b 68 64 | tkhd | type: "tkhd" (Track header, overall information about the track) 0x2e4-0x2e7.7 (4) 0x2e0| 00 | . | version: 0 0x2e8-0x2e8.7 (1) 0x2e0| 00 00 03 | ... | flags: 3 0x2e9-0x2eb.7 (3) 0x2e0| 00 00 00 00| ....| creation_time: 0 (1904-01-04T00:00:00Z) 0x2ec-0x2ef.7 (4) 0x2f0|00 00 00 00 |.... | modification_time: 0 (1904-01-04T00:00:00Z) 0x2f0-0x2f3.7 (4) 0x2f0| 00 00 00 01 | .... | track_id: 1 0x2f4-0x2f7.7 (4) 0x2f0| 00 00 00 00 | .... | reserved1: 0 0x2f8-0x2fb.7 (4) 0x2f0| 00 00 00 01| ....| duration: 1 0x2fc-0x2ff.7 (4) 0x300|00 00 00 00 00 00 00 00 |........ | reserved2: raw bits 0x300-0x307.7 (8) 0x300| 00 00 | .. | layer: 0 0x308-0x309.7 (2) 0x300| 00 01 | .. | alternate_group: 1 0x30a-0x30b.7 (2) 0x300| 01 00 | .. | volume: 1 0x30c-0x30d.7 (2) 0x300| 00 00| ..| reserved3: 0 0x30e-0x30f.7 (2) | | | matrix_structure{}: 0x310-0x333.7 (36) 0x310|00 01 00 00 |.... | a: 1 0x310-0x313.7 (4) 0x310| 00 00 00 00 | .... | b: 0 0x314-0x317.7 (4) 0x310| 00 00 00 00 | .... | u: 0 0x318-0x31b.7 (4) 0x310| 00 00 00 00| ....| c: 0 0x31c-0x31f.7 (4) 0x320|00 01 00 00 |.... | d: 1 0x320-0x323.7 (4) 0x320| 00 00 00 00 | .... | v: 0 0x324-0x327.7 (4) 0x320| 00 00 00 00 | .... | x: 0 0x328-0x32b.7 (4) 0x320| 00 00 00 00| ....| y: 0 0x32c-0x32f.7 (4) 0x330|40 00 00 00 |@... | w: 1 0x330-0x333.7 (4) 0x330| 00 00 00 00 | .... | track_width: 0 0x334-0x337.7 (4) 0x330| 00 00 00 00 | .... | track_height: 0 0x338-0x33b.7 (4) | | | [1]{}: box 0x33c-0x35f.7 (36) 0x330| 00 00 00 24| ...$| size: 36 0x33c-0x33f.7 (4) 0x340|65 64 74 73 |edts | type: "edts" (Edit list container) 0x340-0x343.7 (4) | | | boxes[0:1]: 0x344-0x35f.7 (28) | | | [0]{}: box 0x344-0x35f.7 (28) 0x340| 00 00 00 1c | .... | size: 28 0x344-0x347.7 (4) 0x340| 65 6c 73 74 | elst | type: "elst" (An edit list) 0x348-0x34b.7 (4) 0x340| 00 | . | version: 0 0x34c-0x34c.7 (1) 0x340| 00 00 00| ...| flags: 0 0x34d-0x34f.7 (3) 0x350|00 00 00 01 |.... | entry_count: 1 0x350-0x353.7 (4) | | | entries[0:1]: 0x354-0x35f.7 (12) | | | [0]{}: entry 0x354-0x35f.7 (12) 0x350| 00 00 00 01 | .... | segment_duration: 1 0x354-0x357.7 (4) 0x350| 00 00 00 00 | .... | media_time: 0 0x358-0x35b.7 (4) 0x350| 00 01 00 00| ....| media_rate: 1 0x35c-0x35f.7 (4) | | | [2]{}: box 0x360-0x4f0.7 (401) 0x360|00 00 01 91 |.... | size: 401 0x360-0x363.7 (4) 0x360| 6d 64 69 61 | mdia | type: "mdia" (Container for the media information in a track) 0x364-0x367.7 (4) | | | boxes[0:3]: 0x368-0x4f0.7 (393) | | | [0]{}: box 0x368-0x387.7 (32) 0x360| 00 00 00 20 | ... | size: 32 0x368-0x36b.7 (4) 0x360| 6d 64 68 64| mdhd| type: "mdhd" (Media header, overall information about the media) 0x36c-0x36f.7 (4) 0x370|00 |. | version: 0 0x370-0x370.7 (1) 0x370| 00 00 00 | ... | flags: 0 0x371-0x373.7 (3) 0x370| 00 00 00 00 | .... | creation_time: 0 (1904-01-04T00:00:00Z) 0x374-0x377.7 (4) 0x370| 00 00 00 00 | .... | modification_time: 0 (1904-01-04T00:00:00Z) 0x378-0x37b.7 (4) 0x370| 00 01 77 00| ..w.| time_scale: 96000 0x37c-0x37f.7 (4) 0x380|00 00 00 60 |...` | duration: 96 0x380-0x383.7 (4) 0x380| 7f ff | .. | language: "\x7f\x7f\x7f" 0x384-0x385.7 (2) 0x380| 00 00 | .. | quality: 0 0x386-0x387.7 (2) | | | [1]{}: box 0x388-0x3b4.7 (45) 0x380| 00 00 00 2d | ...- | size: 45 0x388-0x38b.7 (4) 0x380| 68 64 6c 72| hdlr| type: "hdlr" (Handler, declares the media (handler) type) 0x38c-0x38f.7 (4) 0x390|00 |. | version: 0 0x390-0x390.7 (1) 0x390| 00 00 00 | ... | flags: 0 0x391-0x393.7 (3) 0x390| 6d 68 6c 72 | mhlr | component_type: "mhlr" 0x394-0x397.7 (4) 0x390| 73 6f 75 6e | soun | component_subtype: "soun" (Audio Track) 0x398-0x39b.7 (4) 0x390| 00 00 00 00| ....| component_manufacturer: "" 0x39c-0x39f.7 (4) 0x3a0|00 00 00 00 |.... | component_flags: 0 0x3a0-0x3a3.7 (4) 0x3a0| 00 00 00 00 | .... | component_flags_mask: 0 0x3a4-0x3a7.7 (4) 0x3a0| 0c 53 6f 75 6e 64 48 61| .SoundHa| component_name: "\fSoundHandler" 0x3a8-0x3b4.7 (13) 0x3b0|6e 64 6c 65 72 |ndler | | | | [2]{}: box 0x3b5-0x4f0.7 (316) 0x3b0| 00 00 01 3c | ...< | size: 316 0x3b5-0x3b8.7 (4) 0x3b0| 6d 69 6e 66 | minf | type: "minf" (Media information container) 0x3b9-0x3bc.7 (4) | | | boxes[0:4]: 0x3bd-0x4f0.7 (308) | | | [0]{}: box 0x3bd-0x3cc.7 (16) 0x3b0| 00 00 00| ...| size: 16 0x3bd-0x3c0.7 (4) 0x3c0|10 |. | 0x3c0| 73 6d 68 64 | smhd | type: "smhd" (Sound media header, overall information (sound track only)) 0x3c1-0x3c4.7 (4) 0x3c0| 00 | . | version: 0 0x3c5-0x3c5.7 (1) 0x3c0| 00 00 00 | ... | flags: 0 0x3c6-0x3c8.7 (3) 0x3c0| 00 00 | .. | balance: 0 0x3c9-0x3ca.7 (2) 0x3c0| 00 00 | .. | reserved: 0 0x3cb-0x3cc.7 (2) | | | [1]{}: box 0x3cd-0x3f8.7 (44) 0x3c0| 00 00 00| ...| size: 44 0x3cd-0x3d0.7 (4) 0x3d0|2c |, | 0x3d0| 68 64 6c 72 | hdlr | type: "hdlr" (Handler, declares the media (handler) type) 0x3d1-0x3d4.7 (4) 0x3d0| 00 | . | version: 0 0x3d5-0x3d5.7 (1) 0x3d0| 00 00 00 | ... | flags: 0 0x3d6-0x3d8.7 (3) 0x3d0| 64 68 6c 72 | dhlr | component_type: "dhlr" 0x3d9-0x3dc.7 (4) 0x3d0| 75 72 6c| url| component_subtype: "url" (URL) 0x3dd-0x3e0.7 (4) 0x3e0|20 | | 0x3e0| 00 00 00 00 | .... | component_manufacturer: "" 0x3e1-0x3e4.7 (4) 0x3e0| 00 00 00 00 | .... | component_flags: 0 0x3e5-0x3e8.7 (4) 0x3e0| 00 00 00 00 | .... | component_flags_mask: 0 0x3e9-0x3ec.7 (4) 0x3e0| 0b 44 61| .Da| component_name: "\vDataHandler" 0x3ed-0x3f8.7 (12) 0x3f0|74 61 48 61 6e 64 6c 65 72 |taHandler | | | | [2]{}: box 0x3f9-0x41c.7 (36) 0x3f0| 00 00 00 24 | ...$ | size: 36 0x3f9-0x3fc.7 (4) 0x3f0| 64 69 6e| din| type: "dinf" (Data information box, container) 0x3fd-0x400.7 (4) 0x400|66 |f | | | | boxes[0:1]: 0x401-0x41c.7 (28) | | | [0]{}: box 0x401-0x41c.7 (28) 0x400| 00 00 00 1c | .... | size: 28 0x401-0x404.7 (4) 0x400| 64 72 65 66 | dref | type: "dref" (Data reference box, declares source(s) of media data in track) 0x405-0x408.7 (4) 0x400| 00 | . | version: 0 0x409-0x409.7 (1) 0x400| 00 00 00 | ... | flags: 0 0x40a-0x40c.7 (3) 0x400| 00 00 00| ...| entry_count: 1 0x40d-0x410.7 (4) 0x410|01 |. | | | | boxes[0:1]: 0x411-0x41c.7 (12) | | | [0]{}: box 0x411-0x41c.7 (12) 0x410| 00 00 00 0c | .... | size: 12 0x411-0x414.7 (4) 0x410| 75 72 6c 20 | url | type: "url " 0x415-0x418.7 (4) 0x410| 00 | . | version: 0 0x419-0x419.7 (1) 0x410| 00 00 01 | ... | flags: 1 0x41a-0x41c.7 (3) | | | data: raw bits 0x41d-NA (0) | | | [3]{}: box 0x41d-0x4f0.7 (212) 0x410| 00 00 00| ...| size: 212 0x41d-0x420.7 (4) 0x420|d4 |. | 0x420| 73 74 62 6c | stbl | type: "stbl" (Sample table box, container for the time/space map) 0x421-0x424.7 (4) | | | boxes[0:5]: 0x425-0x4f0.7 (204) | | | [0]{}: box 0x425-0x494.7 (112) 0x420| 00 00 00 70 | ...p | size: 112 0x425-0x428.7 (4) 0x420| 73 74 73 64 | stsd | type: "stsd" (Sample descriptions (codec types, initialization etc.)) 0x429-0x42c.7 (4) 0x420| 00 | . | version: 0 0x42d-0x42d.7 (1) 0x420| 00 00| ..| flags: 0 0x42e-0x430.7 (3) 0x430|00 |. | 0x430| 00 00 00 01 | .... | entry_count: 1 0x431-0x434.7 (4) | | | boxes[0:1]: 0x435-0x494.7 (96) | | | [0]{}: box 0x435-0x494.7 (96) 0x430| 00 00 00 60 | ...` | size: 96 0x435-0x438.7 (4) 0x430| 6c 70 63 6d | lpcm | type: "lpcm" 0x439-0x43c.7 (4) 0x430| 00 00 00| ...| reserved: raw bits 0x43d-0x442.7 (6) 0x440|00 00 00 |... | 0x440| 00 01 | .. | data_reference_index: 1 0x443-0x444.7 (2) 0x440| 00 02 | .. | version: 2 0x445-0x446.7 (2) 0x440| 00 00 | .. | revision_level: 0 0x447-0x448.7 (2) 0x440| 00 00 00 00 | .... | max_packet_size: 0 0x449-0x44c.7 (4) 0x440| 00 03 | .. | always_3: 3 0x44d-0x44e.7 (2) 0x440| 00| .| always_16: 16 0x44f-0x450.7 (2) 0x450|10 |. | 0x450| ff fe | .. | always_minus_2: 65534 0x451-0x452.7 (2) 0x450| 00 00 | .. | always_0: 0 0x453-0x454.7 (2) 0x450| 00 01 00 00 | .... | always_65536: 65536 0x455-0x458.7 (4) 0x450| 00 00 00 48 | ...H | size_of_struct_only: 72 0x459-0x45c.7 (4) 0x450| 40 f7 70| @.p| audio_sample_rate: 96000 0x45d-0x464.7 (8) 0x460|00 00 00 00 00 |..... | 0x460| 00 00 00 02 | .... | num_audio_channels: 2 0x465-0x468.7 (4) 0x460| 7f 00 00 00 | .... | always_7f000000: 2130706432 0x469-0x46c.7 (4) 0x460| 00 00 00| ...| const_bits_per_channel: 24 0x46d-0x470.7 (4) 0x470|18 |. | 0x470| 00 00 00 0c | .... | format_specific_flags: 12 0x471-0x474.7 (4) 0x470| 00 00 00 06 | .... | const_bytes_per_audio_packet: 6 0x475-0x478.7 (4) 0x470| 00 00 00 01 | .... | const_lpcm_frames_per_audio_packet: 1 0x479-0x47c.7 (4) | | | boxes[0:1]: 0x47d-0x494.7 (24) | | | [0]{}: box 0x47d-0x494.7 (24) 0x470| 00 00 00| ...| size: 24 0x47d-0x480.7 (4) 0x480|18 |. | 0x480| 63 68 61 6e | chan | type: "chan" 0x481-0x484.7 (4) 0x480| 00 00 00 00 00 65 00 02 00 00 00| .....e.....| data: raw bits 0x485-0x494.7 (16) 0x490|00 00 00 00 00 |..... | | | | [1]{}: box 0x495-0x4ac.7 (24) 0x490| 00 00 00 18 | .... | size: 24 0x495-0x498.7 (4) 0x490| 73 74 74 73 | stts | type: "stts" (Sample time-to-sample) 0x499-0x49c.7 (4) 0x490| 00 | . | version: 0 0x49d-0x49d.7 (1) 0x490| 00 00| ..| flags: 0 0x49e-0x4a0.7 (3) 0x4a0|00 |. | 0x4a0| 00 00 00 01 | .... | entry_count: 1 0x4a1-0x4a4.7 (4) | | | entries[0:1]: 0x4a5-0x4ac.7 (8) | | | [0]{}: entry 0x4a5-0x4ac.7 (8) 0x4a0| 00 00 00 60 | ...` | count: 96 0x4a5-0x4a8.7 (4) 0x4a0| 00 00 00 01 | .... | delta: 1 0x4a9-0x4ac.7 (4) | | | [2]{}: box 0x4ad-0x4c8.7 (28) 0x4a0| 00 00 00| ...| size: 28 0x4ad-0x4b0.7 (4) 0x4b0|1c |. | 0x4b0| 73 74 73 63 | stsc | type: "stsc" (Sample-to-chunk, partial data-offset information) 0x4b1-0x4b4.7 (4) 0x4b0| 00 | . | version: 0 0x4b5-0x4b5.7 (1) 0x4b0| 00 00 00 | ... | flags: 0 0x4b6-0x4b8.7 (3) 0x4b0| 00 00 00 01 | .... | entry_count: 1 0x4b9-0x4bc.7 (4) | | | entries[0:1]: 0x4bd-0x4c8.7 (12) | | | [0]{}: entry 0x4bd-0x4c8.7 (12) 0x4b0| 00 00 00| ...| first_chunk: 1 0x4bd-0x4c0.7 (4) 0x4c0|01 |. | 0x4c0| 00 00 00 60 | ...` | samples_per_chunk: 96 0x4c1-0x4c4.7 (4) 0x4c0| 00 00 00 01 | .... | sample_description_id: 1 0x4c5-0x4c8.7 (4) | | | [3]{}: box 0x4c9-0x4dc.7 (20) 0x4c0| 00 00 00 14 | .... | size: 20 0x4c9-0x4cc.7 (4) 0x4c0| 73 74 73| sts| type: "stsz" (Sample sizes (framing)) 0x4cd-0x4d0.7 (4) 0x4d0|7a |z | 0x4d0| 00 | . | version: 0 0x4d1-0x4d1.7 (1) 0x4d0| 00 00 00 | ... | flags: 0 0x4d2-0x4d4.7 (3) 0x4d0| 00 00 00 06 | .... | sample_size: 6 0x4d5-0x4d8.7 (4) 0x4d0| 00 00 00 60 | ...` | entry_count: 96 0x4d9-0x4dc.7 (4) | | | [4]{}: box 0x4dd-0x4f0.7 (20) 0x4d0| 00 00 00| ...| size: 20 0x4dd-0x4e0.7 (4) 0x4e0|14 |. | 0x4e0| 73 74 63 6f | stco | type: "stco" (Chunk offset, partial data-offset information) 0x4e1-0x4e4.7 (4) 0x4e0| 00 | . | version: 0 0x4e5-0x4e5.7 (1) 0x4e0| 00 00 00 | ... | flags: 0 0x4e6-0x4e8.7 (3) 0x4e0| 00 00 00 01 | .... | entry_count: 1 0x4e9-0x4ec.7 (4) | | | entries[0:1]: 0x4ed-0x4f0.7 (4) 0x4e0| 00 00 00| ...| [0]: 36 chunk_offset 0x4ed-0x4f0.7 (4) 0x4f0|24 |$ | | | | [2]{}: box 0x4f1-0x511.7 (33) 0x4f0| 00 00 00 21 | ...! | size: 33 0x4f1-0x4f4.7 (4) 0x4f0| 75 64 74 61 | udta | type: "udta" (User-data) 0x4f5-0x4f8.7 (4) | | | boxes[0:1]: 0x4f9-0x511.7 (25) | | | [0]{}: box 0x4f9-0x511.7 (25) 0x4f0| 00 00 00 19 | .... | size: 25 0x4f9-0x4fc.7 (4) 0x4f0| a9 73 77| .sw| type: "©swr" 0x4fd-0x500.7 (4) 0x500|72 |r | 0x500| 00 0d 55 c4 4c 61 76 66 35 38 2e 37 36 2e 31| ..U.Lavf58.76.1| data: raw bits 0x501-0x511.7 (17) 0x510|30 30| |00| | | | | tracks[0:1]: 0x512-NA (0) | | | [0]{}: track 0x512-NA (0) | | | id: 1 0x512-NA (0) | | | data_format: "lpcm" 0x512-NA (0)