Lockups with multiple streams/OTA EPG with AVM Fritz! SATIP device on channel switches
I use an AVM Fritz! DVB-C repeater, which has 2 tuners. There have been a number of patches to work around some limitations of the device, for example having the ability to bind each tuner to a unique IP-address, because the device only allows one stream per IP.
To obtain a second IP I use an alias for my WiFi-device with static IP configuration. As you can see in the logs receiving two streams generally works. However, when using both tuners and performing a channel switch, both streams break.
In the log provided, I use kodi to tune to a hdtv channel (zdf_neo), and the webinterface to tune the second tuner to radio (1live). Then I switch in kodi from zdf_neo to a new sdtv channel (ProSieben). On the webinterface of the AVM-tuner device you can see that it is successfully tuned to prosieben on the tuner that was tuned to zdf_neo before.
However, tvheadend fails to receive data for prosieben, then apparently tries the other tuner, which then also causes 1live radio to break.
When stopping both failing subscription requests and starting them one after another again, receiving data works again.
Updated by Steve O over 8 years ago
The same issue arises when disabling one tuner in the configuration. On a channel switch, the stream goes bad. Only stopping and then opening a channel again works. So the problem might be related to switching of channels, not the multituner configuration.
Updated by Jaroslav Kysela over 8 years ago
Could you try this change ?
iff --git a/src/input/mpegts/satip/satip_frontend.c b/src/input/mpegts/satip/satip_frontend.c index cfb3e60..c5a5452 100644 --- a/src/input/mpegts/satip/satip_frontend.c +++ b/src/input/mpegts/satip/satip_frontend.c @@ -1022,6 +1022,9 @@ new_tune: rtcp = rtp = NULL; lfe_master = NULL; + if (rtsp) + satip_frontend_close_rtsp(lfe, efd, &rtsp); + memset(ev, 0, sizeof(ev)); ev.events = TVHPOLL_IN; ev.fd = lfe->sf_dvr_pipe.rd;