[mythtv] [mythtv-commits] Ticket #2884: mythbackend crashes in ProgramAssociationTable::toString()

Daniel Kristjansson danielk at cuymedia.net
Sun Jan 7 23:54:14 UTC 2007


On Sun, 2007-01-07 at 23:11 +0000, Simon Kenyon wrote:
> MythTV wrote:
> > #2884: mythbackend crashes in ProgramAssociationTable::toString()
> >  Duplicate of #2664.
> ok, i see that it is a duplicate
> but, it used to work
> 
> are you saying that my hardware is at fault, because i haven't changed 
> it in many months
> and for what it is worth, 2664 is for DVB-T, while i'm using DVB-S (with 
> a pretty good signal from my dish - used by 4 sat receivers as well as 
> these two cards)

The signal has probably dropped a little since you set it up.
MythTV relies on the CRC to verify a table, but there are two
problems with this. 1/ Some DVB cards, and especially DVB-S
cards, rewrite the PMT without fixing the CRC, so we must
disable the CRC checking for these cards. 2/ We treat PSIPs
as if they were PES packets in the MPEG parser and so we check
the CRC flag on the packets, but PSIPs don't have a CRC flag
so we sometimes end up not checking the CRC when we should.

The patch on #2664 attempts to address #2, and adds some
range checking to attempt to address #1. The patch has not
been debugged yet, so I make no promises as to whether it
works or not.

BTW If your card uses one of these four frontends it is in
the broken set (see carduti.cpp HasDVBCRCBug()):

    return ((name == "Philips TDA10046H DVB-T") || // munges PMT
            (name == "VLSI VES1x93 DVB-S")      || // munges PMT
            (name == "DST DVB-S")               || // munges PAT
            (name == "ST STV0299 DVB-S"));         // munges PAT

If it is not in this list you are probably experiencing #2.
Either way, re-aiming your dish, or getting a bigger one will
not only fix this problem but also remove dropouts, etc.

-- Daniel



More information about the mythtv-dev mailing list