[FFmpeg-devel] [PATCH] attachments support in matroska demuxer

ods15 at ods15.dyndns.org ods15
Sun Jan 20 20:34:56 CET 2008


On Sun, Jan 20, 2008 at 04:05:21PM +0000, M?ns Rullg?rd wrote:
> [...]


I'm a bit late in the thread, but it sounds to me like the "ideal" system 
would be:

codec id: an enum, extracting the maximum amount of information from the 
container codec tag, to identify the codec. This would mean you would have 
several codec id's for xvid/divx4/divx5/whatever - but only for ones 
where it would be useful! If for example "div5" and "xvid" have 
absoloutely no difference in decoding workarounds, they should have the 
same codec id.
This would be the only useful value for doing playback, and if the codec 
tag could not be identified to a codec id, then that means that there 
probably isn't a decoder for this file anyway. However, codec id should be 
user-forcable.

codec tag: the original binary container information that the codec id was 
derived from, respresented in char* and length. this should only be useful 
for transcoding (and even then it's doubtful, probably better to use the 
codec-id as it is container independent), or for showing it to the user in 
case codec-tag -> codec-id failed. For any other uses, codec-id should 
probably be used.


codec-tag -> codec-id tables should be container dependent, and not some 
huge table for everything (this could mean anything in actual 
implementation, it can still be a shared table, but the design is this...)


Am I missing any disadvantages in such a system?

- ods15




More information about the ffmpeg-devel mailing list