[jitsi-users] Jitsi Meet/ unable to access camera


#1

On one of my computers, I always see this popup when opening a Jitsi
Meet URL:

"Error

We are unable to access your camera. Please check if another application
is using this device, select another device from the settings menu or
try to restart the application."

The camera activity light comes on, but no picture appears in the browser.

I am using Chromium on Debian.

I tried restarting Chromium and reconnecting the camera and it didn't
make any difference.

Regards,

Daniel


#2

Have you tried Firefox or Chrome? Long Time ago I had a similar issue with
chromium in Debian.

···

El 13/06/2017 2:07 p. m., "Daniel Pocock" <daniel@pocock.pro> escribió:

On one of my computers, I always see this popup when opening a Jitsi
Meet URL:

"Error

We are unable to access your camera. Please check if another application
is using this device, select another device from the settings menu or
try to restart the application."

The camera activity light comes on, but no picture appears in the browser.

I am using Chromium on Debian.

I tried restarting Chromium and reconnecting the camera and it didn't
make any difference.

Regards,

Daniel

_______________________________________________
users mailing list
users@jitsi.org
Unsubscribe instructions and other list options:
http://lists.jitsi.org/mailman/listinfo/users


#3

Hi Daniel,

···

On 13/06/2017 14:06, Daniel Pocock wrote:

On one of my computers, I always see this popup when opening a Jitsi
Meet URL:

"Error

We are unable to access your camera. Please check if another application
is using this device, select another device from the settings menu or
try to restart the application."

The camera activity light comes on, but no picture appears in the browser.

I am using Chromium on Debian.

I tried restarting Chromium and reconnecting the camera and it didn't
make any difference.

Do other WebRTC applications (e.g. appr.tc) work?

Regards,
Boris


#4

On the same browser, appr.tc also illuminates the lights on the webcam
but the picture doesn't appear. appr.tc doesn't show an error though.
Accessing appr.tc or Jitsi Meet on another computer I do get a picture
from the webcam.

When that error appears, how can I get more detail? Can you include
more detail in the error popup?

Regards,

Daniel

···

On 13/06/17 21:24, Boris Grozev wrote:

Hi Daniel,

On 13/06/2017 14:06, Daniel Pocock wrote:

On one of my computers, I always see this popup when opening a Jitsi
Meet URL:

"Error

We are unable to access your camera. Please check if another application
is using this device, select another device from the settings menu or
try to restart the application."

The camera activity light comes on, but no picture appears in the
browser.

I am using Chromium on Debian.

I tried restarting Chromium and reconnecting the camera and it didn't
make any difference.

Do other WebRTC applications (e.g. appr.tc) work?


#5

Yes, I remember there were Chromium issues in Debian, that was something
else due to SRTP / embedded library problems.

Same problem with Firefox.

I did some more tests:

- unplugged the webcam (Logitech B990) and plugged in a cheaper camera
(Logitech C510) and it worked immediately, didn't even have to restart
the browser (Chromium)

- rebooted and the Logitech C510 is still working when I launch the browser

- closed browser, attached the B990 again, launched browser, went to
Jitsi Meet and the camera works

- reload the page to try again, this time the camera flashes a few times
and then the popup appears, no picture

- I tried running cheese with this camera, no picture appears

- then I tried guvcview. A greenish picture appears. I looked on the
video tab and found MJPG mode is being used. Changing it to YUYV or
H264 (supported in the camera hardware) gives me a normal picture in
guvcview.

The B990 is a high resolution webcam that can use a lot of bandwidth.
If plugged into a USB2 port it doesn't get enough bandwidth for HD
(although the hardware H264 should help in that scenario). I'm using it
through the USB3 hub in my monitor.

I tried moving the B990 to the USB3 port on my PC. I noticed the
background was black, the popup appeared but then after another 2
seconds the webcam picture appeared behind the popup. Closing the
browser and trying again there is no picture.

Can anybody make any suggestions about how to get this type of camera
working?

Do browsers have any limitations when interacting with cameras that have
hardware compression? I tried making my browser window a lot smaller to
see if it would try a lower resolution. Is it possible to tweak other
things to change the way the browser interacts with the UVC driver?

