2

我尝试使用MediaSourceAPI 在 Chrome 中重建 H.264 编码视频的 MP4 流。

为了便于讨论,我制作了两个这样的流,当作为标签包含时,它们都可以正确src播放<video>。但是,当输入 时MediaSource,其中一个不起作用,而另一个起作用。查看chrome://media-internals,两个流都产生了一堆Skipping unrecognized top-level box: mdat(即使一个显然播放得很好,所以它不可能完全忽略它们)。

在任何情况下,无法播放的都会卡住kInitPrerolling而不会引发任何错误。我想深入了解这一点,但是事实证明这很困难,因为诊断消息在 Chromium 源代码中打印为DLOGs 和DVLOGs ,并且这些消息被排除在 Chrome 的调试版本之外。

有人可以:

  • 阐明为什么 Chrome 可能会拒绝播放流;或者
  • 给出一些关于如何从 Chrome 的 MediaSource 管道(最好在 OSX 上)查看 DVLOG 的说明。Chrome Canary 不会打印出 DVLOG,而 Chromium 版本说不支持 H.264,所以我假设标准的调试构建指令不会给我一个支持 H.264 的可执行文件。
4

0 回答 0