canvas.toDataURL () выдает «Ошибка безопасности» в IE 11

Я работаю над браузерным инструментом для медиа-дистрибьюторов, которые требуют некоторых манипуляций с видео.

У меня есть видеоплеер HTML5 с видео, загруженным из другого домена (например,http://video.com). Домен возвращает следующие заголовки для видео (пытается...-Origin с * и с конкретным доменным именем):

Access-Control-Allow-Methods: GET
Access-Control-Allow-Origin: *

video тег выглядит так:

<video crossorigin="anonymous" src="http://video.com/video.mp4"></video>

JS я запускаю следующее:

        // meida is a reference to <video> tag
        var
            imgData,
            width = media.videoWidth,
            height = media.videoHeight,
            canvas = document.createElement("canvas"),
            context = canvas.getContext('2d');

        canvas.width = width;
        canvas.height = height;

        context.fillRect(0, 0, width, height);
        context.drawImage(media, 0, 0, width, height);

        imgData = canvas.toDataURL('image/png'); // line where IE throws DOMException named 'Security error'

Код работает во всех браузерах, кроме семейства IE. Я пробовал это в IE 11.

Я понимаю, что в этом случае холст становится испорченным, а не должен.

Кто-нибудь знает способ заставить это работать? Я видел некоторые обходные пути для изображений, но это не работает в моем случае сvideo.

PS: я видел ответCanvas.toDataURL () работает во всех браузерах, кроме IE10 но он довольно старый и связан с изображениями. Я надеюсь, что все изменилось с тех пор.

Ответы на вопрос(2)

Ваш ответ на вопрос