[mythtv] [exp. patch] xv xvmc merge
Daniel Kristjansson
danielk at cat.nyu.edu
Sat Apr 2 01:40:59 UTC 2005
On Fri, 2005-04-01 at 12:53 -0500, Isaac Richards wrote:
> Actually, if the release_buffer callback from libavcodec is accurate as to
> when it's done with the frame, it could be as simple as just refcounting the
> frames (2 to start, -1 when displayed, -1 when marked unused by
> release_buffer), and have a function in the frame struct call back into the
> videoout class to return it to the queue..
Great, I'll be sure to use the release_buffer callback, it will let me
know for sure that all the frames depending on a specific I or P frame
have arrived. The reference counting won't work unless we XvMC sync all
the all the frames depending on that frame, so we may still need to
keep those I and P frames around after DoneDisplayingFrame(), if
rendering of the dependant frames isn't done, and then do a sync when
a low buffer situation arises. Syncing in DrawSlices() or ReleaseFrame()
absolutely kills performance.
I'll make sure to not lose any frames. With XvMC it's pretty much
essential.
-- Daniel
More information about the mythtv-dev
mailing list