我尝试使用 Intel Media SDK 开始一个项目。但是我在链接过程中遇到了一些错误。我使用 Microsoft Visual C++ 2008。我得到了 Intel(R) Media SDK 2019 R1。
我遵循编程指南。 https://software.intel.com/sites/default/files/managed/9e/5a/mediasdk-man.pdf
我已经包含了这些文件:
#include "mfxvideo.h" /* The SDK include file */
#include "mfxvideo++.h" /* Optional for C++ development */
并链接此库:
libmfx.lib
我在项目配置属性-> VC++ 目录-> 库目录中添加了一个新库,在这里我指定了用于搜索库的附加文件夹。
路径:Program Files (x86)\IntelSWTools\Intel(R) Media SDK 2019 R1\Software Development Kit\lib\win32" 我也尝试使用:C:\Program Files (x86)\IntelSWTools\Intel(R) Media SDK 2019 R1\软件开发工具包\lib\x64
并添加配置属性 -> 链接器 -> 输入库 libmfx.lib 的具体名称。
我的代码:
#include "stdafx.h"
#include "mfxvideo.h" /* SDK functions in C */
#include "mfxvideo++.h" /* optional for C++ development */
#include "mfxplugin.h" /* plugin development */
int _tmain(int argc, _TCHAR* argv[])
{
MFXVideoSession session;
return 0;
}
我的错误信息:
1>Linking... 1>LINK : 警告 LNK4098: defaultlib 'LIBCMT' 与其他库的使用冲突;使用 /NODEFAULTLIB:library
1>libmfx.lib(mfx_load_dll.obj) : 错误 LNK2019: 函数“void * __cdecl MFX::mfx_dll_load(wchar_t const *)”中引用的无法解析的外部符号 __imp__SetThreadErrorMode@8 (?mfx_dll_load@MFX@@YAPAXPB_W@Z)
1>libmfx.lib(mfx_dxva2_device.obj) : 错误 LNK2001: 无法解析的外部符号 __imp__SetThreadErrorMode@8
1>D:\slegrand\MediaSDKandFFMPEG2\SDKandFFMPEG\Debug\SDKandFFMPEG.exe : 致命错误 LNK1120: 1 unresolved externals
谢谢您的帮助。