Trouble using QuickTime method
I'm trying to use QTCopyMovieMetaData defined in Quicktime/Movies.h. I've linked both QTKit and QuickTime frameworks to my target and imported everything necessary into my header and implementation files:
#import <Cocoa/Cocoa.h>
#import <Foundation/开发者_如何转开发Foundation.h>
#import <QTKit/QTKit.h>
#import <QuickTime/QuickTime.h>
#import "Quicktime/Movies.h"
However, I'm getting compiler errors for not recognizting QTCopyMovieMetaData or QTMetaDataRef (also declared in Movies.h).
The example code in QTMediaEditor uses QTCopyMovieMetaData and compiles sucessfully on my machine for a 32 bit target, but not a 64 bit target. My app won't compile for 32 bit. Comparing my app's build settings with QTMediaEditors build settings, I don't see what would cause that difference.
Any advice on what might be blocking the QuickTime framework?
The QTCopyMovieMetaData
function is not available in 64-bit. Note that the entire contents of Movies.h are subject to an #if !__LP64__
condition; everything in that file is only declared on 32-bit architectures.
My app won't compile for 32 bit.
If you mean you're dropping 32-bit support, good; QuickTime already has.
You need to use the Metadata framework to examine the file. Note that this will only work if the file is on a volume with a Spotlight index, and only if the file has been indexed. There is no replacement in QTKit (not as of Snow Leopard, anyway) for the QuickTime framework's QTMetaData API.
精彩评论