[vdr] Problem with LiveBuffer and vdr-xine

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


Hi,

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:
>> #define LIVEBUFFERVERSION 106
>>
>> 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.

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



More information about the vdr mailing list