Opened 16 years ago

Closed 16 years ago

Last modified 16 years ago

#662 closed defect (fixed)

"ST STV0299 DVB-S" packets fail CRC check.

Reported by: Marco Coli Owned by: danielk
Priority: minor Milestone: unknown
Component: mythtv Version: head
Severity: medium Keywords:
Cc: Ticket locked: no


In SVN is impossibile to tune many channels on several transponders. These channels was tunable in 0.18 and are tuneble now using scan or kaffeine. Some examples are on Hotbird 13 E: tp58 11881 V, tp56 11843 V (most of these channels are encrypted, so you need a proper cam/card like I do, but on tp 56 sky assist is clear, useful to test). [There are many others beyond this example]. Going with Live-Tv (with SVN <=7738) on one of these channels returns the message "Signal XX% (L) Partial Lock" and after timeout "you should have gotten a channel..." Trying to record on these channels obviously don't work either. I tried to store these channels either using myth scanner, either with a tested channels.conf (deleting channels/multiplex between tests), no change of behaviour. I also tried various timeouts values for input, no change of behaviour.

Attachments (2)

mythbackend_log.gz (25.7 KB) - added by Marco Coli 16 years ago.
mythbackend_log2.gz (37.1 KB) - added by anonymous 16 years ago.

Download all attachments as: .zip

Change History (9)

comment:1 Changed 16 years ago by danielk

Milestone: unknown
Priority: majorminor
Resolution: invalid
Status: newclosed

Marking this as invalid as it does not contain an attached backend log with "-v record,siparser,channel"

Changed 16 years ago by Marco Coli

Attachment: mythbackend_log.gz added

comment:2 Changed 16 years ago by Marco Coli

Resolution: invalid
Status: closedreopened

You ask, I do :-) Attached there is the log with options you asked for. The log started with the tuning of a channel that is ok (11976000), immediately after I try to change channel on one of the channels that don't tune in myth (but are ok in "scan" or "kaffeine") (11842000). If you need more infos, I am here.

comment:3 Changed 16 years ago by danielk

Owner: changed from Isaac Richards to danielk
Status: reopenednew
Summary: Problem tuning some dvb-S channels"ST STV0299 DVB-S" packets fail CRC check.

These are your problem:

2005-11-15 17:36:53.805 PSIP packet failed CRC check. pid(0x0) type(0x0)
2005-11-15 17:36:53.944 PSIP packet failed CRC check. pid(0x0) type(0x0)

It looks like the PAT has been mangled and no longer matches it's own CRC.

Probably what is happening is that the hardware/driver is rewriting the PAT when decrypting the stream, but not doing it properly.

Can you try changing the following in the HasDVBCRCBug(uint) method in videosource.cpp:

return (name == "VLSI VES1x93 DVB-S") || (name == "Philips TDA10046H DVB-T");


return ((name == "VLSI VES1x93 DVB-S") ||
        (name == "Philips TDA10046H DVB-T") ||
        (name == "ST STV0299 DVB-S"));

Then recompile & install. Then tell me if it works now.

comment:4 Changed 16 years ago by Marco Coli

I'll try within a few hours, I'll let you know. Thank you

comment:5 Changed 16 years ago by Marco Coli

Weel, situation has changed, in better. On a frequency, 11880000, where I was able to see only one channel, now I can tune ALL channels. But on another transponder, 11842000 , I see CRC errors again (and no image). I attach an updated log with channel working / not working. If you need other info, ask. Thank you

Changed 16 years ago by anonymous

Attachment: mythbackend_log2.gz added

comment:6 Changed 16 years ago by danielk

Resolution: fixed
Status: newclosed

(In [7896]) Fixes #662.

Workaround for yet another broken DVB driver.

comment:7 Changed 16 years ago by danielk

This is the first DVB driver we've seen that fubars the PAT, the other broken DVB drivers just munge the PMT. I added it to the list of broken drivers, and made the PSIP validation ignore the PAT in addition to the PMT for broken DVB implementations.

Please inform the DVB folks about the problem with your drivers, they should fix the CRC, if the hardware always provides tables with invalid CRC.

MythTV should not have to do all this work to work around hardware bugs that could easily be hidden by the driver for that hardware.

Note: See TracTickets for help on using tickets.