如何判断HTML5视频标签源是否支持CORS?

时间:2015-11-03 17:11:34

标签: html5 video canvas html5-canvas

我使用HTML5画布拍摄视频标签的屏幕截图。这大约有80%的时间用于Chrome。另外20%的时间我得到了"无法执行' toDataURL' on' HTMLCanvasElement':受污染的画布可能无法导出"错误。我假设这是因为视频源不支持CORS。

我尝试添加属性' videoTag.attr(' crossorigin',' anonymous');'到视频标签,但似乎没有帮助。

所以我的问题是,无论如何要判断视频标签是否支持CORS?

    // Get handles on the video element
    var video = videoContainer[0];

    var canvas = jQuery('#temp-canvas')[0];
    var context = canvas.getContext('2d');

    canvas.width = 640;
    canvas.height = 360;

    // Define the size of the rectangle that will be filled (basically the entire element)
    context.fillRect(0, 0, 640, 390);

    // Grab the image from the video
    context.drawImage(video, 0, 0, canvas.width, canvas.height);

    //return the url so we can use it 
    //Failed to execute toDataURL exception thrown here
    imageUrl = canvas.toDataURL();

1 个答案:

答案 0 :(得分:1)

由于您正在测试错误条件而不是浏览器功能,因此您可以使用try-catch块。