很多quicktime示例都引用QTAtomContainer来设置Movie导出参数。
我从远古时代就拥有了所有工作代码。现在我使用的是xcode 4,编译器无法找到QTAtomContainer。根据Apples文档,这应该在Movie.h中声明。但是没有QTAtomContainer。有人知道Apple将此声明移至何处或我遗失哪个标题?
答案 0 :(得分:4)
我终于找到了问题。在Quicktime中定义了很多符号!仅限!如果您的xcode项目在PLAIN 32位模式下编译。使用“标准(32/64位 - 英特尔)”或仅64位的通用二进制文件永远不会找到这些符号。 (“标准(32/64位 - 英特尔)”是实际xcode 4系列编译器的默认设置。恕我直言Quicktime将/必须更改。默认情况下Lion将随附64Bit)
在“QuickTime / QuicktimeComponents.h”中,您将找到以下行:
#if !__LP64__
这意味着如果64位代码至少定义一次,编译器将找不到符号
QTAtomContainer
MovieExportGetSettingsAsAtomContainer
MovieExportComponent
canMovieExportFiles
。现在,我可以使用QTMovieExportSettings键成功使用该示例在Quicktime中设置VideoQuality设置,您可以在此处找到:
http://www.cocoadev.com/index.pl?QTMovieExportSettings
我使用以下标题:
#import <QuickTime/QuickTime.h>
#import <QuickTime/Movies.h>
#import <QTKit/QTKit.h>
这些标题隐含包含“QuickTime / QuicktimeComponents.h”
希望我可以帮助那些努力解决这个问题的人。
问候
杰克
答案 1 :(得分:0)
谢谢!四年后,我正在为OS X 10.7开发,这节省了我很多时间,我确定。