【发布时间】:2015-02-01 09:02:47
【问题描述】:
媒体基础是微软推荐的技术,确实有很多示例和解释支持,但都是原生代码
我在 sourceforge 中找到了一个包装器,使我能够将 Media Foundation 与 C# 一起使用,但是当我阅读时人们谈论并非所有事情都可以通过托管代码完成
我有一些与 MF 相关的任务:
- 捕捉实时视频
- 改变分辨率和波特率
- 视频编码
- 解码视频
我可以在这些任务中使用 .net 还是必须使用本机代码?是否有示例帮助(请不要提及其中的 msdn 之一)?
【问题讨论】:
-
欢迎来到 StackOverflow。 Media Foundation 非常适合合作,并且表现非常出色。如果您的要求包括实时,您最好编写自己的 C++/CLI 包装器来编排整个过程。我假设您的意思是比特率(而不是波特率)。您要捕获网络摄像头流吗?您是否对可能不止一种媒体类型进行编码/解码?包括音频吗?
-
@Jeff 谢谢你的回答,是的,我想捕捉一个网络摄像头流,当我捕捉它时,我在每个时间周期对帧进行编码并将其附加到桌子上,我可以放在一个容器中并不多(也可能是没有容器的字节流)。我只需要视频我根本不关心音频
-
我不是媒体基础专家,但我发现在 C# 之间进行交互的最佳方式是使用托管 C++。我已经设法将实时视频从 Media Foundation 捕获到我的 C# WPF 应用程序中。主要的 C++ 类在这里,但再次警告我不是 MF sipsorcery.codeplex.com/SourceControl/latest#sipsorcery-media/… 方面的专家。
标签: c# .net video ms-media-foundation