9

My Audio Devices

  • Input: Logitech C310 webcam mic (16kHz)
  • Output: Sony MBH20 Bluetooth headset (44.1kHz) in High Fidelity Playback (A2DP Sink) mode

My Problem

With the default PulseAudio settings, the bluetooth headset sounds excellent, but recordings over the webcam mic are high-pitched and sped up, like an Alvin and the Chipmunks recording.

If I configure PulseAudio to set the sampling rate to 16kHz,

# /etc/pulse/daemon.conf

default-sample-rate = 16000

then the webcam works perfectly, but the sound quality through the headset is severely degraded.

My questions

  • Is there any way to configure the sampling rate for only a single source?
  • pacmd list-sources erroneously reports the sampling rate of the webcam mic as 48kHz (sample spec: s16le 1ch 48000Hz). Could that be the problem? If so, is there any way to manually change the sample spec? If not, does this qualify as a bug that should be reported to the pulseaudio maintainers?
  • or is there another fix to this problem that I’m not seeing?
5
  • Which version of Pulseaudio you are using?
    – jarno
    May 20, 2019 at 7:10
  • Have you tried different resample-method?
    – jarno
    May 20, 2019 at 7:45
  • Similar question
    – jarno
    May 20, 2019 at 11:49
  • I'm on pulseaudio 12.2, but at this point, I've just switched to another mic, so I may never get around to fully debugging this issue!
    – Ryan Lue
    May 21, 2019 at 5:45
  • 2
    Here is a bug report for this: gitlab.freedesktop.org/pulseaudio/pulseaudio/-/issues/980
    – sezanzeb
    Sep 8, 2020 at 16:31

4 Answers 4

1

You could try setting

   default-sample-rate = 44100
   alternate-sample-rate = 16000

and/or

   avoid-resampling = yes

if you have pulseaudio version >= 11.

In Pulseaudio 13 there may be even more options, see here

I think it is good to make a bug report about this issue and link it in a comment.

2
  • Still, I think the resampling should produce good quality sound even when using 48000 Hz sample rate. You could try to improve resamping by setting resample-method = speex-float-5 in daemon.conf; see ` man pulse-daemon.conf `
    – jarno
    Jul 5, 2019 at 10:26
  • I'm having the same problem as the OP. The problem is not with resampling, but with the fact that some webcam's don't report their sample rates. So pacmd list-sources will always show the value of default-sample-rate as the sample rate of that device, and the necessary resampling never takes place, regardless of the selected algorithm. Jun 11, 2020 at 9:58
0

The native sound card word rate should match the default-sample-rate otherwise there will be band limitation as observed.

0

I have same problem (high-pitched sound from camera mic) with Logitech Webcam 9000. After reading many discussions on Stackexchange, ALSA manual, ALSA alternative manual, ALSA guide I got solution.

Find My camera ALSA name (U0x46d0x809) or index (2)

$ cat /proc/asound/cards
 0 [HDMI           ]: HDA-Intel - HDA ATI HDMI
                      HDA ATI HDMI at 0xfce60000 irq 73
 1 [Generic        ]: HDA-Intel - HD-Audio Generic
                      HD-Audio Generic at 0xfcb00000 irq 75
 2 [U0x46d0x809    ]: USB-Audio - USB Device 0x46d:0x809
                      USB Device 0x46d:0x809 at usb-0000:2d:00.3-3, high speed

Create config for ALSA ~/.asoundrc

      pcm.usb
      {
          type hw
          card U0x46d0x809
      }

      pcm.!default
      {
          type asym
          capture.pcm
          {
              type plug
              slave.pcm "usb"
              rate 16000
          }
      }

I still not make long real life tests (skype, obs, etc...) but recording in audacity and test calls in skype sounds good.

I still not completely understand ALSA configs

UPD: It not helps. Now look like first Skype call after reboot pitched, next normal. (need checking)

-1

It seems I did not find this post before I have published my own.

I see that you found no solution yet (many years later) because no one answer is marked.

I tried to record via my webcam setting sample format 16le (with no changes of rate) and I got perfect result.

If you found a solution, please wrote it on this post :) and I will delete my post then.

My post is here

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .