On 05.04.2010 00:55, Teemu Rantanen wrote:
Hi,
There's a new version of the patch implemented as a plugin. It seems to work, but there are few things to notice:
- Plugin does not cache which devices are Reddo devices, instead it
probes sysfs every time QAM256 channel is being tuned into (on any device). It would be nice if cDeviceHook added a mechanism for a hook to store context for each device. Hooking into device probe (like full feature card plugin does) would be much nicer way, but it would interfere with other plugins which need the same mechanism.
The proper way of doing this is to check the modulation types in cDvbDevice::ProvidesTransponder(), as in the attached patch (which will be part of VDR 1.7.15). If the "reddo" driver doesn't set the FE_CAN_QAM_256 flag correctly, it needs to be fixed there.
- VDR crashes at very late in exit() when clearing some list (most
likely cDeviceHook list), but I couldn't find a way to avoid that
From PLUGINS.html:
A plugin that creates a derived cDeviceHook ... shall not delete this object. It will be automatically deleted when the program ends
I have added a similar note to device.h now.
...
- The sysfs probe code in full feature card plugin is buggy :-)
Would you mind posting a patch that fixes this?
Klaus
The plugin is available here: