Hi,
I have had a number of failed recordings for a few days and I have finally found the cause. One of my three tuners was stuck in some state that rendered it nonfunctional. The logs have this to say:
If the "state" that this tuner is stuck in is in some way possible to recover from, that would be the best solution. Maybe some sort of "reset" via the BDA API? I had to reboot the machine to get the tuner working again, restarting the NRecord service did not help.
If that is not possible, i. e. the problems are due to driver bugs with my Terratec card and no fault of NPVR, then a better error handling would be appreciated. The above logs indicates at least two error that could be captured and handled:
2010-11-27 09:08:31.530 [ERROR][7] ConnectFilters:Failed(2)
and
2010-11-27 09:08:31.562 [DEBUG][7] Unexpected error on DVB-T put_TunerRequest: 0x8000FFFF
My suggestion for how to handle is to capture the error, maybe retry the procedure and if still not working, flag the tuner as nonfunctional and try another tuner. The nonfunctional state should at least be written to the logs and preferably be presented in the GUI as well. Maybe in the Recordings list?
The situation now is that the recordings fails silently without any error indication. The resulting recording is zero bytes. If I had known I could have taken precations. Luckily there are re-runs
I have had a number of failed recordings for a few days and I have finally found the cause. One of my three tuners was stuck in some state that rendered it nonfunctional. The logs have this to say:
Code:
2010-11-27 09:08:31.374 [DEBUG][7] About to start recording (2209): C:\GBPVR\Nyhetsmorgon lördag\Nyhetsmorgon lördag_20101127_07581130-2.ts
2010-11-27 09:08:31.374 [INFO][7] DigitalRecorder.StartStream(C:\GBPVR\Nyhetsmorgon lördag\Nyhetsmorgon lördag_20101127_07581130-2.ts)
2010-11-27 09:08:31.374 [INFO][7] Creating BDA graph
2010-11-27 09:08:31.437 [DEBUG][7] Using tuner Cinergy 2400i DT Tuner 1 (1)
2010-11-27 09:08:31.468 [DEBUG][7] About to auto detect capture filter
2010-11-27 09:08:31.468 [DEBUG][7] Got capture filter.
2010-11-27 09:08:31.468 [DEBUG][7] Added capture filter
2010-11-27 09:08:31.468 [DEBUG][7] Connected Tuner to Capture
2010-11-27 09:08:31.530 [ERROR][7] ConnectFilters:Failed(2)
2010-11-27 09:08:31.530 [DEBUG][7] Graph filter list:
2010-11-27 09:08:31.530 [DEBUG][7] - MPEG-2 Sections and Tables
2010-11-27 09:08:31.530 [DEBUG][7] - BDA MPEG2 Transport Information Filter
2010-11-27 09:08:31.530 [DEBUG][7] - MPEG-2 Demultiplexer
2010-11-27 09:08:31.530 [DEBUG][7] - NPVR TS Mon
2010-11-27 09:08:31.530 [DEBUG][7] - Capture
2010-11-27 09:08:31.530 [DEBUG][7] - Tuner
2010-11-27 09:08:31.530 [DEBUG][7] - Network Provider
2010-11-27 09:08:31.530 [INFO][7] About to start BDA graph
2010-11-27 09:08:31.546 [DEBUG][7] Starting graph...
2010-11-27 09:08:31.546 [DEBUG][7] About to tune BDA graph:
<tuning>
<type>DVB-T</type>
<locator>
<frequency>674000</frequency>
<bandwidth>8</bandwidth>
</locator>
<service_id>6140</service_id>
<tsid>1022</tsid>
<onid>8945</onid>
<service_type>1</service_type>
</tuning>
2010-11-27 09:08:31.546 [DEBUG][7] DigitalRecorderDVBT::Tune@1
2010-11-27 09:08:31.546 [DEBUG][7] DigitalRecorderDVBT::Tune@2
2010-11-27 09:08:31.546 [DEBUG][7] DigitalRecorderDVBT::Tune@3
2010-11-27 09:08:31.546 [DEBUG][7] DigitalRecorderDVBT::Tune@4
2010-11-27 09:08:31.562 [DEBUG][7] DigitalRecorderDVBT::Tune@5
2010-11-27 09:08:31.562 [DEBUG][7] DigitalRecorderDVBT::Tune@6
2010-11-27 09:08:31.562 [DEBUG][7] Unexpected error on DVB-T put_TunerRequest: 0x8000FFFF
2010-11-27 09:08:31.562 [DEBUG][7] DigitalRecorderDVBT::Tune@7
2010-11-27 09:08:31.577 [DEBUG][7] Calling LockChannel()
2010-11-27 09:08:31.577 [DEBUG][7] locked=0, present=0, strength=100000, quality=0 (took 16ms to check)
2010-11-27 09:08:31.577 [DEBUG][7] DigitalRecorderDVBT::Tune@8
2010-11-27 09:08:32.377 [DEBUG][4] OnStart() complete...
2010-11-27 09:08:32.577 [INFO][7] DigitalRecorder.StartStream() allocated handle: 0x1
2010-11-27 09:08:32.577 [DEBUG][7] Temp at 2010-11-27 09:08:42
2010-11-27 09:08:32.577 [DEBUG][7] Started recording (2209:C:\GBPVR\Nyhetsmorgon lördag\Nyhetsmorgon lördag_20101127_07581130-2.ts)
If the "state" that this tuner is stuck in is in some way possible to recover from, that would be the best solution. Maybe some sort of "reset" via the BDA API? I had to reboot the machine to get the tuner working again, restarting the NRecord service did not help.
If that is not possible, i. e. the problems are due to driver bugs with my Terratec card and no fault of NPVR, then a better error handling would be appreciated. The above logs indicates at least two error that could be captured and handled:
2010-11-27 09:08:31.530 [ERROR][7] ConnectFilters:Failed(2)
and
2010-11-27 09:08:31.562 [DEBUG][7] Unexpected error on DVB-T put_TunerRequest: 0x8000FFFF
My suggestion for how to handle is to capture the error, maybe retry the procedure and if still not working, flag the tuner as nonfunctional and try another tuner. The nonfunctional state should at least be written to the logs and preferably be presented in the GUI as well. Maybe in the Recordings list?
The situation now is that the recordings fails silently without any error indication. The resulting recording is zero bytes. If I had known I could have taken precations. Luckily there are re-runs