← Back to team overview

ubuntuforums-unanswered team mailing list archive

[Question #77483]: OmniVision USB monitor webcam works but its microphone does not

 

New question #77483 on Ubuntu:
https://answers.launchpad.net/ubuntu/+question/77483

I have a Dell SP2208WFP monitor with built-in webcam and microphone that both work fine under Windows XP. Under Ubuntu 9.04, the webcam works (I can see my video in Ekiga softphone), but the webcam microphone does not.

The webcam microphone is always switched off in the Volume Control. When I turn it on, nothing happens and as soon as I reopen the Volume Control window, the webcam mic shows as switched off again.

alsamixer shows the Capture level for the webcam mic at 75 level, which is normal. I can increase or decrease the capture level, but it does not seem to have any effect on the mic.

When I try recording something using the webcam mic, I get errors:

val@ubuntu:~$ arecord -f cd -D hw:1,0 -d 20 test.wav
Recording WAVE 'test.wav' : Signed 16 bit Little Endian, Rate 44100 Hz, Stereo
arecord: set_params:939: Broken configuration for this PCM: no configurations available

When I try using this microphone is my input device in Skype 2.0.0.72, I get "Problem with Audio Capture".

Here is some additional information about my system configuration:

val@ubuntu:~$ cat /proc/asound/cards
 0 [Audigy2        ]: Audigy2 - Audigy 2 [SB0350b]
                      Audigy 2 [SB0350b] (rev.4, serial:0x20061102) at 0xdcc0, irq 19
 1 [SP2208WFP      ]: USB-Audio - Monitor Webcam (SP2208WFP)
                      Mic-OmniVision Technologies, Inc.538-2640-07.08.09.6 Monitor Webcam (SP2208WFP)

val@ubuntu:~$ cat /proc/asound/card1/stream0 
Mic-OmniVision Technologies, Inc.538-2640-07.08.09.6 Monitor Webcam (SP2208WFP) : USB Audio

Capture:
  Status: Stop
  Interface 3
    Altset 1
    Format: 0x2
    Channels: 2
    Endpoint: 4 IN (SYNC)
    Rates: 48000, 44100, 32000, 24000, 22050, 16000, 12000, 11025, 8000

val@ubuntu:~$ arecord --list-devices
**** List of CAPTURE Hardware Devices ****
card 0: Audigy2 [Audigy 2 [SB0350b]], device 0: emu10k1 [ADC Capture/Standard PCM Playback]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 0: Audigy2 [Audigy 2 [SB0350b]], device 1: emu10k1 mic [Mic Capture]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 0: Audigy2 [Audigy 2 [SB0350b]], device 2: emu10k1 efx [Multichannel Capture/PT Playback]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 0: Audigy2 [Audigy 2 [SB0350b]], device 4: p16v [p16v]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 1: SP2208WFP [Monitor Webcam (SP2208WFP)], device 0: USB Audio [USB Audio]
  Subdevices: 1/1
  Subdevice #0: subdevice #0

val@ubuntu:~$ lsusb --verbose (I have included only the relevant parts of output!)
...
Bus 001 Device 007: ID 05a9:2643 OmniVision Technologies, Inc.
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               2.00
  bDeviceClass          239 Miscellaneous Device
  bDeviceSubClass         2 ?
  bDeviceProtocol         1 Interface Association
  bMaxPacketSize0        64
  idVendor           0x05a9 OmniVision Technologies, Inc.
  idProduct          0x2643
  bcdDevice            1.00
  iManufacturer           1 Mic-OmniVision Technologies, Inc.538-2640-07.08.09.6
  iProduct                2 Monitor Webcam (SP2208WFP)
  iSerial                 0
  bNumConfigurations      1
...
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength         1051
    bNumInterfaces          4
    bConfigurationValue     1
    iConfiguration          0
    bmAttributes         0x80
      (Bus Powered)
    MaxPower              500mA
    Interface Association:
      bLength                 8
      bDescriptorType        11
      bFirstInterface         2
      bInterfaceCount         2
      bFunctionClass          1 Audio
      bFunctionSubClass       1 Control Device
      bFunctionProtocol       0
      iFunction               0
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        2
      bAlternateSetting       0
      bNumEndpoints           0
      bInterfaceClass         1 Audio
      bInterfaceSubClass      1 Control Device
      bInterfaceProtocol      0
      iInterface              0
      AudioControl Interface Descriptor:
        bLength                 9
        bDescriptorType        36
        bDescriptorSubtype      1 (HEADER)
        bcdADC               1.00
        wTotalLength           43
        bInCollection           1
        baInterfaceNr( 0)       3
      AudioControl Interface Descriptor:
        bLength                12
        bDescriptorType        36
        bDescriptorSubtype      2 (INPUT_TERMINAL)
        bTerminalID             1
        wTerminalType      0x0205 Microphone Array
        bAssocTerminal          0
        bNrChannels             2
        wChannelConfig     0x0000
        iChannelNames           0
        iTerminal               0
      AudioControl Interface Descriptor:
        bLength                 9
        bDescriptorType        36
        bDescriptorSubtype      3 (OUTPUT_TERMINAL)
        bTerminalID             2
        wTerminalType      0x0101 USB Streaming
        bAssocTerminal          0
        bSourceID               3
        iTerminal               0
      AudioControl Interface Descriptor:
        bLength                13
        bDescriptorType        36
        bDescriptorSubtype      6 (FEATURE_UNIT)
        bUnitID                 3
        bSourceID               1
        bControlSize            2
        bmaControls( 0)      0x43
        bmaControls( 0)      0x02
          Mute
          Volume
          Automatic Gain
          Loudness
        bmaControls( 1)      0x00
        bmaControls( 1)      0x00
        bmaControls( 2)      0x00
        bmaControls( 2)      0x00
        iFeature                0

I have googled extensively in search of a solution to this problem and found quite a few conversations on this subject, however none of the proposed solutions helped me. Here is a partial list of resources and suggestions I tried without success so far:

ALSA module configuration:
  http://alsa-project.org/main/index.php/Matrix:Module-usb-audio
Setting up uvcvideo drivers:
  http://ubuntuforums.org/showthread.php?t=684153&page=3
Tweaking up alsa-base.conf settings:
  http://ubuntuforums.org/showthread.php?t=1126713
[Alsa-user] microphone setup on Dell Monitor Webcam (SP2208WFP) (same problem, no solution):
  http://www.mail-archive.com/alsa-user@xxxxxxxxxxxxxxxxxxxxx/msg24338.html
Configuring USB microphones on Linux:
  http://www.audacityteam.org/wiki/index.php?title=USB_mic_on_Linux

Now, here is a part from /var/log/syslog that looks highly suspicious since line three below directly refers to card1, which is my webcam usb microphone capture card:
Jul 19 11:46:03 ubuntu pulseaudio[5003]: alsa-util.c: Cannot find fallback mixer control "PCM" or mixer control is no combination of switch/volume.
Jul 19 11:46:03 ubuntu pulseaudio[5003]: alsa-util.c: Cannot find fallback mixer control "Mic" or mixer control is no combination of switch/volume.
Jul 19 11:46:04 ubuntu pulseaudio[5003]: alsa-util.c: Failed to set hardware parameters on plug:hw:1: Invalid argument

Any ideas what hardware parameters might be causing the problem? It does very much look like something is either missing or incorrect in my system configuration!

-- 
You received this question notification because you are a member of UF
Unanswered Posts Team, which is an answer contact for Ubuntu.