Webcam - Logitech C922 - question

Bob Melson melson.r at att.net
Thu Mar 18 00:46:10 UTC 2021


dmesg | grep -i webcam:
ugen0.2: <vendor 0x046d C922 Pro Stream Webcam> at usbus0
uaudio0: <vendor 0x046d C922 Pro Stream Webcam, class 239/2, rev 
2.00/0.16, addr 1> on usbus0
-----
packages/ports are identical to yours, so won't list
-----
rc.conf:
webcamd_enable="YES"
webcamd_0_flags="-N vendor-0x046d-C922-Pro-Stream-Webcam -S 49525BBF"
virtual_oss_enable="YES"

note:  cuse is loaded via /boot/loader.conf entry:  cuse_load="YES"
-----
just set media.cubeb.backend for firefox - it wasn't present or set 
previously
-----
cat /dev/sndstat:
FreeBSD Audio Driver (64bit 2009061500/amd64)
Installed devices:
pcm0: <ATI R6xx (HDMI)> on hdaa0  (1p:1v/0r:0v)
	snddev flags=0x2e7<SIMPLEX,AUTOVCHAN,SOFTPCMVOL,BUSY,MPSAFE,REGISTERED,VPC>
	[pcm0:play:dsp0.p0]: spd 48000, fmt 0x00200010, flags 0x00006100, 
0x00000004
	interrupts 980, underruns 0, feed 980, ready 0 
[b:2048/1024/2|bs:2048/1024/2]
	channel flags=0x6100<BUSY,HAS_VCHAN,VCHAN_PASSTHROUGH>
	{userland} -> feeder_mixer(0x00200010) -> {hardware}
	pcm0:play:dsp0.p0[pcm0:virtual:dsp0.vp0]: spd 44100/48000, fmt 
0x00200010, flags 0x10000000, 0x00000029
	interrupts 0, underruns 0, feed 0, ready 0 [b:0/0/0|bs:8192/1024/8]
	channel flags=0x10000000<VIRTUAL>
	{userland} -> feeder_root(0x00200010) -> feeder_volume(0x00200010) -> 
feeder_rate(0x00200010 q:1 44100 -> 48000) -> {hardware}
pcm1: <ATI R6xx (HDMI)> on hdaa1  (1p:1v/0r:0v)
	snddev flags=0x2e7<SIMPLEX,AUTOVCHAN,SOFTPCMVOL,BUSY,MPSAFE,REGISTERED,VPC>
	[pcm1:play:dsp1.p0]: spd 48000, fmt 0x00200010, flags 0x00006100, 
0x00000004
	interrupts 960, underruns 0, feed 960, ready 0 
[b:2048/1024/2|bs:2048/1024/2]
	channel flags=0x6100<BUSY,HAS_VCHAN,VCHAN_PASSTHROUGH>
	{userland} -> feeder_mixer(0x00200010) -> {hardware}
	pcm1:play:dsp1.p0[pcm1:virtual:dsp1.vp0]: spd 44100/48000, fmt 
0x00200010, flags 0x10000000, 0x00000029
	interrupts 0, underruns 0, feed 0, ready 0 [b:0/0/0|bs:8192/1024/8]
	channel flags=0x10000000<VIRTUAL>
	{userland} -> feeder_root(0x00200010) -> feeder_volume(0x00200010) -> 
feeder_rate(0x00200010 q:1 44100 -> 48000) -> {hardware}
pcm2: <Realtek ALC222 (Analog 2.0+HP/2.0)> on hdaa2  (1p:2v/1r:1v) default
	snddev flags=0x200002e2<AUTOVCHAN,BUSY,MPSAFE,REGISTERED,VPC,PRIO_WR>
	[pcm2:play:dsp2.p0]: spd 48000, fmt 0x00200010, flags 0x00002108, 
0x00000004
	interrupts 12603261, underruns 0, feed 12603261, ready 0 
[b:2048/1024/2|bs:2048/1024/2]
	channel flags=0x2108<TRIGGERED,BUSY,HAS_VCHAN>
	{userland} -> feeder_mixer(0x00200010) -> {hardware}
	pcm2:play:dsp2.p0[pcm2:virtual:dsp2.vp0]: spd 48000, fmt 
0x00210000/0x00200010, flags 0x1000110c, 0x00000023, pid 56557 (virtual_oss)
	interrupts 0, underruns 2437, feed 88222354, ready 2496 
[b:0/0/0|bs:4092/2046/2]
	channel flags=0x1000110c<RUNNING,TRIGGERED,BUSY,HAS_SIZE,VIRTUAL>
	{userland} -> feeder_root(0x00210000) -> feeder_format(0x00210000 -> 
0x00200010) -> feeder_volume(0x00200010) -> {hardware}
	pcm2:play:dsp2.p0[pcm2:virtual:dsp2.vp1]: spd 44100/48000, fmt 
0x00200010, flags 0x100011c8, 0x00000029, pid 92433 (pulseaudio)
	interrupts 0, underruns 0, feed 2972534, ready 15444 
[b:0/0/0|bs:16384/4096/4]
	channel flags=0x100011c8<TRIGGERED,NBIO,MMAP,BUSY,HAS_SIZE,VIRTUAL>
	{userland} -> feeder_root(0x00200010) -> feeder_volume(0x00200010) -> 
feeder_rate(0x00200010 q:1 44100 -> 48000) -> {hardware}
	[pcm2:record:dsp2.r0]: spd 48000, fmt 0x00200010, flags 0x00002100, 
0x00000005
	interrupts 3757, overruns 0, feed 7514, hfree 512, sfree 512 
[b:512/256/2|bs:512/256/2]
	channel flags=0x2100<BUSY,HAS_VCHAN>
	{hardware} -> feeder_root(0x00200010) -> feeder_mixer(0x00200010) -> 
{userland}
	pcm2:record:dsp2.r0[pcm2:virtual:dsp2.vr0]: spd 44100/48000, fmt 
0x00200010, flags 0x100011d0, 0x00000029, pid 92433 (pulseaudio)
	interrupts 0, overruns 0, feed 0, hfree 0, sfree 16384 
[b:0/0/0|bs:16384/4096/4]
	channel flags=0x100011d0<NOTRIGGER,NBIO,MMAP,BUSY,HAS_SIZE,VIRTUAL>
	{hardware} -> feeder_root(0x00200010) -> feeder_rate(0x00200010 q:1 
48000 -> 44100) -> feeder_volume(0x00200010) -> {userland}
pcm3: <USB audio> at ? kld snd_uaudio (0p:0v/1r:2v)
	snddev 
flags=0x100002e3<SIMPLEX,AUTOVCHAN,BUSY,MPSAFE,REGISTERED,VPC,PRIO_RD>
	[pcm3:record:dsp3.r0]: spd 32000, fmt 0x00200010, flags 0x00002108, 
0x00000005
	interrupts 8402121, overruns 0, feed 16804242, hfree 2048, sfree 2047 
[b:2048/1024/2|bs:2048/1024/2]
	channel flags=0x2108<TRIGGERED,BUSY,HAS_VCHAN>
	{hardware} -> feeder_root(0x00200010) -> feeder_mixer(0x00200010) -> 
{userland}
	pcm3:record:dsp3.r0[pcm3:virtual:dsp3.vr0]: spd 48000/32000, fmt 
0x00210000/0x00200010, flags 0x1000110c, 0x0000002b, pid 56557 (virtual_oss)
	interrupts 0, overruns 95, feed 43469004, hfree 0, sfree 7488 
[b:0/0/0|bs:8160/1020/8]
	channel flags=0x1000110c<RUNNING,TRIGGERED,BUSY,HAS_SIZE,VIRTUAL>
	{hardware} -> feeder_root(0x00200010) -> feeder_format(0x00200010 -> 
0x00201000) -> feeder_volume(0x00201000) -> feeder_rate(0x00201000 q:1 
32000 -> 48000) -> feeder_format(0x00201000 -> 0x00210000) -> {userland}
	pcm3:record:dsp3.r0[pcm3:virtual:dsp3.vr1]: spd 44100/32000, fmt 
0x00200010, flags 0x10000000, 0x00000029
	interrupts 0, overruns 0, feed 0, hfree 0, sfree 32768 
[b:0/0/0|bs:32768/256/128]
	channel flags=0x10000000<VIRTUAL>
	{hardware} -> feeder_root(0x00200010) -> feeder_volume(0x00200010) -> 
feeder_rate(0x00200010 q:1 32000 -> 44100) -> {userland}
No devices installed from userspace.
-----

