[mythtv] [mythtv-commits] Ticket #9566: Mythbackend reports "multiplex is not available" and afterwards the specified DVB tuner is busy for ever
Tomi Orava
tomimo+mythtv-dev at ncircle.nullnet.fi
Sat Feb 12 17:36:23 UTC 2011
Hi,
> On 02/10/2011 12:51 PM, MythTV wrote:
>> #9566: Mythbackend reports "multiplex is not available" and afterwards the
>> specified DVB tuner is busy for ever
>>
>>
>> Comment (by Tomi Orava<tomi.orava@…>):
>>
>> Update: Based on a days worth of testing, I think I might actually have
>> two different problems in these two systems.
>>
>> 1) I haven't seen any of the "Multiplex is not available" errors and/or
>> DVB-tuner hangs after I made sure to reset to zero all the channel-tables
>> 'useonairguide' values on encrypted channels (I don't have dvbcam
>> installed ---> only free to air channels can be watched with these
>> systems).
>>
>> 2) I still seem to get missing recordings ie. metadata exists but no file
>> seems to get opened ever, even though the backend thinks it really is
>> recording something. This I have to try digg some more ...
>
> Tomi,
>
> AIUI, some DVB cards/drivers cause failures with certain usage
> patterns--such as those used by >EIT collection--especially when you
> have multiple cards in use at the same time. So, please try
> >disabling "Use DVB card for active EIT scan" on all but one of your
> capture cards. That may fix >both of the above problems for you
> (and will still allow EIT collection when not recording, but >using
> one card instead of 3). If not, please test whether disabling "Use
> DVB card for active EIT >scan" on /all/ your capture cards "fixes"
> the hangs for you. If so, it means that your >hardware/drivers
> don't like doing the EIT thing--and although not ideal for you (as
> you would >only get passive EIT collection), would give us a better
> idea of what's happening (at which time >we can present options).
I've been using these very same cards for ~4 years now without any
problems. I'll however test your suggestions and check if they change
the current behaviour somehow.
I think it was some earlier problem case where I saw your suggestion to
enable only one card for EIT scanning and that's exactly the setup I've been
running for quite a long time.
What comes to the test of enabling the EIT scanning on all of the
three DVB-cards,
the result was a failed/missing recording in a couple of hours with
the setup of
three physical tuner cards with 5 virtual tuners each and *a lot of*
concurrent
recordings taking place at the same time. This test did produce again the
"Multiplex is not available" errors, where a EIT scanning was started
but it failed
because the card was already tuned to one of the available 4 multiplexes and
therefore couldn't be tuned to another multiplex at the same time.
(the log below contains some added/invalid debug lines but might still
be useful):
(only valid free to air channels have the useonairguide value enabled)
2011-02-12 18:41:01.235 EITScanner (1): StartActiveScan called with 4
multiplexes
2011-02-12 18:41:01.321 TVRec(1): SetFlags(EITScannerRunning,) ->
RunMainLoop,EITScannerRunning,RingBufferReady,
2011-02-12 18:41:01.545 TVRec(1): SetChannel(10) -- begin
2011-02-12 18:41:01.580 TVRec(1): ClearFlags(RingBufferReady,) ->
RunMainLoop,EITScannerRunning,
2011-02-12 18:41:01.642 TVRec(1): HandleTuning Request: Program(no)
channel(10) input() flags(EITScan,)
2011-02-12 18:41:01.731 TVRec(1): ClearFlags(PENDINGACTIONS,) ->
RunMainLoop,EITScannerRunning,
2011-02-12 18:41:01.789 TVRec(1): No recorder yet, calling TuningFrequency
2011-02-12 18:41:01.856 DVBChan(1:/dev/dvb/adapter0/frontend0):
Opening DVB channel
2011-02-12 18:41:01.914 ChannelBase(1): SelectChannel 10
2011-02-12 18:41:01.973 TVRec(1): Starting Signal Monitor
2011-02-12 18:41:01.973 ChannelThread::run
2011-02-12 18:41:02.032 TVRec(1): SetupSignalMonitor(1, 0)
2011-02-12 18:41:02.074 DVBChan(1:/dev/dvb/adapter0/frontend0):
SetChannelByString(10):
2011-02-12 18:41:02.166 DVBChan(1:/dev/dvb/adapter0/frontend0):
Opening DVB channel
2011-02-12 18:41:02.265 is_input_group_busy() Called!
2011-02-12 18:41:02.327 DVBSM(/dev/dvb/adapter0/frontend0): Can
measure Signal Strength
2011-02-12 18:41:02.392 is_input_group_busy() cardid=1 is excluded!
2011-02-12 18:41:02.444 DVBSM(/dev/dvb/adapter0/frontend0): Can measure S/N
2011-02-12 18:41:02.474 Cardid 2: max bitrate 162597 KB/min
2011-02-12 18:41:02.540 is_input_group_busy()digitally tuned channels!
mplex restriction=2
2011-02-12 18:41:02.634 DVBSM(/dev/dvb/adapter0/frontend0): Can
measure Bit Error Rate
QString::arg: Argument missing: "Multiplex (%s) is not available
(current multiplex=%s" , 3
2011-02-12 18:41:02.702 Cardid 3: max bitrate 162597 KB/min
2011-02-12 18:41:02.811 DVBSM(/dev/dvb/adapter0/frontend0): Can count
Uncorrected Blocks
QString::arg: Argument missing: "Multiplex (%s) is not available
(current multiplex=%s" , 2
2011-02-12 18:41:02.768 DVBChan(1:/dev/dvb/adapter0/frontend0) Error:
SetChannelByString(10): Multiplex (%s) is not available (current
multiplex=%s
2011-02-12 18:41:02.887 Cardid 7: max bitrate 162597 KB/min
2011-02-12 18:41:02.935 SM(/dev/dvb/adapter0/frontend0)::RemoveFlags:
Seen() Match() Wait()
2011-02-12 18:41:03.072 Cardid 11: max bitrate 162597 KB/min
2011-02-12 18:41:03.138 DVBSM(/dev/dvb/adapter0/frontend0):
DVBSignalMonitor::ctor initial flags Seen() Match()
Wait(Sig,SNR,BER,UB,)
2011-02-12 18:41:03.169 Maximal bitrate of busy encoders is 650388 KB/min
2011-02-12 18:41:03.235 TVRec(1): Signal monitor successfully created
2011-02-12 18:41:03.337 SM(/dev/dvb/adapter0/frontend0)::Start: begin
2011-02-12 18:41:03.378 SignalMonitor: channel change failed
2011-02-12 18:41:03.379 SM(/dev/dvb/adapter0/frontend0)::Start: end
2011-02-12 18:41:03.479 SignalMonitor: channel change failed
2011-02-12 18:41:03.479 TVRec(1): SetFlags(SignalMonitorRunning,) ->
RunMainLoop,SignalMonitorRunning,EITScannerRunning,
2011-02-12 18:41:03.571 TVRec(1): ClearFlags(WaitingForSignal,) ->
RunMainLoop,SignalMonitorRunning,EITScannerRunning,
2011-02-12 18:41:03.562 SignalMonitor: channel change failed
2011-02-12 18:41:03.621 TVRec(1): SetFlags(WaitingForSignal,) ->
RunMainLoop,WaitingForSignal,SignalMonitorRunning,EITScannerRunning,
2011-02-12 18:41:03.721 TVRec(1): ClearFlags(NeedToStartRecorder,) ->
RunMainLoop,WaitingForSignal,SignalMonitorRunning,EITScannerRunning,
2011-02-12 18:41:03.722 SignalMonitor: channel change failed
2011-02-12 18:41:03.822 TVRec(1) Error: SignalMonitor failed
2011-02-12 18:41:03.872 SignalMonitor: channel change failed
2011-02-12 18:41:03.872 TVRec(1): ClearFlags(NeedToStartRecorder,) ->
RunMainLoop,WaitingForSignal,SignalMonitorRunning,EITScannerRunning,
2011-02-12 18:41:03.964 SignalMonitor: channel change failed
2011-02-12 18:41:04.009 TVRec(1): ClearFlags(EITScannerRunning,) ->
RunMainLoop,WaitingForSignal,SignalMonitorRunning,
2011-02-12 18:41:04.056 SignalMonitor: channel change failed
2011-02-12 18:41:04.064 TVRec(1): TeardownSignalMonitor() -- begin
2011-02-12 18:41:04.148 DVBSM(/dev/dvb/adapter0/frontend0): Stop() -- begin
2011-02-12 18:41:04.190 SM(/dev/dvb/adapter0/frontend0)::Stop: begin
If I run the system with the same 15 virtual tuners, but only with one
card enabled
for EIT scanning I haven't seen the "Multiplex is not available"
errors in a few days
after I figured out that I have to disable "useonairguide" on all
encrypted channels
that I don't have access to. This last one seems to apply to my
parents stable-fixes-0.23
based system as well.
Tomi Orava
More information about the mythtv-dev
mailing list