Windows:
下载并安装QuickTime SDK(官方有下载),下载安装一个QuickTime for win,在使用SDK时会用到一个QuickTime中的dll(QTCF.dll);
Mac:
添加Cocoa.framework和QuickTime.framework,
windows,需要QuickTime安装目录下的QTCF.dll,以及项目设置中修改编译选项为 release版的静态链接(项目属性->c/c++->代码生成->运行库->"多线程/(MT)")
#include <QTML.h>
#include <Movies.h>
#pragma comment(lib,"QTMLClient.lib")
main()
{
初始化
InitializeQTML(0);
EnterMovies();
......sdk调用过程
注销
ExitMovies();
TerminateQTML();
}
mac,需要设置编译选项为32bit(Project setting->Build->Architectures->"32-bit Intel")
#include <QuickTime/QuickTime.h>
main()
{
初始化
EnterMovies();
......sdk调用过程
注销
ExitMovies();
}
------------------------------------------------------------------------------
打开movie关键函数: OpenMovieFile,NewMovieFromFile
导出movie关键函数:ConvertMovieToFile
函数调用没什么难点,具体细节及概念apple官网quicktime开发中心都很详细,只是细节麻烦;感觉好的时间多花在了文件路径上,QuickTime SDK中不管import 还是export
关于文件路径方面都用到一个 FSSpec 的数据结构,
windows上比较好处理:
int error = noErr;
char path[255] ={ 0};
strcpy (path, "c:\\demo.mov");
c2pstr (path);
error = FSMakeFSSpec (0, 0L, (ConstStr255Param)fullPath, &sfFile);
mac 下这样不行,CocoaDev上有一段代码可用,虽然贴到xcode上有点问题,只要略做改动就好( http://cocoadev.com/FSMakeFSSpec)