As this is on OSX with Safari there is some bad news:
Note: Video as a source for the canvas drawImage() method is not currently supported on iOS.
If this is outdated information I don't know but in either case the current implementation has issues. As established (in comments) the problem is not likely related to codecs as this occur with other formats as well. The fiddle eliminates the toDataURL()
method as source so what is left is the drawImage()
method.
As this works on other platform with the provided code, and from the look of it, this is neither the source of the problem so you are here looking at a very possible issue (bug) with the Safari browser on the OSX platform.
The official documentation quoted above also states this is not supported so this is probably a very early implementation that still has some issues.
There is not much you can do in that regard but to wait and also report it as an issue (I looked for a reported issue but couldn't find any so I recommend you do this).