[NUT-devel] Info Packets

Michael Niedermayer michaelni at gmx.at
Sun Feb 19 13:23:30 CET 2006


Hi

On Sun, Feb 19, 2006 at 02:09:09PM +0200, Oded Shimon wrote:
> On Sun, Feb 19, 2006 at 10:28:39AM +0100, Michael Niedermayer wrote:
> > Hi
> > 
> > Currently info packets are
> > list of streams
> > list of name/type/value triplets
> > 
> > i would suggest that we change this to
> > first name/type/value is the "name/id" of what is described
> > remander is a list of descriptions
> > and require that any 2 info packets with the same name/id
> > be identical
> > 
> > one case where the current variant is unclear is
> > ChapterId=5
> > StartTime=1min
> > StopTime=2min
> > 
> > does this mean Chapter 5 is from 1min to 2min or that the info packet
> > describes the time from 1min to 2min of chapter 5?
> 
> I don't think you can break down info packets to smaller than chapers...
> Also, it's 'ChapterLength', not 'StopTime'...
> 
> I'm considering something different - each info packet is prepended with 
> stream id/mask and chapter id/mask, and they identify the entire info 
> packet.
> If we do the chapter mask thing, we might want to bring back the 
> "decompress element" you had... Chapters really would need an overflow 
> protection, and building a custom v reader is slightly annoying, as they 
> come in reverse order... (msb bits first)

do what you want, i will write my own ext-info packet
extension, as this is not worth the fight, info packets had one propose
and that was to be generic, and you and rich try to make it impossible
to store generic info with these packets, you wont succeed, people dont need
a standarized system to store what they want to store, only thing you achive
is that it will be non standard or they will use another container


[...]

> > the following is the simplest way to store things i could come up with:
> > 
> > count                               v
> > for(i=0; i<count; i++){
> >     x                               v
> >     name                            vb
> >     if(x==0){
> >         type                        vb
> >         value                       vb
> >     }else if(x==1){
> >         type= "UTF-8"
> >         value                       vb
> >     }else{
> >         type= "rational"
> >         value.num                   s
> >         value.den= x-1
> >     }
> > }
> 
> I like this (the compression)... I'm assuming you still want the stream 
> mask in the begginning?..

no

[...]
-- 
Michael




More information about the NUT-devel mailing list