[vdr] possible busy loop in cDvbPlayer::Action?

Jose Alberto Reguero jareguero at telefonica.net
Fri Jul 22 10:16:34 CEST 2005


El Domingo, 3 de Julio de 2005 10:34, Martin Wache escribió:
> Udo Richter schrieb:
> > Luca Olivetti wrote:
> >>I also wonder how is it
> >>possible that vdr hasn't enough data to give to the device: no matter
> >>how big the buffer, once it is filled it should stay more or less full,
> >>unless you're at the end of the file.
> >
> > One guess: On playback start, buffers are empty and can accept lots of
> > data. This could result in some busy loops until enough data is read to
> > fill the buffer.
> >
> > If, for some reason, the disk read requires much CPU time, then the busy
> > loop will actually slow down the disk reading too.
> >
> > Maybe, in case of softdevice, this is oscillating: A busy file reader
> > takes CPU from decoding, causing decoding to stall. And as soon as the
> > decoder is catching up, maybe by dropping frames, the file buffers run
> > empty causing the file reader to busy loop again. (speculative, though)
>
> I guess this is a possible scenario, at least it explains the symptoms
> quite acuratly.
> Hmm, to finally solve this I guess we have to wait until Klaus answers.
> I think he is now on his holidays, right? So I'll wait until he is back.
> But thanks for your answers, at least I know now that the softdevice is
> not the only one which has problems like this.
>

The patch also work well with vdr-xine with a athlon 64 3200.
Without the patch there is a heavy cpu load when playing recordings.
Before I use the atached patch with have similar effects.
Jose Alberto
-------------- next part --------------
A non-text attachment was scrubbed...
Name: vdr-10_livelock.dpatch
Type: application/x-shellscript
Size: 674 bytes
Desc: not available
Url : http://www.linuxtv.org/pipermail/vdr/attachments/20050722/e7632b80/vdr-10_livelock.bin


More information about the vdr mailing list