When running guvcview, I did notice some console errors (see below) and
the camera flashes for a few seconds before a picture appears. However,
I can always get a picture eventually with guvcview.

Looking around in a search engine, I found similar problems with other
HD cameras and some people suggest tweaking the options[1] for the
uvcvideo kernel module but that hasn't helped so far. The extra logging
in the module shows (dmesg) that Chromium is trying to get MJPG at 30
fps, 1280x720 and that configuration works for me in guvcview but with a
greenish picture and an actual frame rate of about 15 fps.

[ 2607.549300] uvcvideo: Trying format 0x47504a4d (MJPG): 1280x720.
[ 2607.549302] uvcvideo: Using default frame interval 33333.3 us (30.0 fps).
[ 2607.567548] uvcvideo: Setting frame interval to 10000/300000 (333333).

Regards,

Daniel

1.
https://ubuntuforums.org/showthread.php?t=1348735&s=a0a2f86bf225240dba662f5f60ebb6fc&p=8491362#post8491362

$ guvcview
GUVCVIEW: version 2.0.4
V4L2_CORE: (UVCIOC_CTRL_MAP) Error: No such file or directory
V4L2_CORE: (UVCIOC_CTRL_MAP) Error: No such file or directory
V4L2_CORE: (UVCIOC_CTRL_MAP) Error: No such file or directory
V4L2_CORE: (UVCIOC_CTRL_MAP) Error: No such file or directory
V4L2_CORE: (UVCIOC_CTRL_MAP) Error: No such file or directory
V4L2_CORE: (UVCIOC_CTRL_MAP) Error: No such file or directory
V4L2_CORE: (UVCIOC_CTRL_MAP) Error: No such file or directory
V4L2_CORE: (UVCIOC_CTRL_MAP) Error: No such file or directory
V4L2_CORE: (UVCIOC_CTRL_MAP) Error: No such file or directory
ALSA lib pcm_dsnoop.c:618:(snd_pcm_dsnoop_open) unable to open slave
ALSA lib pcm.c:2495:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.rear
ALSA lib pcm.c:2495:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.center_lfe
ALSA lib pcm.c:2495:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.side
ALSA lib pcm_route.c:867:(find_matching_chmap) Found no matching channel map
ALSA lib pcm_route.c:867:(find_matching_chmap) Found no matching channel map
ALSA lib pcm_route.c:867:(find_matching_chmap) Found no matching channel map
Cannot connect to server socket err = No such file or directory
Cannot connect to server request channel
jack server is not running or cannot be started
JackShmReadWritePtr::~JackShmReadWritePtr - Init not done for
4294967295, skipping unlock
JackShmReadWritePtr::~JackShmReadWritePtr - Init not done for
4294967295, skipping unlock
V4L2_CORE: UVCIOC_CTRL_QUERY (129) - Error: Input/output error
V4L2_CORE: (UVCX_RATE_CONTROL_MODE) query (129) error: Input/output error
V4L2_CORE: UVCIOC_CTRL_QUERY (129) - Error: Input/output error
V4L2_CORE: (UVCX_RATE_CONTROL_MODE) query (129) error: Input/output error
V4L2_CORE: Could not grab image (select timeout): Resource temporarily
unavailable
V4L2_CORE: Could not grab image (select timeout): Resource temporarily
unavailable
V4L2_CORE: Could not grab image (select timeout): Resource temporarily
unavailable
V4L2_CORE: Could not grab image (select timeout): Resource temporarily
unavailable
V4L2_CORE: Could not grab image (select timeout): Resource temporarily
unavailable
V4L2_CORE: Could not grab image (select timeout): Resource temporarily
unavailable
V4L2_CORE: Could not grab image (select timeout): Resource temporarily
unavailable
V4L2_CORE: Could not grab image (select timeout): Resource temporarily
unavailable

···

On 13/06/17 21:08, Jack Freakazoid wrote:

Have you tried Firefox or Chrome? Long Time ago I had a similar issue
with chromium in Debian.


