diff -Nu vdr-1.4.5/device.c vdr-1.4.5-channelscan/device.c --- vdr-1.4.5/device.c 2006-09-03 12:13:25.000000000 +0200 +++ vdr-1.4.5-channelscan/device.c 2007-03-13 14:58:43.000000000 +0100 @@ -19,6 +19,11 @@ #include "status.h" #include "transfer.h" + +// reel-channelscan +bool scanning_on_receiving_device = false; + + // --- cPesAssembler --------------------------------------------------------- class cPesAssembler { diff -Nu vdr-1.4.5/device.h vdr-1.4.5-channelscan/device.h --- vdr-1.4.5/device.h 2006-06-15 11:32:48.000000000 +0200 +++ vdr-1.4.5-channelscan/device.h 2007-03-13 14:58:43.000000000 +0100 @@ -33,6 +33,9 @@ #define TS_SYNC_BYTE 0x47 #define PID_MASK_HI 0x1F + +extern bool scanning_on_receiving_device; + enum eSetChannelResult { scrOk, scrNotAvailable, scrNoTransfer, scrFailed }; enum ePlayMode { pmNone, // audio/video from decoder Gemeinsame Unterverzeichnisse: vdr-1.4.5/libsi und vdr-1.4.5-channelscan/libsi. Gemeinsame Unterverzeichnisse: vdr-1.4.5/PLUGINS und vdr-1.4.5-channelscan/PLUGINS. Gemeinsame Unterverzeichnisse: vdr-1.4.5/symbols und vdr-1.4.5-channelscan/symbols. diff -Nu vdr-1.4.5/vdr.c vdr-1.4.5-channelscan/vdr.c --- vdr-1.4.5/vdr.c 2006-12-02 17:22:12.000000000 +0100 +++ vdr-1.4.5-channelscan/vdr.c 2007-03-13 14:58:43.000000000 +0100 @@ -685,7 +685,7 @@ // Make sure we have a visible programme in case device usage has changed: if (!EITScanner.Active() && cDevice::PrimaryDevice()->HasDecoder() && !cDevice::PrimaryDevice()->HasProgramme()) { static time_t lastTime = 0; - if (time(NULL) - lastTime > MINCHANNELWAIT) { + if (!scanning_on_receiving_device && time(NULL) - lastTime > MINCHANNELWAIT) { cChannel *Channel = Channels.GetByNumber(cDevice::CurrentChannel()); if (Channel && (Channel->Vpid() || Channel->Apid(0))) { if (!Channels.SwitchTo(cDevice::CurrentChannel()) // try to switch to the original channel...