Michael Reinelt wrote:
...
The EPG scan only tunes to each transponder for some 20 seconds and collects whatever data it finds. It does not switch to any particular _channel_ (i.e. it does not set the primary device to display a certain programme). So even if it tunes to, say, a transponder that broadcasts HDTV programmes, a full featured DVB card shouldn't suffer from that, because it never "sees" the actual HDTV data stream.
Thanks for the info. This explains why the screen goes black when I start a scan with the red button, right?
Yes.
Anyway, I *will* find this bug :-)
Debugging this one will be hard... If I switch to another channel after I started an EPG scan, it's fine: the scan stops, and I get live TV. I would have to start scan, wait 20 seconds, change channel. Start scan, wait 40 seconds, channel switch. start, 60 seconds, .... well, approximately after a year I would have found the reason ;-(
Maybe a debug message "scanning EPG on transponder xy" would be helpful. Klaus, could you give me a hint where to place such a printf? (my C++ knowledge is that miserable)
Look at the file VDR/eitscan.c and add your output to cEITScanner::Process().
I think that only live tv does not work, as I said, watching a recording is fine. And I think that recording works fine, too (there's an autotimer from my girlfriend for "Die Maus auf dem Mars" every morning, and I'm *sure* she would have complained :-)
I get lots of "CAM: different stream flag in CA descriptors" messages during the night (probably during the EPG scan), any idea what this means?
See cCaDescriptors::GetCaDescriptors() in VDR/pat.c. IIRC (it's been a while since I've worked on this ;-) CA descriptors are either for individual PIDs or an entire program stream. This debug message indicates a discrepancy here. I'm not sure if this constitues an error or what to do with it. We'd need somebody with an actual subscription to such a channel in order to test this.
Klaus