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.. :-)
ABC_Affiliate
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.
This
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)
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
pvrinput- function SetChannelDevice() and determines the needed settings.
And this is your problem. There are no debug messages from pvrinput's
SetChannelDevice() or ProvidesChannel(), so vdr never calls these pvrinput
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
possible
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.
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 define:
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.
Regards, Rainer
2011/6/8 Rob Davis rob@davis-family.info:
ok, that makes sense to me...
I am using a brain dead cable box which are being given away by the cable company, these have RF out only on either US Channel 3 or 4. I have two of these wired together with a signal combiner (To minimize the side band intererence). For pvrinput they all need this frequency.. (now at Ch 4), if device 1 is busy I hacked pvrinput to flip the frequency to channel 3, but streamdev would never know this.
Can we put a check in streamdev to check if it's a pvrinput device and recall even if the frequency is the same?
Hi Rob,
Can we put a check in streamdev to check if it's a pvrinput device and recall even if the frequency is the same?
if i got it right the pvr devices hasn't to be retuned when switching the channel, but the externchannelswitch-script has to be executed.
IMO it isn't a good idea to check for a pvrinput device in the softdevice server. These two plug-ins shouldn't have any dependencies. What you really need is that the external channel script gets executed If some "constraints" are fullfilled. My first idea is to extend the core vdr for a callback function which informs plugins about attaching/detaching receivers to/from a device and retuning of a device.
With this informations a plugin could execute such externchannelswitch-scripts.
But i think there is a problem that can't be fixed with this approach: When watch live tv on channel 1 and streamdev requests channel 2, vdr cannot handle this. Why? : vdr/streamdev doesn't know that 2 different pvrinput-devices are needed. Correct me if i'm wrong
Hi Rob,
for your (and only for your) problem there could be an easier solution:
When doing a channel switch streamdev queries for a new device while the current device is still active (means receivers are attached to the device). If no device could be found, streamdev detaches itself and queries again.
If streamdev only queries for a device after detaching itself, the pvrinput device gets closed and reopened again incl. executing the channel switch thing. This is a really hack with some disadvantages (e.g. like larger channel switch times in case of multiple channels in a transponder) but i guess this would help.
I guess doing the following line should be sufficient in server/connection.c (streamdev-version 0.5.0-CVS):
bool cServerConnection::ProvidesChannel(const cChannel *Channel, int Priority) { const cChannel *current = Channels.GetByNumber(cDevice::CurrentChannel()); const cChannel *current = Channels.GetByNumber(cDevice::CurrentChannel());
<<< cDevice *device = CheckDlevice(Channel, Priority, false);
cDevice *device = 0;
if (!device || (device == cDevice::ActualDevice() && !cSuspendCtl::IsActive() && StreamdevServerSetup.SuspendMode != smAlways && current != NULL && !TRANSPONDER(Channel, current))) { // mustn't switch actual device // maybe a device would be free if THIS connection did turn off its streams? Detach(); device = CheckDevice(Channel, Priority, false); Attach();
2011/6/9 Rainer Blickle rainer.blickle@googlemail.com:
Ok, will try this out tonight when I get home.
For info. PVRInput should treat every channel as a seperate transponder (imho).
I think you hit the nail on the head though, it's not detaching the first stream before starting the second, which is why changing channel on the remote frontend from say 5 to 8 leaves the backend locked on channel 5.
Conversely, the vomp plugin always seems to detach, which probably leads to longer channel change times, but works with pvrinput.
Could the patch below work for everyone if a conditional check for tuner type P was put in?
On 09/06/11 01:53, Rainer Blickle wrote:
<<< cDevice *device = CheckDlevice(Channel, Priority, false);
> cDevice *device = 0;
With this there is some improvement, however, its calling the old channel again, so if I change from channel 4 to channel 6 then external channel is called, but changes it to channel 4. I wonder is streamdev-client needs something similar to differentiate channels.
On 06/09/2011 05:23 PM, Rob Davis wrote:
Here is a logfile.. Started remote vdr on channel 4, switched to channel 5.
Somehow the channel settings are being lost when the channel is called..
sudo tail -f /var/log/vdr.log Jun 9 21:12:15 oac vdr: [1696] cPvrReadThread::Action() stopped on /dev/video1 Jun 9 21:12:15 oac vdr: [1696] PvrReadThread of /dev/video1 thread ended (pid=1310, tid=1696) Jun 9 21:12:15 oac vdr: [1695] cPvrDevice::SetEncoderState (Stop) for /dev/video1 (PVR500#1) Jun 9 21:12:15 oac vdr: [1675] streamdev-writer thread ended (pid=1310, tid=1675) Jun 9 21:12:15 oac vdr: [1386] buffer stats: 379008 (10%) used Jun 9 21:12:15 oac vdr: [1386] buffer stats: 0 (0%) used Jun 9 21:12:15 oac vdr: [1695] SetVBImode(525, 0) on /dev/video1 (PVR500#1) Jun 9 21:12:15 oac vdr: [1695] receiver on device 10 thread ended (pid=1310, tid=1695) Jun 9 21:12:16 oac vdr: [1386] streamdev: closing streamdev connection to 192.168.2.13:34100 Jun 9 21:12:16 oac vdr: [1386] buffer stats: 0 (0%) used Jun 9 21:12:38 oac vdr: [1376] [discovery] BROADCAST: VDR xineliboutput DISCOVERY 1.0 Jun 9 21:12:39 oac vdr: [1386] Streamdev: Accepted new client (VTP) 192.168.2.13:38657 Jun 9 21:12:39 oac vdr: [1386] ParseChannel TV input -1, norm=0x0000b000, card 999 Jun 9 21:12:39 oac vdr: [1386] cPvrDevice::ProvidesChannel: input -1 unknown on /dev/video0 (HDPVR) Jun 9 21:12:39 oac vdr: [1386] ParseChannel TV input 0, norm=0x0000b000, card 999 Jun 9 21:12:39 oac vdr: [1386] cPvrDevice::ProvidesChannel: /dev/video1 (PVR500#1): Channel 4 (4-WTVO ABC_Affiliate ntsc) 67.25MHz, -> true Jun 9 21:12:39 oac vdr: [1386] cPvrDevice::ProvidesChannel: /dev/video1: Receiving()=false, needsDetachReceivers=true, Priority=0, hasPriority=true Jun 9 21:12:39 oac vdr: [1386] ParseChannel TV input 0, norm=0x0000b000, card 999 Jun 9 21:12:39 oac vdr: [1386] cPvrDevice::ProvidesChannel: /dev/video2 (PVR500#2): Channel 4 (4-WTVO ABC_Affiliate ntsc) 67.25MHz, -> true Jun 9 21:12:39 oac vdr: [1386] cPvrDevice::ProvidesChannel: /dev/video2: Receiving()=true, needsDetachReceivers=true, Priority=0, hasPriority=true Jun 9 21:12:39 oac vdr: [1386] ParseChannel TV input 0, norm=0x0000b000, card 999 Jun 9 21:12:39 oac vdr: [1386] cPvrDevice::ProvidesChannel: /dev/video3 (HVR1600): Channel 4 (4-WTVO ABC_Affiliate ntsc) 67.25MHz, -> false Jun 9 21:12:39 oac vdr: [1386] cPvrDevice::ProvidesChannel: /dev/video3: Receiving()=true, needsDetachReceivers=true, Priority=0, hasPriority=false Jun 9 21:12:39 oac vdr: [1386] IPTV: cIptvDevice::ProvidesChannel(0) Jun 9 21:12:39 oac vdr: [1386] IPTV: cIptvDevice::ProvidesTransponder(0) Jun 9 21:12:39 oac vdr: [1386] IPTV: cIptvDevice::ProvidesSource(0) Jun 9 21:12:39 oac vdr: [1386] IPTV: cIptvDevice::ProvidesChannel(1) Jun 9 21:12:39 oac vdr: [1386] IPTV: cIptvDevice::ProvidesTransponder(1) Jun 9 21:12:39 oac vdr: [1386] IPTV: cIptvDevice::ProvidesSource(1) Jun 9 21:12:39 oac vdr: [1310] connect from 192.168.2.13, port 33742 - accepted Jun 9 21:12:39 oac vdr: [1386] ParseChannel TV input -1, norm=0x0000b000, card 999 Jun 9 21:12:39 oac vdr: [1386] cPvrDevice::ProvidesChannel: input -1 unknown on /dev/video0 (HDPVR) Jun 9 21:12:39 oac vdr: [1386] ParseChannel TV input 0, norm=0x0000b000, card 999 Jun 9 21:12:39 oac vdr: [1386] cPvrDevice::ProvidesChannel: /dev/video1 (PVR500#1): Channel 4 (4-WTVO ABC_Affiliate ntsc) 67.25MHz, -> true Jun 9 21:12:39 oac vdr: [1386] cPvrDevice::ProvidesChannel: /dev/video1: Receiving()=false, needsDetachReceivers=true, Priority=0, hasPriority=true Jun 9 21:12:39 oac vdr: [1386] ParseChannel TV input 0, norm=0x0000b000, card 999 Jun 9 21:12:39 oac vdr: [1386] cPvrDevice::ProvidesChannel: /dev/video2 (PVR500#2): Channel 4 (4-WTVO ABC_Affiliate ntsc) 67.25MHz, -> true Jun 9 21:12:39 oac vdr: [1386] cPvrDevice::ProvidesChannel: /dev/video2: Receiving()=true, needsDetachReceivers=true, Priority=0, hasPriority=true Jun 9 21:12:39 oac vdr: [1386] ParseChannel TV input 0, norm=0x0000b000, card 999 Jun 9 21:12:39 oac vdr: [1386] cPvrDevice::ProvidesChannel: /dev/video3 (HVR1600): Channel 4 (4-WTVO ABC_Affiliate ntsc) 67.25MHz, -> false Jun 9 21:12:39 oac vdr: [1386] cPvrDevice::ProvidesChannel: /dev/video3: Receiving()=true, needsDetachReceivers=true, Priority=0, hasPriority=false Jun 9 21:12:39 oac vdr: [1386] IPTV: cIptvDevice::ProvidesChannel(0) Jun 9 21:12:39 oac vdr: [1386] IPTV: cIptvDevice::ProvidesTransponder(0) Jun 9 21:12:39 oac vdr: [1386] IPTV: cIptvDevice::ProvidesSource(0) Jun 9 21:12:39 oac vdr: [1386] IPTV: cIptvDevice::ProvidesChannel(1) Jun 9 21:12:39 oac vdr: [1386] IPTV: cIptvDevice::ProvidesTransponder(1) Jun 9 21:12:39 oac vdr: [1386] IPTV: cIptvDevice::ProvidesSource(1) Jun 9 21:12:39 oac vdr: [1386] cPvrDevice::SetChannelDevice 4 (4-WTVO ABC_Affiliate ntsc) 67.25MHz (/dev/video1 = PVR500#1) Jun 9 21:12:39 oac vdr: [1386] ParseChannel TV input 0, norm=0x0000b000, card 999 Jun 9 21:12:39 oac vdr: [1386] cPvrDevice::SetChannelDevice prepare switch to 4 (4-WTVO ABC_Affiliate ntsc) 67.25MHz (/dev/video1 = PVR500#1) Jun 9 21:12:39 oac vdr: [1386] ParseChannel TV input -1, norm=0x0000b000, card 999 Jun 9 21:12:39 oac vdr: [1386] cPvrDevice::ProvidesChannel: input -1 unknown on /dev/video0 (HDPVR) Jun 9 21:12:39 oac vdr: [1386] ParseChannel TV input 0, norm=0x0000b000, card 999 Jun 9 21:12:39 oac vdr: [1386] cPvrDevice::ProvidesChannel: /dev/video1 (PVR500#1): Channel 4 (4-WTVO ABC_Affiliate ntsc) 67.25MHz, -> true Jun 9 21:12:39 oac vdr: [1386] cPvrDevice::ProvidesChannel: /dev/video1: Receiving()=false, needsDetachReceivers=true, Priority=0, hasPriority=true Jun 9 21:12:39 oac vdr: [1386] ParseChannel TV input 0, norm=0x0000b000, card 999 Jun 9 21:12:39 oac vdr: [1386] cPvrDevice::ProvidesChannel: /dev/video2 (PVR500#2): Channel 4 (4-WTVO ABC_Affiliate ntsc) 67.25MHz, -> true Jun 9 21:12:39 oac vdr: [1386] cPvrDevice::ProvidesChannel: /dev/video2: Receiving()=true, needsDetachReceivers=true, Priority=0, hasPriority=true Jun 9 21:12:39 oac vdr: [1386] ParseChannel TV input 0, norm=0x0000b000, card 999 Jun 9 21:12:39 oac vdr: [1386] cPvrDevice::ProvidesChannel: /dev/video3 (HVR1600): Channel 4 (4-WTVO ABC_Affiliate ntsc) 67.25MHz, -> false Jun 9 21:12:39 oac vdr: [1386] cPvrDevice::ProvidesChannel: /dev/video3: Receiving()=true, needsDetachReceivers=true, Priority=0, hasPriority=false Jun 9 21:12:39 oac vdr: [1386] IPTV: cIptvDevice::ProvidesChannel(0) Jun 9 21:12:39 oac vdr: [1386] IPTV: cIptvDevice::ProvidesTransponder(0) Jun 9 21:12:39 oac vdr: [1386] IPTV: cIptvDevice::ProvidesSource(0) Jun 9 21:12:39 oac vdr: [1386] IPTV: cIptvDevice::ProvidesChannel(1) Jun 9 21:12:39 oac vdr: [1386] IPTV: cIptvDevice::ProvidesTransponder(1) Jun 9 21:12:39 oac vdr: [1386] IPTV: cIptvDevice::ProvidesSource(1) Jun 9 21:12:39 oac vdr: [1386] cPvrDevice::SetChannelDevice 4 (4-WTVO ABC_Affiliate ntsc) 67.25MHz (/dev/video1 = PVR500#1) Jun 9 21:12:39 oac vdr: [1386] ParseChannel TV input 0, norm=0x0000b000, card 999 Jun 9 21:12:39 oac vdr: [1386] buffer stats: 0 (0%) used Jun 9 21:12:39 oac vdr: [1386] Streamdev: Setting data connection to 192.168.2.13:39550 Jun 9 21:12:39 oac vdr: [1386] cPvrDevice::SetPid 301 = On Jun 9 21:12:39 oac vdr: [1708] streamdev-livestreaming thread started (pid=1310, tid=1708) Jun 9 21:12:39 oac vdr: [1709] receiver on device 10 thread started (pid=1310, tid=1709) Jun 9 21:12:39 oac vdr: [1709] entering cPvrDevice::OpenDvr: Dvr of /dev/video1 (PVR500#1) is closed Jun 9 21:12:39 oac vdr: [1709] entering cPvrDevice::CloseDvr: Dvr of /dev/video1 (PVR500#1) is closed Jun 9 21:12:39 oac vdr: [1709] cPvrDevice::ResetBuffering(): tsBuffer prefill = 314524 for /dev/video1 (PVR500#1) Jun 9 21:12:39 oac vdr: [1709] channel is television. Jun 9 21:12:39 oac vdr: [1709] OpenDvr: calling /etc/vdr/plugins/pvrinput/externchannelswitch.sh 30040 4 1 67250 Jun 9 21:12:39 oac vdr: [1707] streamdev-writer thread started (pid=1310, tid=1707) Jun 9 21:12:39 oac vdr: [1386] cPvrDevice::SetPid 101 = On Jun 9 21:12:39 oac vdr: [1386] cPvrDevice::SetPid 301 = Off Jun 9 21:12:39 oac vdr: [1386] cPvrDevice::SetPid 300 = On Jun 9 21:12:39 oac vdr: [1386] cPvrDevice::SetPid 301 = Off Jun 9 21:12:39 oac vdr: [1386] cPvrDevice::SetPid 101 = Off Jun 9 21:12:39 oac vdr: [1386] cPvrDevice::SetPid 301 = Off Jun 9 21:12:39 oac vdr: [1386] cPvrDevice::SetPid 101 = Off Jun 9 21:12:39 oac vdr: [1386] cPvrDevice::SetPid 300 = Off Jun 9 21:12:39 oac vdr: [1709] OpenDvr: returned from /etc/vdr/plugins/pvrinput/externchannelswitch.sh 30040 4 1 67250 Jun 9 21:12:39 oac vdr: [1709] OpenDvr: sleeping for 3 seconds... Jun 9 21:12:39 oac vdr: [1376] [discovery] Received valid discovery message VDR xineliboutput DISCOVERY 1.0 Jun 9 21:12:39 oac vdr: [1376] [discovery] BROADCAST: VDR xineliboutput DISCOVERY 1.0 Jun 9 21:12:39 oac vdr: [1376] [discovery] BROADCAST: VDR xineliboutput DISCOVERY 1.0 Jun 9 21:12:42 oac vdr: [1709] OpenDvr: waking up Jun 9 21:12:42 oac vdr: [1709] SetVBImode(525, 0) on /dev/video1 (PVR500#1) Jun 9 21:12:42 oac vdr: [1709] cPvrDevice::SetEncoderState (Start) for /dev/video1 (PVR500#1) Jun 9 21:12:43 oac vdr: [1709] cPvrDevice::OpenDvr: create new readThread on /dev/video1 (PVR500#1) Jun 9 21:12:43 oac vdr: [1709] cPvrReadThread Jun 9 21:12:43 oac vdr: [1709] cPvrDevice::IsBuffering(): available = 0, prefill = 314524 for /dev/video1 (PVR500#1) Jun 9 21:12:43 oac vdr: [1726] PvrReadThread of /dev/video1 thread started (pid=1310, tid=1726) Jun 9 21:12:43 oac vdr: [1726] cPvrReadThread::Action(): Entering Action() Jun 9 21:12:43 oac vdr: [1709] cPvrDevice::IsBuffering(): available = 0, prefill = 314524 for /dev/video1 (PVR500#1) Jun 9 21:12:43 oac vdr: [1709] cPvrDevice::IsBuffering(): available = 0, prefill = 314524 for /dev/video1 (PVR500#1) Jun 9 21:12:43 oac vdr: [1709] cPvrDevice::IsBuffering(): available = 0, prefill = 314524 for /dev/video1 (PVR500#1) Jun 9 21:12:43 oac vdr: [1709] cPvrDevice::IsBuffering(): available = 0, prefill = 314524 for /dev/video1 (PVR500#1) Jun 9 21:12:43 oac vdr: [1709] cPvrDevice::IsBuffering(): available = 0, prefill = 314524 for /dev/video1 (PVR500#1) Jun 9 21:12:43 oac vdr: [1709] cPvrDevice::IsBuffering(): available = 0, prefill = 314524 for /dev/video1 (PVR500#1) Jun 9 21:12:43 oac vdr: [1709] cPvrDevice::IsBuffering(): available = 0, prefill = 314524 for /dev/video1 (PVR500#1) Jun 9 21:12:43 oac vdr: [1709] cPvrDevice::IsBuffering(): available = 0, prefill = 314524 for /dev/video1 (PVR500#1) Jun 9 21:12:43 oac vdr: [1709] cPvrDevice::IsBuffering(): available = 0, prefill = 314524 for /dev/video1 (PVR500#1) Jun 9 21:12:43 oac vdr: [1709] cPvrDevice::IsBuffering(): available = 0, prefill = 314524 for /dev/video1 (PVR500#1) Jun 9 21:12:43 oac vdr: [1726] cPvrReadThread::Action():timeout on select from /dev/video1: 0:Success - retrying Jun 9 21:12:43 oac vdr: [1709] cPvrDevice::IsBuffering(): available = 0, prefill = 314524 for /dev/video1 (PVR500#1) Jun 9 21:12:43 oac vdr: [1709] cPvrDevice::IsBuffering(): available = 0, prefill = 314524 for /dev/video1 (PVR500#1) Jun 9 21:12:43 oac vdr: [1709] cPvrDevice::IsBuffering(): available = 0, prefill = 314524 for /dev/video1 (PVR500#1) Jun 9 21:12:43 oac vdr: [1709] cPvrDevice::IsBuffering(): available = 0, prefill = 314524 for /dev/video1 (PVR500#1) Jun 9 21:12:43 oac vdr: [1709] cPvrDevice::IsBuffering(): available = 0, prefill = 314524 for /dev/video1 (PVR500#1) Jun 9 21:12:43 oac vdr: [1709] cPvrDevice::IsBuffering(): available = 0, prefill = 314524 for /dev/video1 (PVR500#1) Jun 9 21:12:43 oac vdr: [1709] cPvrDevice::IsBuffering(): available = 156980, prefill = 314524 for /dev/video1 (PVR500#1) Jun 9 21:12:43 oac vdr: [1709] cPvrDevice::IsBuffering(): available = 156980, prefill = 314524 for /dev/video1 (PVR500#1) Jun 9 21:12:43 oac vdr: [1709] cPvrDevice::IsBuffering(): available = 156980, prefill = 314524 for /dev/video1 (PVR500#1) Jun 9 21:12:43 oac vdr: [1709] cPvrDevice::IsBuffering(): available = 156980, prefill = 314524 for /dev/video1 (PVR500#1) Jun 9 21:12:43 oac vdr: [1709] cPvrDevice::IsBuffering(): available = 156980, prefill = 314524 for /dev/video1 (PVR500#1) Jun 9 21:12:43 oac vdr: [1709] cPvrDevice::IsBuffering(): available = 233120, prefill = 314524 for /dev/video1 (PVR500#1) Jun 9 21:12:43 oac vdr: [1709] cPvrDevice::IsBuffering(): available = 233120, prefill = 314524 for /dev/video1 (PVR500#1) Jun 9 21:12:43 oac vdr: [1709] cPvrDevice::IsBuffering(): available = 233120, prefill = 314524 for /dev/video1 (PVR500#1) Jun 9 21:12:43 oac vdr: [1709] cPvrDevice::IsBuffering(): available = 233120, prefill = 314524 for /dev/video1 (PVR500#1) Jun 9 21:12:43 oac vdr: [1709] cPvrDevice::IsBuffering(): available = 233120, prefill = 314524 for /dev/video1 (PVR500#1) Jun 9 21:12:43 oac vdr: [1709] cPvrDevice::IsBuffering(): available = 233120, prefill = 314524 for /dev/video1 (PVR500#1) Jun 9 21:12:43 oac vdr: [1709] cPvrDevice::IsBuffering(): available = 308508, prefill = 314524 for /dev/video1 (PVR500#1) Jun 9 21:12:43 oac vdr: [1709] cPvrDevice::IsBuffering(): available = 308508, prefill = 314524 for /dev/video1 (PVR500#1) Jun 9 21:12:43 oac vdr: [1709] cPvrDevice::IsBuffering(): available = 308508, prefill = 314524 for /dev/video1 (PVR500#1) Jun 9 21:12:43 oac vdr: [1709] cPvrDevice::IsBuffering(): available = 308508, prefill = 314524 for /dev/video1 (PVR500#1) Jun 9 21:12:44 oac vdr: [1353] changing pids of channel 4 from 301+101=2:300=@4:0:305 to 301+101=2:300=@4:0:0 Jun 9 21:12:53 oac vdr: [1386] cPvrDevice::SetPid 301 = Off Jun 9 21:12:53 oac vdr: [1386] cPvrDevice::SetPid 101 = Off Jun 9 21:12:53 oac vdr: [1386] cPvrDevice::SetPid 101 = Off Jun 9 21:12:53 oac vdr: [1386] cPvrDevice::SetPid 300 = Off Jun 9 21:12:53 oac vdr: [1386] cPvrDevice::SetPid 300 = Off Jun 9 21:12:53 oac vdr: [1386] cPvrDevice::SetPid 301 = On Jun 9 21:12:53 oac vdr: [1709] entering cPvrDevice::CloseDvr: Dvr of /dev/video1 (PVR500#1) is open Jun 9 21:12:53 oac vdr: [1709] cPvrDevice::StopReadThread on /dev/video1 (PVR500#1): read thread exists, delete it Jun 9 21:12:53 oac vdr: [1709] ~cPvrReadThread Jun 9 21:12:53 oac vdr: [1726] cPvrReadThread::Action() stopped on /dev/video1 Jun 9 21:12:53 oac vdr: [1726] PvrReadThread of /dev/video1 thread ended (pid=1310, tid=1726) Jun 9 21:12:53 oac vdr: [1709] cPvrDevice::SetEncoderState (Stop) for /dev/video1 (PVR500#1) Jun 9 21:12:53 oac vdr: [1709] SetVBImode(525, 0) on /dev/video1 (PVR500#1) Jun 9 21:12:53 oac vdr: [1709] receiver on device 10 thread ended (pid=1310, tid=1709) Jun 9 21:12:53 oac vdr: [1737] receiver on device 10 thread started (pid=1310, tid=1737) Jun 9 21:12:53 oac vdr: [1737] entering cPvrDevice::OpenDvr: Dvr of /dev/video1 (PVR500#1) is closed Jun 9 21:12:53 oac vdr: [1737] entering cPvrDevice::CloseDvr: Dvr of /dev/video1 (PVR500#1) is closed Jun 9 21:12:53 oac vdr: [1737] cPvrDevice::ResetBuffering(): tsBuffer prefill = 314524 for /dev/video1 (PVR500#1) Jun 9 21:12:53 oac vdr: [1737] SetVBImode(525, 0) on /dev/video1 (PVR500#1) Jun 9 21:12:53 oac vdr: [1386] cPvrDevice::SetPid 101 = On Jun 9 21:12:53 oac vdr: [1386] cPvrDevice::SetPid 301 = Off Jun 9 21:12:53 oac vdr: [1386] cPvrDevice::SetPid 300 = On Jun 9 21:12:53 oac vdr: [1386] cPvrDevice::SetPid 301 = Off Jun 9 21:12:53 oac vdr: [1386] cPvrDevice::SetPid 101 = Off Jun 9 21:12:53 oac vdr: [1737] cPvrDevice::SetEncoderState (Start) for /dev/video1 (PVR500#1) Jun 9 21:12:53 oac vdr: [1737] cPvrDevice::OpenDvr: create new readThread on /dev/video1 (PVR500#1) Jun 9 21:12:53 oac vdr: [1737] cPvrReadThread Jun 9 21:12:53 oac vdr: [1737] cPvrDevice::IsBuffering(): available = 0, prefill = 314524 for /dev/video1 (PVR500#1) Jun 9 21:12:53 oac vdr: [1738] PvrReadThread of /dev/video1 thread started (pid=1310, tid=1738) Jun 9 21:12:53 oac vdr: [1738] cPvrReadThread::Action(): Entering Action() Jun 9 21:12:53 oac vdr: [1737] cPvrDevice::IsBuffering(): available = 0, prefill = 314524 for /dev/video1 (PVR500#1) Jun 9 21:12:53 oac vdr: [1737] cPvrDevice::IsBuffering(): available = 0, prefill = 314524 for /dev/video1 (PVR500#1) Jun 9 21:12:53 oac vdr: [1737] cPvrDevice::IsBuffering(): available = 0, prefill = 314524 for /dev/video1 (PVR500#1) Jun 9 21:12:53 oac vdr: [1737] cPvrDevice::IsBuffering(): available = 0, prefill = 314524 for /dev/video1 (PVR500#1) Jun 9 21:12:53 oac vdr: [1737] cPvrDevice::IsBuffering(): available = 0, prefill = 314524 for /dev/video1 (PVR500#1) Jun 9 21:12:53 oac vdr: [1737] cPvrDevice::IsBuffering(): available = 0, prefill = 314524 for /dev/video1 (PVR500#1) Jun 9 21:12:53 oac vdr: [1737] cPvrDevice::IsBuffering(): available = 0, prefill = 314524 for /dev/video1 (PVR500#1) Jun 9 21:12:53 oac vdr: [1737] cPvrDevice::IsBuffering(): available = 0, prefill = 314524 for /dev/video1 (PVR500#1) Jun 9 21:12:53 oac vdr: [1737] cPvrDevice::IsBuffering(): available = 0, prefill = 314524 for /dev/video1 (PVR500#1) Jun 9 21:12:53 oac vdr: [1737] cPvrDevice::IsBuffering(): available = 0, prefill = 314524 for /dev/video1 (PVR500#1) Jun 9 21:12:53 oac vdr: [1737] cPvrDevice::IsBuffering(): available = 0, prefill = 314524 for /dev/video1 (PVR500#1) Jun 9 21:12:53 oac vdr: [1737] cPvrDevice::IsBuffering(): available = 0, prefill = 314524 for /dev/video1 (PVR500#1) Jun 9 21:12:53 oac vdr: [1738] cPvrReadThread::Action():timeout on select from /dev/video1: 0:Success - retrying Jun 9 21:12:53 oac vdr: [1737] cPvrDevice::IsBuffering(): available = 0, prefill = 314524 for /dev/video1 (PVR500#1) Jun 9 21:12:53 oac vdr: [1737] cPvrDevice::IsBuffering(): available = 0, prefill = 314524 for /dev/video1 (PVR500#1) Jun 9 21:12:54 oac vdr: [1737] cPvrDevice::IsBuffering(): available = 0, prefill = 314524 for /dev/video1 (PVR500#1) Jun 9 21:12:54 oac vdr: [1737] cPvrDevice::IsBuffering(): available = 0, prefill = 314524 for /dev/video1 (PVR500#1) Jun 9 21:12:54 oac vdr: [1737] cPvrDevice::IsBuffering(): available = 0, prefill = 314524 for /dev/video1 (PVR500#1) Jun 9 21:12:54 oac vdr: [1737] cPvrDevice::IsBuffering(): available = 156980, prefill = 314524 for /dev/video1 (PVR500#1) Jun 9 21:12:54 oac vdr: [1737] cPvrDevice::IsBuffering(): available = 156980, prefill = 314524 for /dev/video1 (PVR500#1) Jun 9 21:12:54 oac vdr: [1737] cPvrDevice::IsBuffering(): available = 156980, prefill = 314524 for /dev/video1 (PVR500#1) Jun 9 21:12:54 oac vdr: [1737] cPvrDevice::IsBuffering(): available = 156980, prefill = 314524 for /dev/video1 (PVR500#1) Jun 9 21:12:54 oac vdr: [1737] cPvrDevice::IsBuffering(): available = 156980, prefill = 314524 for /dev/video1 (PVR500#1) Jun 9 21:12:54 oac vdr: [1737] cPvrDevice::IsBuffering(): available = 230676, prefill = 314524 for /dev/video1 (PVR500#1) Jun 9 21:12:54 oac vdr: [1737] cPvrDevice::IsBuffering(): available = 230676, prefill = 314524 for /dev/video1 (PVR500#1) Jun 9 21:12:54 oac vdr: [1737] cPvrDevice::IsBuffering(): available = 230676, prefill = 314524 for /dev/video1 (PVR500#1) Jun 9 21:12:54 oac vdr: [1737] cPvrDevice::IsBuffering(): available = 230676, prefill = 314524 for /dev/video1 (PVR500#1) Jun 9 21:12:54 oac vdr: [1737] cPvrDevice::IsBuffering(): available = 230676, prefill = 314524 for /dev/video1 (PVR500#1) Jun 9 21:12:54 oac vdr: [1737] cPvrDevice::IsBuffering(): available = 230676, prefill = 314524 for /dev/video1 (PVR500#1) Jun 9 21:12:54 oac vdr: [1737] cPvrDevice::IsBuffering(): available = 308132, prefill = 314524 for /dev/video1 (PVR500#1) Jun 9 21:12:54 oac vdr: [1737] cPvrDevice::IsBuffering(): available = 308132, prefill = 314524 for /dev/video1 (PVR500#1) Jun 9 21:12:54 oac vdr: [1737] cPvrDevice::IsBuffering(): available = 308132, prefill = 314524 for /dev/video1 (PVR500#1) Jun 9 21:12:54 oac vdr: [1737] cPvrDevice::IsBuffering(): available = 308132, prefill = 314524 for /dev/video1 (PVR500#1) Jun 9 21:13:56 oac vdr: [1387] suspendoutput: output suspended by inactivity timer Jun 9 21:13:56 oac vdr: [1387] cPvrDevice::SetPid 301 = Off Jun 9 21:13:56 oac vdr: [1387] cPvrDevice::SetPid 101 = Off Jun 9 21:13:56 oac vdr: [1387] cPvrDevice::SetPid 300 = Off Jun 9 21:13:56 oac vdr: [1673] entering cPvrDevice::CloseDvr: Dvr of /dev/video2 (PVR500#2) is open Jun 9 21:13:56 oac vdr: [1673] cPvrDevice::StopReadThread on /dev/video2 (PVR500#2): read thread exists, delete it Jun 9 21:13:56 oac vdr: [1673] ~cPvrReadThread Jun 9 21:13:56 oac vdr: [1694] cPvrReadThread::Action() stopped on /dev/video2 Jun 9 21:13:56 oac vdr: [1694] PvrReadThread of /dev/video2 thread ended (pid=1310, tid=1694) Jun 9 21:13:56 oac vdr: [1673] cPvrDevice::SetEncoderState (Stop) for /dev/video2 (PVR500#2) Jun 9 21:13:56 oac vdr: [1673] SetVBImode(525, 0) on /dev/video2 (PVR500#2) Jun 9 21:13:56 oac vdr: [1673] receiver on device 11 thread ended (pid=1310, tid=1673)