使用 MediaFoundation 时遇到问题

问题描述 投票:0回答:1

我的项目正在使用 MediaFoundation 的 Source Reader 来捕获和预览摄像机,但在使用 EVR 呈现视频时遇到以下问题。

代码:

#include <evr.h>
#include <mfapi.h>
#include <mfidl.h>
#include <mfreadwrite.h>
#include <mferror.h>
#pragma comment(lib, "evr.lib")
#pragma comment(lib, "mf.lib")
#pragma comment(lib, "mfplat.lib")
#pragma comment(lib, "mfplay.lib")
#pragma comment(lib, "mfreadwrite.lib")
#pragma comment(lib, "mfuuid.lib")
...
IMFGetService *pGetService = NULL; 
IMFVideoDisplayControl* pVideoDisplayControl = nullptr; 
pGetService->GetService(MR_VIDEO_RENDER_SERVICE, IID_IMFVideoDisplayControl, (void**)&pVideoDisplayControl);
...

错误:

LNK2001 unresolved external symbol MR_VIDEO_RENDER_SERVICE
LNK2001 unresolved external symbol IID_IMFVideoDisplayControl   

如何解决这个问题?

这个问题研究了2天了,还没解决。

video-capture ms-media-foundation
1个回答
0
投票

您必须添加

#pragma comment(lib, "strmiids.lib")

您可以在

IMFVideoDisplayControl
接口的任何方法中看到它的记录(可惜不在接口本身上......),例如 IMFVideoDisplayControl::GetVideoPosition

© www.soinside.com 2019 - 2024. All rights reserved.