Scan EPG only on manually activated mux
Added by b kuhls over 10 years ago
Hi,
to sum up my setup I quote myself: https://tvheadend.org/boards/14/topics/6443?r=9462#message-9462
""my unsolved problem is similar to Donnos situation: "My satellite system is connected to a priority-switch, where my zbox/openelec will have the higher priority. Thus, if xbmc runs (without using live TV) other DVB-S devices can not be used to watch TV."
This means tvheadend must not activate the tuner without manually accessing it by xbmc."
I now switched to tvheadend git master and until the commits from
July 7th I could disable the automatic EPG scan using this patch:
-----------------------------------------------------------------
--- tvheadend-master.org/src/epggrab/otamux.c 2014-06-07 23:54:54.000000000 +0200 +++ tvheadend-master/src/epggrab/otamux.c 2014-06-08 15:58:21.311388787 +0200 @@ -459,9 +459,11 @@ } /* Init timer (immediate call after full init) */ +/* if (LIST_FIRST(&epggrab_ota_pending)) gtimer_arm_abs(&epggrab_ota_pending_timer, epggrab_ota_pending_timer_cb, NULL, 0); +*/ } static void
-----------------------------------------------------------------
After the latest EPG changes I am a bit unsure what to patch now.
Is disabling "epggrab_ota_post();" in src/epggrab.c, line 384, enough
or does it disable too much? Tvh shall only scan the transponder it
got manually tuned to for the time it is used by a connected client,
nothing else, no automatics, no crons.
I am also writing this in the hope tvh gets some kind of config
setting for this use case to make patching unnecessary sometime
in the future.
- bkuhls
Replies (1)
RE: Scan EPG only on manually activated mux - Added by b kuhls over 10 years ago
bkuhls wrote:
Is disabling "epggrab_ota_post();" in src/epggrab.c, line 384, enough
or does it disable too much? Tvh shall only scan the transponder it
got manually tuned to for the time it is used by a connected client,
nothing else, no automatics, no crons.
Hi,
answering myself: No, this did not fix the problem.
Commenting out line 237 in src/epggrab/otamux.c
@@ -234,7 +234,7 @@ TAILQ_FOREACH(ota, &epggrab_ota_active, om_q_link) if (!strcmp(ota->om_mux_uuid, uuid)) { - epggrab_ota_done(ota, EPGGRAB_OTA_DONE_STOLEN); +// epggrab_ota_done(ota, EPGGRAB_OTA_DONE_STOLEN); break; } }
fixed the problem, although it is not a real fix.
My suggestion is to extend the if-clause in line 236
if (!strcmp(ota->om_mux_uuid, uuid))
with "&& (mn->mn_idlescan)" so the interrupted EPG scan is
only added to the queue when idle scanning is allowed.
Unfortunately my knowledge about the tvh internals is not
good enough to provide a patch, but I hope my suggestion
fits into the meaning of the idlescan setting.
Regards, bkuhls