[NUT-devel] Codec id - random notes

Michael Niedermayer michaelni at gmx.at
Tue Jun 27 22:50:58 CEST 2006


On Tue, Jun 27, 2006 at 04:00:26PM -0400, Rich Felker wrote:
> > a: adopt a single existing id system like the one from avi or mov
> > b: like a but remap a few ids we dont like due to philosophical reasons
> > i: design our own indepenant system for per format ids (no implemtation id)
> > 
> > 
> >                                 A   I   IA  AA  IAA a-avi   a-mov   b   i   AAA
> > supports old divx/xvid streams: X   X   X   X   X   X                       X
> > AVI->NUT->AVI wont change 4cc:  X   X   X   X   X   X                       X
> > MOV->NUT->MOV wont change 4cc:  X   X   X   X   X           X               X
> > no table maintaince:            X           X       X       X       x       X
> > decoder can use existing tables:X       X   X   x   X       X               X
> > decoder needs single nut-table:     X   X       X   X       X       X   X   X
> > encoder doesnt need to remap id:X           X                       x
> To me, the critical ones are:
> - no table maintaince
> - using existing tables or existing tables with a few minor additions
> IMO "encoder doesnt need to remap id" is odd, maybe this means
> "remuxer from other format doesn't need to remap id"?


> > a-avi vs. a-mov
> >     there are more avi fourccs then mov fourccs so IMHO a-avi would be
> >     a better choice, theres also the old xvid/divx advantage, IIRC theres
> >     no distinction between the 2 in mov, so IMHO we can drop a-mov
> > b vs. a-avi
> >     b is philsophical better at the cost of playability of a very small number
> >     of divx & xvid videos and it needs a little more maintainance so IMHO
> >     we can drop b in favor of a-avi
> > i vs I
> >     if we are really building our own format id table then i guess a field
> >     more for the implemenattion wont hurt so IMHO drop i
> > AA vs. AAA
> >     AA has a big problem, the nut file could use any id system, so this
> >     moves alot of complexity to the demuxer, so i belive its not 
> >     controversical if i drop it in favor of some other system like AAA
> >     or another one which does the remaping at the muxer side
> If the avi-style fourcc is required, it seems a bit odd to have other
> format ids too. Any demuxer implementation will have to be able to
> read the avi fourcc (in case it's the only one there), so what's the
> good of having more ids?
> The only way I find the AAA option interesting is if we require one of
> the ids to refer to a bitstream standard (instead of implementation)
> whenever the stream is standards-conformant. This would allow players
> that don't support proprietary codecs and don't want to deal with all
> the fourcc mess of those to play files without a table of all the
> implementation ids, and would allow players to play files encoded with
> new implementations (of mpeg4, etc.) without upgrading their tables.
> (SHOULD instead of MUST would also be acceptable here, with the
> implication that users may have to upgrade their players unnecessarily
> to play files ignoring the recommendation.)
> > whats left:
> >                                 I   AAA IAA a-avi
> > supports old divx/xvid streams: X   X   X   X
> > AVI->NUT->AVI wont change 4cc:  X   X   X   X
> > MOV->NUT->MOV wont change 4cc:  X   X   X
> > no table maintaince:                X       X
> > decoder can use existing tables:    X   x   X
> > decoder only needs single table:X   X   X   X
> > encoder doesnt need to remap id:
> > 
> > 
> > alternative suggestions, and comments welcome, personally iam fine with
> > all the options left (for I and IAA a volunteer would be needed to maintain
> > a few tables)
> I generally dislike anything involving nut-id. It's just like
> matroska, useless bloat.

well, as we still dont have volunteer for maintaining nut-id and no initial
nut-id table either, I/IAA options are pretty dead anyway
ivan do you volunteer to do the work? and can you make a table containing
all 4cc of avi & mov with nice format & implementation names?
if no then I/IAA style is dead we dont even need to disscuss their
advantages its simply not possible like if you have no money you cant
buy something / no volunteer -> no table -> no I/IAA

> Otherwise I'm mostly ok with AAA or a-avi. Perhaps with the above
> addition to AAA.

ok, so after alot of flames we are back to the old system ...

id is fourcc from AVI
maybe allow additional ids (info packet or stream header?)
maybe an additional standard format id for cases where fourcc has been abused
to advertise the implementation name

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