我正在尝试使用Quicktime / Movies.h中定义的QTCopyMovieMetaData。我已将QTKit和QuickTime框架链接到我的目标,并将所有必要的内容导入到我的标头和实现文件中:
#import <Cocoa/Cocoa.h>
#import <Foundation/Foundation.h>
#import <QTKit/QTKit.h>
#import <QuickTime/QuickTime.h>
#import "Quicktime/Movies.h"
但是,由于无法识别QTCopyMovieMetaData或QTMetaDataRef(也在Movies.h中声明),我收到编译器错误。
QTMediaEditor中的示例代码使用QTCopyMovieMetaData并在我的机器上成功编译32位目标,但不是64位目标。我的应用程序不会编译为32位。将我的应用程序的构建设置与QTMediaEditors构建设置进行比较,我看不出会导致这种差异的原因。
有关可能阻止QuickTime框架的任何建议吗?
答案 0 :(得分:2)
QTCopyMovieMetaData
功能在64位中不可用。请注意,Movies.h的全部内容都符合#if !__LP64__
条件;该文件中的所有内容仅在32位体系结构上声明。
我的应用程序无法编译为32位。
如果你的意思是你正在放弃32位支持,那就好了; QuickTime已经有了。
您需要use the Metadata framework to examine the file。请注意,这仅在文件位于具有Spotlight索引的卷上时才有效,并且仅在文件已编制索引时才有效。对于QuickTime框架的QTMetaData API,QTKit(不是Snow Leopard,无论如何)都没有替代品。