我有一些视频转换器盒(马歇尔VAC-11SU3,马歇尔VAC-11HU3,Magewell USB捕获SDI,黑魔法UltraStudio快递)和没有摄像头。它们都有一个输入的视频信号插入各自的SDI或HDMI端口。
问题是,GetNativeMediaType总是返回与索引0相同的GetMediaTypeByIndex格式,而不管进入SDI/HDMI端口的实际视频格式如何。
到目前为止,我看到的每个Media Foundation示例都有一个UI来选择“正确”的本机格式。此菜单由设备的GetMediaTypeCount和GetMediaTypeByIndex填充。
我的用户不知道该选什么!
我们一直在使用黑魔法的DeckLink API,我们的用户可以在UI中看到传入的视频信号格式。我们想扩大对多个设备制造商的支持,但这一次我很为难。
发布于 2017-11-18 07:26:07
媒体基金会不使用信号格式检测的概念,你有最近的黑魔法硬件(更早的黑魔法产品,顺便说一句,没有提供检测)。
视频源驱动程序确实可以枚举它在有线上看到的媒体类型,作为第一个GetNativeMediaType输出和/或在流会话期间提供对这种格式的动态格式更改。媒体基金会视频资源主要是假设,但类似于摄像头的设备,并有一个固定类型的枚举顺序。
我不认为黑魔法驱动程序是不同的,因为它主要是模仿一个网络摄像机,这样使用WDM驱动程序,黑魔法设备输入就可以使用标准的API。如果一个人需要扩展的功能,如信号检测,黑魔法建议使用他们的DeckLink SDK (顺便提一下,这很好)。
https://stackoverflow.com/questions/47355424
复制相似问题