【问题标题】:MediaElementAudioSourceNode prevents video playback in FirefoxMediaElementAudioSourceNode 阻止在 Firefox 中播放视频
【发布时间】:2014-11-27 12:46:22
【问题描述】:

这就是我正在做的事情:(1)创建一个视频元素; (2)在视频元素上创建一个AudioContext和一个MediaElementSourceNode; (3)将MediaElementSourceNode连接到目的节点; (4) 播放视频。

它始终在 Chrome 中运行。在 Firefox 中,它只显示视频的第一帧。

代码:

var video = document.createElement('video');
video.setAttribute('crossorigin', 'anonymous');
video.src = 'https://dl.dropboxusercontent.com/s/tozkw68tccsp39a/BrianNalumonWindmill360p.mp4'

var audioContext = new AudioContext();

var source = audioContext.createMediaElementSource(video);
source.connect(audioContext.destination);

document.body.appendChild(video);
video.play();

有趣的是,如果视频与网页在同一台服务器上,它可以在 Firefox 中运行。所以我怀疑某种跨域问题。但是,如果它们在不同的服务器上,无论我是否请求 CORS 标头(即上述代码中的 video.setAttribute 行),它在 Firefox 中都会失败(并且在 Chrome 中有效)。

如果它与 CORS 标头一起使用并且没有它会失败,这对我来说完全有意义。在我看来,无论哪种方式都失败了,这似乎是一个 Firefox 错误。我只是没有足够的信心提交错误报告(还)。

任何人有其他解释或修复?

【问题讨论】:

标签: html5-video web-audio-api


【解决方案1】:

这里是 Firefox Web Audio API 开发人员,这是我们这边的错误,正如您所猜测的那样。

另外,请不要犹豫提交错误。在最坏的情况下,它会被解析为无效或重复(在这种情况下,它有助于加权优先级)。

【讨论】:

  • 添加了错误,彻底解释并举例说明:bugzilla.mozilla.org/show_bug.cgi?id=1111382
  • 只是一条消息,告诉大家该修复程序将在明天的 Firefox Nightly 中提供。该修复程序将出现在 Firefox 37 中,该版本将于 2015 年 4 月 7 日发布。
猜你喜欢
  • 1970-01-01
  • 2015-12-12
  • 2018-01-21
  • 2016-10-27
  • 1970-01-01
  • 2018-10-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多