Getting 'getUserMedia is not implemented in this browser'
chrizonline opened this issue · 12 comments
Hi,
I'm receiving getUserMedia is not implemented in this browser
from the error event when run on iOS chrome and firefox, but not on iOS safari, Android chrome and firefox.
I noticed that in /src/webcam.vue
, line 114, you checked if (navigator.mediaDevices.getUserMedia === undefined)
. Is this correct because navigator.mediaDevices.getUserMedia
is a function that requires a constraint param and it returns a promise. reference: https://developer.mozilla.org/en-US/docs/Web/API/MediaDevices/getUserMedia
To confirm so i can test locally, this doesn't work on an iOS device on either Chrome or Firefox?
Any specific versions you are using so we can narrow this down?
I have the same problem @VinceG. On dev server everything works fine in all browsers but when I deploy with nginx on my raspberry pi in my local network i get the same error "Error: getUserMedia is not implemented in this browser"
Console: navigator.getUserMedia
Output: undefined
Console: navigator.mediaDevices.getUserMedia
Output: function legacyGetUserMediaSupport()
Console: navigator.mediaDevices.getUserMedia()
Output: Promise { : "rejected" }
I tried everything I described on different clients with different browsers and os's.
Do you have an advice?
Solved the problem: getUserMedia is only callable if you running your application on localhost (the browser defines this as secure) OR use SSL at deployment. @VinceG Your code works well! Anyway, SOMETIMES the webcams cannot be listed. I tested Chrome, Firefox and Safari in the latest stable versions. ps: i used exactly your code.
Thank you!
@helpcodemonkey I don't try it on an iPhone but Safari on latest OSX works well. I will try it from an iPhone the next days.
Regards
@helpcodemonkey tested it on latest firmware of the iPhone 5s and it works pretty fine!
你好
使用 https 协议
客户端浏览器手动指定域名安全
在谷歌输入网址的地方输入
chrome://flags/#unsafely-treat-insecure-origin-as-secure
在里面配置指定域名,然后选择 select 为 enabled 然后重启,就解决问题啦