Using blob cache seems to work even on Safari
Example (in CoffeeScript):
prepareLocalCache: -> @vidtemp = document.createElement('video') @vidtemp.preload = 'auto' @xhr = new window.XMLHttpRequest @xhr.open 'GET', 'video link here.mp4', true @xhr.responseType = 'blob' @xhr.onload = (e) => if e.currentTarget.status == 200 myBlob = e.currentTarget.response @vidcache = window.URL.createObjectURL(myBlob) @vidtemp.src = @vidcache @xhr.send() ... ... context = canvas.getContext '2d' context.drawImage @vidtemp, 0, 0, canvas.width, canvas.height
@vidtemp is a dynamically created video tag.
source share