[mythtv] DVB fixes
Ivor Hewitt
ivor at ivor.org
Mon Dec 22 17:41:39 EST 2003
I've been playing with myth and the cle266 hwslice driver and have tracked
down a problem thats been causing intermittent crashes for me when there are
errors in the mpeg stream.
After adding a few debugging messages every crash I had followed this
pattern:-
VIA_decode_slice - 1, 00000118, max 36
DrawSlice code 1, datalen-00000118, len - 00000000
dwCount 00000120
VIA_decode_slice - 2, 00000158, max 36
DrawSlice code 2, datalen-00000158, len - 00000128
dwCount 00000160
VIA_decode_slice - 3, 00000168, max 36
DrawSlice code 3, datalen-00000168, len - 00000290
dwCount 00000170
VIA_decode_slice - 4, 00000180, max 36
DrawSlice code 4, datalen-00000180, len - 00000408
dwCount 00000188
VIA_decode_slice - 5, 000001c4, max 36
DrawSlice code 5, datalen-000001c4, len - 00000598
dwCount 000001cc
VIA_decode_slice - 36, 0000014c, max 36
DrawSlice code 36, datalen-00000150, len - 0000076c
dwCount 00000158
MPEGSliceReceiveData:
Slices:- i-1, 292 i-2, 356 i-3, 372 i-4, 396 i-5, 464 i-6, 348 i-7, -14554886
In this example Via_decode_slice isn't being called for several slices from 6
to 35. But when MPEGSliceReceiveData is called it is expecting 36 slices and
so barfs when it hits 7.
I've fixed this in my code temporarily, by walking through the slice list in
VIA_decode_slice and counting how many slices there actually are, and passing
this value through to slicereceivedata.
However, I think this is just a sticking plaster on an underlying problem...
and my knowledge of the myth code isn't that good yet. So I wondered if
anyone had any suggestions where I should be looking for why these slices are
being skipped. (and why the call is being made for slice 36 rather than just
stopping at 7)
Regards,
--
Ivor Hewitt.
http://www.ivor.it - Wireless networking and techie bits.
http://www.ivor.org - The leylandii hedge pages
More information about the mythtv-dev
mailing list