REPRODUCIBILITY: 100%
OS VERSION: 4.5.0.19
HARDWARE: Xperia XA2 - Dual SIM h4113
UI LANGUAGE: en_GB
REGRESSION: Probably, additional info
DESCRIPTION:
When joining Jitsi Meet (at framatalk.org, teamjoin.de) or eduMEET (at lets.teamjoin.de), neither service gets to use the phone’s camera. This is despite camera being allowed in the permissions dialog (and the permission being saved for those sites).
PRECONDITIONS:
Using the SFOS built-in web browser, open a video-conference service
STEPS TO REPRODUCE:
Join conference
Permissions dialog is shown. Allow camera and microphone
Receive a “Failed to access your camera for unknown reason” error message
EXPECTED RESULT:
Camera to be available in conference
ACTUAL RESULT:
Camera is not available in conference
MODIFICATIONS:
OpenRepos, Chum
ADDITIONAL INFORMATION:
Relevant or not? Some/most/all apps will show a Sailjail permissions dialog when starting for the first time after boot. The SFOS Browser does not. (Maybe Jollas apps are excempted.)
Regression? I found two similar, closed bug reports; fix should be included in <= 4.4.0.
The report about Jolla C was closed because camera was now available.
The report about XA2 was closed because the luca service was discontinued. Unclear if problem was really resolved
So… This may be a regression since 4.4.0 - or the fix didn’t help the XA2. Also, camera is available to the browser in 4.5.0.19 on Xperia X but the browser crashes when connecting to a conference.
Note that this is different from
(same OS version, different device) as in this case the browser doesn’t crash.
JSComp: EmbedLiteWebrtcUI.js: got getUserMedia:request
JSComp: EmbedLiteWebrtcUI.js: Found videoinput device 'Droid front camera'
JSComp: EmbedLiteWebrtcUI.js: Found videoinput device 'Droid rear camera'
JSComp: EmbedLiteWebrtcUI.js: Found audioinput device 'Null Input'
JSComp: EmbedLiteWebrtcUI.js: Found audioinput device 'Monitor of Droid sink primary_output'
JSComp: EmbedLiteWebrtcUI.js: Found audioinput device 'Monitor of Droid sink deep_buffer'
JSComp: EmbedLiteWebrtcUI.js: Found audioinput device 'Droid source droid'
JSComp: EmbedLiteWebrtcUI.js: Found audioinput device 'Monitor of Null-Ausgabe'
JSComp: EmbedLiteWebrtcUI.js: Subscribed to embedui:webrtcresponse
JSComp: EmbedLiteWebrtcUI.js: Existing permission handled
JSComp: EmbedLiteWebrtcUI.js: getUserMedia:response:allow for callID {d8a6ac4c-f24e-489f-a547-b64d397daff3}
JSComp: EmbedLiteWebrtcUI.js: Deleting request {d8a6ac4c-f24e-489f-a547-b64d397daff3}
JSComp: EmbedLiteWebrtcUI.js: Unsubscribed from embedui:webrtcresponse
JSComp: EmbedLiteWebrtcUI.js: got getUserMedia:request
JSComp: EmbedLiteWebrtcUI.js: Found audioinput device 'Null Input'
JSComp: EmbedLiteWebrtcUI.js: Found audioinput device 'Monitor of Droid sink primary_output'
JSComp: EmbedLiteWebrtcUI.js: Found audioinput device 'Monitor of Droid sink deep_buffer'
JSComp: EmbedLiteWebrtcUI.js: Found audioinput device 'Droid source droid'
JSComp: EmbedLiteWebrtcUI.js: Found audioinput device 'Monitor of Null-Ausgabe'
JSComp: EmbedLiteWebrtcUI.js: Subscribed to embedui:webrtcresponse
JSComp: EmbedLiteWebrtcUI.js: Existing permission handled
JSComp: EmbedLiteWebrtcUI.js: getUserMedia:response:allow for callID {16e7e060-356e-452f-96c5-17e1c0f8bd39}
JSComp: EmbedLiteWebrtcUI.js: Deleting request {16e7e060-356e-452f-96c5-17e1c0f8bd39}
JSComp: EmbedLiteWebrtcUI.js: Unsubscribed from embedui:webrtcresponse
JSComp: EmbedLiteWebrtcUI.js: got recording-device-events
JSComp: EmbedLiteWebrtcUI.js: devices in use: {"video":false,"audio":true}
JSComp: EmbedLiteWebrtcUI.js: got PeerConnection:request
Obviously the cameras are detected and access is allowed for the test page. Devices are enumerated twice for whatever reason and the cameras are not returned for the second call to getUserMedia.
Client code is from the Janus Javascript API as shipped with Jangouts.