我正在尝试从 W3 媒体源扩展 API 创建一个 SourceBuffer,其 Mime 类型为"audio/wav",如下所示:
let sourceBuffer = mediaSource.addSourceBuffer('audio/wav');
但是,我收到"不支持错误":
无法在"媒体源"上执行"addSourceBuffer":不支持提供的类型("音频/wav"(。
此外,运行以下命令:
MediaSource.isTypeSupported('audio/wav');
在浏览器控制台中,对于最新版本的 Firefox 和 Chrome,都返回 false。
如果我只是将音频标签的 src 设置为.wav的 url,一切正常。只有当我使用SourceBuffer时,我才会遇到文件类型支持问题。 我需要指定什么 DOMString 来添加源缓冲区(( 才能让它接受 PCM 编码.wav文件?
我使用的是 Chrome 72 和 Firefox 68
遗憾的是,MSE 并不总是支持音频/视频元素支持的媒体。 audio/wav
就是这种情况。
另请参阅:https://github.com/w3c/media-source/issues/55
在这种情况下,您可以在自己的脚本中解码 WAV 文件,并使用 Web 音频 API 中的 ScriptProcessorNode 对其进行播放。 肯定是一团糟,但有可能!