Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Camera's video not showing on iPhones, IPads and Chrome's Iphone/iPad simulator #198

Closed
yannklein opened this issue Nov 22, 2020 · 6 comments

Comments

@yannklein
Copy link

When watched from an iPhone (tested with iPhone X, iOs 14.2), IPad (Pro 9.7inch, iOs 13.7) and Chrome's Iphone/iPad screen simulator (no problem on Surface, Samsung,... simulators), the <canvas> appears empty, no video is showing.
Here is a screenshot of the problem with the AR raccoon Jeeliz demo:
image
image

It looks like it's a navigator object problem. I though of quick-fixing the bug by editing JeeelizFaceTransfer.js this way:

Before

var a=navigator.appVersion.match(/OS (\d+)_(\d+)_?(\d+)?/);

After

var a=navigator.appVersion.match(/OS X (\d+)_(\d+)_?(\d+)?/);

But it didn't work out (showing a GoPro WebCam screen instead). Still investigating...

@yannklein
Copy link
Author

Note that it was working great until recently. I realized the problem last week on a code, previously working well, that I haven't touched in 5 months.
I believe an update of Apple devices messed up with Jeeliz code.

For the Racoon, the issue appears on jeelizFaceTransfer.js, for my code it appears on jeelizFaceFilter.js at the same .match stage.

@xavierjs
Copy link
Member

Hi,

Thank you for your detailed bug report and fix proposals.
Indeed, there is an error, the navigator version should not be parsed like that since this parsing is for Safari and you are using Chrome.
But you will still get a WEBCAM_UNAVAILABLE error (caught by callbackReady callback function) since camera access is not allowed on Safari Webview, and Chrome for IOS is using a Safari Webview for web content rendering.

Related to #95
Related to #129

@yannklein
Copy link
Author

Hi @xavierjs
Thanks a lot for your answer and the commited fix.
There is indeed a problem with Chrome's iPhone/iPad simulator, but the biggest problem, I think, is that the error message I reported occurs as well on Safari browser on iPhones and iPads (real devices).

@yannklein
Copy link
Author

yannklein commented Nov 24, 2020

So, I figured out that my [Chrome + iPhone Simulator] and my [real iPhone + Safari] issues are two different issues!
I'll create another issue ticket for the [real iPhone + Safari] one. Feel free to close that one if you're managing the [Chrome + iPhone Simulator] topic in another issue ticket.

[EDIT] this solved issue #186 and your boilerplate solved my [real iPhone + Safari] problem. I won't create a new issue ticket 👍 thanks a lot for your support and the amazing Jeeliz!

@xavierjs
Copy link
Member

Hi @yannklein ,

It is great that it works now on Iphone + Safari (I fixed a major bug during the solving of issue #126 ). I regularly test the boilerplate on Iphone11 + latest IOS and Ipad pro + latest IOS in the beta channel. But there are often bad surprises with IOS updates.

I close this issue, feel free to re-open it if the problem occurs again.

@xavierjs
Copy link
Member

BREAKING NEWS: Camera access is enabled on IOS14.3 which is released this Monday ( December 14th ). So FaceFilter will work on Chrome, Firefox, Opera for IOS, and into WKWebviews embedded in native apps.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants