有关 DirectShow.NET、DirectShow 和 Windows Media 格式的一般问题

发布于 2024-10-12 08:20:25 字数 467 浏览 7 评论 0原文

我用谷歌搜索并搜索答案,但找不到答案。

基本上我正在开发一个网络摄像头/音频流应用程序,它应该从电脑(USB 网络摄像头/麦克风)捕获音频和视频并将它们发送到接收服务器。服务器将如何处理它是另一个故事和第二阶段(我现在跳过)

我使用 DirectShow 和 Windows Media 格式编写了一些代码,它非常适合捕获音频/视频并将它们发送到另一个客户端,但是有一个主要问题:延迟。

互联网上的每个人都给了我相同的答案:“抱歉,伙计,但媒体格式不适用于视频会议,他们的编解码器延迟太高”。我以为我可以跳过 .wmv 问题,但似乎不可能做到......这条路就到此为止。

所以我看到了一些 DirectShow.NET 的示例,它们对于音频和视频都更快。我的问题是:为什么 DirectShow.NET 对于视频/音频会议更快更好?难道它不应该只是 C++ 的 DirectShow 的 .NET 移植吗?

我错过了什么吗?我现在有点困惑

I searched and googled for an answer but couldn't find one.

Basically I'm developing a webcam/audio streaming application which should capture audio and video from a pc (usb webcam/microphone) and send them to a receiving server. What the server will do with that it's another story and phase two (which I'm skipping for now)

I wrote some code using DirectShow and Windows Media Format and it worked great for capture audio/video and sending them to another client, but there's a major problem: latency.

Everywhere in the internet everyone gave me the same answer: "sorry dude but media format isn't for video conferencing, their codecs have too high latency". I thought I could skip the .wmv problems but seems like it's not possible to do... this road ends here then.

So I saw a few examples with DirectShow.NET which were faster for both audio and video.. my question is: how come that DirectShow.NET is faster and better for video/audio conferencing? Shouldn't it be just a .NET porting of C++'s DirectShow?

Am I missing something? I'm a bit confused at this point

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

江挽川 2024-10-19 08:20:25

是的,DirectShow.NET 只是一个为非托管 DirectShow 提供托管映射的端口。 Windows Media 确实不是低延迟的理想选择,但您可以通过选择正确的编解码器/配置文件(即低延迟 CBR 和 设置。最终,虽然这取决于消费者(主要是 Windows Media Player,但 Silverlight 是 更好) 在显示帧之前缓冲多少内容。

长话短说,DirectShow.NET 和 DirectShow 的限制是相同的,我怀疑使用 Windows Media 时的延迟是否会低于 2 秒。

Yes, DirectShow.NET is just a port providing managed mappings for the unmanaged DirectShow. Windows Media is indeed not ideal for low latency, but you can somewhat mitigate by choosing the right codec/profile, i.e. Low Delay CBR and settings. In the end though it depends on the consumer (Windows Media Player mostly, Silverlight is better) how much content is buffered before displaying a frame.

To cut a long story short limitations are the same for DirectShow.NET and DirectShow and I doubt you'll get below 2 seconds latency using Windows Media.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文