Thanks for your reply.  Of the top, I don't see anything significantly 
different, so it may be a compatibility issue.  Still, I *do* see an 
image when I call pwcview - it's just talking to the outside world 
that's not happening.

Bob Melson


On 3/17/21 5:57 PM, Dave Cottlehuber wrote:
> On Wed, 17 Mar 2021, at 19:45, Bob Melson wrote:
>> Has anybody out there successfully installed a Logitech C922 webcam?
>>
>> I've managed to install to the point where the device is recognized by
>> pwview, and have, I think, gotten the mic (/dev/dsp3) and speaker
>> (/dev/dsp2) correctly installed/activated/recognized.  Problem is that I
>> see no video with jitsi or zoom or with the VA's telemed system - all 3
>> just work on my clever phone, but not from my freebsd desktop.  At this
>> point, I'm also not sure of mic and speaker, but they could be failing
>> because of the video failure.
>>
>> If anybody out there has successfully installed either a C920 or C922
>> and has video, mic and sound working, I'd appreciate it if you could
>> post a how-to of just how you managed the trick.  I don't do frustration
>> well and need a wise head's guidance.
>>
>> Thanks in advance,
>> Bob Melson
> 
> hi Bob
> 
> dmesg will help (see mine below). I've got a c920 here. if you want to go through this together (maybe over irc or something) reply back privately to organise.
> 
> I don't see yours here https://wiki.freebsd.org/WebcamCompat what does dmesg report?
> 
> I have the the following, on 13.0 & 14.0-CURRENT but I'm pretty sure this will be fine on 12.2 as well without changes.
> 
> # packages
> 
> multimedia/webcamd
> multimedia/pwcview
> multimedia/v4l-utils
> multimedia/v4l_compat (mine works without this, but its in my notes)
> 
> ** no pulseaudio, sndio daemons running**
> 
> # rc.conf
> kld_list="${kld_list} cuse"
> webcamd_enable=YES
> webcamd_user=dch
> webcamd_group=webcamd
> webcamd_0_flags="-N vendor-0x046d-HD-Pro-Webcam-C920 -S 7A9C9A7F"
> 
> I probably added myself to groups video operator & webcamd as well.
> 
> also, consider using firefox, the audio & mic detection works better; chrome doesn't handle this as neatly when you have multiple audio devices. in about:config for firefox, I have:
> 
> media.cubeb.backend=oss
> 
> 
> dmesg will help.
> 
> # dmesg | grep -i webcam
> [150339] ugen0.7: <vendor 0x046d HD Pro Webcam C920> at usbus0
> [150339] uaudio1: <vendor 0x046d HD Pro Webcam C920, class 239/2, rev 2.00/0.11, addr 10> on usbus0
> 
> # sysctl hw.snd.verbose=2
> # cat /dev/sndstat
> FreeBSD Audio Driver (64bit 2009061500/amd64)
> Installed devices:
> 
> ####### USB speakers ######
> pcm0: <USB audio> at ? kld snd_uaudio (1p:4v/0r:0v) default
> 	snddev flags=0x2e3<SIMPLEX,AUTOVCHAN,BUSY,MPSAFE,REGISTERED,VPC>
> 	[pcm0:play:dsp0.p0]: spd 48000, fmt 0x00200010/0x00201000, flags 0x00002100, 0x00000006
> 	interrupts 417074, underruns 0, feed 417073, ready 0 [b:6144/3072/2|bs:4096/2048/2]
> 	channel flags=0x2100<BUSY,HAS_VCHAN>
> 	{userland} -> feeder_mixer(0x00200010) -> feeder_format(0x00200010 -> 0x00201000) -> {hardware}
> 	pcm0:play:dsp0.p0[pcm0:virtual:dsp0.vp0]: spd 48000, fmt 0x00201000/0x00200010, flags 0x10000000, 0x00000023
> 	interrupts 0, underruns 0, feed 0, ready 0 [b:0/0/0|bs:16384/2048/8]
> 	channel flags=0x10000000<VIRTUAL>
> 	{userland} -> feeder_root(0x00201000) -> feeder_format(0x00201000 -> 0x00200010) -> feeder_volume(0x00200010) -> {hardware}
> 	pcm0:play:dsp0.p0[pcm0:virtual:dsp0.vp1]: spd 8000/48000, fmt 0x00100008/0x00200010, flags 0x10000000, 0x0000006b
> 	interrupts 0, underruns 0, feed 0, ready 0 [b:0/0/0|bs:512/64/8]
> 	channel flags=0x10000000<VIRTUAL>
> 	{userland} -> feeder_root(0x00100008) -> feeder_format(0x00100008 -> 0x00100010) -> feeder_rate(0x00100010 q:1 8000 -> 48000) -> feeder_matrix(1.0 -> 2.0) -> feeder_volume(0x00200010) -> {hardware}
> 	pcm0:play:dsp0.p0[pcm0:virtual:dsp0.vp2]: spd 48000, fmt 0x00201000/0x00200010, flags 0x10000000, 0x00000023
> 	interrupts 0, underruns 0, feed 0, ready 0 [b:0/0/0|bs:16384/2048/8]
> 	channel flags=0x10000000<VIRTUAL>
> 	{userland} -> feeder_root(0x00201000) -> feeder_format(0x00201000 -> 0x00200010) -> feeder_volume(0x00200010) -> {hardware}
> 	pcm0:play:dsp0.p0[pcm0:virtual:dsp0.vp3]: spd 48000, fmt 0x00100010/0x00200010, flags 0x10000000, 0x00000061
> 	interrupts 0, underruns 0, feed 0, ready 0 [b:0/0/0|bs:4096/512/8]
> 	channel flags=0x10000000<VIRTUAL>
> 	{userland} -> feeder_root(0x00100010) -> feeder_matrix(1.0 -> 2.0) -> feeder_volume(0x00200010) -> {hardware}
> 
> ####### webcam record #######
> 
> pcm1: <USB audio> at ? kld snd_uaudio (0p:0v/1r:2v)
> 	snddev flags=0x2e3<SIMPLEX,AUTOVCHAN,BUSY,MPSAFE,REGISTERED,VPC>
> 	[pcm1:record:dsp1.r0]: spd 32000, fmt 0x00200010, flags 0x00002100, 0x00000005
> 	interrupts 417065, overruns 0, feed 834130, hfree 2048, sfree 2048 [b:2048/1024/2|bs:2048/1024/2]
> 	channel flags=0x2100<BUSY,HAS_VCHAN>
> 	{hardware} -> feeder_root(0x00200010) -> feeder_mixer(0x00200010) -> {userland}
> 	pcm1:record:dsp1.r0[pcm1:virtual:dsp1.vr0]: spd 48000/32000, fmt 0x00201000/0x00200010, flags 0x10000000, 0x0000002b
> 	interrupts 0, overruns 0, feed 0, hfree 0, sfree 65536 [b:0/0/0|bs:65536/512/128]
> 	channel flags=0x10000000<VIRTUAL>
> 	{hardware} -> feeder_root(0x00200010) -> feeder_format(0x00200010 -> 0x00201000) -> feeder_volume(0x00201000) -> feeder_rate(0x00201000 q:1 32000 -> 48000) -> {userland}
> 	pcm1:record:dsp1.r0[pcm1:virtual:dsp1.vr1]: spd 8000/32000, fmt 0x00100008/0x00200010, flags 0x10000000, 0x0000006b
> 	interrupts 0, overruns 0, feed 0, hfree 0, sfree 2048 [b:0/0/0|bs:2048/16/128]
> 	channel flags=0x10000000<VIRTUAL>
> 	{hardware} -> feeder_root(0x00200010) -> feeder_matrix(2.0 -> 1.0) -> feeder_volume(0x00100010) -> feeder_rate(0x00100010 q:1 32000 -> 8000) -> feeder_format(0x00100010 -> 0x00100008) -> {userland}
> 
> https://lists.freebsd.org/pipermail/freebsd-multimedia/2020-March/020164.html has some excellent resources & tips as well.
> 
> for testing,
> 
> https://mozilla.github.io/webrtc-landing/gum_test.html
> https://janus.conf.meetecho.com/echotest.html
> https://test.webrtc.org/
> A+
> Dave
> _______________________________________________
> freebsd-questions at freebsd.org mailing list
> https://lists.freebsd.org/mailman/listinfo/freebsd-questions
> To unsubscribe, send any mail to "freebsd-questions-unsubscribe at freebsd.org"
> 

-- 
Robert G. Melson | Rio Grande Microsolutions | El Paso, TX
--
Minds are like parachutes.  They only function when they
are open.  Sir James Dewar



More information about the freebsd-questions mailing list