Core Video

From Wikipedia, the free encyclopedia

Mac OS X graphics model
Rendering
QuickDraw • Core OpenGL • Quartz 2D • Core Image
Core Animation • Core Video • ColorSync • QuickTime
Compositing

Quartz Compositor

This box: view  talk  edit

Core Video is the video processing model used by QuickTime 7 on Mac OS X to interface with the rendering and compositing layers in its graphics model. It delivers the images from QuickTime or other video source to the rest of the Quartz technologies in Mac OS X.[1]

[edit] Overview

QuickTime 7 is the first version to fully use the Quartz technologies, and it provides Core Video with decompressed video frames for display.[2] The processing pipeline in Core Video offers both a buffering model and synchronization solution to ensure smooth playback.[3]

Core Video can be thought of as the link between a video source and a display context in Quartz 2D. Since Core Video is responsible for passing the video frame data as images into the drawing context, it can maintain a buffer of image data - the frame buffer, feeding that data into Quartz 2D for rendering. Images can be further processed by Core Image filters before being composed into a final scene with Quartz Compositor. The Compositor places the images on an OpenGL surface, and Core Video maintains the timing of the flow of images onto the surface with its built-in timer, the display link. The result is that video playback from QuickTime is placed on an OpenGL surface, thus Core Video replaces older QuickTime methods for interacting with QuickDraw.[4][5][6]

Although Core Video's frame buffer designed to interact with QuickTime 7, it can interact with any video source.[7][8] Core Video works best on graphics cards that support Quartz Extreme, since final playback is composed on an OpenGL surface.[9]

[edit] History

Although Core Video was introduced with the release of Mac OS X v10.4, it is included in the installation of QuickTime 7 on Mac OS X; thus, Core Video is available for systems running Mac OS X 10.3.9 with QuickTime 7 installed, or Mac OS X 10.4 or later.[10]

[edit] References

Languages