This project is for someone familiar with OpenGL and Quicktime programming on a Mac OS X.
If the above line describes you, then this project should be a snap. I have a Quicktime function wrapper library that opens a standard Mac window, loads a movie from file, and plays the movie. (Plus other functions not related to project.)
I want to add the ability to load CLUTs (color look up tables) for the windows. To do that, I need to convert the window handling from the standard Mac windows to OpenGL. I’ve looked at the sample application on the Apple website that shows how Quicktime and OpenGL can work together, and it all seems straightforward enough, but don’t have the time to learn OpenGL. I need some expert help.
The project basically involves updating the functions in my wrapper library that opens, closes, or somehow manipulates windows, so that it works with OpenGL based windows.
I’m thinking these should be very few:
QTOpenWindow
QTWindow
QTCloseWindow
QTWindowFill
QTFill
QTShow?
If it’s just a matter of changing calls from standard to OpenGL functions, cool. If additional stuff needs to be done, I’m totally cool with you just copying whatever functions you need from the sample applications on Apple’s website: (e.g. OpenGLMovieQT)
I also want a function added that loads a CLUT for the window. (If you’ve not worked with CLUTs, but can do the rest of the project, please let me know.)
QTGetClut
QTSetClut
I’m attaching the library. I usually call these functions from another wrapper library which is an interface to Mathematica. Since most people don’t work with Mathematica, I’m attaching a simple command line test harness which tests minimal playback. The CLUT support can be hard coded in. I’ll build a function to pass in the CLUT through Mathematica later.
Thank you,
Cesar
## Deliverables
1) Complete and fully-functional working program(s) in executable form as well as complete source code of all work done.
2) Deliverables must be in ready-to-run condition, as follows (depending on the nature of the deliverables):
a) For web sites or other server-side deliverables intended to only ever exist in one place in the Buyer's environment--Deliverables must be installed by the Seller in ready-to-run condition in the Buyer's environment.
b) For all others including desktop software or software the buyer intends to distribute: A software installation package that will install the software in ready-to-run condition on the platform(s) specified in this bid request.
3) All deliverables will be considered "work made for hire" under U.S. Copyright law. Buyer will receive exclusive and complete copyrights to all work purchased. (No GPL, GNU, 3rd party components, etc. unless all copyright ramifications are explained AND AGREED TO by the buyer on the site per the coder's Seller Legal Agreement).
4) Yaddi yaddi yadda, the above is the standard template. I just want it to work!! :) Plus include some notes in code to let me know what's going on. -thanks
Additional Note:
The functions needing editing are all in the file QT.c
The command line test harness is in PlayMovie.c
## Platform
latest versions of:
Mac OS X
Quicktime SDK
XCode using C