[vdr] ERROR: can't set PID xxxx on device y
phelin at googlemail.com
Mon Feb 18 19:10:16 CET 2008
Klaus Schmidinger wrote:
> On 02/17/08 18:31, Reinhard Nissl wrote:
>> Klaus Schmidinger schrieb:
>>> The basic problem, as Reinhard pointed out, is that Transferring()
>>> doesn't return the right value at this time, because the transfer
>>> player hasn't been attached, yet.
>>> This change determines the Transferring condition from the fact
>>> that the actual device is different than the primary device, which
>>> is already the case at this early stage:
>>> --- device.c 2008/02/16 13:52:11 1.153
>>> +++ device.c 2008/02/17 15:55:06
>>> @@ -1159,7 +1159,7 @@
>>> bool cDevice::Transferring(void) const
>>> - return dynamic_cast<cTransfer *>(player) != NULL;
>>> + return ActualDevice() != PrimaryDevice();
>>> bool cDevice::AttachPlayer(cPlayer *Player)
>>> I hope this doesn't have any other side effects...
>> Hmm, this might break vdr-xine. I remember a discussion which led
>> to the introduction of cDevice::Transferring(), but I'm not sure
>> whether I was using the same code before, which is now used to
>> implement this function.
>> As I'm currently busy with other things, I won't find time to
>> test this change the next days.
> Can somebody else with vdr-xine please test whether this works?
> Although I don't see how this change could affect vdr-xine.
> But it should be checked, anyway.
I have tested this with xineliboutput and have not encountered any
problems. And it seems to have also fixed whatever it was that was
causing the error messages.
More information about the vdr