mirror of
https://github.com/wader/fq.git
synced 2024-11-25 23:13:19 +03:00
mp4: Add png mapping
Also support samples decode for tracks without hdlr box
This commit is contained in:
parent
a97d37ee42
commit
ef2d5232ba
@ -76,7 +76,7 @@
|
||||
|[`mp3`](#mp3) |MP3 file |<sub>`id3v2` `id3v1` `id3v11` `apev2` `mp3_frame`</sub>|
|
||||
|`mp3_frame` |MPEG audio layer 3 frame |<sub>`mp3_frame_tags`</sub>|
|
||||
|`mp3_frame_tags` |MP3 frame info/xing tags |<sub></sub>|
|
||||
|[`mp4`](#mp4) |ISOBMFF, QuickTime and similar |<sub>`aac_frame` `av1_ccr` `av1_frame` `avc_au` `avc_dcr` `flac_frame` `flac_metadatablocks` `hevc_au` `hevc_dcr` `icc_profile` `id3v2` `image` `jpeg` `mp3_frame` `mpeg_es` `mpeg_pes_packet` `opus_packet` `prores_frame` `protobuf_widevine` `pssh_playready` `vorbis_packet` `vp9_frame` `vpx_ccr`</sub>|
|
||||
|[`mp4`](#mp4) |ISOBMFF, QuickTime and similar |<sub>`aac_frame` `av1_ccr` `av1_frame` `avc_au` `avc_dcr` `flac_frame` `flac_metadatablocks` `hevc_au` `hevc_dcr` `icc_profile` `id3v2` `image` `jpeg` `mp3_frame` `mpeg_es` `mpeg_pes_packet` `opus_packet` `png` `prores_frame` `protobuf_widevine` `pssh_playready` `vorbis_packet` `vp9_frame` `vpx_ccr`</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>|
|
||||
|
1922
doc/formats.svg
1922
doc/formats.svg
File diff suppressed because it is too large
Load Diff
Before Width: | Height: | Size: 137 KiB After Width: | Height: | Size: 138 KiB |
@ -494,6 +494,7 @@ func init() {
|
||||
d.FieldUTF8NullFixedLen("component_name", int(d.BitsLeft()/8))
|
||||
|
||||
if t := ctx.currentTrack(); t != nil {
|
||||
t.seenHdlr = true
|
||||
// component_type seems to be all zero sometimes so can't look for "mhlr"
|
||||
switch subType {
|
||||
case "vide", "soun":
|
||||
@ -535,7 +536,20 @@ func init() {
|
||||
t.sampleDescriptions = append(t.sampleDescriptions, sampleDescription{
|
||||
dataFormat: dataFormat,
|
||||
})
|
||||
subType = t.subType
|
||||
|
||||
if t.seenHdlr {
|
||||
subType = t.subType
|
||||
} else {
|
||||
// TODO: seems to be ffmpeg mov.c, where is this documented in specs?
|
||||
// no hdlr box found, guess using dataFormat
|
||||
// ex PNG samples but there is no hdlr box saying it's video, but the esds says MPEGObjectTypePNG
|
||||
switch dataFormat {
|
||||
case "mp4v":
|
||||
subType = "vide"
|
||||
case "mp4a":
|
||||
subType = "soun"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
d.FramedFn(int64(size-8)*8, func(d *decode.D) {
|
||||
@ -633,7 +647,7 @@ func init() {
|
||||
})
|
||||
},
|
||||
"avcC": func(ctx *decodeContext, d *decode.D) {
|
||||
dv, v := d.FieldFormat("descriptor", mpegAVCDCRFormat, nil)
|
||||
dv, v := d.FieldFormat("descriptor", avcDCRFormat, nil)
|
||||
avcDcrOut, ok := v.(format.AvcDcrOut)
|
||||
if dv != nil && !ok {
|
||||
panic(fmt.Sprintf("expected AvcDcrOut got %#+v", v))
|
||||
@ -643,7 +657,7 @@ func init() {
|
||||
}
|
||||
},
|
||||
"hvcC": func(ctx *decodeContext, d *decode.D) {
|
||||
dv, v := d.FieldFormat("descriptor", mpegHEVCDCRFrameFormat, nil)
|
||||
dv, v := d.FieldFormat("descriptor", hevcCDCRFormat, nil)
|
||||
hevcDcrOut, ok := v.(format.HevcDcrOut)
|
||||
if dv != nil && !ok {
|
||||
panic(fmt.Sprintf("expected HevcDcrOut got %#+v", v))
|
||||
|
@ -32,20 +32,21 @@ var mp4FS embed.FS
|
||||
var aacFrameFormat decode.Group
|
||||
var av1CCRFormat decode.Group
|
||||
var av1FrameFormat decode.Group
|
||||
var avcAUFormat decode.Group
|
||||
var avcDCRFormat decode.Group
|
||||
var flacFrameFormat decode.Group
|
||||
var flacMetadatablocksFormat decode.Group
|
||||
var hevcAUFormat decode.Group
|
||||
var hevcCDCRFormat decode.Group
|
||||
var iccProfileFormat decode.Group
|
||||
var id3v2Format decode.Group
|
||||
var imageFormat decode.Group
|
||||
var jpegFormat decode.Group
|
||||
var mp3FrameFormat decode.Group
|
||||
var mpegAVCAUFormat decode.Group
|
||||
var mpegAVCDCRFormat decode.Group
|
||||
var mpegESFormat decode.Group
|
||||
var mpegHEVCDCRFrameFormat decode.Group
|
||||
var mpegHEVCSampleFormat decode.Group
|
||||
var mpegPESPacketSampleFormat decode.Group
|
||||
var opusPacketFrameFormat decode.Group
|
||||
var pngFormat decode.Group
|
||||
var proResFrameFormat decode.Group
|
||||
var protoBufWidevineFormat decode.Group
|
||||
var psshPlayreadyFormat decode.Group
|
||||
@ -70,12 +71,12 @@ func init() {
|
||||
{Names: []string{format.AAC_FRAME}, Group: &aacFrameFormat},
|
||||
{Names: []string{format.AV1_CCR}, Group: &av1CCRFormat},
|
||||
{Names: []string{format.AV1_FRAME}, Group: &av1FrameFormat},
|
||||
{Names: []string{format.AVC_AU}, Group: &mpegAVCAUFormat},
|
||||
{Names: []string{format.AVC_DCR}, Group: &mpegAVCDCRFormat},
|
||||
{Names: []string{format.AVC_AU}, Group: &avcAUFormat},
|
||||
{Names: []string{format.AVC_DCR}, Group: &avcDCRFormat},
|
||||
{Names: []string{format.FLAC_FRAME}, Group: &flacFrameFormat},
|
||||
{Names: []string{format.FLAC_METADATABLOCKS}, Group: &flacMetadatablocksFormat},
|
||||
{Names: []string{format.HEVC_AU}, Group: &mpegHEVCSampleFormat},
|
||||
{Names: []string{format.HEVC_DCR}, Group: &mpegHEVCDCRFrameFormat},
|
||||
{Names: []string{format.HEVC_AU}, Group: &hevcAUFormat},
|
||||
{Names: []string{format.HEVC_DCR}, Group: &hevcCDCRFormat},
|
||||
{Names: []string{format.ICC_PROFILE}, Group: &iccProfileFormat},
|
||||
{Names: []string{format.ID3V2}, Group: &id3v2Format},
|
||||
{Names: []string{format.IMAGE}, Group: &imageFormat},
|
||||
@ -84,6 +85,7 @@ func init() {
|
||||
{Names: []string{format.MPEG_ES}, Group: &mpegESFormat},
|
||||
{Names: []string{format.MPEG_PES_PACKET}, Group: &mpegPESPacketSampleFormat},
|
||||
{Names: []string{format.OPUS_PACKET}, Group: &opusPacketFrameFormat},
|
||||
{Names: []string{format.PNG}, Group: &pngFormat},
|
||||
{Names: []string{format.PRORES_FRAME}, Group: &proResFrameFormat},
|
||||
{Names: []string{format.PROTOBUF_WIDEVINE}, Group: &protoBufWidevineFormat},
|
||||
{Names: []string{format.PSSH_PLAYREADY}, Group: &psshPlayreadyFormat},
|
||||
@ -129,6 +131,7 @@ type stsz struct {
|
||||
}
|
||||
|
||||
type track struct {
|
||||
seenHdlr bool
|
||||
id int
|
||||
sampleDescriptions []sampleDescription
|
||||
subType string
|
||||
@ -229,10 +232,10 @@ func mp4Tracks(d *decode.D, ctx *decodeContext) {
|
||||
case dataFormat == "vp09":
|
||||
d.FieldFormatLen(name, nBits, vp9FrameFormat, inArg)
|
||||
case dataFormat == "avc1":
|
||||
d.FieldFormatLen(name, nBits, mpegAVCAUFormat, inArg)
|
||||
d.FieldFormatLen(name, nBits, avcAUFormat, inArg)
|
||||
case dataFormat == "hev1",
|
||||
dataFormat == "hvc1":
|
||||
d.FieldFormatLen(name, nBits, mpegHEVCSampleFormat, inArg)
|
||||
d.FieldFormatLen(name, nBits, hevcAUFormat, inArg)
|
||||
case dataFormat == "av01":
|
||||
d.FieldFormatLen(name, nBits, av1FrameFormat, inArg)
|
||||
case dataFormat == "mp4a" && t.objectType == format.MPEGObjectTypeMP3:
|
||||
@ -245,6 +248,8 @@ func mp4Tracks(d *decode.D, ctx *decodeContext) {
|
||||
d.FieldFormatLen(name, nBits, mpegPESPacketSampleFormat, inArg)
|
||||
case dataFormat == "mp4v" && t.objectType == format.MPEGObjectTypeMJPEG:
|
||||
d.FieldFormatLen(name, nBits, jpegFormat, inArg)
|
||||
case dataFormat == "mp4v" && t.objectType == format.MPEGObjectTypePNG:
|
||||
d.FieldFormatLen(name, nBits, pngFormat, inArg)
|
||||
case dataFormat == "jpeg":
|
||||
d.FieldFormatLen(name, nBits, jpegFormat, inArg)
|
||||
case dataFormat == "apch",
|
||||
|
BIN
format/mp4/testdata/png.mp4
vendored
Normal file
BIN
format/mp4/testdata/png.mp4
vendored
Normal file
Binary file not shown.
404
format/mp4/testdata/png.mp4.fqtest
vendored
Normal file
404
format/mp4/testdata/png.mp4.fqtest
vendored
Normal file
@ -0,0 +1,404 @@
|
||||
# ffmpeg -f lavfi -i testsrc=size=2x2 -c:v png -t 10ms png.mp4
|
||||
$ fq dv png.mp4
|
||||
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: png.mp4 (mp4) 0x0-0x39f.7 (928)
|
||||
| | | boxes[0:4]: 0x0-0x39f.7 (928)
|
||||
| | | [0]{}: box 0x0-0x1b.7 (28)
|
||||
0x000|00 00 00 1c |.... | size: 28 0x0-0x3.7 (4)
|
||||
0x000| 66 74 79 70 | ftyp | type: "ftyp" (File type and compatibility) 0x4-0x7.7 (4)
|
||||
0x000| 69 73 6f 6d | isom | major_brand: "isom" 0x8-0xb.7 (4)
|
||||
0x000| 00 00 02 00| ....| minor_version: 512 0xc-0xf.7 (4)
|
||||
| | | brands[0:3]: 0x10-0x1b.7 (12)
|
||||
0x010|69 73 6f 6d |isom | [0]: "isom" brand (All files based on the ISO Base Media File Format) 0x10-0x13.7 (4)
|
||||
0x010| 69 73 6f 32 | iso2 | [1]: "iso2" brand (All files based on the 2004 edition of the ISO file format) 0x14-0x17.7 (4)
|
||||
0x010| 6d 70 34 31 | mp41 | [2]: "mp41" brand (MP4 version 1) 0x18-0x1b.7 (4)
|
||||
| | | [1]{}: box 0x1c-0x23.7 (8)
|
||||
0x010| 00 00 00 08| ....| size: 8 0x1c-0x1f.7 (4)
|
||||
0x020|66 72 65 65 |free | type: "free" (Free space) 0x20-0x23.7 (4)
|
||||
| | | data: raw bits 0x24-NA (0)
|
||||
| | | [2]{}: box 0x24-0x88.7 (101)
|
||||
0x020| 00 00 00 65 | ...e | size: 101 0x24-0x27.7 (4)
|
||||
0x020| 6d 64 61 74 | mdat | type: "mdat" (Media data container) 0x28-0x2b.7 (4)
|
||||
0x020| 89 50 4e 47| .PNG| data: raw bits 0x2c-0x88.7 (93)
|
||||
0x030|0d 0a 1a 0a 00 00 00 0d 49 48 44 52 00 00 00 02|........IHDR....|
|
||||
* |until 0x88.7 (93) | |
|
||||
| | | [3]{}: box 0x89-0x39f.7 (791)
|
||||
0x080| 00 00 03 17 | .... | size: 791 0x89-0x8c.7 (4)
|
||||
0x080| 6d 6f 6f| moo| type: "moov" (Container for all the meta-data) 0x8d-0x90.7 (4)
|
||||
0x090|76 |v |
|
||||
| | | boxes[0:3]: 0x91-0x39f.7 (783)
|
||||
| | | [0]{}: box 0x91-0xfc.7 (108)
|
||||
0x090| 00 00 00 6c | ...l | size: 108 0x91-0x94.7 (4)
|
||||
0x090| 6d 76 68 64 | mvhd | type: "mvhd" (Movie header, overall declarations) 0x95-0x98.7 (4)
|
||||
0x090| 00 | . | version: 0 0x99-0x99.7 (1)
|
||||
0x090| 00 00 00 | ... | flags: 0 0x9a-0x9c.7 (3)
|
||||
0x090| 00 00 00| ...| creation_time: 0 (1904-01-04T00:00:00Z) 0x9d-0xa0.7 (4)
|
||||
0x0a0|00 |. |
|
||||
0x0a0| 00 00 00 00 | .... | modification_time: 0 (1904-01-04T00:00:00Z) 0xa1-0xa4.7 (4)
|
||||
0x0a0| 00 00 03 e8 | .... | time_scale: 1000 0xa5-0xa8.7 (4)
|
||||
0x0a0| 00 00 00 28 | ...( | duration: 40 0xa9-0xac.7 (4)
|
||||
0x0a0| 00 01 00| ...| preferred_rate: 1 0xad-0xb0.7 (4)
|
||||
0x0b0|00 |. |
|
||||
0x0b0| 01 00 | .. | preferred_volume: 1 0xb1-0xb2.7 (2)
|
||||
0x0b0| 00 00 00 00 00 00 00 00 00 00 | .......... | reserved: "\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00" 0xb3-0xbc.7 (10)
|
||||
| | | matrix_structure{}: 0xbd-0xe0.7 (36)
|
||||
0x0b0| 00 01 00| ...| a: 1 0xbd-0xc0.7 (4)
|
||||
0x0c0|00 |. |
|
||||
0x0c0| 00 00 00 00 | .... | b: 0 0xc1-0xc4.7 (4)
|
||||
0x0c0| 00 00 00 00 | .... | u: 0 0xc5-0xc8.7 (4)
|
||||
0x0c0| 00 00 00 00 | .... | c: 0 0xc9-0xcc.7 (4)
|
||||
0x0c0| 00 01 00| ...| d: 1 0xcd-0xd0.7 (4)
|
||||
0x0d0|00 |. |
|
||||
0x0d0| 00 00 00 00 | .... | v: 0 0xd1-0xd4.7 (4)
|
||||
0x0d0| 00 00 00 00 | .... | x: 0 0xd5-0xd8.7 (4)
|
||||
0x0d0| 00 00 00 00 | .... | y: 0 0xd9-0xdc.7 (4)
|
||||
0x0d0| 40 00 00| @..| w: 1 0xdd-0xe0.7 (4)
|
||||
0x0e0|00 |. |
|
||||
0x0e0| 00 00 00 00 | .... | preview_time: 0 0xe1-0xe4.7 (4)
|
||||
0x0e0| 00 00 00 00 | .... | preview_duration: 0 0xe5-0xe8.7 (4)
|
||||
0x0e0| 00 00 00 00 | .... | poster_time: 0 0xe9-0xec.7 (4)
|
||||
0x0e0| 00 00 00| ...| selection_time: 0 0xed-0xf0.7 (4)
|
||||
0x0f0|00 |. |
|
||||
0x0f0| 00 00 00 00 | .... | selection_duration: 0 0xf1-0xf4.7 (4)
|
||||
0x0f0| 00 00 00 00 | .... | current_time: 0 0xf5-0xf8.7 (4)
|
||||
0x0f0| 00 00 00 02 | .... | next_track_id: 2 0xf9-0xfc.7 (4)
|
||||
| | | [1]{}: box 0xfd-0x33d.7 (577)
|
||||
0x0f0| 00 00 02| ...| size: 577 0xfd-0x100.7 (4)
|
||||
0x100|41 |A |
|
||||
0x100| 74 72 61 6b | trak | type: "trak" (Container for an individual track or stream) 0x101-0x104.7 (4)
|
||||
| | | boxes[0:3]: 0x105-0x33d.7 (569)
|
||||
| | | [0]{}: box 0x105-0x160.7 (92)
|
||||
0x100| 00 00 00 5c | ...\ | size: 92 0x105-0x108.7 (4)
|
||||
0x100| 74 6b 68 64 | tkhd | type: "tkhd" (Track header, overall information about the track) 0x109-0x10c.7 (4)
|
||||
0x100| 00 | . | version: 0 0x10d-0x10d.7 (1)
|
||||
0x100| 00 00| ..| flags: 3 0x10e-0x110.7 (3)
|
||||
0x110|03 |. |
|
||||
0x110| 00 00 00 00 | .... | creation_time: 0 (1904-01-04T00:00:00Z) 0x111-0x114.7 (4)
|
||||
0x110| 00 00 00 00 | .... | modification_time: 0 (1904-01-04T00:00:00Z) 0x115-0x118.7 (4)
|
||||
0x110| 00 00 00 01 | .... | track_id: 1 0x119-0x11c.7 (4)
|
||||
0x110| 00 00 00| ...| reserved1: 0 0x11d-0x120.7 (4)
|
||||
0x120|00 |. |
|
||||
0x120| 00 00 00 28 | ...( | duration: 40 0x121-0x124.7 (4)
|
||||
0x120| 00 00 00 00 00 00 00 00 | ........ | reserved2: raw bits 0x125-0x12c.7 (8)
|
||||
0x120| 00 00 | .. | layer: 0 0x12d-0x12e.7 (2)
|
||||
0x120| 00| .| alternate_group: 0 0x12f-0x130.7 (2)
|
||||
0x130|00 |. |
|
||||
0x130| 00 00 | .. | volume: 0 0x131-0x132.7 (2)
|
||||
0x130| 00 00 | .. | reserved3: 0 0x133-0x134.7 (2)
|
||||
| | | matrix_structure{}: 0x135-0x158.7 (36)
|
||||
0x130| 00 01 00 00 | .... | a: 1 0x135-0x138.7 (4)
|
||||
0x130| 00 00 00 00 | .... | b: 0 0x139-0x13c.7 (4)
|
||||
0x130| 00 00 00| ...| u: 0 0x13d-0x140.7 (4)
|
||||
0x140|00 |. |
|
||||
0x140| 00 00 00 00 | .... | c: 0 0x141-0x144.7 (4)
|
||||
0x140| 00 01 00 00 | .... | d: 1 0x145-0x148.7 (4)
|
||||
0x140| 00 00 00 00 | .... | v: 0 0x149-0x14c.7 (4)
|
||||
0x140| 00 00 00| ...| x: 0 0x14d-0x150.7 (4)
|
||||
0x150|00 |. |
|
||||
0x150| 00 00 00 00 | .... | y: 0 0x151-0x154.7 (4)
|
||||
0x150| 40 00 00 00 | @... | w: 1 0x155-0x158.7 (4)
|
||||
0x150| 00 02 00 00 | .... | track_width: 2 0x159-0x15c.7 (4)
|
||||
0x150| 00 02 00| ...| track_height: 2 0x15d-0x160.7 (4)
|
||||
0x160|00 |. |
|
||||
| | | [1]{}: box 0x161-0x184.7 (36)
|
||||
0x160| 00 00 00 24 | ...$ | size: 36 0x161-0x164.7 (4)
|
||||
0x160| 65 64 74 73 | edts | type: "edts" (Edit list container) 0x165-0x168.7 (4)
|
||||
| | | boxes[0:1]: 0x169-0x184.7 (28)
|
||||
| | | [0]{}: box 0x169-0x184.7 (28)
|
||||
0x160| 00 00 00 1c | .... | size: 28 0x169-0x16c.7 (4)
|
||||
0x160| 65 6c 73| els| type: "elst" (An edit list) 0x16d-0x170.7 (4)
|
||||
0x170|74 |t |
|
||||
0x170| 00 | . | version: 0 0x171-0x171.7 (1)
|
||||
0x170| 00 00 00 | ... | flags: 0 0x172-0x174.7 (3)
|
||||
0x170| 00 00 00 01 | .... | entry_count: 1 0x175-0x178.7 (4)
|
||||
| | | entries[0:1]: 0x179-0x184.7 (12)
|
||||
| | | [0]{}: entry 0x179-0x184.7 (12)
|
||||
0x170| 00 00 00 28 | ...( | segment_duration: 40 0x179-0x17c.7 (4)
|
||||
0x170| 00 00 00| ...| media_time: 0 0x17d-0x180.7 (4)
|
||||
0x180|00 |. |
|
||||
0x180| 00 01 00 00 | .... | media_rate: 1 0x181-0x184.7 (4)
|
||||
| | | [2]{}: box 0x185-0x33d.7 (441)
|
||||
0x180| 00 00 01 b9 | .... | size: 441 0x185-0x188.7 (4)
|
||||
0x180| 6d 64 69 61 | mdia | type: "mdia" (Container for the media information in a track) 0x189-0x18c.7 (4)
|
||||
| | | boxes[0:3]: 0x18d-0x33d.7 (433)
|
||||
| | | [0]{}: box 0x18d-0x1ac.7 (32)
|
||||
0x180| 00 00 00| ...| size: 32 0x18d-0x190.7 (4)
|
||||
0x190|20 | |
|
||||
0x190| 6d 64 68 64 | mdhd | type: "mdhd" (Media header, overall information about the media) 0x191-0x194.7 (4)
|
||||
0x190| 00 | . | version: 0 0x195-0x195.7 (1)
|
||||
0x190| 00 00 00 | ... | flags: 0 0x196-0x198.7 (3)
|
||||
0x190| 00 00 00 00 | .... | creation_time: 0 (1904-01-04T00:00:00Z) 0x199-0x19c.7 (4)
|
||||
0x190| 00 00 00| ...| modification_time: 0 (1904-01-04T00:00:00Z) 0x19d-0x1a0.7 (4)
|
||||
0x1a0|00 |. |
|
||||
0x1a0| 00 00 32 00 | ..2. | time_scale: 12800 0x1a1-0x1a4.7 (4)
|
||||
0x1a0| 00 00 02 00 | .... | duration: 512 0x1a5-0x1a8.7 (4)
|
||||
0x1a0| 55 c4 | U. | language: "und" 0x1a9-0x1aa.7 (2)
|
||||
0x1a0| 00 00 | .. | quality: 0 0x1ab-0x1ac.7 (2)
|
||||
| | | [1]{}: box 0x1ad-0x1d9.7 (45)
|
||||
0x1a0| 00 00 00| ...| size: 45 0x1ad-0x1b0.7 (4)
|
||||
0x1b0|2d |- |
|
||||
0x1b0| 68 64 6c 72 | hdlr | type: "hdlr" (Handler, declares the media (handler) type) 0x1b1-0x1b4.7 (4)
|
||||
0x1b0| 00 | . | version: 0 0x1b5-0x1b5.7 (1)
|
||||
0x1b0| 00 00 00 | ... | flags: 0 0x1b6-0x1b8.7 (3)
|
||||
0x1b0| 00 00 00 00 | .... | component_type: "" 0x1b9-0x1bc.7 (4)
|
||||
0x1b0| 76 69 64| vid| component_subtype: "vide" (Video Track) 0x1bd-0x1c0.7 (4)
|
||||
0x1c0|65 |e |
|
||||
0x1c0| 00 00 00 00 | .... | component_manufacturer: "" 0x1c1-0x1c4.7 (4)
|
||||
0x1c0| 00 00 00 00 | .... | component_flags: 0 0x1c5-0x1c8.7 (4)
|
||||
0x1c0| 00 00 00 00 | .... | component_flags_mask: 0 0x1c9-0x1cc.7 (4)
|
||||
0x1c0| 56 69 64| Vid| component_name: "VideoHandler" 0x1cd-0x1d9.7 (13)
|
||||
0x1d0|65 6f 48 61 6e 64 6c 65 72 00 |eoHandler. |
|
||||
| | | [2]{}: box 0x1da-0x33d.7 (356)
|
||||
0x1d0| 00 00 01 64 | ...d | size: 356 0x1da-0x1dd.7 (4)
|
||||
0x1d0| 6d 69| mi| type: "minf" (Media information container) 0x1de-0x1e1.7 (4)
|
||||
0x1e0|6e 66 |nf |
|
||||
| | | boxes[0:3]: 0x1e2-0x33d.7 (348)
|
||||
| | | [0]{}: box 0x1e2-0x1f5.7 (20)
|
||||
0x1e0| 00 00 00 14 | .... | size: 20 0x1e2-0x1e5.7 (4)
|
||||
0x1e0| 76 6d 68 64 | vmhd | type: "vmhd" (Video media header, overall information (video track only)) 0x1e6-0x1e9.7 (4)
|
||||
0x1e0| 00 | . | version: 0 0x1ea-0x1ea.7 (1)
|
||||
0x1e0| 00 00 01 | ... | flags: 1 0x1eb-0x1ed.7 (3)
|
||||
0x1e0| 00 00| ..| graphicsmode: 0 0x1ee-0x1ef.7 (2)
|
||||
| | | opcolor[0:3]: 0x1f0-0x1f5.7 (6)
|
||||
0x1f0|00 00 |.. | [0]: 0 value 0x1f0-0x1f1.7 (2)
|
||||
0x1f0| 00 00 | .. | [1]: 0 value 0x1f2-0x1f3.7 (2)
|
||||
0x1f0| 00 00 | .. | [2]: 0 value 0x1f4-0x1f5.7 (2)
|
||||
| | | [1]{}: box 0x1f6-0x219.7 (36)
|
||||
0x1f0| 00 00 00 24 | ...$ | size: 36 0x1f6-0x1f9.7 (4)
|
||||
0x1f0| 64 69 6e 66 | dinf | type: "dinf" (Data information box, container) 0x1fa-0x1fd.7 (4)
|
||||
| | | boxes[0:1]: 0x1fe-0x219.7 (28)
|
||||
| | | [0]{}: box 0x1fe-0x219.7 (28)
|
||||
0x1f0| 00 00| ..| size: 28 0x1fe-0x201.7 (4)
|
||||
0x200|00 1c |.. |
|
||||
0x200| 64 72 65 66 | dref | type: "dref" (Data reference box, declares source(s) of media data in track) 0x202-0x205.7 (4)
|
||||
0x200| 00 | . | version: 0 0x206-0x206.7 (1)
|
||||
0x200| 00 00 00 | ... | flags: 0 0x207-0x209.7 (3)
|
||||
0x200| 00 00 00 01 | .... | entry_count: 1 0x20a-0x20d.7 (4)
|
||||
| | | boxes[0:1]: 0x20e-0x219.7 (12)
|
||||
| | | [0]{}: box 0x20e-0x219.7 (12)
|
||||
0x200| 00 00| ..| size: 12 0x20e-0x211.7 (4)
|
||||
0x210|00 0c |.. |
|
||||
0x210| 75 72 6c 20 | url | type: "url " 0x212-0x215.7 (4)
|
||||
0x210| 00 | . | version: 0 0x216-0x216.7 (1)
|
||||
0x210| 00 00 01 | ... | flags: 1 0x217-0x219.7 (3)
|
||||
| | | data: raw bits 0x21a-NA (0)
|
||||
| | | [2]{}: box 0x21a-0x33d.7 (292)
|
||||
0x210| 00 00 01 24 | ...$ | size: 292 0x21a-0x21d.7 (4)
|
||||
0x210| 73 74| st| type: "stbl" (Sample table box, container for the time/space map) 0x21e-0x221.7 (4)
|
||||
0x220|62 6c |bl |
|
||||
| | | boxes[0:5]: 0x222-0x33d.7 (284)
|
||||
| | | [0]{}: box 0x222-0x2e1.7 (192)
|
||||
0x220| 00 00 00 c0 | .... | size: 192 0x222-0x225.7 (4)
|
||||
0x220| 73 74 73 64 | stsd | type: "stsd" (Sample descriptions (codec types, initialization etc.)) 0x226-0x229.7 (4)
|
||||
0x220| 00 | . | version: 0 0x22a-0x22a.7 (1)
|
||||
0x220| 00 00 00 | ... | flags: 0 0x22b-0x22d.7 (3)
|
||||
0x220| 00 00| ..| entry_count: 1 0x22e-0x231.7 (4)
|
||||
0x230|00 01 |.. |
|
||||
| | | boxes[0:1]: 0x232-0x2e1.7 (176)
|
||||
| | | [0]{}: box 0x232-0x2e1.7 (176)
|
||||
0x230| 00 00 00 b0 | .... | size: 176 0x232-0x235.7 (4)
|
||||
0x230| 6d 70 34 76 | mp4v | type: "mp4v" (MPEG-4 Visual) 0x236-0x239.7 (4)
|
||||
0x230| 00 00 00 00 00 00| ......| reserved: raw bits 0x23a-0x23f.7 (6)
|
||||
0x240|00 01 |.. | data_reference_index: 1 0x240-0x241.7 (2)
|
||||
0x240| 00 00 | .. | version: 0 0x242-0x243.7 (2)
|
||||
0x240| 00 00 | .. | revision_level: 0 0x244-0x245.7 (2)
|
||||
0x240| 00 00 00 00 | .... | max_packet_size: 0 0x246-0x249.7 (4)
|
||||
0x240| 00 00 00 00 | .... | temporal_quality: 0 0x24a-0x24d.7 (4)
|
||||
0x240| 00 00| ..| spatial_quality: 0 0x24e-0x251.7 (4)
|
||||
0x250|00 00 |.. |
|
||||
0x250| 00 02 | .. | width: 2 0x252-0x253.7 (2)
|
||||
0x250| 00 02 | .. | height: 2 0x254-0x255.7 (2)
|
||||
0x250| 00 48 00 00 | .H.. | horizontal_resolution: 72 0x256-0x259.7 (4)
|
||||
0x250| 00 48 00 00 | .H.. | vertical_resolution: 72 0x25a-0x25d.7 (4)
|
||||
0x250| 00 00| ..| data_size: 0 0x25e-0x261.7 (4)
|
||||
0x260|00 00 |.. |
|
||||
0x260| 00 01 | .. | frame_count: 1 0x262-0x263.7 (2)
|
||||
0x260| 11 4c 61 76 63 35 39 2e 33 37 2e 31| .Lavc59.37.1| compressor_name: "Lavc59.37.100 png" 0x264-0x283.7 (32)
|
||||
0x270|30 30 20 70 6e 67 00 00 00 00 00 00 00 00 00 00|00 png..........|
|
||||
0x280|00 00 00 00 |.... |
|
||||
0x280| 00 18 | .. | depth: 24 0x284-0x285.7 (2)
|
||||
0x280| ff ff | .. | color_table_id: -1 0x286-0x287.7 (2)
|
||||
| | | boxes[0:4]: 0x288-0x2e1.7 (90)
|
||||
| | | [0]{}: box 0x288-0x2b3.7 (44)
|
||||
0x280| 00 00 00 2c | ..., | size: 44 0x288-0x28b.7 (4)
|
||||
0x280| 65 73 64 73| esds| type: "esds" (Elementary stream descriptor) 0x28c-0x28f.7 (4)
|
||||
0x290|00 00 00 00 |.... | version: 0 0x290-0x293.7 (4)
|
||||
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef| descriptor{}: (mpeg_es) 0x294-0x2b3.7 (32)
|
||||
0x290| 03 | . | tag_id: "ES_DescrTag" (3) 0x294-0x294.7 (1)
|
||||
0x290| 80 80 80 1b | .... | length: 27 0x295-0x298.7 (4)
|
||||
0x290| 00 01 | .. | es_id: 1 0x299-0x29a.7 (2)
|
||||
0x290| 00 | . | stream_dependency_flag: false 0x29b-0x29b (0.1)
|
||||
0x290| 00 | . | url_flag: false 0x29b.1-0x29b.1 (0.1)
|
||||
0x290| 00 | . | ocr_stream_flag: false 0x29b.2-0x29b.2 (0.1)
|
||||
0x290| 00 | . | stream_priority: 0 0x29b.3-0x29b.7 (0.5)
|
||||
| | | dec_config_descr{}: 0x29c-0x2ad.7 (18)
|
||||
0x290| 04 | . | tag_id: "DecoderConfigDescrTag" (4) 0x29c-0x29c.7 (1)
|
||||
0x290| 80 80 80| ...| length: 13 0x29d-0x2a0.7 (4)
|
||||
0x2a0|0d |. |
|
||||
0x2a0| 6d | m | object_type_indication: "MPEGObjectTypePNG" (109) 0x2a1-0x2a1.7 (1)
|
||||
0x2a0| 11 | . | stream_type: "VisualStream" (4) 0x2a2-0x2a2.5 (0.6)
|
||||
0x2a0| 11 | . | upstream: false 0x2a2.6-0x2a2.6 (0.1)
|
||||
0x2a0| 11 | . | specific_info_flag: true 0x2a2.7-0x2a2.7 (0.1)
|
||||
0x2a0| 00 00 00 | ... | buffer_size_db: 0 0x2a3-0x2a5.7 (3)
|
||||
0x2a0| 00 03 0d 40 | ...@ | max_bit_rate: 200000 0x2a6-0x2a9.7 (4)
|
||||
0x2a0| 00 00 48 a8 | ..H. | avg_bit_rate: 18600 0x2aa-0x2ad.7 (4)
|
||||
| | | sl_config_descr{}: 0x2ae-0x2b3.7 (6)
|
||||
0x2a0| 06 | . | tag_id: "SLConfigDescrTag" (6) 0x2ae-0x2ae.7 (1)
|
||||
0x2a0| 80| .| length: 1 0x2af-0x2b2.7 (4)
|
||||
0x2b0|80 80 01 |... |
|
||||
0x2b0| 02 | . | data: raw bits 0x2b3-0x2b3.7 (1)
|
||||
| | | [1]{}: box 0x2b4-0x2bd.7 (10)
|
||||
0x2b0| 00 00 00 0a | .... | size: 10 0x2b4-0x2b7.7 (4)
|
||||
0x2b0| 66 69 65 6c | fiel | type: "fiel" (Video field order) 0x2b8-0x2bb.7 (4)
|
||||
0x2b0| 01 00 | .. | data: raw bits 0x2bc-0x2bd.7 (2)
|
||||
| | | [2]{}: box 0x2be-0x2cd.7 (16)
|
||||
0x2b0| 00 00| ..| size: 16 0x2be-0x2c1.7 (4)
|
||||
0x2c0|00 10 |.. |
|
||||
0x2c0| 70 61 73 70 | pasp | type: "pasp" (Pixel aspect ratio) 0x2c2-0x2c5.7 (4)
|
||||
0x2c0| 00 00 00 01 | .... | h_spacing: 1 0x2c6-0x2c9.7 (4)
|
||||
0x2c0| 00 00 00 01 | .... | v_spacing: 1 0x2ca-0x2cd.7 (4)
|
||||
| | | [3]{}: box 0x2ce-0x2e1.7 (20)
|
||||
0x2c0| 00 00| ..| size: 20 0x2ce-0x2d1.7 (4)
|
||||
0x2d0|00 14 |.. |
|
||||
0x2d0| 62 74 72 74 | btrt | type: "btrt" (Bitrate) 0x2d2-0x2d5.7 (4)
|
||||
0x2d0| 00 00 00 00 | .... | decoding_buffer_size: 0 0x2d6-0x2d9.7 (4)
|
||||
0x2d0| 00 03 0d 40 | ...@ | max_bitrate: 200000 0x2da-0x2dd.7 (4)
|
||||
0x2d0| 00 00| ..| avg_bitrate: 18600 0x2de-0x2e1.7 (4)
|
||||
0x2e0|48 a8 |H. |
|
||||
| | | [1]{}: box 0x2e2-0x2f9.7 (24)
|
||||
0x2e0| 00 00 00 18 | .... | size: 24 0x2e2-0x2e5.7 (4)
|
||||
0x2e0| 73 74 74 73 | stts | type: "stts" (Sample time-to-sample) 0x2e6-0x2e9.7 (4)
|
||||
0x2e0| 00 | . | version: 0 0x2ea-0x2ea.7 (1)
|
||||
0x2e0| 00 00 00 | ... | flags: 0 0x2eb-0x2ed.7 (3)
|
||||
0x2e0| 00 00| ..| entry_count: 1 0x2ee-0x2f1.7 (4)
|
||||
0x2f0|00 01 |.. |
|
||||
| | | entries[0:1]: 0x2f2-0x2f9.7 (8)
|
||||
| | | [0]{}: entry 0x2f2-0x2f9.7 (8)
|
||||
0x2f0| 00 00 00 01 | .... | count: 1 0x2f2-0x2f5.7 (4)
|
||||
0x2f0| 00 00 02 00 | .... | delta: 512 0x2f6-0x2f9.7 (4)
|
||||
| | | [2]{}: box 0x2fa-0x315.7 (28)
|
||||
0x2f0| 00 00 00 1c | .... | size: 28 0x2fa-0x2fd.7 (4)
|
||||
0x2f0| 73 74| st| type: "stsc" (Sample-to-chunk, partial data-offset information) 0x2fe-0x301.7 (4)
|
||||
0x300|73 63 |sc |
|
||||
0x300| 00 | . | version: 0 0x302-0x302.7 (1)
|
||||
0x300| 00 00 00 | ... | flags: 0 0x303-0x305.7 (3)
|
||||
0x300| 00 00 00 01 | .... | entry_count: 1 0x306-0x309.7 (4)
|
||||
| | | entries[0:1]: 0x30a-0x315.7 (12)
|
||||
| | | [0]{}: entry 0x30a-0x315.7 (12)
|
||||
0x300| 00 00 00 01 | .... | first_chunk: 1 0x30a-0x30d.7 (4)
|
||||
0x300| 00 00| ..| samples_per_chunk: 1 0x30e-0x311.7 (4)
|
||||
0x310|00 01 |.. |
|
||||
0x310| 00 00 00 01 | .... | sample_description_id: 1 0x312-0x315.7 (4)
|
||||
| | | [3]{}: box 0x316-0x329.7 (20)
|
||||
0x310| 00 00 00 14 | .... | size: 20 0x316-0x319.7 (4)
|
||||
0x310| 73 74 73 7a | stsz | type: "stsz" (Sample sizes (framing)) 0x31a-0x31d.7 (4)
|
||||
0x310| 00 | . | version: 0 0x31e-0x31e.7 (1)
|
||||
0x310| 00| .| flags: 0 0x31f-0x321.7 (3)
|
||||
0x320|00 00 |.. |
|
||||
0x320| 00 00 00 5d | ...] | sample_size: 93 0x322-0x325.7 (4)
|
||||
0x320| 00 00 00 01 | .... | entry_count: 1 0x326-0x329.7 (4)
|
||||
| | | [4]{}: box 0x32a-0x33d.7 (20)
|
||||
0x320| 00 00 00 14 | .... | size: 20 0x32a-0x32d.7 (4)
|
||||
0x320| 73 74| st| type: "stco" (Chunk offset, partial data-offset information) 0x32e-0x331.7 (4)
|
||||
0x330|63 6f |co |
|
||||
0x330| 00 | . | version: 0 0x332-0x332.7 (1)
|
||||
0x330| 00 00 00 | ... | flags: 0 0x333-0x335.7 (3)
|
||||
0x330| 00 00 00 01 | .... | entry_count: 1 0x336-0x339.7 (4)
|
||||
| | | entries[0:1]: 0x33a-0x33d.7 (4)
|
||||
0x330| 00 00 00 2c | ..., | [0]: 44 chunk_offset 0x33a-0x33d.7 (4)
|
||||
| | | [2]{}: box 0x33e-0x39f.7 (98)
|
||||
0x330| 00 00| ..| size: 98 0x33e-0x341.7 (4)
|
||||
0x340|00 62 |.b |
|
||||
0x340| 75 64 74 61 | udta | type: "udta" (User-data) 0x342-0x345.7 (4)
|
||||
| | | boxes[0:1]: 0x346-0x39f.7 (90)
|
||||
| | | [0]{}: box 0x346-0x39f.7 (90)
|
||||
0x340| 00 00 00 5a | ...Z | size: 90 0x346-0x349.7 (4)
|
||||
0x340| 6d 65 74 61 | meta | type: "meta" (Metadata container) 0x34a-0x34d.7 (4)
|
||||
0x340| 00 00| ..| maybe_flags: 0 0x34e-0x351.7 (4)
|
||||
0x350|00 00 |.. |
|
||||
| | | boxes[0:2]: 0x352-0x39f.7 (78)
|
||||
| | | [0]{}: box 0x352-0x372.7 (33)
|
||||
0x350| 00 00 00 21 | ...! | size: 33 0x352-0x355.7 (4)
|
||||
0x350| 68 64 6c 72 | hdlr | type: "hdlr" (Handler, declares the media (handler) type) 0x356-0x359.7 (4)
|
||||
0x350| 00 | . | version: 0 0x35a-0x35a.7 (1)
|
||||
0x350| 00 00 00 | ... | flags: 0 0x35b-0x35d.7 (3)
|
||||
0x350| 00 00| ..| component_type: "" 0x35e-0x361.7 (4)
|
||||
0x360|00 00 |.. |
|
||||
0x360| 6d 64 69 72 | mdir | component_subtype: "mdir" (Metadata) 0x362-0x365.7 (4)
|
||||
0x360| 61 70 70 6c | appl | component_manufacturer: "appl" 0x366-0x369.7 (4)
|
||||
0x360| 00 00 00 00 | .... | component_flags: 0 0x36a-0x36d.7 (4)
|
||||
0x360| 00 00| ..| component_flags_mask: 0 0x36e-0x371.7 (4)
|
||||
0x370|00 00 |.. |
|
||||
0x370| 00 | . | component_name: "" 0x372-0x372.7 (1)
|
||||
| | | [1]{}: box 0x373-0x39f.7 (45)
|
||||
0x370| 00 00 00 2d | ...- | size: 45 0x373-0x376.7 (4)
|
||||
0x370| 69 6c 73 74 | ilst | type: "ilst" 0x377-0x37a.7 (4)
|
||||
| | | boxes[0:1]: 0x37b-0x39f.7 (37)
|
||||
| | | [0]{}: box 0x37b-0x39f.7 (37)
|
||||
0x370| 00 00 00 25 | ...% | size: 37 0x37b-0x37e.7 (4)
|
||||
0x370| a9| .| type: "<22>too" 0x37f-0x382.7 (4)
|
||||
0x380|74 6f 6f |too |
|
||||
| | | boxes[0:1]: 0x383-0x39f.7 (29)
|
||||
| | | [0]{}: box 0x383-0x39f.7 (29)
|
||||
0x380| 00 00 00 1d | .... | size: 29 0x383-0x386.7 (4)
|
||||
0x380| 64 61 74 61 | data | type: "data" 0x387-0x38a.7 (4)
|
||||
0x380| 00 | . | version: 0 0x38b-0x38b.7 (1)
|
||||
0x380| 00 00 01 | ... | flags: 1 0x38c-0x38e.7 (3)
|
||||
0x380| 00| .| reserved: 0 0x38f-0x392.7 (4)
|
||||
0x390|00 00 00 |... |
|
||||
0x390| 4c 61 76 66 35 39 2e 32 37 2e 31 30 30| Lavf59.27.100| data: "Lavf59.27.100" 0x393-0x39f.7 (13)
|
||||
| | | tracks[0:1]: 0x2c-0x39f.7 (884)
|
||||
| | | [0]{}: track 0x2c-0x39f.7 (884)
|
||||
| | | samples[0:1]: 0x2c-0x88.7 (93)
|
||||
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef| [0]{}: sample (png) 0x2c-0x88.7 (93)
|
||||
0x020| 89 50 4e 47| .PNG| signature: raw bits (valid) 0x2c-0x33.7 (8)
|
||||
0x030|0d 0a 1a 0a |.... |
|
||||
| | | chunks[0:4]: 0x34-0x88.7 (85)
|
||||
| | | [0]{}: chunk 0x34-0x4c.7 (25)
|
||||
0x030| 00 00 00 0d | .... | length: 13 0x34-0x37.7 (4)
|
||||
0x030| 49 48 44 52 | IHDR | type: "IHDR" 0x38-0x3b.7 (4)
|
||||
0x030| 49 | I | ancillary: false 0x38.3-0x38.3 (0.1)
|
||||
0x030| 48 | H | private: false 0x39.3-0x39.3 (0.1)
|
||||
0x030| 44 | D | reserved: false 0x3a.3-0x3a.3 (0.1)
|
||||
0x030| 52 | R | safe_to_copy: true 0x3b.3-0x3b.3 (0.1)
|
||||
0x030| 00 00 00 02| ....| width: 2 0x3c-0x3f.7 (4)
|
||||
0x040|00 00 00 02 |.... | height: 2 0x40-0x43.7 (4)
|
||||
0x040| 08 | . | bit_depth: 8 0x44-0x44.7 (1)
|
||||
0x040| 02 | . | color_type: "rgb" (2) 0x45-0x45.7 (1)
|
||||
0x040| 00 | . | compression_method: "deflate" (0) 0x46-0x46.7 (1)
|
||||
0x040| 00 | . | filter_method: "adaptive_filtering" (0) 0x47-0x47.7 (1)
|
||||
0x040| 00 | . | interlace_method: "none" (0) 0x48-0x48.7 (1)
|
||||
0x040| fd d4 9a 73 | ...s | crc: 0xfdd49a73 (valid) 0x49-0x4c.7 (4)
|
||||
| | | [1]{}: chunk 0x4d-0x61.7 (21)
|
||||
0x040| 00 00 00| ...| length: 9 0x4d-0x50.7 (4)
|
||||
0x050|09 |. |
|
||||
0x050| 70 48 59 73 | pHYs | type: "pHYs" 0x51-0x54.7 (4)
|
||||
0x050| 70 | p | ancillary: true 0x51.3-0x51.3 (0.1)
|
||||
0x050| 48 | H | private: false 0x52.3-0x52.3 (0.1)
|
||||
0x050| 59 | Y | reserved: true 0x53.3-0x53.3 (0.1)
|
||||
0x050| 73 | s | safe_to_copy: true 0x54.3-0x54.3 (0.1)
|
||||
0x050| 00 00 00 01 | .... | x_pixels_per_unit: 1 0x55-0x58.7 (4)
|
||||
0x050| 00 00 00 01 | .... | y_pixels_per_unit: 1 0x59-0x5c.7 (4)
|
||||
0x050| 00 | . | unit: 0 0x5d-0x5d.7 (1)
|
||||
0x050| 4f 25| O%| crc: 0x4f25c4d6 (valid) 0x5e-0x61.7 (4)
|
||||
0x060|c4 d6 |.. |
|
||||
| | | [2]{}: chunk 0x62-0x7c.7 (27)
|
||||
0x060| 00 00 00 0f | .... | length: 15 0x62-0x65.7 (4)
|
||||
0x060| 49 44 41 54 | IDAT | type: "IDAT" 0x66-0x69.7 (4)
|
||||
0x060| 49 | I | ancillary: false 0x66.3-0x66.3 (0.1)
|
||||
0x060| 44 | D | private: false 0x67.3-0x67.3 (0.1)
|
||||
0x060| 41 | A | reserved: false 0x68.3-0x68.3 (0.1)
|
||||
0x060| 54 | T | safe_to_copy: true 0x69.3-0x69.3 (0.1)
|
||||
0x060| 78 9c 63 60 60 60| x.c```| data: raw bits 0x6a-0x78.7 (15)
|
||||
0x070|f8 0f c3 ff 01 12 fb 03 fd |......... |
|
||||
0x070| 59 a8 83 f3 | Y... | crc: 0x59a883f3 (valid) 0x79-0x7c.7 (4)
|
||||
| | | [3]{}: chunk 0x7d-0x88.7 (12)
|
||||
0x070| 00 00 00| ...| length: 0 0x7d-0x80.7 (4)
|
||||
0x080|00 |. |
|
||||
0x080| 49 45 4e 44 | IEND | type: "IEND" 0x81-0x84.7 (4)
|
||||
0x080| 49 | I | ancillary: false 0x81.3-0x81.3 (0.1)
|
||||
0x080| 45 | E | private: false 0x82.3-0x82.3 (0.1)
|
||||
0x080| 4e | N | reserved: false 0x83.3-0x83.3 (0.1)
|
||||
0x080| 44 | D | safe_to_copy: false 0x84.3-0x84.3 (0.1)
|
||||
0x080| ae 42 60 82 | .B`. | crc: 0xae426082 (valid) 0x85-0x88.7 (4)
|
||||
| | | id: 1 0x3a0-NA (0)
|
||||
| | | data_format: "mp4v" (MPEG-4 Visual) 0x3a0-NA (0)
|
BIN
format/mp4/testdata/png_no_hdlr.mp4
vendored
Normal file
BIN
format/mp4/testdata/png_no_hdlr.mp4
vendored
Normal file
Binary file not shown.
356
format/mp4/testdata/png_no_hdlr.mp4.fqtest
vendored
Normal file
356
format/mp4/testdata/png_no_hdlr.mp4.fqtest
vendored
Normal file
@ -0,0 +1,356 @@
|
||||
# inspired by https://github.com/corkami/pocs/blob/master/mini/mp4.mp4
|
||||
# ffmpeg -f lavfi -i testsrc=size=2x2 -c:v png -t 10ms png.mp4
|
||||
# mp4edit --remove 'moov[0]/trak[0]/mdia[0]/hdlr[0]' png.mp4 png_no_hdlr.mp4
|
||||
$ fq dv png_no_hdlr.mp4
|
||||
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: png_no_hdlr.mp4 (mp4) 0x0-0x372.7 (883)
|
||||
| | | boxes[0:4]: 0x0-0x372.7 (883)
|
||||
| | | [0]{}: box 0x0-0x1b.7 (28)
|
||||
0x000|00 00 00 1c |.... | size: 28 0x0-0x3.7 (4)
|
||||
0x000| 66 74 79 70 | ftyp | type: "ftyp" (File type and compatibility) 0x4-0x7.7 (4)
|
||||
0x000| 69 73 6f 6d | isom | major_brand: "isom" 0x8-0xb.7 (4)
|
||||
0x000| 00 00 02 00| ....| minor_version: 512 0xc-0xf.7 (4)
|
||||
| | | brands[0:3]: 0x10-0x1b.7 (12)
|
||||
0x010|69 73 6f 6d |isom | [0]: "isom" brand (All files based on the ISO Base Media File Format) 0x10-0x13.7 (4)
|
||||
0x010| 69 73 6f 32 | iso2 | [1]: "iso2" brand (All files based on the 2004 edition of the ISO file format) 0x14-0x17.7 (4)
|
||||
0x010| 6d 70 34 31 | mp41 | [2]: "mp41" brand (MP4 version 1) 0x18-0x1b.7 (4)
|
||||
| | | [1]{}: box 0x1c-0x23.7 (8)
|
||||
0x010| 00 00 00 08| ....| size: 8 0x1c-0x1f.7 (4)
|
||||
0x020|66 72 65 65 |free | type: "free" (Free space) 0x20-0x23.7 (4)
|
||||
| | | data: raw bits 0x24-NA (0)
|
||||
| | | [2]{}: box 0x24-0x30d.7 (746)
|
||||
0x020| 00 00 02 ea | .... | size: 746 0x24-0x27.7 (4)
|
||||
0x020| 6d 6f 6f 76 | moov | type: "moov" (Container for all the meta-data) 0x28-0x2b.7 (4)
|
||||
| | | boxes[0:3]: 0x2c-0x30d.7 (738)
|
||||
| | | [0]{}: box 0x2c-0x97.7 (108)
|
||||
0x020| 00 00 00 6c| ...l| size: 108 0x2c-0x2f.7 (4)
|
||||
0x030|6d 76 68 64 |mvhd | type: "mvhd" (Movie header, overall declarations) 0x30-0x33.7 (4)
|
||||
0x030| 00 | . | version: 0 0x34-0x34.7 (1)
|
||||
0x030| 00 00 00 | ... | flags: 0 0x35-0x37.7 (3)
|
||||
0x030| 00 00 00 00 | .... | creation_time: 0 (1904-01-04T00:00:00Z) 0x38-0x3b.7 (4)
|
||||
0x030| 00 00 00 00| ....| modification_time: 0 (1904-01-04T00:00:00Z) 0x3c-0x3f.7 (4)
|
||||
0x040|00 00 03 e8 |.... | time_scale: 1000 0x40-0x43.7 (4)
|
||||
0x040| 00 00 00 28 | ...( | duration: 40 0x44-0x47.7 (4)
|
||||
0x040| 00 01 00 00 | .... | preferred_rate: 1 0x48-0x4b.7 (4)
|
||||
0x040| 01 00 | .. | preferred_volume: 1 0x4c-0x4d.7 (2)
|
||||
0x040| 00 00| ..| reserved: "\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00" 0x4e-0x57.7 (10)
|
||||
0x050|00 00 00 00 00 00 00 00 |........ |
|
||||
| | | matrix_structure{}: 0x58-0x7b.7 (36)
|
||||
0x050| 00 01 00 00 | .... | a: 1 0x58-0x5b.7 (4)
|
||||
0x050| 00 00 00 00| ....| b: 0 0x5c-0x5f.7 (4)
|
||||
0x060|00 00 00 00 |.... | u: 0 0x60-0x63.7 (4)
|
||||
0x060| 00 00 00 00 | .... | c: 0 0x64-0x67.7 (4)
|
||||
0x060| 00 01 00 00 | .... | d: 1 0x68-0x6b.7 (4)
|
||||
0x060| 00 00 00 00| ....| v: 0 0x6c-0x6f.7 (4)
|
||||
0x070|00 00 00 00 |.... | x: 0 0x70-0x73.7 (4)
|
||||
0x070| 00 00 00 00 | .... | y: 0 0x74-0x77.7 (4)
|
||||
0x070| 40 00 00 00 | @... | w: 1 0x78-0x7b.7 (4)
|
||||
0x070| 00 00 00 00| ....| preview_time: 0 0x7c-0x7f.7 (4)
|
||||
0x080|00 00 00 00 |.... | preview_duration: 0 0x80-0x83.7 (4)
|
||||
0x080| 00 00 00 00 | .... | poster_time: 0 0x84-0x87.7 (4)
|
||||
0x080| 00 00 00 00 | .... | selection_time: 0 0x88-0x8b.7 (4)
|
||||
0x080| 00 00 00 00| ....| selection_duration: 0 0x8c-0x8f.7 (4)
|
||||
0x090|00 00 00 00 |.... | current_time: 0 0x90-0x93.7 (4)
|
||||
0x090| 00 00 00 02 | .... | next_track_id: 2 0x94-0x97.7 (4)
|
||||
| | | [1]{}: box 0x98-0x2ab.7 (532)
|
||||
0x090| 00 00 02 14 | .... | size: 532 0x98-0x9b.7 (4)
|
||||
0x090| 74 72 61 6b| trak| type: "trak" (Container for an individual track or stream) 0x9c-0x9f.7 (4)
|
||||
| | | boxes[0:3]: 0xa0-0x2ab.7 (524)
|
||||
| | | [0]{}: box 0xa0-0xfb.7 (92)
|
||||
0x0a0|00 00 00 5c |...\ | size: 92 0xa0-0xa3.7 (4)
|
||||
0x0a0| 74 6b 68 64 | tkhd | type: "tkhd" (Track header, overall information about the track) 0xa4-0xa7.7 (4)
|
||||
0x0a0| 00 | . | version: 0 0xa8-0xa8.7 (1)
|
||||
0x0a0| 00 00 03 | ... | flags: 3 0xa9-0xab.7 (3)
|
||||
0x0a0| 00 00 00 00| ....| creation_time: 0 (1904-01-04T00:00:00Z) 0xac-0xaf.7 (4)
|
||||
0x0b0|00 00 00 00 |.... | modification_time: 0 (1904-01-04T00:00:00Z) 0xb0-0xb3.7 (4)
|
||||
0x0b0| 00 00 00 01 | .... | track_id: 1 0xb4-0xb7.7 (4)
|
||||
0x0b0| 00 00 00 00 | .... | reserved1: 0 0xb8-0xbb.7 (4)
|
||||
0x0b0| 00 00 00 28| ...(| duration: 40 0xbc-0xbf.7 (4)
|
||||
0x0c0|00 00 00 00 00 00 00 00 |........ | reserved2: raw bits 0xc0-0xc7.7 (8)
|
||||
0x0c0| 00 00 | .. | layer: 0 0xc8-0xc9.7 (2)
|
||||
0x0c0| 00 00 | .. | alternate_group: 0 0xca-0xcb.7 (2)
|
||||
0x0c0| 00 00 | .. | volume: 0 0xcc-0xcd.7 (2)
|
||||
0x0c0| 00 00| ..| reserved3: 0 0xce-0xcf.7 (2)
|
||||
| | | matrix_structure{}: 0xd0-0xf3.7 (36)
|
||||
0x0d0|00 01 00 00 |.... | a: 1 0xd0-0xd3.7 (4)
|
||||
0x0d0| 00 00 00 00 | .... | b: 0 0xd4-0xd7.7 (4)
|
||||
0x0d0| 00 00 00 00 | .... | u: 0 0xd8-0xdb.7 (4)
|
||||
0x0d0| 00 00 00 00| ....| c: 0 0xdc-0xdf.7 (4)
|
||||
0x0e0|00 01 00 00 |.... | d: 1 0xe0-0xe3.7 (4)
|
||||
0x0e0| 00 00 00 00 | .... | v: 0 0xe4-0xe7.7 (4)
|
||||
0x0e0| 00 00 00 00 | .... | x: 0 0xe8-0xeb.7 (4)
|
||||
0x0e0| 00 00 00 00| ....| y: 0 0xec-0xef.7 (4)
|
||||
0x0f0|40 00 00 00 |@... | w: 1 0xf0-0xf3.7 (4)
|
||||
0x0f0| 00 02 00 00 | .... | track_width: 2 0xf4-0xf7.7 (4)
|
||||
0x0f0| 00 02 00 00 | .... | track_height: 2 0xf8-0xfb.7 (4)
|
||||
| | | [1]{}: box 0xfc-0x11f.7 (36)
|
||||
0x0f0| 00 00 00 24| ...$| size: 36 0xfc-0xff.7 (4)
|
||||
0x100|65 64 74 73 |edts | type: "edts" (Edit list container) 0x100-0x103.7 (4)
|
||||
| | | boxes[0:1]: 0x104-0x11f.7 (28)
|
||||
| | | [0]{}: box 0x104-0x11f.7 (28)
|
||||
0x100| 00 00 00 1c | .... | size: 28 0x104-0x107.7 (4)
|
||||
0x100| 65 6c 73 74 | elst | type: "elst" (An edit list) 0x108-0x10b.7 (4)
|
||||
0x100| 00 | . | version: 0 0x10c-0x10c.7 (1)
|
||||
0x100| 00 00 00| ...| flags: 0 0x10d-0x10f.7 (3)
|
||||
0x110|00 00 00 01 |.... | entry_count: 1 0x110-0x113.7 (4)
|
||||
| | | entries[0:1]: 0x114-0x11f.7 (12)
|
||||
| | | [0]{}: entry 0x114-0x11f.7 (12)
|
||||
0x110| 00 00 00 28 | ...( | segment_duration: 40 0x114-0x117.7 (4)
|
||||
0x110| 00 00 00 00 | .... | media_time: 0 0x118-0x11b.7 (4)
|
||||
0x110| 00 01 00 00| ....| media_rate: 1 0x11c-0x11f.7 (4)
|
||||
| | | [2]{}: box 0x120-0x2ab.7 (396)
|
||||
0x120|00 00 01 8c |.... | size: 396 0x120-0x123.7 (4)
|
||||
0x120| 6d 64 69 61 | mdia | type: "mdia" (Container for the media information in a track) 0x124-0x127.7 (4)
|
||||
| | | boxes[0:2]: 0x128-0x2ab.7 (388)
|
||||
| | | [0]{}: box 0x128-0x147.7 (32)
|
||||
0x120| 00 00 00 20 | ... | size: 32 0x128-0x12b.7 (4)
|
||||
0x120| 6d 64 68 64| mdhd| type: "mdhd" (Media header, overall information about the media) 0x12c-0x12f.7 (4)
|
||||
0x130|00 |. | version: 0 0x130-0x130.7 (1)
|
||||
0x130| 00 00 00 | ... | flags: 0 0x131-0x133.7 (3)
|
||||
0x130| 00 00 00 00 | .... | creation_time: 0 (1904-01-04T00:00:00Z) 0x134-0x137.7 (4)
|
||||
0x130| 00 00 00 00 | .... | modification_time: 0 (1904-01-04T00:00:00Z) 0x138-0x13b.7 (4)
|
||||
0x130| 00 00 32 00| ..2.| time_scale: 12800 0x13c-0x13f.7 (4)
|
||||
0x140|00 00 02 00 |.... | duration: 512 0x140-0x143.7 (4)
|
||||
0x140| 55 c4 | U. | language: "und" 0x144-0x145.7 (2)
|
||||
0x140| 00 00 | .. | quality: 0 0x146-0x147.7 (2)
|
||||
| | | [1]{}: box 0x148-0x2ab.7 (356)
|
||||
0x140| 00 00 01 64 | ...d | size: 356 0x148-0x14b.7 (4)
|
||||
0x140| 6d 69 6e 66| minf| type: "minf" (Media information container) 0x14c-0x14f.7 (4)
|
||||
| | | boxes[0:3]: 0x150-0x2ab.7 (348)
|
||||
| | | [0]{}: box 0x150-0x163.7 (20)
|
||||
0x150|00 00 00 14 |.... | size: 20 0x150-0x153.7 (4)
|
||||
0x150| 76 6d 68 64 | vmhd | type: "vmhd" (Video media header, overall information (video track only)) 0x154-0x157.7 (4)
|
||||
0x150| 00 | . | version: 0 0x158-0x158.7 (1)
|
||||
0x150| 00 00 01 | ... | flags: 1 0x159-0x15b.7 (3)
|
||||
0x150| 00 00 | .. | graphicsmode: 0 0x15c-0x15d.7 (2)
|
||||
| | | opcolor[0:3]: 0x15e-0x163.7 (6)
|
||||
0x150| 00 00| ..| [0]: 0 value 0x15e-0x15f.7 (2)
|
||||
0x160|00 00 |.. | [1]: 0 value 0x160-0x161.7 (2)
|
||||
0x160| 00 00 | .. | [2]: 0 value 0x162-0x163.7 (2)
|
||||
| | | [1]{}: box 0x164-0x187.7 (36)
|
||||
0x160| 00 00 00 24 | ...$ | size: 36 0x164-0x167.7 (4)
|
||||
0x160| 64 69 6e 66 | dinf | type: "dinf" (Data information box, container) 0x168-0x16b.7 (4)
|
||||
| | | boxes[0:1]: 0x16c-0x187.7 (28)
|
||||
| | | [0]{}: box 0x16c-0x187.7 (28)
|
||||
0x160| 00 00 00 1c| ....| size: 28 0x16c-0x16f.7 (4)
|
||||
0x170|64 72 65 66 |dref | type: "dref" (Data reference box, declares source(s) of media data in track) 0x170-0x173.7 (4)
|
||||
0x170| 00 | . | version: 0 0x174-0x174.7 (1)
|
||||
0x170| 00 00 00 | ... | flags: 0 0x175-0x177.7 (3)
|
||||
0x170| 00 00 00 01 | .... | entry_count: 1 0x178-0x17b.7 (4)
|
||||
| | | boxes[0:1]: 0x17c-0x187.7 (12)
|
||||
| | | [0]{}: box 0x17c-0x187.7 (12)
|
||||
0x170| 00 00 00 0c| ....| size: 12 0x17c-0x17f.7 (4)
|
||||
0x180|75 72 6c 20 |url | type: "url " 0x180-0x183.7 (4)
|
||||
0x180| 00 | . | version: 0 0x184-0x184.7 (1)
|
||||
0x180| 00 00 01 | ... | flags: 1 0x185-0x187.7 (3)
|
||||
| | | data: raw bits 0x188-NA (0)
|
||||
| | | [2]{}: box 0x188-0x2ab.7 (292)
|
||||
0x180| 00 00 01 24 | ...$ | size: 292 0x188-0x18b.7 (4)
|
||||
0x180| 73 74 62 6c| stbl| type: "stbl" (Sample table box, container for the time/space map) 0x18c-0x18f.7 (4)
|
||||
| | | boxes[0:5]: 0x190-0x2ab.7 (284)
|
||||
| | | [0]{}: box 0x190-0x24f.7 (192)
|
||||
0x190|00 00 00 c0 |.... | size: 192 0x190-0x193.7 (4)
|
||||
0x190| 73 74 73 64 | stsd | type: "stsd" (Sample descriptions (codec types, initialization etc.)) 0x194-0x197.7 (4)
|
||||
0x190| 00 | . | version: 0 0x198-0x198.7 (1)
|
||||
0x190| 00 00 00 | ... | flags: 0 0x199-0x19b.7 (3)
|
||||
0x190| 00 00 00 01| ....| entry_count: 1 0x19c-0x19f.7 (4)
|
||||
| | | boxes[0:1]: 0x1a0-0x24f.7 (176)
|
||||
| | | [0]{}: box 0x1a0-0x24f.7 (176)
|
||||
0x1a0|00 00 00 b0 |.... | size: 176 0x1a0-0x1a3.7 (4)
|
||||
0x1a0| 6d 70 34 76 | mp4v | type: "mp4v" (MPEG-4 Visual) 0x1a4-0x1a7.7 (4)
|
||||
0x1a0| 00 00 00 00 00 00 | ...... | reserved: raw bits 0x1a8-0x1ad.7 (6)
|
||||
0x1a0| 00 01| ..| data_reference_index: 1 0x1ae-0x1af.7 (2)
|
||||
0x1b0|00 00 |.. | version: 0 0x1b0-0x1b1.7 (2)
|
||||
0x1b0| 00 00 | .. | revision_level: 0 0x1b2-0x1b3.7 (2)
|
||||
0x1b0| 00 00 00 00 | .... | max_packet_size: 0 0x1b4-0x1b7.7 (4)
|
||||
0x1b0| 00 00 00 00 | .... | temporal_quality: 0 0x1b8-0x1bb.7 (4)
|
||||
0x1b0| 00 00 00 00| ....| spatial_quality: 0 0x1bc-0x1bf.7 (4)
|
||||
0x1c0|00 02 |.. | width: 2 0x1c0-0x1c1.7 (2)
|
||||
0x1c0| 00 02 | .. | height: 2 0x1c2-0x1c3.7 (2)
|
||||
0x1c0| 00 48 00 00 | .H.. | horizontal_resolution: 72 0x1c4-0x1c7.7 (4)
|
||||
0x1c0| 00 48 00 00 | .H.. | vertical_resolution: 72 0x1c8-0x1cb.7 (4)
|
||||
0x1c0| 00 00 00 00| ....| data_size: 0 0x1cc-0x1cf.7 (4)
|
||||
0x1d0|00 01 |.. | frame_count: 1 0x1d0-0x1d1.7 (2)
|
||||
0x1d0| 11 4c 61 76 63 35 39 2e 33 37 2e 31 30 30| .Lavc59.37.100| compressor_name: "Lavc59.37.100 png" 0x1d2-0x1f1.7 (32)
|
||||
0x1e0|20 70 6e 67 00 00 00 00 00 00 00 00 00 00 00 00| png............|
|
||||
0x1f0|00 00 |.. |
|
||||
0x1f0| 00 18 | .. | depth: 24 0x1f2-0x1f3.7 (2)
|
||||
0x1f0| ff ff | .. | color_table_id: -1 0x1f4-0x1f5.7 (2)
|
||||
| | | boxes[0:4]: 0x1f6-0x24f.7 (90)
|
||||
| | | [0]{}: box 0x1f6-0x221.7 (44)
|
||||
0x1f0| 00 00 00 2c | ..., | size: 44 0x1f6-0x1f9.7 (4)
|
||||
0x1f0| 65 73 64 73 | esds | type: "esds" (Elementary stream descriptor) 0x1fa-0x1fd.7 (4)
|
||||
0x1f0| 00 00| ..| version: 0 0x1fe-0x201.7 (4)
|
||||
0x200|00 00 |.. |
|
||||
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef| descriptor{}: (mpeg_es) 0x202-0x221.7 (32)
|
||||
0x200| 03 | . | tag_id: "ES_DescrTag" (3) 0x202-0x202.7 (1)
|
||||
0x200| 80 80 80 1b | .... | length: 27 0x203-0x206.7 (4)
|
||||
0x200| 00 01 | .. | es_id: 1 0x207-0x208.7 (2)
|
||||
0x200| 00 | . | stream_dependency_flag: false 0x209-0x209 (0.1)
|
||||
0x200| 00 | . | url_flag: false 0x209.1-0x209.1 (0.1)
|
||||
0x200| 00 | . | ocr_stream_flag: false 0x209.2-0x209.2 (0.1)
|
||||
0x200| 00 | . | stream_priority: 0 0x209.3-0x209.7 (0.5)
|
||||
| | | dec_config_descr{}: 0x20a-0x21b.7 (18)
|
||||
0x200| 04 | . | tag_id: "DecoderConfigDescrTag" (4) 0x20a-0x20a.7 (1)
|
||||
0x200| 80 80 80 0d | .... | length: 13 0x20b-0x20e.7 (4)
|
||||
0x200| 6d| m| object_type_indication: "MPEGObjectTypePNG" (109) 0x20f-0x20f.7 (1)
|
||||
0x210|11 |. | stream_type: "VisualStream" (4) 0x210-0x210.5 (0.6)
|
||||
0x210|11 |. | upstream: false 0x210.6-0x210.6 (0.1)
|
||||
0x210|11 |. | specific_info_flag: true 0x210.7-0x210.7 (0.1)
|
||||
0x210| 00 00 00 | ... | buffer_size_db: 0 0x211-0x213.7 (3)
|
||||
0x210| 00 03 0d 40 | ...@ | max_bit_rate: 200000 0x214-0x217.7 (4)
|
||||
0x210| 00 00 48 a8 | ..H. | avg_bit_rate: 18600 0x218-0x21b.7 (4)
|
||||
| | | sl_config_descr{}: 0x21c-0x221.7 (6)
|
||||
0x210| 06 | . | tag_id: "SLConfigDescrTag" (6) 0x21c-0x21c.7 (1)
|
||||
0x210| 80 80 80| ...| length: 1 0x21d-0x220.7 (4)
|
||||
0x220|01 |. |
|
||||
0x220| 02 | . | data: raw bits 0x221-0x221.7 (1)
|
||||
| | | [1]{}: box 0x222-0x22b.7 (10)
|
||||
0x220| 00 00 00 0a | .... | size: 10 0x222-0x225.7 (4)
|
||||
0x220| 66 69 65 6c | fiel | type: "fiel" (Video field order) 0x226-0x229.7 (4)
|
||||
0x220| 01 00 | .. | data: raw bits 0x22a-0x22b.7 (2)
|
||||
| | | [2]{}: box 0x22c-0x23b.7 (16)
|
||||
0x220| 00 00 00 10| ....| size: 16 0x22c-0x22f.7 (4)
|
||||
0x230|70 61 73 70 |pasp | type: "pasp" (Pixel aspect ratio) 0x230-0x233.7 (4)
|
||||
0x230| 00 00 00 01 | .... | h_spacing: 1 0x234-0x237.7 (4)
|
||||
0x230| 00 00 00 01 | .... | v_spacing: 1 0x238-0x23b.7 (4)
|
||||
| | | [3]{}: box 0x23c-0x24f.7 (20)
|
||||
0x230| 00 00 00 14| ....| size: 20 0x23c-0x23f.7 (4)
|
||||
0x240|62 74 72 74 |btrt | type: "btrt" (Bitrate) 0x240-0x243.7 (4)
|
||||
0x240| 00 00 00 00 | .... | decoding_buffer_size: 0 0x244-0x247.7 (4)
|
||||
0x240| 00 03 0d 40 | ...@ | max_bitrate: 200000 0x248-0x24b.7 (4)
|
||||
0x240| 00 00 48 a8| ..H.| avg_bitrate: 18600 0x24c-0x24f.7 (4)
|
||||
| | | [1]{}: box 0x250-0x267.7 (24)
|
||||
0x250|00 00 00 18 |.... | size: 24 0x250-0x253.7 (4)
|
||||
0x250| 73 74 74 73 | stts | type: "stts" (Sample time-to-sample) 0x254-0x257.7 (4)
|
||||
0x250| 00 | . | version: 0 0x258-0x258.7 (1)
|
||||
0x250| 00 00 00 | ... | flags: 0 0x259-0x25b.7 (3)
|
||||
0x250| 00 00 00 01| ....| entry_count: 1 0x25c-0x25f.7 (4)
|
||||
| | | entries[0:1]: 0x260-0x267.7 (8)
|
||||
| | | [0]{}: entry 0x260-0x267.7 (8)
|
||||
0x260|00 00 00 01 |.... | count: 1 0x260-0x263.7 (4)
|
||||
0x260| 00 00 02 00 | .... | delta: 512 0x264-0x267.7 (4)
|
||||
| | | [2]{}: box 0x268-0x283.7 (28)
|
||||
0x260| 00 00 00 1c | .... | size: 28 0x268-0x26b.7 (4)
|
||||
0x260| 73 74 73 63| stsc| type: "stsc" (Sample-to-chunk, partial data-offset information) 0x26c-0x26f.7 (4)
|
||||
0x270|00 |. | version: 0 0x270-0x270.7 (1)
|
||||
0x270| 00 00 00 | ... | flags: 0 0x271-0x273.7 (3)
|
||||
0x270| 00 00 00 01 | .... | entry_count: 1 0x274-0x277.7 (4)
|
||||
| | | entries[0:1]: 0x278-0x283.7 (12)
|
||||
| | | [0]{}: entry 0x278-0x283.7 (12)
|
||||
0x270| 00 00 00 01 | .... | first_chunk: 1 0x278-0x27b.7 (4)
|
||||
0x270| 00 00 00 01| ....| samples_per_chunk: 1 0x27c-0x27f.7 (4)
|
||||
0x280|00 00 00 01 |.... | sample_description_id: 1 0x280-0x283.7 (4)
|
||||
| | | [3]{}: box 0x284-0x297.7 (20)
|
||||
0x280| 00 00 00 14 | .... | size: 20 0x284-0x287.7 (4)
|
||||
0x280| 73 74 73 7a | stsz | type: "stsz" (Sample sizes (framing)) 0x288-0x28b.7 (4)
|
||||
0x280| 00 | . | version: 0 0x28c-0x28c.7 (1)
|
||||
0x280| 00 00 00| ...| flags: 0 0x28d-0x28f.7 (3)
|
||||
0x290|00 00 00 5d |...] | sample_size: 93 0x290-0x293.7 (4)
|
||||
0x290| 00 00 00 01 | .... | entry_count: 1 0x294-0x297.7 (4)
|
||||
| | | [4]{}: box 0x298-0x2ab.7 (20)
|
||||
0x290| 00 00 00 14 | .... | size: 20 0x298-0x29b.7 (4)
|
||||
0x290| 73 74 63 6f| stco| type: "stco" (Chunk offset, partial data-offset information) 0x29c-0x29f.7 (4)
|
||||
0x2a0|00 |. | version: 0 0x2a0-0x2a0.7 (1)
|
||||
0x2a0| 00 00 00 | ... | flags: 0 0x2a1-0x2a3.7 (3)
|
||||
0x2a0| 00 00 00 01 | .... | entry_count: 1 0x2a4-0x2a7.7 (4)
|
||||
| | | entries[0:1]: 0x2a8-0x2ab.7 (4)
|
||||
0x2a0| 00 00 03 16 | .... | [0]: 790 chunk_offset 0x2a8-0x2ab.7 (4)
|
||||
| | | [2]{}: box 0x2ac-0x30d.7 (98)
|
||||
0x2a0| 00 00 00 62| ...b| size: 98 0x2ac-0x2af.7 (4)
|
||||
0x2b0|75 64 74 61 |udta | type: "udta" (User-data) 0x2b0-0x2b3.7 (4)
|
||||
| | | boxes[0:1]: 0x2b4-0x30d.7 (90)
|
||||
| | | [0]{}: box 0x2b4-0x30d.7 (90)
|
||||
0x2b0| 00 00 00 5a | ...Z | size: 90 0x2b4-0x2b7.7 (4)
|
||||
0x2b0| 6d 65 74 61 | meta | type: "meta" (Metadata container) 0x2b8-0x2bb.7 (4)
|
||||
0x2b0| 00 00 00 00| ....| maybe_flags: 0 0x2bc-0x2bf.7 (4)
|
||||
| | | boxes[0:2]: 0x2c0-0x30d.7 (78)
|
||||
| | | [0]{}: box 0x2c0-0x2e0.7 (33)
|
||||
0x2c0|00 00 00 21 |...! | size: 33 0x2c0-0x2c3.7 (4)
|
||||
0x2c0| 68 64 6c 72 | hdlr | type: "hdlr" (Handler, declares the media (handler) type) 0x2c4-0x2c7.7 (4)
|
||||
0x2c0| 00 | . | version: 0 0x2c8-0x2c8.7 (1)
|
||||
0x2c0| 00 00 00 | ... | flags: 0 0x2c9-0x2cb.7 (3)
|
||||
0x2c0| 00 00 00 00| ....| component_type: "" 0x2cc-0x2cf.7 (4)
|
||||
0x2d0|6d 64 69 72 |mdir | component_subtype: "mdir" (Metadata) 0x2d0-0x2d3.7 (4)
|
||||
0x2d0| 61 70 70 6c | appl | component_manufacturer: "appl" 0x2d4-0x2d7.7 (4)
|
||||
0x2d0| 00 00 00 00 | .... | component_flags: 0 0x2d8-0x2db.7 (4)
|
||||
0x2d0| 00 00 00 00| ....| component_flags_mask: 0 0x2dc-0x2df.7 (4)
|
||||
0x2e0|00 |. | component_name: "" 0x2e0-0x2e0.7 (1)
|
||||
| | | [1]{}: box 0x2e1-0x30d.7 (45)
|
||||
0x2e0| 00 00 00 2d | ...- | size: 45 0x2e1-0x2e4.7 (4)
|
||||
0x2e0| 69 6c 73 74 | ilst | type: "ilst" 0x2e5-0x2e8.7 (4)
|
||||
| | | boxes[0:1]: 0x2e9-0x30d.7 (37)
|
||||
| | | [0]{}: box 0x2e9-0x30d.7 (37)
|
||||
0x2e0| 00 00 00 25 | ...% | size: 37 0x2e9-0x2ec.7 (4)
|
||||
0x2e0| a9 74 6f| .to| type: "<22>too" 0x2ed-0x2f0.7 (4)
|
||||
0x2f0|6f |o |
|
||||
| | | boxes[0:1]: 0x2f1-0x30d.7 (29)
|
||||
| | | [0]{}: box 0x2f1-0x30d.7 (29)
|
||||
0x2f0| 00 00 00 1d | .... | size: 29 0x2f1-0x2f4.7 (4)
|
||||
0x2f0| 64 61 74 61 | data | type: "data" 0x2f5-0x2f8.7 (4)
|
||||
0x2f0| 00 | . | version: 0 0x2f9-0x2f9.7 (1)
|
||||
0x2f0| 00 00 01 | ... | flags: 1 0x2fa-0x2fc.7 (3)
|
||||
0x2f0| 00 00 00| ...| reserved: 0 0x2fd-0x300.7 (4)
|
||||
0x300|00 |. |
|
||||
0x300| 4c 61 76 66 35 39 2e 32 37 2e 31 30 30 | Lavf59.27.100 | data: "Lavf59.27.100" 0x301-0x30d.7 (13)
|
||||
| | | [3]{}: box 0x30e-0x372.7 (101)
|
||||
0x300| 00 00| ..| size: 101 0x30e-0x311.7 (4)
|
||||
0x310|00 65 |.e |
|
||||
0x310| 6d 64 61 74 | mdat | type: "mdat" (Media data container) 0x312-0x315.7 (4)
|
||||
0x310| 89 50 4e 47 0d 0a 1a 0a 00 00| .PNG......| data: raw bits 0x316-0x372.7 (93)
|
||||
0x320|00 0d 49 48 44 52 00 00 00 02 00 00 00 02 08 02|..IHDR..........|
|
||||
* |until 0x372.7 (end) (93) | |
|
||||
| | | tracks[0:1]: 0x316-0x372.7 (93)
|
||||
| | | [0]{}: track 0x316-0x372.7 (93)
|
||||
| | | samples[0:1]: 0x316-0x372.7 (93)
|
||||
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef| [0]{}: sample (png) 0x316-0x372.7 (93)
|
||||
0x310| 89 50 4e 47 0d 0a 1a 0a | .PNG.... | signature: raw bits (valid) 0x316-0x31d.7 (8)
|
||||
| | | chunks[0:4]: 0x31e-0x372.7 (85)
|
||||
| | | [0]{}: chunk 0x31e-0x336.7 (25)
|
||||
0x310| 00 00| ..| length: 13 0x31e-0x321.7 (4)
|
||||
0x320|00 0d |.. |
|
||||
0x320| 49 48 44 52 | IHDR | type: "IHDR" 0x322-0x325.7 (4)
|
||||
0x320| 49 | I | ancillary: false 0x322.3-0x322.3 (0.1)
|
||||
0x320| 48 | H | private: false 0x323.3-0x323.3 (0.1)
|
||||
0x320| 44 | D | reserved: false 0x324.3-0x324.3 (0.1)
|
||||
0x320| 52 | R | safe_to_copy: true 0x325.3-0x325.3 (0.1)
|
||||
0x320| 00 00 00 02 | .... | width: 2 0x326-0x329.7 (4)
|
||||
0x320| 00 00 00 02 | .... | height: 2 0x32a-0x32d.7 (4)
|
||||
0x320| 08 | . | bit_depth: 8 0x32e-0x32e.7 (1)
|
||||
0x320| 02| .| color_type: "rgb" (2) 0x32f-0x32f.7 (1)
|
||||
0x330|00 |. | compression_method: "deflate" (0) 0x330-0x330.7 (1)
|
||||
0x330| 00 | . | filter_method: "adaptive_filtering" (0) 0x331-0x331.7 (1)
|
||||
0x330| 00 | . | interlace_method: "none" (0) 0x332-0x332.7 (1)
|
||||
0x330| fd d4 9a 73 | ...s | crc: 0xfdd49a73 (valid) 0x333-0x336.7 (4)
|
||||
| | | [1]{}: chunk 0x337-0x34b.7 (21)
|
||||
0x330| 00 00 00 09 | .... | length: 9 0x337-0x33a.7 (4)
|
||||
0x330| 70 48 59 73 | pHYs | type: "pHYs" 0x33b-0x33e.7 (4)
|
||||
0x330| 70 | p | ancillary: true 0x33b.3-0x33b.3 (0.1)
|
||||
0x330| 48 | H | private: false 0x33c.3-0x33c.3 (0.1)
|
||||
0x330| 59 | Y | reserved: true 0x33d.3-0x33d.3 (0.1)
|
||||
0x330| 73 | s | safe_to_copy: true 0x33e.3-0x33e.3 (0.1)
|
||||
0x330| 00| .| x_pixels_per_unit: 1 0x33f-0x342.7 (4)
|
||||
0x340|00 00 01 |... |
|
||||
0x340| 00 00 00 01 | .... | y_pixels_per_unit: 1 0x343-0x346.7 (4)
|
||||
0x340| 00 | . | unit: 0 0x347-0x347.7 (1)
|
||||
0x340| 4f 25 c4 d6 | O%.. | crc: 0x4f25c4d6 (valid) 0x348-0x34b.7 (4)
|
||||
| | | [2]{}: chunk 0x34c-0x366.7 (27)
|
||||
0x340| 00 00 00 0f| ....| length: 15 0x34c-0x34f.7 (4)
|
||||
0x350|49 44 41 54 |IDAT | type: "IDAT" 0x350-0x353.7 (4)
|
||||
0x350|49 |I | ancillary: false 0x350.3-0x350.3 (0.1)
|
||||
0x350| 44 | D | private: false 0x351.3-0x351.3 (0.1)
|
||||
0x350| 41 | A | reserved: false 0x352.3-0x352.3 (0.1)
|
||||
0x350| 54 | T | safe_to_copy: true 0x353.3-0x353.3 (0.1)
|
||||
0x350| 78 9c 63 60 60 60 f8 0f c3 ff 01 12| x.c```......| data: raw bits 0x354-0x362.7 (15)
|
||||
0x360|fb 03 fd |... |
|
||||
0x360| 59 a8 83 f3 | Y... | crc: 0x59a883f3 (valid) 0x363-0x366.7 (4)
|
||||
| | | [3]{}: chunk 0x367-0x372.7 (12)
|
||||
0x360| 00 00 00 00 | .... | length: 0 0x367-0x36a.7 (4)
|
||||
0x360| 49 45 4e 44 | IEND | type: "IEND" 0x36b-0x36e.7 (4)
|
||||
0x360| 49 | I | ancillary: false 0x36b.3-0x36b.3 (0.1)
|
||||
0x360| 45 | E | private: false 0x36c.3-0x36c.3 (0.1)
|
||||
0x360| 4e | N | reserved: false 0x36d.3-0x36d.3 (0.1)
|
||||
0x360| 44 | D | safe_to_copy: false 0x36e.3-0x36e.3 (0.1)
|
||||
0x360| ae| .| crc: 0xae426082 (valid) 0x36f-0x372.7 (4)
|
||||
0x370|42 60 82| |B`.| |
|
||||
| | | id: 1 0x373-NA (0)
|
||||
| | | data_format: "mp4v" (MPEG-4 Visual) 0x373-NA (0)
|
Loading…
Reference in New Issue
Block a user