[NUT-devel] Codec id - random notes

Michael Niedermayer michaelni at gmx.at
Sat Jun 24 13:27:24 CEST 2006


On Sat, Jun 24, 2006 at 01:32:01AM +0200, Michael Niedermayer wrote:
> the issues here though are that 
> 1. as you say it fails with very old xvid (do you propose to drop support
>    for that?)
> 2. xvid will store a id of "DivX503b1393" if the "correct" options are set
>    it will store a xvid id too so there should be no problem currently but
>    still discarding potentially usefull information is a risky practice
>    this btw also shows nicely that intentionally wrong information isnt
>    fourcc specific but its a issue caused by idiot companies
>    who design decoders hw or sw that play only videos from a specific
>    encoder, either you set the wrong id or your video doesnt play
> 3. xvid + some interlaced bug (only detectable through fourcc XVIX)
> 4. bugs from encoders which arent xvid or divx
>    UMP4 comes to mind here, or a common bug with the padding at the end
>    of frames detected by analyzing several frame ends

so it seems that we have the following options
either store fourcc as is or not store it as is, that could be a simplified
fourcc or no fourcc at all
note, iam ignoring non fourcc ids here, we could store them too or not
it makes no differense here ...

if a unchanged fourcc is not stored then a very small number of streams
will not be decodeable correctly, that is
1. some old xvid and divx before they stored their encoder build num
   in the stream
2. ump4 if we map that to m4v/mp4v
3. xvid with the interlacing bug if we map XVIX to mp4v/m4v

2 and 3 can be solved by saying that ump4 and xvix are not mpeg4
but this wont work for old xvid & divx ...

in principle iam fine with any id system as long as its realistic
(=people proposing complex stuff for nut must demonstrate the
feasability of it first by implementing it)
i also dont really care about being able to store broken mp4 in nut
but i wont agree to a system being accepted based on a lie that it will
work with every stream ...

so IMHO a id system must be able to achive the following, if it doesnt
then IMHO its not worth considering
1. streamcopy (without decoder) every valid non broken stream from avi,mov,ogg
   to nut and produce a valid and playable file
2. streamcopy every such file back to its source container and still have
   a valid and playable file


Michael     GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB

In the past you could go to a library and read, borrow or copy any book
Today you'd get arrested for mere telling someone where the library is

More information about the NUT-devel mailing list