Current State of Performance Blitting under SDL / OS X?

What’s the Current State of Performance Blitting under SDL / OS X ???

I’ve got YUV data (YV12 or one of the interleaved formats) to blit and don’t recall ever getting SDL to tell me it got a hardware overlay. I also don’t recall getting particularly good performance on stretching as one would want from a hardware assist.

Now I’ve asked on the VideoLan group, how they approached performance blitting of YUV on Mac and one developer said of SDL project …

“Actually, they’re (SDL folks) doing exactly the same as we (VideoLan) do, and use QuickTime. So they don’t get access to a hardware overlay surface (QuickTime uses the 3D chip to do a hardware YUV->RGB conversion).”

Can a savy SDL / OSX developer comment on the above quote which I have kept in my mailbox ? From my readings … I did not think that SDL would utilize QuickTime under OS X.

What’s the Current State of Performance Blitting under SDL / OS X ???
=20

I’ve got YUV data (YV12 or one of the interleaved formats) to blit and

don’t recall ever getting SDL to tell me it got a hardware overlay. I =
also don’t recall getting particularly good performance on stretching
as =
one would want from a hardware assist.=20

Hardware YUV acceleration was added (looking at CVS log now) 1 June,
2002. Currently, you will get hardware assisted YUV->RGB conversion and
scaling to any size.

Just make sure you choose a planar format (YV12 for example), otherwise
you won’t get acceleration.

Now I’ve asked on the VideoLan group, how they approached performance =
blitting of YUV on Mac and one developer said of SDL project …

"Actually, they’re (SDL folks) doing exactly the same as we (VideoLan)

do, and use QuickTime. So they don’t get access to a hardware overlay =
surface (QuickTime uses the 3D chip to do a hardware YUV->RGB =
conversion)."

The above quote is correct. However, the 3D chip is only used if Quartz
Extreme is enabled, otherwise it seems to use the hardware’s 2D
acceleration (AFAIK this works on the ATI Rage Pro, whereas OpenGL does
is unsupported on this card).

This implies that we never have a direct pointer to the hardware
overlay in VRAM. But that’s OK because the YUV data can be DMA’d to
VRAM (with minimal CPU expense). Of course, this means you can only go
as fast as the bus throughput allows (when transferring the entire YUV
surface each time). But that should be insanely fast for most
applications, unless you require enormous resolutions.On Monday, April 14, 2003, at 03:01 PM, sdl-request at libsdl.org wrote: