Cyclops Camera won't connect to laptop camera, throws Javascript error. #286
Closed
adam-griffiths
started this conversation in
IMSAI8080esp replica
Replies: 2 comments 1 reply
|
I've done some more digging, and the most likely issue here is that the device/firmware needs updating to handle HTTPS support. Chrome is likely blocking the camera due to the lack thereof. @dmcnaugh does this sound correct to you and do you have any plans to introduce this? |
0 replies
|
This has always been the case since this feature was implemented. Its documented somewhere, I just can't remember where. So, you need to goto chrome://flags/#unsafely-treat-insecure-origin-as-secure And no, there is no case for adding HTTPS support as it will take up too many resources to solve this one case. |
1 reply
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Macbook Pro running Sequoia 15.7.4
Chrome Version 149.0.7827.200 (Official Build) (x86_64)
IMSAI 8080 v 1.14 of the firmware and v 1.15 gui.
The camera does not work for the Cyclops. Seems simple but I cannot get anything useful from google. The web interface never asks google for permission to access it, and you don't seem to be able to force camera access in google. So the camera is never engaged.
Further searching indicates it’s not possible to allow script to access a camera without an https connection. I haven’t done any web development in a decade, so I’m behind the times. If this is the cause, it wouldn’t work for anyone with a recent version of chrome. Can anyone check their Cyclops is working?
Using developer tools in chrome, the following seems to be the culprit. The line in bold throws the error, the error is below.
t.addEventListener("open", (function() {
Ke.socket = t,
Ke.start = Date.now(),
cycOnline.setAttribute("style", "color: var(--color-online);"),
navigator.mediaDevices.getUserMedia(He).then(e => {
Pe.srcObject = e,
Pe.onloadedmetadata = function(e) {
Pe.play(),
Ke.ready = !0
}
}
)
}
Uncaught TypeError: Cannot read properties of undefined (reading 'getUserMedia') at WebSocket.
All reactions