[vdr] Problem with LiveBuffer and vdr-xine

Reinhard Nissl rnissl at gmx.de
Sun Apr 2 11:29:19 CEST 2006


Jose Alberto Reguero wrote:

>>> So, this is a matter of LiveBuffer patch. But I don't understand why it
>>> was working when switching channels.
>>> Anyway, to fix it properly, the following line in
>>> cXineDevice::SetPlayMode() most be adapted to LiveBuffer:
>>>        m_settings.SelectReplayPrebufferMode(!Transferring());
>>> For vanilla VDR, Transferring() reports the existence of a transfer
>>> thread which means, VDR sends Live TV to vdr-xine.
>>> So, how could I detect Live TV in the case of a VDR with LiveBuffer
>>> patch?
>>> Is there a way to automatically detect that the LiveBuffer patch was
>>> applied to VDR?
>> In config.h LIVEBUFFERVERSION is defined, when livebuffer has been applied:
>> When the livebuffer is active (replaying)
>> cTransferControl::ReceiverDevice() returns the receiving device. So you
>> could use this for detecting Live TV.
>> But I think it would be better to adapt the livebuffer patch so that
>> cDevice::Transferring() returns also true when a livebuffer recording is
>> played. (Or does something argue against it?)
> I try to force Live TV in vdr-xine for LiveBuffer to solve the problem. View 
> channels work ok. But when moving back or forward into the LiveBuffer don't 
> work very well.

Hhm, it seems that it is not that easy to find a proper solution. Maybe 
cDevice::Transferring() could be patched to return true when 
LiveBuffer's reader and writer are almost at the same position (delta ~ 
8 frames) and to return false otherwise.

Dipl.-Inform. (FH) Reinhard Nissl
mailto:rnissl at gmx.de

More information about the vdr mailing list