USB 网络摄像头麦克风不工作

Har*_*Tom 5 usb microphone webcam 20.04

我有一个带有内置麦克风的 USB 网络摄像头。相机正在工作并且检测到麦克风。但它没有提供任何输入。

https://www.amazon.in/TVS-WC-103-HD-Webcam-1080Pixel/dp/B08G4X6TC1/ref=asc_df_B08G4X6TC1/?tag=googleshopdes-21&linkCode=df0&hvadid=396987037596&hvpos=&hvnetw=g&hvrand=626450613447 870603&hvpone=&hvptwo=&hvqmt =&hvdev=c&hvdvcmdl=&hvlocint=&hvlocphy=9040216&hvtargid=pla-947225293670&psc=1&ext_vrnc=hi

输出与pacmd list-sources

3 source(s) available.
  * index: 0
    name: <alsa_input.usb-Jieli_Technology_USB_PHY_2.0-02.mono-fallback>
    driver: <module-alsa-card.c>
    flags: HARDWARE HW_MUTE_CTRL HW_VOLUME_CTRL DECIBEL_VOLUME LATENCY DYNAMIC_LATENCY
    state: SUSPENDED
    suspend cause: IDLE
    priority: 9040
    volume: mono: 65536 / 100% / 0.00 dB
            balance 0.00
    base volume: 35466 /  54% / -16.00 dB
    volume steps: 65537
    muted: no
    current latency: 0.00 ms
    max rewind: 0 KiB
    sample spec: s16le 1ch 44100Hz
    channel map: mono
                 Mono
    used by: 0
    linked by: 0
    configured latency: 0.00 ms; range is 0.50 .. 2000.00 ms
    card: 0 <alsa_card.usb-Jieli_Technology_USB_PHY_2.0-02>
    module: 7
    properties:
        alsa.resolution_bits = "16"
        device.api = "alsa"
        device.class = "sound"
        alsa.class = "generic"
        alsa.subclass = "generic-mix"
        alsa.name = "USB Audio"
        alsa.id = "USB Audio"
        alsa.subdevice = "0"
        alsa.subdevice_name = "subdevice #0"
        alsa.device = "0"
        alsa.card = "2"
        alsa.card_name = "USB PHY 2.0"
        alsa.long_card_name = "Jieli Technology USB PHY 2.0 at usb-0000:02:00.0-6, high speed"
        alsa.driver_name = "snd_usb_audio"
        device.bus_path = "pci-0000:02:00.0-usb-0:6:1.2"
        sysfs.path = "/devices/pci0000:00/0000:00:01.3/0000:02:00.0/usb1/1-6/1-6:1.2/sound/card2"
        udev.id = "usb-Jieli_Technology_USB_PHY_2.0-02"
        device.bus = "usb"
        device.vendor.id = "1224"
        device.vendor.name = "Jieli Technology"
        device.product.id = "2a25"
        device.product.name = "USB PHY 2.0"
        device.serial = "Jieli_Technology_USB_PHY_2.0"
        device.form_factor = "webcam"
        device.string = "hw:2"
        device.buffering.buffer_size = "176400"
        device.buffering.fragment_size = "88200"
        device.access_mode = "mmap+timer"
        device.profile.name = "mono-fallback"
        device.profile.description = "Mono"
        device.description = "USB PHY 2.0 Mono"
        module-udev-detect.discovered = "1"
        device.icon_name = "camera-web-usb"
    ports:
        analog-input-mic: Microphone (priority 8700, latency offset 0 usec, available: unknown)
            properties:
                device.icon_name = "audio-input-microphone"
    active port: <analog-input-mic>
    index: 1
    name: <alsa_output.pci-0000_07_00.1.hdmi-stereo-extra1.monitor>
    driver: <module-alsa-card.c>
    flags: DECIBEL_VOLUME LATENCY DYNAMIC_LATENCY
    state: SUSPENDED
    suspend cause: IDLE
    priority: 1030
    volume: front-left: 65536 / 100% / 0.00 dB,   front-right: 65536 / 100% / 0.00 dB
            balance 0.00
    base volume: 65536 / 100% / 0.00 dB
    volume steps: 65537
    muted: no
    current latency: 0.00 ms
    max rewind: 0 KiB
    sample spec: s16le 2ch 44100Hz
    channel map: front-left,front-right
                 Stereo
    used by: 0
    linked by: 0
    configured latency: 0.00 ms; range is 0.50 .. 1999.82 ms
    monitor_of: 0
    card: 1 <alsa_card.pci-0000_07_00.1>
    module: 8
    properties:
        device.description = "Monitor of GK208 HDMI/DP Audio Controller Digital Stereo (HDMI 2)"
        device.class = "monitor"
        alsa.card = "0"
        alsa.card_name = "HDA NVidia"
        alsa.long_card_name = "HDA NVidia at 0xf7080000 irq 77"
        alsa.driver_name = "snd_hda_intel"
        device.bus_path = "pci-0000:07:00.1"
        sysfs.path = "/devices/pci0000:00/0000:00:03.1/0000:07:00.1/sound/card0"
        device.bus = "pci"
        device.vendor.id = "10de"
        device.vendor.name = "NVIDIA Corporation"
        device.product.id = "0e0f"
        device.product.name = "GK208 HDMI/DP Audio Controller"
        device.string = "0"
        module-udev-detect.discovered = "1"
        device.icon_name = "audio-card-pci"
    index: 2
    name: <alsa_output.pci-0000_09_00.4.iec958-stereo.monitor>
    driver: <module-alsa-card.c>
    flags: DECIBEL_VOLUME LATENCY 
    state: SUSPENDED
    suspend cause: IDLE
    priority: 1030
    volume: front-left: 65536 / 100% / 0.00 dB,   front-right: 65536 / 100% / 0.00 dB
            balance 0.00
    base volume: 65536 / 100% / 0.00 dB
    volume steps: 65537
    muted: no
    current latency: 0.00 ms
    max rewind: 0 KiB
    sample spec: s16le 2ch 44100Hz
    channel map: front-left,front-right
                 Stereo
    used by: 0
    linked by: 0
    fixed latency: 100.14 ms
    monitor_of: 1
    card: 2 <alsa_card.pci-0000_09_00.4>
    module: 9
    properties:
        device.description = "Monitor of Starship/Matisse HD Audio Controller Digital Stereo (IEC958)"
        device.class = "monitor"
        alsa.card = "1"
        alsa.card_name = "HD-Audio Generic"
        alsa.long_card_name = "HD-Audio Generic at 0xf7400000 irq 79"
        alsa.driver_name = "snd_hda_intel"
        device.bus_path = "pci-0000:09:00.4"
        sysfs.path = "/devices/pci0000:00/0000:00:08.1/0000:09:00.4/sound/card1"
        device.bus = "pci"
        device.vendor.id = "1022"
        device.vendor.name = "Advanced Micro Devices, Inc. [AMD]"
        device.product.id = "1487"
        device.product.name = "Starship/Matisse HD Audio Controller"
        device.string = "1"
        module-udev-detect.discovered = "1"
        device.icon_name = "audio-card-pci"
