summaryrefslogtreecommitdiffstats
path: root/audio/bluez-alsa.md
diff options
context:
space:
mode:
authorRonan Le Martret <ronan.lemartret@iot.bzh>2018-03-23 14:41:52 +0100
committerronan [iot.bzh] <ronan.lemartret@iot.bzh>2018-04-09 15:07:13 +0200
commitf690453c2b2d87161755500fe3f7735975c2963a (patch)
treeba9baebc81c79a66334fe872b5f9a7aa05cd870a /audio/bluez-alsa.md
parent9a4b7c3ad8b5f95912180a5eefb246caacd737d3 (diff)
Add bluez-alsa documentation
Signed-off-by: Ronan Le Martret <ronan.lemartret@iot.bzh>
Diffstat (limited to 'audio/bluez-alsa.md')
-rw-r--r--audio/bluez-alsa.md113
1 files changed, 113 insertions, 0 deletions
diff --git a/audio/bluez-alsa.md b/audio/bluez-alsa.md
new file mode 100644
index 0000000..bbdef77
--- /dev/null
+++ b/audio/bluez-alsa.md
@@ -0,0 +1,113 @@
+# bluez-alsa
+
+## Introduction
+
+Bluetooth Audio ALSA Backend allow bluetooth audio without PulseAudio.
+
+This project is a rebirth of a direct integration between Bluez and ALSA. Since Bluez >= 5, the build-in integration has been removed in favor of 3rd party audio applications. From now on, Bluez acts as a middleware between an audio application, which implements Bluetooth audio profile, and a Bluetooth audio device.
+
+github source : [bluez-alsa](https://github.com/Arkq/bluez-alsa)
+
+## Add bluez-alsa to an AGL image
+
+You can add bluez-alsa to your image
+
+```yocto
+IMAGE_INSTALL_append = "bluez-alsa"
+```
+
+## Check bluez-alsa status
+
+You can check the bluez-alsa status by running:
+
+```bash
+systemctl status bluez-alsa.service
+```
+
+## Stop pulseaudio
+
+You must disable pulseaudio if you want to use bluez-alsa
+
+```bash
+systemctl --user stop pulseaudio
+```
+
+or disable pulseaudio bluetooth support
+
+```bash
+vi /etc/pulse/default.pa
+#.ifexists module-bluetooth-policy.so
+#load-module module-bluetooth-policy
+#.endif
+
+#.ifexists module-bluetooth-discover.so
+#load-module module-bluetooth-discover
+#.endif
+```
+
+## Connect your Bluetooth device
+
+You need to connect a bluetooth device
+
+```bash
+$ bluetoothctl
+[bluetooth]# pair ${BT_ADDR}
+[bluetooth]# connect ${BT_ADDR}
+[bluetooth]# info ${BT_ADDR}
+```
+
+Here somes documentation links:
+
+* [Bluetooth headset from archlinux](https://wiki.archlinux.org/index.php/Bluetooth_headset)
+* [Bluetooth Headset from gentoo](https://wiki.gentoo.org/wiki/Bluetooth_Headset)
+* [Bluez A2DP AudioSink for ALSA](http://www.lightofdawn.org/blog/?viewDetailed=00032)
+* [Bluez A2DP](http://www.lightofdawn.org/wiki/wiki.cgi/BluezA2DP)
+
+## Test bluez-alsa speacker
+
+```bash
+wget http://www.kozco.com/tech/piano2.wav
+
+aplay -D bluealsa:HCI=hci0,DEV=${BT_ADDR},PROFILE=a2dp ./piano2.wav
+```
+
+## Add bluez-alsa pcm config to alsa
+
+```bash
+vi /etc/asound.conf
+# Bluetooth headset
+pcm.btheadset {
+ type plug
+ slave.pcm {
+ type bluealsa
+ device "${BT_ADDR}"
+ profile "a2dp"
+ }
+ hint {
+ show on
+ description "Bluetooth Audio ALSA Backend"
+ }
+}
+```
+
+Doc [asoundrc](https://alsa.opensrc.org/Asoundrc)
+
+Test bluez-alsa pcm
+
+```bash
+aplay -D btheadset ./piano2.wav
+```
+
+## Test gstreamer player
+
+```bash
+gst-launch-1.0 uridecodebin uri=file:///mnt/Holy-Mountain.mp3 ! alsasink device=btheadset
+```
+
+## Test bluez-alsa phone
+
+After connected your phone with bluez:
+
+```bash
+bluealsa-aplay ${BT_ADDR}
+```