Last Review: Nov-20-2011
Linux Skype audio problem
Skype audio problems with Linux are a common experience. While the video part of webcams usually runs out of the box, audio configuration needs explicit user action. This text is about PulseAudio and the Donald Duck voice problem.
Skype for Linux PulseAudio audio source configuration
Since modern Linux distributions run the PulseAudio sound server on top of the ALSA Kernel modul Skype defaults in the option dialog for sound devices to PulseAudio.
Skype options dialog
One problem with Skype arises out of the fact, that not all Linux distributions provide easy to use (graphical) toolsets for PulseAudio configuration in their default setups. In order to get control over your PulseAudio settings be sure to have installed the following packages: - paman (PulseAudio Manager)
- pavucontrol (PulseAudio Volume Control)
You can check this in the terminal with the following console commands (you could need other package managers than the ones in my examples):
dpkg -l paman
dpkg -l pavucontrol
With both packages installed you should see something like that:
Terminal window with package informations
To install them, do the following: sudo apt-get install paman pavucontrol
Now your Desktop Applications Menu should have two entries named PulseAudio Manager and PulseAudio Volume Control. Within the Xfce Applications Menu for example they appear in the Multimedia Flyout Menu:
Xfce Applications Menu with PulseAudio entries
Normally audio output runs fine with Skype but audio input does not run at all or with weird results only. To fix this, you should take care of your input device used with Skype. First you must get aware of this device. Open the PulseAudio Manager...
PulseAudio Manager showing devices
...and choose the Devices card. In this case there is a webcam with integrated microphone called Webcam B500 Analog Mono which serves as input device (Source) for Skype. Now open the PulseAudio Volume Control and choose the Configuration card to set Skype's input device properly:
PulseAudio Volume Control showing configurations
The input device, in this case Webcam B500 should appear here. Take care to set it to the appropriate profile (which of course should not be Off) as shown. Now you should be ready for Skype...
The Donald Duck voice problem
Within some Linux environments the above described configuration enables Skype using the microphone, but voice output sounds like Donald Duck speaking. This is a result of different sampling rates used by your hardware on the one hand and PulseAudio defaults on the other hand. Since Audio CDs are sampled with 44100 Hz, PulseAudio setup is made with this default value. Todays audio gear uses rather 48000 Hz sampling rates. For proper results PulseAudio and your hardware (microphone) have to work with equal sampling rates. After selecting the input device and pressing the properties button PulseAudio Manager supplies informations on your hardwares sampling rate:
PulseAudio Manager showing sampling rate
The line titled Sample Type shows a device providing one channel, 48000 Hz sampling rate and s16le sampling format. By editing /etc/pulse/daemon.conf you can configure the PulseAudio server to use these values. You must do this with root rights (Feel free to use your favorite editor): sudo nano /etc/pulse/daemon.conf
This file contains a lot of parameters, all commented out but given with their default values. To change a default, uncomment the line by removing the leading semicolon and insert the new value after the equal sign. The following section of /etc/pulse/daemon.conf shows a daemon.conf file adjusted to the above mentioned source hardware Webcam B500 Analog Mono: .
.
.
; rlimit-nice = 31
; rlimit-rtprio = 9
; rlimit-rttime = 1000000
; default-sample-format = s16le
default-sample-rate = 48000
default-sample-channels = 1
; default-channel-map = front-left,front-right
; default-fragments = 4
; default-fragment-size-msec = 25
Shutdown and restart PulseAudio (as daemon) to enable the changes made (you do this via terminal as normal user, NOT as root)... pulseaudio -k
pulseaudio -D
...or restart your machine. From now on your voice will be clear and understandable...