#6

You can open the browser JS console, there should be something we might be able to use to guess. Putting it in a popup is not a good idea because the errors are not very comprehensive, and the JS console is a couple of keystrokes away :wink:

Cheers,

···

On Jun 13, 2017, at 16:12, Daniel Pocock <daniel@pocock.pro> wrote:

On 13/06/17 21:24, Boris Grozev wrote:

Hi Daniel,

On 13/06/2017 14:06, Daniel Pocock wrote:

On one of my computers, I always see this popup when opening a Jitsi
Meet URL:

"Error

We are unable to access your camera. Please check if another application
is using this device, select another device from the settings menu or
try to restart the application."

The camera activity light comes on, but no picture appears in the
browser.

I am using Chromium on Debian.

I tried restarting Chromium and reconnecting the camera and it didn't
make any difference.

Do other WebRTC applications (e.g. appr.tc) work?

On the same browser, appr.tc also illuminates the lights on the webcam
but the picture doesn't appear. appr.tc doesn't show an error though.
Accessing appr.tc or Jitsi Meet on another computer I do get a picture
from the webcam.

When that error appears, how can I get more detail? Can you include
more detail in the error popup?

--
Saúl


#7

I have had issues with a Logitech camera as well. Only on Chromium or
Chrome Beta. Like Jack said, regular Chrome/Firefox used to work fine.

Is Chromium a requirement for you?

Have you tried Firefox or Chrome? Long Time ago I had a similar issue
with chromium in Debian.

Yes, I remember there were Chromium issues in Debian, that was something
else due to SRTP / embedded library problems.

Same problem with Firefox.

I did some more tests:

- unplugged the webcam (Logitech B990) and plugged in a cheaper camera
(Logitech C510) and it worked immediately, didn't even have to restart
the browser (Chromium)

- rebooted and the Logitech C510 is still working when I launch the browser

- closed browser, attached the B990 again, launched browser, went to
Jitsi Meet and the camera works

- reload the page to try again, this time the camera flashes a few times
and then the popup appears, no picture

- I tried running cheese with this camera, no picture appears

- then I tried guvcview. A greenish picture appears. I looked on the
video tab and found MJPG mode is being used. Changing it to YUYV or
H264 (supported in the camera hardware) gives me a normal picture in
guvcview.

The B990 is a high resolution webcam that can use a lot of bandwidth.
If plugged into a USB2 port it doesn't get enough bandwidth for HD
(although the hardware H264 should help in that scenario). I'm using it
through the USB3 hub in my monitor.

I tried moving the B990 to the USB3 port on my PC. I noticed the
background was black, the popup appeared but then after another 2
seconds the webcam picture appeared behind the popup. Closing the
browser and trying again there is no picture.

Can anybody make any suggestions about how to get this type of camera
working?

Do browsers have any limitations when interacting with cameras that have
hardware compression? I tried making my browser window a lot smaller to
see if it would try a lower resolution. Is it possible to tweak other
things to change the way the browser interacts with the UVC driver?

When running guvcview, I did notice some console errors (see below) and
the camera flashes for a few seconds before a picture appears. However,
I can always get a picture eventually with guvcview.

Looking around in a search engine, I found similar problems with other
HD cameras and some people suggest tweaking the options[1] for the
uvcvideo kernel module but that hasn't helped so far. The extra logging
in the module shows (dmesg) that Chromium is trying to get MJPG at 30
fps, 1280x720 and that configuration works for me in guvcview but with a
greenish picture and an actual frame rate of about 15 fps.

[ 2607.549300] uvcvideo: Trying format 0x47504a4d (MJPG): 1280x720.
[ 2607.549302] uvcvideo: Using default frame interval 33333.3 us (30.0 fps).
[ 2607.567548] uvcvideo: Setting frame interval to 10000/300000 (333333).

Regards,

Daniel

1.
https://ubuntuforums.org/showthread.php?t=1348735&s=
a0a2f86bf225240dba662f5f60ebb6fc&p=8491362#post8491362

