On 07/04/2005, at 5:58 PM, Tom Hughes wrote:
In message <[EMAIL PROTECTED]> Tom Hughes <tom at compton.nu> wrote:
In message <[EMAIL PROTECTED]> Taylor Jacob <[EMAIL PROTECTED]> wrote:
Quoting Tom Hughes <[EMAIL PROTECTED]>:
I had a DVB recording fail last night. The relevant log extract is:
2005-02-09 18:30:04.271 DVB#0 DVB signal 5300 | snr 5000 | ber 143af12 | unc
7961d18
2005-02-09 18:30:04.273 DVB#0 Status: LOCK.
2005-02-09 18:30:04.273 DVB#0 Multiplex Locked
2005-02-09 18:30:10.966 DVB#0 Timeout Getting PMT
2005-02-09 18:30:11.096 DVB#0 ERROR - Tuning for channel #4 failed.
2005-02-09 18:30:11.176 Changing from None to RecordingOnly
2005-02-09 18:30:11.237 DVB#0 Recorder: Card opened successfully (using PS
mode).
2005-02-09 18:30:12.265 DVB#0 WARNING - No data from card in 1 second.
2005-02-09 18:30:13.316 DVB#0 WARNING - No data from card in 1 second.
2005-02-09 18:30:14.318 DVB#0 WARNING - No data from card in 1 second.
Obviously it failed to tune the right channel due to a timeout getting the PMT from the multiplex. I don't know what the cause of that was, but what happened afterwards is that it continued to pretend it was recording and spew out those "No data" messages for the duration of the program.
Can you tune to this multiplex with zap and look at the PMT deltas? There is
currently a 5 second PMT timeout when attempting to get the PIDs for the
desired channel. The average PMT delta is .1 to .2 seconds, so I suspect that
there was some issue with the deilvery of it.
OK. I've worked out how to do this now by tuning with tzap and then
using dvbsnoop to look for the PMT data. They are coming in about
every 0.19 seconds most of the time - one or are longer but the longest
that I've seen is about 0.35 or so.
I've had this happen a few more times recently so I decided to try increasing the timeout to see if it helped but I when I went to look at the code I found that the timeout is not actually 5 seconds but is just 0.3 seconds which would explain why I'm having problems as my gaps between PMTs are sometimes as long as 0.35 seconds.
The code in DVBChannel::Tune does 3000 iterations of the loop and sleeps for 100us on each pass which gives 300000us or 0.3 seconds.
I've just upped it to 30000 iterations to give a 3 second timeout and am rebuilding at the moment to see if that improves thing. It will probably take a few weeks before I'm really sure though as it doesn't fail very often.
Tom
-- Tom Hughes ([EMAIL PROTECTED]) http://www.compton.nu/ _______________________________________________ mythtv-dev mailing list [email protected] http://mythtv.org/cgi-bin/mailman/listinfo/mythtv-dev
I see this behavior almost daily with the same program, I had given up on ever watching doctor who again. So I can let you know how I go. I would find that the card that was doing this would not start recording again until the BE was restarted. I have been using the release the DVB card when not in use option lately which seems to work too.
bd
_______________________________________________ mythtv-dev mailing list [email protected] http://mythtv.org/cgi-bin/mailman/listinfo/mythtv-dev
