[NUT-devel] [PATCH] By Diego - punctuation and other important cosmetics to nut.txt

Michael Niedermayer michaelni at gmx.at
Sat Feb 24 13:25:54 CET 2007


Hi

On Sat, Feb 24, 2007 at 01:28:46PM +0200, Oded Shimon wrote:
> It also includes some FIXME's he added... (I'm sending this patch for him 
> due to mail server down...)
> 
> - ods15

[...]

>  keyframe
>      A keyframe is a frame from which you can start decoding, a more
>      exact definition is below
> -    The nth frame is a keyframe if and only if frames n, n+1, ... in 
> -    presentation order (that are all frames with a pts >= frame[n].pts) can
> +    The nth frame is a keyframe if and only if frames n, n+1, ... in
> +    presentation order (that means all frames with a pts >= frame[n].pts) can
>      be decoded successfully without reference to frames prior n in storage
> -    order (that are all frames with a dts < frame[n].dts)
> -    if no such frames exist (for example due to use of overlapped transforms
> -    like the MDCT in an audio codec) then the definition shall be extended
> +    order (that means all frames with a dts < frame[n].dts).
> +    If no such frames exist (for example due to use of overlapped transforms
> +    like the MDCT in an audio codec), then the definition shall be extended
>      by dropping n out of the set of frames which must be decodable, if this

iam against this change


[...]
> +FIXME: The frame_code description is convoluted and incomprehensible.
>  frame_code (f(8))
>      frame_code is an 8-bit field which exists before every frame, it can
>      store part of the size of the frame, the stream number, the timestamp
> -    and some flags amongst other things, what is not directly stored
> -    in it but is needed is stored in various fields immediately after it
> -    the values stored in it can be found in the main header
> -    the value 78 ('N') is forbidden to ensure that the byte is always
> -    different from the first byte of any startcode
> -    a muxer SHOULD mark 0x00 and 0xFF as invalid to improve error
> -    detection
> +    and some flags amongst other things. What is not directly stored
> +    in it but is needed is stored in various fields immediately after it.
> +    The values stored in it can be found in the main header.
> +    The value 78 ('N') is forbidden to ensure that the byte is always
> +    different from the first byte of any startcode.
> +    A muxer SHOULD mark 0x00 and 0xFF as invalid to improve error
> +    detection.

i cant clarify it unless you are more specific


[...]

> +FIXME: What does "at the frame header" mean?
> +       5  FLAG_SIZE_MSB    If set data_size_msb at the frame header,
> +                           otherwise data_size_msb is 0

if set data_size_msb is coded/stored at the frame header, otherwise data_size_msb is 0


[...]
> +FIXME: What is a 'sub region'?
> +    A negative chapter_id indicates a sub region of the file and not a real
>      chapter. chapter_id MUST be unique to the region it represents.

s/sub region/region/


[...]
> +FIXME: Does this have to be lowercase?
>      "SourceContainer"
>          "nut", "mkv", "mov", "avi", "ogg", "rm", "mpeg-ps", "mpeg-ts", "raw"

yes we would have to unfreeze the spec and break compatibility to change it
and i prefer lower case anyway :)


[...]
> +FIXME: Does the following line have a meaning here?
>          the language code

no


[...]
> +FIXME: This description is confusing, after 2^x *and* end of file???
>  Each set of repeated headers not at the beginning or end of the file SHOULD
> -be stored at the earliest possible position after 2^x where x is
> -an integer and the file end, so the headers may be repeated at 4102 if that is
> -the closest position after 2^12=4096 at which the headers can be placed
> +be stored at the earliest possible position after 2^x where x is an integer
> +and the end of the file. So the headers may be repeated at 4102 if that is
> +the closest position after 2^12=4096 at which the headers can be placed.

Each set of repeated headers not at the beginning or end of the file SHOULD
be stored at the earliest possible position after 2^x where x is an integer.

And at the end of the file. So the headers may be repeated at 4102 if that is
the closest position after 2^12=4096 at which the headers can be placed.

yeah i know its not well said, i just splited it to make the intent clear ...


[...]
>  
> -in the absence of a valid header at the beginning, players SHOULD search for
> +FIXME: Where is the syncpoint included?
> +In the absence of a valid header at the beginning, players SHOULD search for
>  backup headers starting at offset 2^x; for each x players SHOULD end their
> -search at a particular offset when any startcode is found (including syncpoint)
> +search at a particular offset when any startcode is found (including syncpoint).

in the set of startcodes at which the demuxer should stop

[...]
-- 
Michael     GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB

There will always be a question for which you do not know the correct awnser.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: not available
URL: <http://lists.mplayerhq.hu/pipermail/nut-devel/attachments/20070224/03aab197/attachment.pgp>


More information about the NUT-devel mailing list