【发布时间】:2014-06-20 13:17:17
【问题描述】:
如何使用 Black Magic Design DecklinkAPI.dll 显示/预览输入视频?我可以逐帧获取视频,但我不知道如何在窗体/窗口中显示该帧。我可以实现 IDeckLinkInputCallback:
void IDeckLinkInputCallback.VideoInputFrameArrived(IDeckLinkVideoInputFrame video,
IDeckLinkAudioInputPacket audio)
{
IntPtr pData;
video.GetBytes(out pData);
// What should I do to get the preview?
System.Runtime.InteropServices.Marshal.ReleaseComObject(video);
}
我看到的另一种方法是实现 IDeckLinkScreenPreviewCallback:
void IDeckLinkScreenPreviewCallback.DrawFrame(IDeckLinkVideoFrame theFrame)
{
// Constructor: m_ph = new CDeckLinkDX9ScreenPreviewHelper();
m_ph.SetFrame(theFrame);
// Should I use this method instead to get the preview?
System.Runtime.InteropServices.Marshal.ReleaseComObject(theFrame);
}
有更完整的代码示例,但仍然缺少重要的代码: blackmagic SDK in c#。 BMD Decklink SDK 文档可以在here找到。
谢谢。
【问题讨论】:
-
这不是BMD Decklink SDK技术支持的问题吗?
-
你是对的安东尼联系他们应该是第一步。但是,我有一些制造商的经验,他们可能只是说他们没有任何 C# 开发人员,他们只有简单的 C# 示例;)即使 BMD 不是这种情况,SO 社区也拥有比任何其他人更广泛的知识制造商。
标签: c# video-capture