HTML5 FileWriter InvalidStateError

时间:2014-01-29 15:42:09

标签: javascript html5 file

我正在使用canvas元素实时拼贴多个video元素,效果很好。我也试图获取canvas数据并定期将其写入文件,因此当video元素播放完毕后,我可以对原始帧文件中的视频进行编码。

我有一个函数在每40ms(给出25fps)的定时器间隔调用,大致如下所示(有太多的代码要完全粘贴):

function saveFrame() {

  // code to copy from video elements to my canvas...
  // ...

  // Get the canvas image data and write it to a file
  var imgData = canvasContext.getImageData(0, 0,
                                           canvasElement.width,
                                           canvasElement.height);
  var b = new Blob([imgData], {type: 'application/octet-binary'});

  // Write the blob to a file I previously opened
  // fileWriter is a FileWriter that I obtained and saved previously
  fileWriter.write(b);
}

setInterval(function() {
              saveFrame();
            }, 40);

每当我点击fileWriter.write(blob)语句时,我都会收到以下错误:

  

Uncaught InvalidStateError:依赖于缓存状态的操作   在一个接口对象中,但是状态已经改变了   从磁盘读取。

这是时间问题吗?文件编写器API不能支持每40ms写一次吗?

0 个答案:

没有答案