Does anyone out there know if there is a way to pull raw, still-compressed audio and video samples out of a Quicktime .mov file using an Apple API / Framework targeting the Mac that can be compiled natively in 64-bit (IE: QTKit)? I know this functionality is available in Apple's QuickTime Framework that targets the Mac, but this Framework can only be compiled under 32-bit.
If anyone is familiar with such a Framework and any related sample code, some insight would be much appreciated.
Thanks,
Josh
The AVFoundation framework released with OSX 10.7 (Lion) can extract raw compressed frames from a movie. This is an ObjC framework with 64-bit support.
See the documentation for the AVAssetReader class.
Have you looked at the Handbrake source yet? It may give you some hints.
It is not an Apple API specifically but the codebase is open source and does compile on OS/X Lion and Tiger. We've been tweaking it to run on native 64-bit windows and OS/X boxes and it does perfectly well reading the .mov files we've thrown at it.
http://handbrake.fr/
Related
I know objective-c code can be compilied on Windows by gnuStep. GnuStep clone most of the apple libraries but not all. So I am looking smart way find the remaining class since I assume using apple library on other os might be against the apple's licence.(Please don't aswer saying buy mac or wmvare solutions).
Thanks.
For iOS you depend on apple's frameworks (Cocoa Touch et al). They are only available on Mac OS X.
While it is possible, to run OS X on PCs (search for "Hackingtosh"), apple forbids to run it on non-apple hardware in its EULA.
am developing one dictionary for mac os 10.6. Am not able to locate glib.h. can i get this as a library or framework. am confused very much. please give me your valuable solution.
Note: i want to use GSList from glib
Install it using MacPorts or download the source code and install manually. Or if you're developing a cocoa aplication I'm sure the framework has it's own list structures, it would be better to use the native ones.
I am considering using Kinect in one my projects, but I am totally lost between all the libraries. Don't know what is what exactly. Most importantly I am reading stuff about OpenNI and OpenKinect. But don't know their relation/differences. PS. I am using Ubuntu or Mac.
OpenKinect is a community of people, not a library. The OpenKinect community releases the libfreenect Kinect driver. libfreenect and OpenNI+SensorKinect are two competing, opensource libraries/drivers. libfreenect (Apache 2.0 or GPLv2) derives from the initial, reverse-engineered/hacked Kinect driver whereas OpenNI+SensorKinect is derived from open sourced (LGPL) PrimeSense code.
Both projects work on Windows, Linux (Ubuntu), and Mac OS X. Both projects allow you to access color and depth images from the camera. The projects are not compatible and they can not be used simultaneously.
Differences between the libraries are motor control (libfreenect has it, OpenNI+SensorKinect doesn't), and integration with the NITE middleware for higher-level NUI support (OpenNI+SensorKinect only). These differences tend to drive projects towards one of the libraries.
I should add that OpenNI 2 renders OpenNI unusable to anything else other than Windows.
OpenNI 1.x with Kinect was not oficially supported in other platforms, until a guy named avin2 created the SensorKinect project, which sits on top of OpenNI and exposes the interface of the Kinect to OpenNI. OpenNI 2.0 is a major refactoring, and does not oficially support anything else other than Windows for the Kinect. http://social.msdn.microsoft.com/Forums/en-US/kinectsdk/thread/a11ff6d9-7fbe-4636-8ff0-92d6220ac3f8/ . At the time of this writing, OpenKinect has a problem with the newest kinect (model 1473) , which renders the device unusable. I don't know if a fix is underway.
Therefore, to sum up:
-- If the problem with the device model 1473 is solved, then OpenKinect is the way to go. And, frankly, I wouldn't trust anything else which targets a specific platform.
-- Until this problem is solved, your only option is to use OpenNI 1.5 + SensorKinect, which is obsolete, and development on it has halted, but it's the only thing that works with all kinect models, actually.
Although this question is years ago, I would like to add something I know.
I am pretty amateur, therefore getting Kinect to work on Mac was always difficult for me. I downloaded the code from github and followed multiple instructions but I couldn't get it to work properly. I remember, around 10 months ago, I got the Kinect, OpenNI work on Mac, but it was very unstable. The glview sample program did show depth and color images from Kinect, but it failed every now and then.
Recently, I found out a guy created a homebrew formula for openni (1 and 2), together with NiTE and libfreenect. I tried and it worked flawlessly on Mavericks 10.9.2 + 10.9.3, so if you haven't got the Kinect working properly, have a look at:
https://github.com/totakke/homebrew-openni
At this time of writing, OpenNi is compatible with Kinect for Windows, libfreenect is not.
Hi!
I have an old plugin (as binary, dll), used by my application. It was build for WM2003. And now it crashes the app, if loaded on Windows Mobile 6.1 (WM5 works fine, WM6 too).
The source code is not available and it's no more supported by developer. So I can't rebuild it for WM6.1.
Is it possible to patch or convert the binary to allow it to work on WM6.1 ? If so, how can I do this ?
Thank you.
Edit: I've found, that the problem is in PE loader, which acts not the same on WM6.1 (comparing with WM6 and earlier).
Does this plug-in use MFC or ATL? Earlier versions of WinMo had a different ATL/MFC version baked in, so MFC or ATL apps written in Studio will not work unless you deploy the newer ATL/MFC libraries along with the app, just as the old apps will not work on new devices unless you deploy the old MFC/ATL libraries.
This problem is rare, but some information can be found.
The common solution is to rebuild a binary in VS2008 (TCPMP new VS2008 builds for WM6.1), but this will not help, if you don't have the source code.
I've found the problem explanation and another solution in cegcc mailing list (arm-wince-cegcc on Windows Mobile 6.1). In Windows Mobile 6.1 Memory Management scheme was changes.
This slot arrangement remained pretty constant from Windows Mobile 2003 to Windows Mobile 6.0. However, with the release of Windows Mobile 6.1, things were changed to reduce the DLL pressure and to help out in the Device Manager process space.
In Windows Mobile 6.1, the stacks for the device manager are no longer allocated in the processes’ slot. Instead, the operating system uses slot 59, at the top of the Large Memory Area, for the device manager thread stacks. ...
And the workaround for this issue is to declare the DLL in registry (to tell the OS not to load it in high memory).
I don't like this workaround, so I try to find some binary patcher. And found it :)
It's not really a patcher, it's UPX - the Ultimate Packer for eXecutables. But it solves the problem perfectly. The DLL, packed with UPX don't crashes the application and runs fine.
I've noticed that all betas for Dropbox are released simultaneously for Windows, Mac and Linux. How do they do that? Anyone knows which platform they're using? I'm aware that there are many native -very impressive, actually- functions in each of the platform clients, but they seem to release critical bug fixes efortlessly for all platforms.
So any idea of which GUI platform they're using?
The Linux version includes files such as wx._windows_.so, libwx_gtk2*.so, etc. (I haven't checked the others), so I suspect Dropbox uses wxWidgets.
Qt is a popular cross-platform application and GUI framework with native look-and-feel.
I don't know what Dropbox uses for all its supported platforms, but it looks like its linux client uses at least Gtk: Dropbox linux System Requirements.