Bug #6138
Tvheadend doesn't iterate through tuners when multiple HDHomeRun devices are assigned to a channel
0%
Description
I have two HDHomeRun devices connected to tvheadend. One CableCard with 3 tuners and one ATSC-T with four tuners. There are a few networks which simulcast over cable and OTA that I have assigned to a single tvheadend channel (two services->one channel). When tvheadend attempts to record on a channel that maps to multiples services -- and which one or more of the tuners is in use -- the available tuners are skipped and tvheadend immediately attempts to record from the secondary service. If one or more of the tuners is in use on the secondary device, the recording fails -- even though there may be several tuners available. On a channel that is mapped to only a single service, the recording works as intended -- tvheadend finds the next available tuner on the device and starts the recording.
I think I see what is happening in the debugger: service.c->service_find_instance->line 380 or so (the first TAILQ_FOREACH). It iterates to the next service in the list after failing to acquire a lockkey on the HDHR device. I'm guessing it works when a single device is mapped to a channel because there's only one device in the linked list. I'm not certain how tvheadend keeps track of the current hdhr tuner, if at all.
The debug.log shows two recordings -- one on a multiplexed channel and one on a regular channel. The multiplexed channel fails and the other works correctly.
Files
History
Updated by John Hunt over 2 years ago
Ah, I see this is intended behavior and un-checking 'Switch to another service' in the stream profile settings disables this feature.
Not a bug.