AudioElementMediaStream to MediaStreamSource



WebAudioApi AudioContext可以从MediaStreamSource创建源:

  const {audioCtx} = this;
  const source = audioCtx.createMediaStreamSource(mediaStream);
  source.connect(audioCtx.destination);
  source.start(audioCtx.currentTime);

Audio-Element 通过 captureStream(( 支持可访问的 mediaStream:

  const audio = new Audio();
  audio.src = src;
  const mediaStream = audio.captureStream();

正如您在文档中看到的那样,两个流 - 音频捕获流以及createAudioStreamSource的流参数都是MediaStreams,为什么它不起作用。问题在哪里,我该如何解决它?

编辑:

问题是浏览器抛出此错误:

×未处理的拒绝(无效状态错误(:无法在"BaseAudioContext"上执行"createMediaStreamSource":MediaStream 没有音轨

您已将

"src"附加到音频元素,但在对其执行操作之前尚未检查内容是否已从服务器完全加载。如果流尚未完成下载到浏览器,则无法捕获流,就像在图像源完全进入浏览器之前无法显示图像源一样。针对源的任何进程都必须放置在 onload 处理程序中。(您可能希望在<audio>元素中使用<source>元素。

相关内容

  • 没有找到相关文章

最新更新