Search Support

Avoid support scams. We will never ask you to call or text a phone number or share personal information. Please report suspicious activity using the “Report Abuse” option.

Learn More

CORS bug in video objet with base64 encoded source ?

more options

Hello all,

I have a strange bug using base64 encoded video, maybe could you help me to explain it.

I have a web service that returns an mp4 video as Base64 data (note: I suppose there is no reference to the web server address in the base64-encoded video data ;) )

In my javascript, I set

myVideoPlayer.src = myBase64VideoData

The video plays well, image and sound.

Now, I want to take a snapshot of my video and I do

… mySnapshotCanvas.getContext(’2d’).drawImage(myVideoPlayer, …) …

I also have to generate sprites from that snapshot.

I do

… mysprite.getContext(’2d’).drawImage(mySnapshotCanvas, x0, y0, width, height) …

But now, if I try to analyze my sprite with

… mysprite.getContext(’2d’).getImageData(x0, y0, width, height) …

=> it works in Chrome and IE, but it fails in Firefox with error message: “this operation is insecure”. It looks like a CORS problem.

It works in Firefox when I replace the base64 data with the url of the original video but I can't use a direct file url.

It seems the video.src = base64data may generate CORS problems with Firefox.

Any idea ?

Thanks for all.

Dan

Hello all, I have a strange bug using base64 encoded video, maybe could you help me to explain it. I have a web service that returns an mp4 video as Base64 data (note: I suppose there is no reference to the web server address in the base64-encoded video data ;) ) In my javascript, I set myVideoPlayer.src = myBase64VideoData The video plays well, image and sound. Now, I want to take a snapshot of my video and I do … mySnapshotCanvas.getContext(’2d’).drawImage(myVideoPlayer, …) … I also have to generate sprites from that snapshot. I do … mysprite.getContext(’2d’).drawImage(mySnapshotCanvas, x0, y0, width, height) … But now, if I try to analyze my sprite with … mysprite.getContext(’2d’).getImageData(x0, y0, width, height) … => it works in Chrome and IE, but it fails in Firefox with error message: “this operation is insecure”. It looks like a CORS problem. It works in Firefox when I replace the base64 data with the url of the original video but I can't use a direct file url. It seems the video.src = base64data may generate CORS problems with Firefox. Any idea ? Thanks for all. Dan

All Replies (1)

more options

Try posting at the Web Development / Standards Evangelism forum at MozillaZine. The helpers over there are more knowledgeable about web page development issues with Firefox.
http://forums.mozillazine.org/viewforum.php?f=25
You'll need to register and login to be able to post in that forum.