$ guvcview
GUVCVIEW: version 2.0.4
V4L2_CORE: (UVCIOC_CTRL_MAP) Error: No such file or directory
V4L2_CORE: (UVCIOC_CTRL_MAP) Error: No such file or directory
V4L2_CORE: (UVCIOC_CTRL_MAP) Error: No such file or directory
V4L2_CORE: (UVCIOC_CTRL_MAP) Error: No such file or directory
V4L2_CORE: (UVCIOC_CTRL_MAP) Error: No such file or directory
V4L2_CORE: (UVCIOC_CTRL_MAP) Error: No such file or directory
V4L2_CORE: (UVCIOC_CTRL_MAP) Error: No such file or directory
V4L2_CORE: (UVCIOC_CTRL_MAP) Error: No such file or directory
V4L2_CORE: (UVCIOC_CTRL_MAP) Error: No such file or directory
ALSA lib pcm_dsnoop.c:618:(snd_pcm_dsnoop_open) unable to open slave
ALSA lib pcm.c:2495:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.rear
ALSA lib pcm.c:2495:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.center_lfe
ALSA lib pcm.c:2495:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.side
ALSA lib pcm_route.c:867:(find_matching_chmap) Found no matching channel map
ALSA lib pcm_route.c:867:(find_matching_chmap) Found no matching channel map
ALSA lib pcm_route.c:867:(find_matching_chmap) Found no matching channel map
Cannot connect to server socket err = No such file or directory
Cannot connect to server request channel
jack server is not running or cannot be started
JackShmReadWritePtr::~JackShmReadWritePtr - Init not done for
4294967295, skipping unlock
JackShmReadWritePtr::~JackShmReadWritePtr - Init not done for
4294967295, skipping unlock
V4L2_CORE: UVCIOC_CTRL_QUERY (129) - Error: Input/output error
V4L2_CORE: (UVCX_RATE_CONTROL_MODE) query (129) error: Input/output error
V4L2_CORE: UVCIOC_CTRL_QUERY (129) - Error: Input/output error
V4L2_CORE: (UVCX_RATE_CONTROL_MODE) query (129) error: Input/output error
V4L2_CORE: Could not grab image (select timeout): Resource temporarily
unavailable
V4L2_CORE: Could not grab image (select timeout): Resource temporarily
unavailable
V4L2_CORE: Could not grab image (select timeout): Resource temporarily
unavailable
V4L2_CORE: Could not grab image (select timeout): Resource temporarily
unavailable
V4L2_CORE: Could not grab image (select timeout): Resource temporarily
unavailable
V4L2_CORE: Could not grab image (select timeout): Resource temporarily
unavailable
V4L2_CORE: Could not grab image (select timeout): Resource temporarily
unavailable
V4L2_CORE: Could not grab image (select timeout): Resource temporarily
unavailable

···

On Jun 23, 2017 4:31 PM, "Daniel Pocock" <daniel@pocock.pro> wrote:
On 13/06/17 21:08, Jack Freakazoid wrote:

_______________________________________________
users mailing list
users@jitsi.org
Unsubscribe instructions and other list options:
http://lists.jitsi.org/mailman/listinfo/users


#8

Hi Daniel,

On one of my computers, I always see this popup when opening a Jitsi
Meet URL:

"Error

We are unable to access your camera. Please check if another application
is using this device, select another device from the settings menu or
try to restart the application."

The camera activity light comes on, but no picture appears in the
browser.

I am using Chromium on Debian.

I tried restarting Chromium and reconnecting the camera and it didn't
make any difference.

Do other WebRTC applications (e.g. appr.tc) work?

On the same browser, appr.tc also illuminates the lights on the webcam
but the picture doesn't appear. appr.tc doesn't show an error though.
Accessing appr.tc or Jitsi Meet on another computer I do get a picture
from the webcam.

When that error appears, how can I get more detail? Can you include
more detail in the error popup?

You can open the browser JS console, there should be something we might be able to use to guess. Putting it in a popup is not a good idea because the errors are not very comprehensive, and the JS console is a couple of keystrokes away :wink:

The log is not hard for a developer to access but when I'm trying to
help an ordinary user it may be better to have more detail in the popup.

