Skip to content

Instantly share code, notes, and snippets.

@joergschiller
Created January 24, 2012 23:05
  • Star 88 You must be signed in to star a gist
  • Fork 7 You must be signed in to fork a gist
Star You must be signed in to star a gist
Save joergschiller/1673341 to your computer and use it in GitHub Desktop.
A2DP Sink on Ubuntu Linux with bluez (streaming bluetooth stereo audio from smartphone to pc)

Howto Enable and Use A2DP Sink on Ubuntu Linux with Bluez

  1. Add Enable=Source to /etc/bluetooth/audio.conf right after [General].

  2. Find address in form XX:XX:XX:XX:XX:XX of phone with hcitool scan.

  3. Pair and trust smartphone with sudo bluez-simple-agent hci0 XX:XX:XX:XX:XX:XX and sudo bluez-test-device trusted XX:XX:XX:XX:XX:XX yes.

  4. Create loopback in pulseaudio connection bluetooth a2dp source with alsa sink:

pactl load-module module-loopback \
source=bluez_source.XX_XX_XX_XX_XX_XX \
sink=alsa_output.pci-0000_00_1b.0.analog-stereo

You can find your own values for source and sink with pacmd list-sources and pacmd list-sinks.

@HDC67
Copy link

HDC67 commented Mar 12, 2018

What does " pacmd list-sources | grep name: " produce?

Does your bluez source have .a2dp_source on the end of the name? I think there's a typo in the original post although things may have changed since then. My machine gives:

test@test:~$ pacmd list-sources | grep name:
        name: <alsa_output.pci-0000_00_05.0.analog-stereo.monitor>
        name: <alsa_input.pci-0000_00_05.0.analog-stereo>
        name: <bluez_source.94_7B_E7_XX_XX_XX.a2dp_source>

So I need

pactl load-module module-loopback source=bluez_source.94_7B_E7_XX_XX_XX.a2dp_source sink=alsa_output.pci-0000_00_05.0.analog-stereo

I'm not getting output but at least the loopback loads without error.

Edit: This worked for me:
https://gist.github.com/oleq/24e09112b07464acbda1#gistcomment-2175574

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment