Summary: | [iOS] Calling drawImage on a video element causes the controls to appear fullscreen | ||
---|---|---|---|
Product: | WebKit | Reporter: | Ashley Gullen <ashley> |
Component: | Canvas | Assignee: | Nobody <webkit-unassigned> |
Status: | RESOLVED WONTFIX | ||
Severity: | Normal | CC: | achristensen, ahmad.saleem792, ap, bfulgham, chernyshev87, dbates, dino, doyer.guyllaume, dstrokis, eric.carlson, hi, jeremyj-wk, jer.noble, mail, moo_lj89, riccardo.magliocchetti, rniwa, thomas.hansen, tomerlahav, webkit-bug-importer, youssefdevelops, y_soliman |
Priority: | P2 | Keywords: | InRadar |
Version: | 528+ (Nightly build) | ||
Hardware: | iPhone / iPad | ||
OS: | Other | ||
URL: | http://www.scirra.com/labs/bugs/canvas2dvideo/ |
Description
Ashley Gullen
2014-06-24 08:58:13 PDT
This works as expected on iPad, and it draws as expected on iPhone except the fullscreen controls cover everything. This is not my domain. Yikes. Any news on this bug? Why is it still not assigned? Technically it shouldn't be very difficult to fix that bug - either enable the 'play-inline' support in the iPhone Safari (like on the iPad) or don't trigger the 'fullscreen playback' when the video itself wasn't added to the DOM (e.g. when the video has no parent, that's typically the case when showing the video indirectly via Canvas or WebGL). Still reproduces on iOS 8 beta 3. Still reproduces on iOS 8 beta 4. Still reproduces on iOS 8. Still reproduces on iOS 8.3 I'm also trying to upload video frames to texture for a webgl based webapp that we'd like to run on iPhones. One way I can sort of make it work, is to to decode video streams in javascript using https://github.com/mbebenita/broadway(android h264 decoder > emscripten > js). But the performance is suboptimal and still needs to be synced to separate audio playback currently. If someone can point me in the right direction as to where in the source tree I might start looking, I'd be happy to report back anything I can find about this issue. I have checked out webkit from https://github.com/WebKit/webkit and have it building / running on an iPhone simulator. I'm currently looking at HTMLVideoElement and HTMLMediaElement, but not sure I have quite figured out whats going on yet... Thanks! I am able to reproduce this bug on iPhone 13 Pro Max using iOS 15.6 (Safari 15.6) using following test case: Link - https://jsfiddle.net/Lhk3d5yu/show ^I took the test case from URL field via Wayback Archive and changed it into above JSFiddle. I loaded the test case in the Private Window, it showed website for few seconds and then video appearing behind test and then made it go full-screen black and nothing and I have to come out of full screen. Just wanted to share updated test results. Thanks! The issue here is calling `video.play()` which will automatically fullscreen a video on iOS without the `playsinline` attribute. The workaround for this would be to set `video.playsInline = true` before calling `video.play()`. |