Skip to main content
Last updated September 29, 2011 08:30, by Charles Chappell
Feedicon  

Quicktime Cubed

Quicktime Cubed is a project of MC Cubed, Inc. of Saitama Japan, to establish a more concrete link between QTKit and JMF, and java programs in general.

Quicktime for Java is officially a deprecated framework, and does not function on 64 bit mac processors, leaving no non-JNI/JNA options to interfacing with Quicktime from Java/JMF. The complexity of creating such a library is prohibitive, especially for entry level java programmers, or for one-off projects.

The goal of the QTCubed project is to provide both a generic java framework for accessing QTKit (The modern Quicktime API) from Java, provided appropriate code signing, or, for accessing Quicktime through JMF, provided the appropriate permissions are set to allow access to the camera from an applet.

This project's goal is essentially to create a Performance Pack for JMF for OS X Leopard and higher based Mac computers.

Security is considered a very high priority for this project, as even trivial mistakes in JNI code can lead to quite serious security problems.

Similar works

A great deal of this project has been inspired by the Keaton project, which gave me pointers on how to get started, though the code is my own. I was disappointed that the authors of Keaton didn't continue the project, which has been sitting idle for the past 2 years.

The Keaton Project was also at least in part inspired by the Lloyd Project, which is based on the now deprecated Quicktime API.

The Rococoa project also attempts to interface with QTKit, though does so via higher level abstractions. As a generalized Cocoa framework, Rococoa seems very promising, but for performance critical media applications, I can't help but think that a direct JNI interface will be faster and smoother, especially considering the oddities involved in the buffer handoffs from QTKit and Quicktime.

Current Status

QTCubed is usable for beta-testing, and is even relatively stable for capture and playback under OS X. (QTKit) I cannot promise there are no bugs (Indeed, I am noting the bugs I find in JIRA) at this stage however, nor that everything works exactly as it should. In particular, I know that capture does not work AT ALL on the Windows (QTJava) side, however it's getting quite stable on the OS X (QTKit) side.

Movie playback does function on both OS X and Windows.

JMF capture is functional for both audio and video through normal JMF mechanisms, without any special procedures needed.

Documentation

 
 
Close
loading
Please Confirm
Close