Has anyone managed to get Twinkle (or any other softphone) to work with
a Bluetooth headset?
I have a Motorola HK201, which is paired with my laptop and recognized
by Pulseaudio. I've been unable to find a softphone that actually uses
Pulseaudio, and I've been unable to get alsa to recognize the headset as
a microphone. (I have been able to play audio through it, although I
can't get alsa to call it anything but "default", which is really
annoying.)
I've tried pretty much all of the asound.conf examples that Google has
turned up, but none of them has made a bit of difference.
Any ideas? Thanks!
--
========================================================================
Ian Pilcher arequipeno(a)gmail.com
========================================================================
Show replies by date
I figured this out. The first thing that you need to know is that just
about every example out there is incorrect for the way Fedora does
things (assuming that you're using PulseAudio).
The standard /etc/asound.conf on Fedora 14 is:
#
# Place your global alsa-lib configuration here...
#
@hooks [
{
func load
files [
"/etc/alsa/pulse-default.conf"
]
errors false
}
]
All this does is "include" /etc/alsa/pulse-default.conf (if it exists).
/etc/alsa/pulse-default.conf is part of the alsa-plugins-pulseaudio
package, and it contains:
# PulseAudio plugin configuration
# $Id: pulse-default.conf,v 1.3 2008/03/09 15:50:49 lkundrak Exp $
# Let's create a virtual device "pulse" for mixer and PCM
pcm.pulse {
type pulse
hint {
description "PulseAudio Sound Server"
}
}
ctl.pulse {
type pulse
hint {
description "PulseAudio Sound Server"
}
}
# Let's make it the default!
pcm.!default {
type pulse
hint {
description "Default"
}
}
ctl.!default {
type pulse
hint {
description "Default"
}
}
The effect of this is to route the default ALSA playback and capture
devices to PulseAudio, where they will use the default PulseAudio sink
and source respectively. This explains why programs like Twinkle and
aplay were able to play audio through my headset after I used KDE to
set it as the preferred output device.
Unfortunately, KDE's multimedia applet doesn't appear to be as good at
setting the preferred capture device (possibly because of user error).
Once I used padevchooser to set the default source, arecord started
using the headset microphone.
Of course, I don't necessarily want to change my PulseAudio preferences
just to run a softphone. Fortunately, the ALSA PulseAudio plugin makes
it possible to create ALSA devices that are mapped to a specific Pulse-
Audio sink or source. Here is my .asoundrc:
pcm.hk201_sink {
type pulse
device bluez_sink.00_24_1C_36_A3_6B
hint {
description "Motorola HK201 - Speaker"
}
}
pcm.hk201_source {
type pulse
device bluez_source.00_24_1C_36_A3_6B
hint {
description "Motorola HK201 - Microphone"
}
}
(You can get PulseAudio device names with the "pactl list" command.)
With this configuration, ALSA applications can play to or record from
the headset by specifying the hk201_sink or hk201_source device.
I hope this helps someone out there avoid the pain I went through to get
this set up.
--
========================================================================
Ian Pilcher arequipeno(a)gmail.com
========================================================================