On Tue, 18 Feb 2003, Leif Delgass wrote:

> > My memory is failing: this might still be usefull for Xv, isn't it?
> 
> Maybe, maybe not.  DMA for XVideo seems to be of questionable value,
> judging from the Rage 128 driver.  Plus the fact that you have to
> wait/sync when switching between GUI masters and system masters.  I've
> used interrupts to test page flipping with vsync.  However, this is also
> of questionable utility.  Page flipping without vsync doesn't really buy
> anything, since it has to be done synchronously (block until the vertical
> counter resets).  

What I meant to say here is that page flipping without vsync _interrupts_
on mach64 doesn't buy you much.  It's not possible to do page flipping
_without_ syncing the flip to the refresh on mach64.  Doing it without
interrupts means polling the vertical counter: either block until the
counter resets, or poll whenever you have new buffers to see if you can
commit them.  The latter is not much different from my interrupt method.  
I got interrupts working using an atomic commit flag that's set on vblank
and checked when adding buffers to the ring, since I was getting lockups
trying to do the commit in the bottom half.  Ideally, you would commit the
ring in the bottom half, so the card can work in the time between the
interrupt and the arrival of the next buffer from the client.

> One advantage is that it seems to smooth out some of the stutters in
> rendering as well as eliminating tearing, but at the cost of reducing
> the framerate if the app can't keep up with the vertical refresh.  Most
> apps on mach64 (other than gears) don't fall into that category. :(

To clarify, here I meant that most apps fall in the category of having a
framerate _slower_ than the refresh.

-- 
Leif Delgass 
http://www.retinalburn.net



-------------------------------------------------------
This sf.net email is sponsored by:ThinkGeek
Welcome to geek heaven.
http://thinkgeek.com/sf
_______________________________________________
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel

Reply via email to