Mailing List archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[vdr] Re: VDR developer version 1.3.14
Laz wrote:
>
> On Friday 29 Oct 2004 14:16, Klaus Schmidinger wrote:
> > Laurence Abbott wrote:
> > > Hmmm...I'm starting to think that the new buffer-handling routines are
> > > mores sensitive to artifacts in the signal due to weather, etc.
> >
> > I don't think that the changes to the buffer handling could cause this.
> > However, I did refurbish the code in cRemux that detects frame borders
> > (and thus picture types). Maybe I broke something in there...
>
> That's probably what I actually meant :-s
>
> Just looking through remux.c now. Do you have any good URLs for info on these
> DVB streams so I can see what it is doing?
>
> > > I've found the //#define DEBUGRINGBUFFERS bit in ringbuffer.h but I'm
> > > not really sure what the output means to try to debug this!
> >
> > This prints a visual display of all ringbuffers, which is rather
> > helpful when testing buffer handling.
>
> What should this output be like, ideally? At present, it spews out many lines,
> i.e. several screens full, to start with, with the head and tail pointers
> generally moving progressively to the right:
That's just fine.
> 0 >-------------------------------------------- -1 -1 Transfer
> 1 >-------------------------------------------- -1 -1 Result
> 2 -<>------------------------------------------ 11280 188 TS
>
> 0 ------<*>------------------------------------ 188 55084 Transfer
> 1 ------->------------------------------------- 2048 5906 Result
> 2 --------->----------------------------------- 11280 188 TS
>
> 0 -------->------------------------------------ 188 55460 Transfer
> 1 ---------------->---------------------------- 2048 4096 Result
> 2 --------->----------------------------------- 10716 188 TS
>
> 0 -------->------------------------------------ 188 55460 Transfer
> 1 ---------------->---------------------------- 2048 4096 Result
> 2 --------->----------------------------------- 10716 188 TS
>
> 0 -------->------------------------------------ 188 55460 Transfer
> 1 ---------------->---------------------------- 2048 4096 Result
> 2 ---------<>---------------------------------- 11280 188 TS
>
> etc.
>
> After a while it will sit there for several minutes without outputting any
> more lines before spewing out another large number of lines before settling
> again. (I'm assuming that this is real and not some bizarre buffering of
> stdout!).
The buffer debug output is only generated if a recording or Transfer Mode
is currently going on.
> Similar things are seen during record and playback, e.g.:
>
> 0 --------------------------------<>----------- 188 54708 Recorder
> 1 ----------------------------------<********>- 2048 4096 Result
> 2 -------------------------------------<>------ 10528 188 TS
>
> 0 ------------------------------------->------- 188 54896 Recorder
> 1 ----------------------------------<*********> 2048 18432 Result
> 2 ---->---------------------------------------- 11468 188 TS
>
> 0 ----------------------------------------->--- 188 55084 Recorder
> 1 ------------------------<*********>---------- 2048 2048 Result
> 2 --------------<>----------------------------- 11092 188 TS
>
> 0 <>------------------------------------------- 188 54896 Recorder
> 1 -------------------------<********>---------- 2048 14336 Result
> 2 -------------------------<>------------------ 10528 188 TS
>
> 0 ----->--------------------------------------- 188 54708 Recorder
> 1 -------------------------<********>---------- 2048 2048 Result
> 2 ------------------------------------->------- 10528 188 TS
>
> 0 ---------<>---------------------------------- 188 54896 Recorder
> 1 -------------------------<********>---------- 2048 16679 Result
> 2 --->----------------------------------------- 11468 188 TS
>
> 0 -------------->------------------------------ 188 54708 Recorder
> 1 -------------------------<********>---------- 2048 2048 Result
> 2 --------------<>----------------------------- 11280 188 TS
>
> (Are the *s bad?!)
>
> Is this the expected bahaviour, or should it just output one set on going ot
> transfer, playback, or record?
The "----------" marks the empty buffer area, while "********" marks occupied
buffer. '>' is the "head" (where new data is written) and '<' is the "tail"
(where it is read). If there is only a '>' it means that the buffer is (almost)
empty.
Klaus
Home |
Main Index |
Thread Index