[vdr] SVDRP connection freezes

Udo Richter udo_richter at gmx.de
Tue Oct 31 02:51:21 CET 2006


Tony Houghton wrote:
> The problem is that the svdrp connection has a tendency to freeze. I
> have to wait a few minutes for the socket to timeout at the system
> level. VDR's SVDRP timeout is set to 0, but I don't think that's making
> a difference. I think the reason other programs such as vdradmin work OK
> is that they open and close the connection for every command, but that
> approach is too sluggish for boxstar, which is supposed to be a
> transparent, primary interface to controlling VDR.

Holding the SVDRP connection for a long time is not a good idea, since 
VDR can only keep one SVDRP connection open at the same time. Holding 
the line permanently would block out other uses like VDRAdmin or 
EPGSearch plugin.

If you don't want to open the connection dynamically, you can write a 
simple plugin that forwards the key presses. This shouldn't be too 
difficult, since cRemote::Put is thread-safe, so you can open a socket 
and forward incoming key presses from a simple thread. You could even go 
the next step and write a real boxstar-remote plugin for VDR.

If you want to rely on existing stuff, maybe you can use the remote 
plugin from Oliver Endriss for your needs - it supports tty control and 
telnet control.

About the original question why the socket freezes: I don't see an 
obvious reason why this happens. If the VDR side would freeze, this 
would lead to a watchdog timeout. Otherwise, if anything kills the 
connection, there is probably a "lost connection to SVDRP client" 
message in the syslog. You may want to add some debugging code there to 
investigate. (svdrp.c, line ~1594)

Cheers,

Udo



More information about the vdr mailing list