Professional Video API: Apple's CMIO api

harrisonpault's picture

I picked this up in the net conversation about the new FCP 10.0.3 release:

"CMIO is Appleā€™s new API for 3rd party vendors to expose video hardware functionality to the OS and as such it is also provides (scarcely documented) means to directly play out video to a professional video device. We have played around a bit with this API, and those drivers that support CMIO today are still in very early stages.

Assuming that Broadcast Monitoring in FCX relies on CMIO internally, this could lead to improved support of CMIO drivers in the near future. This would be great news for those developers who are looking for a robust replacement of deprecated QuickTime APIs to interface w. professional video equipment"

Perhaps there is going to be something from Apple beyond minimal USB webcam, ancient Firewire DVCam, and Displayport (DVI-D) video out support? The speculation is that this what AJA, Blackmagic and Matrox are using for video-box driver development. Could we one day not so far away see drivers for HD video input, too?

harrisonpault's picture
Re: Professional Video API: Apple's CMIO api

I see that it is an official framework. From Apple:

Name: CoreMediaIO.framework OSX Version: 10.7 ID: CMIO Description: Contains interfaces of the Device Abstraction Layer (DAL) used for creating plug-ins that can access media hardware.

vade's picture
Re: Professional Video API: Apple's CMIO api

CMIO has been available since 10.7 came out (public headers and all). These are simply replacement APIs for the deprecated Quicktime Component APIs/drivers, which allow hardware to talk to software in 64 bits (the old Quicktime Components were 32 bit only, old, not really multi-threaded (at least, in a way understandable to humans) and used outdated APIs and semantics). This is "nothing new" capability wise, but simply lets integrators use their hardware in 64 bit apps, and exposes their hardware to AVFoundation and QTkit, rather than only legacy Quicktime apps, etc.

@bangnoise can speak in more detail than I about this.

neustar1's picture
Re: Professional Video API: Apple's CMIO api

I'm looking for some sdk or example for CoreMediaIO.framework programming, but i can not found anything about it. Can you give me some example or tip?