Run Code Online (Sandbox Code Playgroud)

小智 8

根据 的输出pacmd list-sources,您的所有麦克风都因空闲而暂停(这是有道理的)。我发现一些 USB 连接设备一旦将麦克风设置为“”,就SUSPENDED再也不会回来。对于这个问题一般有两种解决方案:

\n
    \n
  1. 拔下网络摄像头,数到五,然后重新插入。
    \xe2\x87\xa2 这将循环 USB 设备,通常会使所有设备重新联机。
  2. \n
  3. 更新 PulseAudio 以暂停空闲音频设备。
    \xe2\x87\xa2 这通常适用于工作中的许多计算机,如果没有锋利的剪刀就无法将 USB 摄像头与计算机物理断开。
  4. \n
\n

修改 PulseAudio

\n

为了防止音频设备在空闲时挂起,您需要注释掉文件中的一行default.pa。以下是要遵循的步骤:

\n
    \n
  1. 打开终端(如果尚未打开)

    \n
  2. \n
  3. 打开default.pa文件进行编辑root

    \n
    $ sudo vi /etc/pulse/default.pa\n
    Run Code Online (Sandbox Code Playgroud)\n

    注意:随意使用除 之外的其他东西vi。这更多的是一种习惯的力量,而不是对使用哪个编辑器的隐含建议。

    \n
  4. \n
  5. 找到读取的行load-module module-suspend-on-idle并将其注释掉。这大约是下降的 90%。完成后,该行应如下所示:

    \n
    ### Automatically suspend sinks/sources that become idle for too long\n# load-module module-suspend-on-idle\n
    Run Code Online (Sandbox Code Playgroud)\n
  6. \n
  7. 重新启动 PulseAudio:

    \n
    $ pulseaudio -k\n
    Run Code Online (Sandbox Code Playgroud)\n
  8. \n
  9. 确认您的音频设备可以运行:

    \n
    pacmd list-sources\n
    Run Code Online (Sandbox Code Playgroud)\n

    检查 USB 麦克风,它可能位于索引处0,就像您提供的输出中一样,并确认 的值state。它应该读为IDLE. 当应用程序主动使用它时,它将更改为,然后在不再使用后RUNNING返回到大约 30 秒。IDLE

    \n
  10. \n
\n

音频混乱

\n

您可能会看到的另一个问题是应用程序可能不知道自动使用哪个麦克风,因此输入选择将始终为空。要解决此问题,请打开 PulseAudio 音量控制 (pavucontrol) 应用程序,然后单击“配置”选项卡。将输出设置为“模拟立体声输出”:

\n

PulseAudio - 配置

\n

为什么设置输出可以解决输入问题,我只能猜测。也就是说,此解决方案确实适用于计算机始终显示没有音频输入设备的罕见情况。

\n