[NUT-devel] Issues
Michael Niedermayer
michaelni at gmx.at
Mon Mar 6 02:25:08 CET 2006
Hi
On Sun, Mar 05, 2006 at 02:59:09PM +0100, Michael Niedermayer wrote:
> Hi
>
> On Sat, Mar 04, 2006 at 06:48:34PM +0200, Oded Shimon wrote:
> > On Fri, Mar 03, 2006 at 11:50:44PM +0100, Michael Niedermayer wrote:
> > > On Fri, Mar 03, 2006 at 08:43:50PM +0200, Oded Shimon wrote:
> > > > I'm somewhat confused by that statement.. You mean, you don't mind a rule
> > > > "all info packets must come after main headers", but against "all info
> > > > packets with X must come after main headers".
> > >
> > > yes
> > >
> > >
> > > >
> > > > Well, OK, how do you feel about:
> > > > all info packets must come after main headers
> > >
> > > iam very slightly against this but i dont really care
> > >
> > >
> > > > all info frames must be hapter_id < 0
> > > >
> > > > And...
> > > > all info frames must have chapter_start<=pts<=chapter_end .
> > >
> > > is there anything info frames can what info packets cant? if no
> > > then i dont care about how info frames are restricted as i would
> > > simply choose not to use them
> > > otherwise i very strongly object against both
> >
> > OK, figured you'd be against...
> >
> > I'll outline what I want... (and I think what Rich wants)
> >
> > 1. Info packets, which can only come after main headers, are "global" in
> > that they never provide new information - after reading them once when
> > first reading main headers, you can safely skip all future info packets
> > when you skip headers as well. This is basically the rule in the spec
> > right now:
> > All info packets MUST appear after main headers at begginning of file, and
> > SHOULD be repeated after all main headers unless they are very large.
> >
> > 2. Info frames never store global info, and the only reason to use them
> > would be that not all information is known when beginning to create the
> > file (live streamm...). Finding info frames for a certain region does not
> > need to parse the whole file, and not because the demuxer lives on an
> > assumption that the muxer is sane, but because the spec explicitly says so.
> >
> >
> > Michael, do you have a spec to accomodate these goals together with your
> > own?..
>
> no, there is no such spec
>
>
> >
> > One more idea:
> > All info frames pts<=chapter_end
> > and
> > There must be a frame with pts==chapter_start (convert_ts or whatever)
> >
> >
> > I'm hating that there is so much controversy over such a.. cosmetic issue :/
>
> this is not a cosmetic issue, you guys want restrictions which make no sense
> and which restrict actually usefull and needed cases
>
>
> heres what i have in my nut fork on my disk: (note, there are no info streams)
>
> Rules for realtime streams:
>
> If a info packet X is transmitted anywhere then an info packet with the same
> chapter and stream_id MUST be placed so that there is never a mainheader
> and following frame covered by the info packet without the info packet
> inbetween
> example: M(mainheader) F(frame covered by infoPacket) f(other frame) I(info)
> M f f M f I f F F M I F F M I F F f f M f f M
> as a special exception very large and unimportant info packets can be
> transmitted less often
>
> If 2 info packets have the same chapter_id and stream_id then the earlier
> MUST be ignored (the last info packet is the most correct, this allows
> updating or correcting info)
>
>
> Rules for non realtime streams:
>
> 2 info packets with the same chapter_id and stream_id MUST be identical
>
> Every info packet which is stored anywhere in the file MUST also be stored
> after every mainheader-streamheader set
rich, do you agree with these and removial of info streams?
[...]
--
Michael
More information about the NUT-devel
mailing list