[vlc-devel] Deinterlacer broken, possibly a PTS issue - any ideas?
juha.jeronen at jyu.fi
Fri Mar 4 05:12:07 CET 2011
I updated my vlc-1.2-git tree two days ago, and since then the
deinterlacer module has stopped working properly for many streams.
I'm getting bursts of late frames (up to 200ms or so), which causes the
playback to seriously stutter. This didn't happen with the version of
vlc-1.2-git from early January I had earlier.
The weird thing is, the problem only occurs if the deinterlacer module
is active. I suspected my updated Phosphor at first, and then the soft
field repeat change - but it would seem this is not related to my new
code, or even to framerate doubling. Even the Discard algorithm seems to
trigger the problem. When the deinterlacer is off, the stutter goes away.
Logging the PTS diffs from the deinterlacer shows that when there are no
late frames, everything looks sensible. Then, suddenly, the video output
starts complaining ("picture is too late to be displayed"). I have
checked that the deinterlacer - even with Phosphor - takes about 5ms at
most on this machine (with the settings I've used), so it's not that the
processing would take too long.
It seems that the problem always occurs at the same position in the
stream, at least for two of my "standard" test cases. For some streams,
the problem does not occur. It seems that the source being a DVD, or a
DVD image, might be part of the issue. (I've made a library of test
cases for the deinterlacer, and many of them seem to trigger the
problem. Short clips I've extracted from them earlier, on the other
hand, do not seem to trigger the problem.)
I'm also getting an occasional
[0x94475bc] main subpicture warning: original picture size is undefined
and, upon exiting VLC, an occasional segfault in libQtDBus:
[ 7498.214428] vlc: segfault at 4 ip b4d5cce6 sp bfa2c0b0 error 4
...in case that helps any.
More information about the vlc-devel