[mythtv] Re: [mythtv-commits] mythtv commits (XvMC comments and
fracmak at gmail.com
Fri May 13 04:11:01 UTC 2005
Ahhhh! Thank you! Thank you! Thank you! Major improvements during
playback of xvmc hdtv streams on my system. The problem I was having
where the video lose a frame, myth would seek to try and catch up, but
never successfully catch up (unless I seek) is gone. I'm still getting
a lost frame every now and then, accompanied by pop in the audio. This
happen especially if something else is happening on my system (think
recording another channel) even though I still have upwards of 30%
idle on my system. I'm thinking that the locks on the xv subsystem,
aren't leaving enough time for other processing to be handled. But
things are greatly improved in the playback category and I thank you.
As for editing with XvMC. Everytime I seek in the editor, it looks
like the OSD is being erased, refreshed, erased, refreshed, at least 5
times, and seeking is insanely slow, especially compared with how
zippy normal seeking is. Some information that might help, I'm using
the latest NVidia drivers, and bob deinterlacing, with the hdtv
streams kept in TS format, not PS.
On another note, I've seen in some posts that this combination causes
weird things with the OSD, I haven't seen any problems with XVMC osd,
but regular Xvideo OSD always flickers. I've poked around with the
code, and tried setting the OSD to draw before deinterlacing, which
half fixes the problem, except the OSD suddenly becomes jumbo sized,
which leads me to believe I'm going about this the wrong way. Is this
something better handled with the new OSD overlay patch?
On 5/12/05, mythtv at cvs.mythtv.org <mythtv at cvs.mythtv.org> wrote:
> Changes committed by danielk on Thu May 12 21:12:34 2005
> Modified Files:
> in mythtv/libs/libmythtv:
> NuppelVideoPlayer.cpp videoout_xv.cpp videoout_xv.h
> Log Message:
> Partial fix for some of the problems when editing an MPEG stream with
> XVideo or XvMC.
> The change in NuppelVideoPlayer.cpp prevents an out out order frame from
> being displayed between the time a seek is done and the time
> UpdatePauseFrame() is executed.
> Adding ClearAfterSeek() to videout_xv allows us to discard frames earlier
> when using XvMC and seeking. This should speed up seeking quite a bit.
> However there are still a couple problems.
> First, for some reason when bobdeint is enabled Show is called once
> with the wrong parameters after a seek or pause, causing a "pop"
> for regular XVideo output.
> Second, NuppelVideoPlayer should not call ClearAfterSeek() when
> seeking forward one frame, but it does. And when seeking back one
> frame it should seek back to the last I-frame, then decode all the
> P frames between the I frame and the desired frame, before decoding
> the desired frame. Not sure what is actually happening in this case,
> but it appears to be incorrect. There may be other (non-keyframe)
> seek problems, but I haven't looked at this closely yet.
More information about the mythtv-dev