|Aug 12, 2009, 05:22 AM||#1|
Quicktime video files metadata
i'm not sure of this is the right place for this question, but i'll ask anyway...
i've been working on an application that will give me some general info about a quicktime
video file (Dimensions, Frame Rate, Compressor Name, Audio channels...)
so i read the "Quicktime File Format Specification" document from apple.com, and i did get
to read most of the data i need from the corresponding atoms (atoms are the building units
of a quicktime file), but i came across some files that didn't have these atoms at all
(since most of these atoms are optional)
- 'stsd' atoms hold the compressor name, but it's optional
- 'stts' atoms hold data vital to the frame rate calculation, also optional
- 'stss' atoms hold data regarding key frames, also optional
and even though one of the atoms i need isn't even optional, i still couldn't find it
('tkhd' for the video dimensions)
but when i open these files (which missing atoms) they work well, and when i open them in
VLC player, i can see the data i need in the 'media information' provided by the player
so my question is: how can i get the data i need even when the atoms aren't available? (it
must be doable, VLC proves that!)
ps. i'm working on a java applet, so i can only use standard java libraries
|Aug 12, 2009, 11:40 AM||#3|
a compressed video?
hmm, well i don't have a link to the file, i'll try to upload it on rapidshare or sth later this evening...
but i did a little extra goofing around, the file i have has cmov (compressed movie) atom which contains a dcom and a cmvd atoms, but i'm clueless after that, any suggestions?
|Aug 17, 2009, 10:53 AM||#4|
ok i finally got this problem solved, so here's the solution in case someone else needs it:
having a 'cmov' (compressed movie) atom means the movie resource has been compressed (ok that's really obvious!)
now this 'cmov' atom contains 2 other atoms:
1-'dcom' (data compression) atom
2-'cmvd' (compressed movie data) atom
dcom only contains 4 bytes for the size, 4 bytes for the atom type, and 4 bytes for the compression algorithm
(all files i came across had 'zlib' as the compression algo)
cmvd contains 4 bytes for the size, 4 bytes for the atom type, 4 bytes for the size of the uncompressed content, and the compressed content itself
so java standard library already contains a decompressor for zlib and voila, the uncompressed data contains the missing atoms
|Thread Tools||Search this Thread|
|thread||Thread Starter||Forum||Replies||Last Post|
|Stitch together large video files?||SinisterPower||Mac Applications and Mac App Store||12||Jul 11, 2013 07:36 AM|
|Pixelated iTunes video playback — but only on newer MacBook Pro||kuwisdelu||Mac Applications and Mac App Store||3||Sep 30, 2011 09:46 AM|
|Safari/Quicktime video - fullscreen - screen dims and turns off - solution?||jdavtz||Mac Applications and Mac App Store||3||Mar 10, 2011 10:19 AM|
All times are GMT -5. The time now is 05:06 AM.