[mythtv-commits] Re: Ticket #868: [8350] breaks mpeg2 decoding
during frame advance
MythTV
mythtv at cvs.mythtv.org
Sun Dec 25 22:59:54 EST 2005
#868: [8350] breaks mpeg2 decoding during frame advance
--------------------------------+-------------------------------------------
Reporter: bjm <bjm at lvcm.com> | Owner: danielk
Type: defect | Status: assigned
Priority: major | Milestone: 0.19
Component: mythtv | Version: head
Severity: medium | Resolution:
--------------------------------+-------------------------------------------
Comment (by ijr):
When you call avcodec_flush_buffers, it doesn't just flush the buffers, it
resets the entire decoder state, even parsing. This simply cannot be
called after a seek, unless we're decoding a keyframe next.
Part of the issue also could be the change to the 'skipframes' loop. For
exact seeking, we need to actually decode those frames so it can
successfully decode and display something in the middle of a gop, and that
loop looks like it is no longer doing so.
The change to AVFD::Reset(bool, bool)'s call of SeekReset to flush frames
is also likely wrong - that's called after what should be a seamless file
change, so it certainly shouldn't be flushing the decoder. I don't think
the HandleStreamChange callback should be flushing out the video frames,
either.
--
Ticket URL: <http://svn.mythtv.org/trac/ticket/868>
MythTV <http://www.mythtv.org/>
MythTV
More information about the mythtv-commits
mailing list