Mailing List archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[linux-dvb] statmux / sync / PTS demux handling in new head?
Dear list and developers,
I'm trying to debug why certain DVB-T channels in the UK seem to manage to
get the av7110 stuck on decoding, maybe somone can help out.
It only happens at the start of the stream never anywhere in the middle -
so it's basically the inital sync. Drivers in question are newstruct ever
since it was forked (I've tried this out) - the "bug" then found it's way
into the new head and remains there. I've also tested all firmwares from
Jan 2002 (0.9.4) to April 2003 - it doesn't appear related. Whatever the
firmware all that matters to reproduce this is the actual driver version.
0.9.4 and later old-struct up to HEAD work fine!
Both vdr and dvbstream -> latest ts2ps / ts2pes -> mplayer -ao/vo mpegpes
show this issue, so I don't think it's any particular program causing this.
What is known about the channels (namely BBC2, BBC3, BBC News24) is that
they use statistical multiplexing i.e. a variable bitrate. Remuxing the
stream with pvastrumento fixes the problem - but that's not really a
solution for watching these channels live. pvastrumento reports that the
first PTS is seen rather late into the stream, however a pesplot doesn't
back this up. Although the screen remains black at all times, on decoding
with a full featured card a split of a second of audio can be heard at
exactly the point where pvastrumento reported the first PTS. This can be as
late as 4 seconds into the stream, which might be so big a difference to
the first picture to sync to that the decoder gives up.
As far as I know from earlier postings on this list the ff-cards use the
first PTS to sync, DTS is apparently completely ignored for this matter.
For a good introductory reference of what the two are and which I found
helpful see:
http://www.broadcastpapers.com/sigdis/TektronixMPEGGuide%20-%20streams02.htm
I've looked at various changes between old and newstruct in av7110.c,
dvb_filter.c and dmxdev.c but I can't work out what exactly could have
introduced the error. Some of the changes in dvb_filter like the new
"init_mpg_picture" seem like the could come into question. I wish I had a
better understanding of the code. Whatever I try to "retrofit" to oldstruct
to isolate the problem further has so far failed. For examle av7110.c seems
unlikely now after I've "backported" it to behave like dvb.c. However dxr3
decoders don't seem to have a problem with this - otherwise I'm sure we'd
have heard more from DVB-T users around Europe having this problem.
So to cut a long story short: Has anyone a better idea as to why this would
play back fine with a 0.9.4. driver with a firmware of your choosing (April
2003 if you like) and why doesn't anymore beginning with the earliest
compiling newstruct up to CVS?:
http://www.mpex.net/riovolt/ptsprob-bbc2-pes.mpg (5,8 MB)
- Gregor
--
Info:
To unsubscribe send a mail to ecartis@linuxtv.org with "unsubscribe linux-dvb" as subject.
Home |
Main Index |
Thread Index