On Wed, 23 Jan 2008 10:50:45 +0100, Malte Forkel wrote
> sometimes I would like to use the FF card of my client for recording 
> (to the common video directory shared via NFS). The client seems to 
> automatically prefer its streamdev device though, i.e. it uses one 
> of the server's cards if available. Is there a way to tell vdr to 
> "stay local", preferably without editing channels.conf?

Two possible solutions come into my mind

1. Patch (or rather bugfix) for streamdev: When you disable streamdev-client
in its setup, it remains active until you restart vdr. It would make more
senste to make streamdev-client stop offering channels once it is disabled.
You would have to temporarily disable streamdev every time you want to make
sure the recording uses the local FF card.

2. Extend VDR's device selection algorithm: See cDevice::GetDevice(...) in
VDR's device.c. Timers usually have a high priority, so it's easy to identify
calls to GetDevice caused by a timer. Whenever GetDevice is called with a high
priority and the device's card index indicates a non-DVB card device like
streamdev-client, give that a maximum impact, so it should be avoided.

By checking for a particular priority range only (e.g. >= 30), you could even
use the timer priority to control whether streamdev or the FF card will
finally take the recording.

Patches for both solutions attached - feedback welcome! Note that both patches
are entirely untested.

DISCLAIMER: Fiddling around in cDevice::GetDevice() could have unexpected side
effects ;-)


Attachment: streamdev-disabled.diff
Description: Binary data

Attachment: vdr-avoid-streamdev-recording.diff
Description: Binary data

vdr mailing list

Reply via email to