>> I have a PVR500 with the PVRInput plugin running on my Backend.
>> I am using an old Hauppauge FF DVB-s card just as a frontend on another
low powered system in order to throw the PVRInput channels to the
kitchen.  On the backend it's all working, however, switching between
channels doesn't quite work, as the streamdev server will give the
client the same channel over and over again regardless of what it
requested, unless the device changes (ie, if I go from /dev/video1 to
/dev/video2 it'll change channel).
> how do you force switching the video device?

i hacked device.c.. But don't tell anyone.. :-)

>> An example of the channel list is:
>> 2-WTTW PBS_Affiliate
>> ntsc;WTTW:67250:TV|NTSC:V:0:301+101=2:300=@4:0:0:30020:32:32:0
>> 3-WREX NBC_Affiliate
>> ntsc;WREX:67250:TV|NTSC:V:0:301+101=2:300=@4:305:0:30030:48:48:0 4-WTVO
>> ntsc;WTVO:67250:TV|NTSC:V:0:301+101=2:300=@4:0:0:30040:64:64:0
>> 5-WIFR CBS_Affiliate
>> ntsc;WIFR:67250:TV|NTSC:V:0:301+101=2:300=@4:0:0:30050:80:80:0
>> 6-WQRF Fox_Affiliate
>> ntsc;WQRF:67250:TV|NTSC:V:0:301+101=2:300=@4:0:0:30060:96:96:0
>> But, obviously all on the same line.  I think this is probably an issue
with streamdev rather than pvrinput as it works with Vomp happily.
>> I need it to detach and change channel in order to trigger the external
channel changer script.
> pvrinput does its channel settings (this includes executing the
> externchannelswitch-script) inside its function OpenDvr() while the encoder
> is still stopped.
> The settings will only be done if the bool ChannelSettingsDone is false.
> bool is always false at first plugin start. I guess this is the reason
why your channel settings were done once:
>> Jun  7 19:13:24 oac vdr: [8795] entering cPvrDevice::OpenDvr: Dvr of
/dev/video1 (PVR500#1) is closed
>> Jun  7 19:13:24 oac vdr: [8795] entering cPvrDevice::CloseDvr: Dvr of
/dev/video1 (PVR500#1) is closed
>> Jun  7 19:13:24 oac vdr: [8795] cPvrDevice::ResetBuffering(): tsBuffer
prefill = 314524 for /dev/video1 (PVR500#1)
>> Jun  7 19:13:24 oac vdr: [8795] channel is television.
>> Jun  7 19:13:24 oac vdr: [8795] OpenDvr: calling
>> /etc/vdr/plugins/pvrinput/externchannelswitch.sh 30040 4 1 67250 Jun  7
19:13:25 oac vdr: [8795] OpenDvr: returned from
>> /etc/vdr/plugins/pvrinput/externchannelswitch.sh 30040 4 1 67250 Jun  7
19:13:25 oac vdr: [8795] OpenDvr: sleeping for 3 seconds... Jun  7
19:13:28 oac vdr: [8795] OpenDvr: waking up
>> Jun  7 19:13:28 oac vdr: [8795] SetVBImode(525, 0) on /dev/video1
> When leaving OpenDvr, the bool is set to true.
> It will only become false again during runtime, if vdr calls the
pvrinput- function SetChannelDevice() and determines the needed
> And this is your problem. There are no debug messages from pvrinput's
SetChannelDevice() or ProvidesChannel(), so vdr never calls  these
> functions - although a channel switch for a pvrinput device is requested.
> But why? I have no idea. It works for you with vomp. It worked for me
with streamdev when I tested this last year. But I had only
streamdev-server running and used vlc to switch channels.
> Maybe a streamdev developer reads this and has an idea or can explain
> interactions between streamdev-client, vdr and a receiving device.

I think this is a streamdev issue not a pvrinput one, as if I change from
channel 5 to 6 on the remote streamdev client it will continue to display
channel 5.  If both my tuners are busy then it will lock to channel 5 on
my backend if I test it with xineliboutput.  Not lock to channel 6.  I had
a look at the http::// streamdev playlist settings and it sees different
channel pids.  Streamdev to vlc would work as it breaks the streamdev
connection when you change channel.  But streamdev-server to
streamdev-client doesn't seem to break the connection, just request a
second channel as it releases the first.

vdr mailing list

Reply via email to