Here is everything in the log:

[modules/xmpp/xmpp.js] <t.value>: (TIME) Strophe disconnected: 186739.445
VM53 lib-jitsi-meet.min.js?v=2009:6 [modules/xmpp/strophe.ping.js]
<o.value>: Ping interval cleared
DanielPocockTest:28 (TIME) index.html loaded: 135.5
external_connect.js?v=1:65 (TIME) Sending external connect XHR: 142.69
Logger.js:125 [modules/RTC/RTCBrowserType.js] <Array.r>: This appears
to be Chrome, ver: 59
deprecation.js:59 DEPRECATED JS - Cookie has been deprecated since 5.8.0
and will be removed in a future release. Use cookie instead.
     at assign (<anonymous>)
external_connect.js?v=1:40 (TIME) external connect XHR done:
1332.3950000000002
Logger.js:125 [react/index.web.js] <HTMLDocument.<anonymous>>: (TIME)
document ready: 1367.325
Logger.js:125 [modules/URL/ConferenceUrl.js] <new e>: Stored original
conference URL: https://meet.jit.si/DanielPocockTest
Logger.js:125 [modules/URL/ConferenceUrl.js] <new e>: Conference URL
for invites: https://meet.jit.si/DanielPocockTest
jquery.min.js:2 [Violation] Added non-passive event listener to a
scroll-blocking 'touchmove' event. Consider marking event handler as
'passive' to make the page more responsive.
jquery.min.js:2 [Violation] Added non-passive event listener to a
scroll-blocking 'touchstart' event. Consider marking event handler as
'passive' to make the page more responsive.
Logger.js:125 [modules/RTC/ScreenObtainer.js] <Object.init>: Using
Chrome extension for desktop sharing
Logger.js:125 [modules/RTC/RTCUtils.js] <t.value>: Get media constraints
Object {audio: Object, video: Object}
Logger.js:125 [modules/xmpp/strophe.jingle.js] <new t>: Configured STUN
servers:
(3) [Object, Object, Object]
Logger.js:125 [modules/xmpp/xmpp.js] <t.value>: (TIME) Strophe
Attaching :1553.4050000000002
Logger.js:125 [modules/xmpp/xmpp.js] <t.value>: (TIME) Strophe
attached: 1554.7900000000002
Logger.js:125 [modules/xmpp/xmpp.js] <t.value>: My Jabber ID:
7fd75def-b8df-47f2-8daa-36d0ffb888cb@meet.jit.si/1e2bfc61-702a-4029-a239-e0556817e12f
Logger.js:125 [modules/RTC/ScreenObtainer.js] <>: Extension not
installed?:
Object {message: "Could not establish connection. Receiving end does not
exist."}
Logger.js:125 [modules/RTC/ScreenObtainer.js] <>: Chrome extension
installed: false updateRequired: false
Logger.js:125 [modules/xmpp/strophe.ping.js] <o.value>: XMPP pings will
be sent every 10000 ms
Logger.js:125 [modules/RTC/RTCUtils.js] <>: onUserMediaSuccess
Logger.js:125 [conference.js] <>: initialized with %s local tracks 2
Logger.js:125 [modules/xmpp/ChatRoom.js] <new t>: Joined MUC as
danielpococktest@conference.meet.jit.si/7fd75def
Logger.js:125 [modules/connectivity/ParticipantConnectionStatus.js] <new

: RtcMuteTimeout set to: 2000

Logger.js:125 [modules/statistics/AvgRTPStatsReporter.js] <new e>: Avg
RTP stats will be calculated every 15 samples
Logger.js:125 [JitsiConference.js] <new o>: backToP2PDelay: 5
Logger.js:125 [JitsiConference.js] <o._doReplaceTrack>: _doReplaceTrack
- no JVB JingleSession
Logger.js:125 [JitsiConference.js] <o._doReplaceTrack>: _doReplaceTrack
- no P2P JingleSession
Logger.js:125 [JitsiConference.js] <o._doReplaceTrack>: _doReplaceTrack
- no JVB JingleSession
Logger.js:125 [JitsiConference.js] <o._doReplaceTrack>: _doReplaceTrack
- no P2P JingleSession
Logger.js:125 [modules/remotecontrol/RemoteControl.js] <e.value>:
Initializing remote control.
Logger.js:125 [modules/xmpp/moderator.js] <o.setFocusUserJid>: Focus
jid set to: undefined
Logger.js:125 [modules/xmpp/moderator.js] <o.createConferenceIq>:
Session ID: null machine UID: 4e225b82e03bf1a990d861ef8a802359
Logger.js:125 [modules/xmpp/moderator.js] <o.setFocusUserJid>: Focus
jid set to: focus@auth.meet.jit.si
Logger.js:125 [modules/xmpp/moderator.js] <o.parseConfigOptions>:
Authentication enabled: false
Logger.js:125 [modules/xmpp/moderator.js] <o.parseConfigOptions>:
External authentication enabled: false
Logger.js:125 [modules/xmpp/moderator.js] <o.parseConfigOptions>: Sip
gateway enabled: true
Logger.js:125 [modules/xmpp/ChatRoom.js] <t.value>: entered
danielpococktest@conference.meet.jit.si/focus
Object {show: "", status: "", affiliation: "owner", role: "moderator",
jid: "focus@auth.meet.jit.si/focus225235447006"…}
Logger.js:125 [modules/xmpp/ChatRoom.js] <t.value>: Ignore focus:
danielpococktest@conference.meet.jit.si/focus, real JID:
focus@auth.meet.jit.si/focus225235447006
Logger.js:125 [modules/UI/UI.js] <Object.G.initEtherpad>: Etherpad is
enabled
Logger.js:125 [modules/version/ComponentsVersions.js] <>: Got xmpp
version: Prosody(trunk nightly build 747 (2017-02-19, 428d4abee723),Linux)
Logger.js:125 [modules/version/ComponentsVersions.js] <>: Got focus
version: JiCoFo(1.0.1.0-357,Linux)
Logger.js:125 [modules/xmpp/recording.js] <r.handleJibriPresence>:
Handle jibri presence : off
Logger.js:125 [conference.js] <n.<anonymous>>: Received recorder status
change: available undefined
Logger.js:125 [conference.js] <n.<anonymous>>: My role changed, new
role: moderator
Logger.js:125 [JitsiConference.js] <o._maybeStartOrStopP2P>: P2P?
isModerator: true, peerCount: 0 => false
Logger.js:125 [modules/xmpp/ChatRoom.js] <t.value>: (TIME) MUC joined:
2060.8300000000004
Logger.js:125 [modules/xmpp/ChatRoom.js] <t.value>: Subject is changed to
Logger.js:125 [modules/UI/videolayout/LargeVideoManager.js] <>: hover
in %s 7fd75def

···

On 14/06/17 22:41, Saúl Ibarra Corretgé wrote:

On Jun 13, 2017, at 16:12, Daniel Pocock <daniel@pocock.pro> wrote:
On 13/06/17 21:24, Boris Grozev wrote:

On 13/06/2017 14:06, Daniel Pocock wrote:


#9

Given that the B990 camera doesn't give a picture in cheese either and
other webcams do work with my browser I'm assuming it is not an outright
chrome/chromium issue.

I've tried a couple of other web cams (Logitech C910 and C920), both
work with Chromium / Jitsi Meet. The C920 has hardware H.264 like the B990.

I wonder if the slow initialization of the B990 (it always takes a 5-7
seconds to appear in guvcview) is a hardware defect or a limitation of
the Linux UVC or USB driver? In any case, is there anything Jitsi Meet
can do in this situation to try and:
a) wait longer for the camera before showing an error
b) try a lower resolution or frame rate instead of 720p at 30 fps
c) show a more helpful error

Regards,

Daniel

···

On 24/06/17 02:45, Camilo wrote:

I have had issues with a Logitech camera as well. Only on Chromium or
Chrome Beta. Like Jack said, regular Chrome/Firefox used to work fine.

Is Chromium a requirement for you?