【问题标题】:Media Source Extension with Firefox使用 Firefox 的媒体源扩展
【发布时间】:2018-05-13 04:51:24
【问题描述】:

我的应用程序接收到 RTP 流(H264 或 VP8),将其放入 Fragmented MP4 或 WebM 并通过 Websocket 将其发送到我的 Javascript 应用程序,在该应用程序中我使用媒体源扩展显示视频。 Chrome 与两种编解码器都可以正常工作,但 Firefox 显示出巨大的 CPU 使用率,50%-60%。 铬只有 6%。

Javascript 调用 mediaSource.updateBuffer,等待 updateend 然后再次调用 mediaSource.updateBuffer。与外面的任何例子没有什么不同。

任何人在使用 Firefox 时也遇到此问题?

【问题讨论】:

    标签: javascript firefox media-source


    【解决方案1】:

    如果没有更多具体信息(分析您的代码、检查您的浏览器标志和功能),就无法明确说明问题所在。

    我怀疑在 Chrome 中,您的编解码器是硬件加速的,而在 Firefox 中则不是。

    【讨论】:

    • 不确定,因为 Firefox 仅使用 15% 的 WebRTC。如果我不在 CPU 仍然很低的视频元素中调用 play(),我会运行更多测试。我不知道究竟是什么触发了视频解码过程。
    • @Sergio 这是苹果和香蕉。使用 WebRTC 的视频以优化延迟而不是质量的方式进行编码。生成的视频可以快速编码解码。此外,不能保证 Firefox 不会为 WebRTC 使用硬件加速编解码器,而不会为播放其他视频使用软件编解码器。
    • 苹果和香蕉...不是很好的例子。正如我所写,我只是在解码,没有在 Javascript 中编码。编码是在我使用 libvpx 库的 C++ 应用程序中完成的,而我的应用程序仅使用 4% 的 CPU 进行编码。你告诉我 Firefox 需要 50% 来解码单个 VP8 流...??他们确实在优化解码过程...... Chrome 只需要 5-6% 接近我的应用程序的事实告诉我,Firefox 有一些问题......
    • @Sergio 谁知道,正如我所说,您的问题中没有足够的信息来确定这一点。您可以在您的开发人员工具中打开分析器并帮助缩小范围,之后我可以进一步帮助您。在某些机器上,解码单个流肯定会占用大量 CPU。在其他方面,没有。我不知道你在做什么。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-07-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-11-05
    • 1970-01-01
    相关资源
    最近更新 更多