Am 08.06.2011 22:25, schrieb Rainer Blickle:
Hi Rob,

I also don't think its a pvrinput problem because:
streamdev doesn't query for a new device if the current and the next
channel has the same transponder. This is checked via the following

channels.h:#define ISTRANSPONDER(f1, f2)  (abs((f1) - (f2))<  4) //XXX

All the channels in channel.conf have the same frequency, so streamdev
only changes the receivers but doesn't query for a device.
I havent understand exactly what you are doing. Do you use an analogue
input (like scart) of the pvr500 card and the channel switch script
changes the channel of another device ? If so, i could imagine the
frequency in channels.conf doesn't matter and you could simply modify
the frequencies.

 The frequency matters since he is using the tuner input.


Regards, Rainer

2011/6/8 Rob Davis<r...@davis-family.info>:

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
3-WREX NBC_Affiliate
ntsc;WREX:67250:TV|NTSC:V:0:301+101=2:300=@4:305:0:30030:48:48:0 4-WTVO
5-WIFR CBS_Affiliate
6-WQRF Fox_Affiliate

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

vdr mailing list

vdr mailing list

Reply via email to