Mailing List archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[vdr] Re: what causes cTS2PES errors?



Am Mon, 2003-05-26 um 21.00 schrieb Gregor Lawatscheck:
> At 19:41 26/05/2003, you wrote:
> >That explains a lot of problems with invalid MPEG-streams (and why
> >MPlayer swallows with VDR-recordings).
> 
> If you mean choking on feeding -ao/-vo mpegpes that could be just as much 
> because of the vid mem size in newer firmwares to be honest.

Replaying with MPlayer only (-vo xv -ao oss).

> 
> >[...]
> >CRCs are a basic need for digital, aerial transmissions to keep the
> >bitstream valid. All streams will be corrupt without CRC (full-featured
> >cards do CRC-checking when filtering).
> >
> >So this should be added as fast as possible (before 1.2.0 to have a
> >really stable system). This also would increase reception in case of bad
> >weather.
> 
> As Klaus says "there's a life after 1.2.0" :).

Yes, but calling it stable if you even do not receive correctly?

> 
> I believe there's some CRC32 checking code in mpegtools ( 
> http://www.metzlerbros.org/dvb/index.html ) maybe that can be used.
> 
> If at all, it should only be done on recording as transfering to say an 
> av7110 or dxr3 they have their own means of dealing with broken streams in 
> a less interruptive manner than just throwing the packet away? But then 
> again broken reception crashes the decoder after a while more often than 
> not. On full cards in live mode not a lot vdr can do against it?  
> 

Ehh, I do not know if you know what CRC is. Cyclic Redundant Codes do
not throw off packets, they correct the bitstream.

Before the IT-systems at the transmitter (let's say Astra uplink) send
the DVB-TS stream to the transmission system, the bitstream is split-up
into blocks and checksums are calculated for each block and added into
the bitstream.

So the decoder in the receiver (e.g. cDevice-class in VDR or filters in
the full-featured DVB-card) can calculate the bit errors in the stream.

Smart CRC-codes like CRC32 can detect nearly every bit-error AND it's
POSITION in the bitstream. This way the decoder can simply invert the
wrong bits and you get the original, valid bitstream. This is of course
better than giving a broken bitstream to a hardware and say "Hey, this
is broken data, just see how you can handle".

Rene

P.S.: The full-featured cards use CRC32 in their filter-sections by
default. This also explains why reception with full-featured cards is
better than with low-budgets.



-- 
Info:
To unsubscribe send a mail to ecartis@linuxtv.org with "unsubscribe vdr" as subject.



Home | Main Index | Thread Index