[FFmpeg-user] How to compress .MOV file compatible to Canon camera

Ted Park kumowoon1025 at gmail.com
Wed Apr 1 03:19:56 EEST 2020


> Here is the atom structure of the original file from the camera:
> 
> $ MP4Box -v MVI_1324.MOV
> [iso file] Starting to parse a top-level box at position 0
> [iso file] Read Box type ftyp size 24 start 0
> [iso file] Starting to parse a top-level box at position 24
> [iso file] Read Box type moov size 98280 start 24
...
> [iso file] Read Box type 4CF2D149 size 3078257872 start 9452
> [iso file] Delete box type UNKN
> [iso file] Delete box type UNKN
> [iso file] Read Box type mvhd size 108 start 65628
???...
> [iso file] Unknown box type free in parent moov
> [iso file] Starting to parse a top-level box at position 98304
> [iso file] Read Box type mdat size 84830220 start 98304
> [iso file] Delete box type ftyp
> [iso file] Delete box type moov
> [iso file] Delete box type udta
> [iso file] Delete box type UNKN
> [iso file] Delete box type UNKN
> [iso file] Delete box type UNKN
> [iso file] Delete box type mvhd
> [iso file] Delete box type trak
> [iso file] Delete box type tkhd
> [iso file] Delete box type mdia
> [iso file] Delete box type mdhd
> [iso file] Delete box type hdlr
> [iso file] Delete box type minf
> [iso file] Delete box type vmhd
> [iso file] Delete box type hdlr
> [iso file] Delete box type dinf
> [iso file] Delete box type dref
> [iso file] Delete box type alis
> [iso file] Delete box type stbl
> [iso file] Delete box type stsd
> [iso file] Delete box type avc1
> [iso file] Delete box type colr
> [iso file] Delete box type gama
> [iso file] Delete box type avcC
> [iso file] Delete box type stts
> [iso file] Delete box type stss
> [iso file] Delete box type stsc
> [iso file] Delete box type stsz
> [iso file] Delete box type stco
> [iso file] Delete box type trak
> [iso file] Delete box type tkhd
> [iso file] Delete box type mdia
> [iso file] Delete box type mdhd
> [iso file] Delete box type hdlr
> [iso file] Delete box type minf
> [iso file] Delete box type smhd
> [iso file] Delete box type hdlr
> [iso file] Delete box type dinf
> [iso file] Delete box type dref
> [iso file] Delete box type alis
> [iso file] Delete box type stbl
> [iso file] Delete box type stsd
> [iso file] Delete box type raw
> [iso file] Delete box type chan
> [iso file] Delete box type stts
> [iso file] Delete box type stsc
> [iso file] Delete box type stsz
> [iso file] Delete box type stco
> [iso file] Delete box type UNKN
> [iso file] Delete box type mdat


This doesn’t look too promising in the first place… I’m not sure what mp4box does when you just give it a file and nothing else in its arguments, but there is a command to parse the atom structure of qt files, and I remember it being returned in xml format. 
This is reading box types with 8 letter long names and 2GB in size that is not the media data, I don’t think it’s that trustworthy. Maybe it has a hard time reading vendor defined custom types or something.

As for how to manage the offsets, that is one of the uses for the pretty big free box located before the mdat, and also I’m guessing you can delete the null byte regions in update if necessary to keep the offsets same.

But I tried changing the file names/numbers and for the same file, it would play if I named it a certain number but not for a different number so I really think there’s some external factor involved.

Regards,
Ted Park



More information about the ffmpeg-user mailing list