[MPlayer-dev-eng] NUT cleanup

Luca Barbato lu_zero at gentoo.org
Sat Sep 3 14:12:10 CEST 2005


Rich Felker wrote:
> Some things Oded(ods15) and I have found while reading the NUT spec
> and working on a possible independent implementation:
> 
> 1. In stream_header, stream_id field is redundant since the headers
>    are required to be stored in order. Removing this field would
>    enforce the requirement that they be stored in order, but also
>    might make it more difficult to recover some streams from a damaged
>    file in the absence of backup headers..?

I'd keep it.

> 
> 2. Time base num/den have opposite meaning in NUT from what they mean
>    in libavformat. That is to say, lavf's idea of the time base would
>    be 1001/30000 whereas NUT's would be 30000/1001. I'd like to rename
>    the fields in the NUT spec to be consistent with lavf usage, which
>    seems more logical.

Looks ok

> 
> 3. In the audio stream header, we have a channel count.. is this
>    useful? IMO knowing a channel count without a channel arrangement
>    is useless except for mono/stereo. For PCM formats, we'll need a
>    separate fourcc (or extradata) for each channel layout anyway, and
>    for compressed audio the output channel order (and possibly even
>    the number of channels output) is dependent on the decoder
>    implementation.

Yes, could be killed, having that information would require anyway to
parse the payload.

> 
> 4. Index. There's no pointer at the end of the file pointing back to
>    the beginning of the index, so you have to keep seeking back and
>    searching (without bound) for the index startcode. I'd propose
>    either an end-of-index startcode followed by a vlc-coded
>    backpointer to the index, or a reverse-vlc-coded backpointer at the
>    end of the index.

The idea is interesting, I guess we have still space for an EoI startcode.

> 
> 5. FIXME? Line 316: stream_id[FIXME].. no idea what the FIXME is for.
> 

No clue

> 6. Field name "fourcc", usage of word "codec". To windows kids, codec
>    usually means the implementation, not the compression standard. IMO
>    we should call it the "compression format" or the "encoding" rather
>    than codec to make it clear. Also might be good to drop the name
>    "fourcc" in favor of a more general name for the identifier.

encoder codec_type ?

> 
> 7. Old sample_rate_mul stuff still appears under time_base
>    documentation. I'll fix this soon unless someone objects since it's
>    very straightforward.

Please do and update it on the nut.hu site too.
(who is willing to have a simple magic to fetch the latest draft from
cvs and show it as an xhtml page?)

lu

-- 

Luca Barbato

Gentoo/linux Developer		Gentoo/PPC Operational Leader
http://dev.gentoo.org/~lu_zero




More information about the MPlayer-dev-eng mailing list