Pulseaudio setting up sinks and sources for A2DP and HFP connections

The name of the pictureThe name of the pictureThe name of the pictureClash Royale CLAN TAG#URR8PPP











up vote
0
down vote

favorite












I'm trying to set up A2DP+HFP profiles in an embedded board. Goal is to use pulseaudio 12.2, ofono 1.18, and bluez 5.41 in order to connect to a mobile phone and use A2DP, HFP profiles automatically, whenever necessary. I did lots and lots of things to update the versions and configure the daemons. Right now I can see that HFP profile is available when connected.



A2DP works perfectly and I am able to stream music from phone to embedded board. When I get a call, I can answer it with Bluetooth and it looks that HFP is the active profile whilst I'm in the call. The weird thing is that there is no audio from the embedded board (HDMI monitor connected to it).



The following will give you how it looks like. When I'm streaming music from phone via A2DP, I get following sources and sinks:



pactl list short sinks
0 alsa_output.hw_1_0 module-alsa-sink.c s16le 2ch 48000Hz SUSPENDED
1 alsa_output.platform-sound.analog-mono module-alsa-card.c s16le 1ch 48000Hz SUSPENDED
2 alsa_output.platform-sound-hdmi.stereo-fallback module-alsa-card.c s16le 2ch 48000Hz RUNNING

pactl list short sources
0 alsa_output.hw_1_0.monitor module-alsa-sink.c s16le 2ch 48000Hz SUSPENDED
1 alsa_output.platform-sound.analog-mono.monitor module-alsa-card.c s16le 1ch 48000Hz SUSPENDED
2 alsa_input.platform-sound.analog-mono module-alsa-card.c s16le 1ch 48000Hz SUSPENDED
3 alsa_output.platform-sound-hdmi.stereo-fallback.monitor module-alsa-card.c s16le 2ch 48000Hz IDLE
5 bluez_source.D8_5B_2A_5B_7B_E6.a2dp_source module-bluez5-device.c s16le 2ch 44100Hz RUNNING


Whenever I'm in the call (using HFP), I get following sources and sinks:



pactl list short sources
0 alsa_output.hw_1_0.monitor module-alsa-sink.c s16le 2ch 48000Hz SUSPENDED
1 alsa_output.platform-sound.analog-mono.monitor module-alsa-card.c s16le 1ch 48000Hz SUSPENDED
2 alsa_input.platform-sound.analog-mono module-alsa-card.c s16le 1ch 48000Hz SUSPENDED
3 alsa_output.platform-sound-hdmi.stereo-fallback.monitor module-alsa-card.c s16le 2ch 48000Hz SUSPENDED
7 bluez_sink.D8_5B_2A_5B_7B_E6.headset_audio_gateway.monitor module-bluez5-device.c s16le 1ch 8000Hz IDLE
8 bluez_source.D8_5B_2A_5B_7B_E6.headset_audio_gateway module-bluez5-device.c s16le 1ch 8000Hz RUNNING

pactl list short sinks
0 alsa_output.hw_1_0 module-alsa-sink.c s16le 2ch 48000Hz SUSPENDED
1 alsa_output.platform-sound.analog-mono module-alsa-card.c s16le 1ch 48000Hz SUSPENDED
2 alsa_output.platform-sound-hdmi.stereo-fallback module-alsa-card.c s16le 2ch 48000Hz SUSPENDED
3 bluez_sink.D8_5B_2A_5B_7B_E6.headset_audio_gateway module-bluez5-device.c s16le 1ch 8000Hz RUNNING


This is quite weird since sink changes from my HDMI monitor to the bluetooth device itself whenever I am in the call. Please find my /etc/pulse/default.pa below:



.fail

### Automatically restore the volume of streams and devices
load-module module-device-restore
load-module module-stream-restore
load-module module-card-restore

### Automatically augment property information from .desktop files
### stored in /usr/share/application
load-module module-augment-properties

### Should be after module-*-restore but before module-*-detect
load-module module-switch-on-port-available

### Load audio drivers statically
### (it's probably better to not load these drivers manually, but instead
### use module-udev-detect -- see below -- for doing this automatically)
load-module module-alsa-sink device=hw:1,0
#load-module module-alsa-source
#load-module module-oss device="/dev/dsp" sink_name=output source_name=input
#load-module module-oss-mmap device="/dev/dsp" sink_name=output source_name=input
#load-module module-null-sink
#load-module module-pipe-sink

### Automatically load driver modules depending on the hardware available
.ifexists module-udev-detect.so
load-module module-udev-detect
.else
### Use the static hardware detection module (for systems that lack udev support)
load-module module-detect
.endif

### Automatically connect sink and source if JACK server is present
.ifexists module-jackdbus-detect.so
.nofail
load-module module-jackdbus-detect channels=2
.fail
.endif

### Automatically load driver modules for Bluetooth hardware
.ifexists module-bluetooth-policy.so
load-module module-bluetooth-policy ag=true auto_switch=2
.endif

.ifexists module-bluetooth-discover.so
load-module module-bluetooth-discover headset=auto
.endif

### Load several protocols
.ifexists module-esound-protocol-unix.so
load-module module-esound-protocol-unix
.endif
load-module module-native-protocol-unix auth-anonymous=1

### Network access (may be configured with paprefs, so leave this commented
### here if you plan to use paprefs)
#load-module module-esound-protocol-tcp
#load-module module-native-protocol-tcp
#load-module module-zeroconf-publish

### Load the RTP receiver module (also configured via paprefs, see above)
#load-module module-rtp-recv

### Load the RTP sender module (also configured via paprefs, see above)
#load-module module-null-sink sink_name=rtp format=s16be channels=2 rate=44100 sink_properties="device.description='RTP Multicast Sink'"
#load-module module-rtp-send source=rtp.monitor


### Load additional modules from GConf settings. This can be configured with the paprefs tool.
### Please keep in mind that the modules configured by paprefs might conflict with manually
### loaded modules.
.ifexists module-gconf.so
.nofail
load-module module-gconf
.fail
.endif

### Automatically restore the default sink/source when changed by the user
### during runtime
### NOTE: This should be loaded as early as possible so that subsequent modules
### that look up the default sink/source get the right value
load-module module-default-device-restore

### Automatically move streams to the default sink if the sink they are
### connected to dies, similar for sources
load-module module-rescue-streams

### Make sure we always have a sink around, even if it is a null sink.
load-module module-always-sink

### Honour intended role device property
load-module module-intended-roles

### Automatically suspend sinks/sources that become idle for too long
load-module module-suspend-on-idle

### If autoexit on idle is enabled we want to make sure we only quit
### when no local session needs us anymore.
.ifexists module-console-kit.so
load-module module-console-kit
.endif
.ifexists module-systemd-login.so
load-module module-systemd-login
.endif

### Enable positioned event sounds
load-module module-position-event-sounds

### Cork music/video streams when a phone stream is active
load-module module-role-cork

### Modules to allow autoloading of filters (such as echo cancellation)
### on demand. module-filter-heuristics tries to determine what filters
### make sense, and module-filter-apply does the heavy-lifting of
### loading modules and rerouting streams.
load-module module-filter-heuristics
load-module module-filter-apply

load-module module-switch-on-connect

### Make some devices default
# Make HDMI default
set-default-sink 0
#set-default-source input


The following is my .asoundrc ALSA configuration (HDMI device by default):



pcm.!default 
type hw
card 1
device 0










share|improve this question



























    up vote
    0
    down vote

    favorite












    I'm trying to set up A2DP+HFP profiles in an embedded board. Goal is to use pulseaudio 12.2, ofono 1.18, and bluez 5.41 in order to connect to a mobile phone and use A2DP, HFP profiles automatically, whenever necessary. I did lots and lots of things to update the versions and configure the daemons. Right now I can see that HFP profile is available when connected.



    A2DP works perfectly and I am able to stream music from phone to embedded board. When I get a call, I can answer it with Bluetooth and it looks that HFP is the active profile whilst I'm in the call. The weird thing is that there is no audio from the embedded board (HDMI monitor connected to it).



    The following will give you how it looks like. When I'm streaming music from phone via A2DP, I get following sources and sinks:



    pactl list short sinks
    0 alsa_output.hw_1_0 module-alsa-sink.c s16le 2ch 48000Hz SUSPENDED
    1 alsa_output.platform-sound.analog-mono module-alsa-card.c s16le 1ch 48000Hz SUSPENDED
    2 alsa_output.platform-sound-hdmi.stereo-fallback module-alsa-card.c s16le 2ch 48000Hz RUNNING

    pactl list short sources
    0 alsa_output.hw_1_0.monitor module-alsa-sink.c s16le 2ch 48000Hz SUSPENDED
    1 alsa_output.platform-sound.analog-mono.monitor module-alsa-card.c s16le 1ch 48000Hz SUSPENDED
    2 alsa_input.platform-sound.analog-mono module-alsa-card.c s16le 1ch 48000Hz SUSPENDED
    3 alsa_output.platform-sound-hdmi.stereo-fallback.monitor module-alsa-card.c s16le 2ch 48000Hz IDLE
    5 bluez_source.D8_5B_2A_5B_7B_E6.a2dp_source module-bluez5-device.c s16le 2ch 44100Hz RUNNING


    Whenever I'm in the call (using HFP), I get following sources and sinks:



    pactl list short sources
    0 alsa_output.hw_1_0.monitor module-alsa-sink.c s16le 2ch 48000Hz SUSPENDED
    1 alsa_output.platform-sound.analog-mono.monitor module-alsa-card.c s16le 1ch 48000Hz SUSPENDED
    2 alsa_input.platform-sound.analog-mono module-alsa-card.c s16le 1ch 48000Hz SUSPENDED
    3 alsa_output.platform-sound-hdmi.stereo-fallback.monitor module-alsa-card.c s16le 2ch 48000Hz SUSPENDED
    7 bluez_sink.D8_5B_2A_5B_7B_E6.headset_audio_gateway.monitor module-bluez5-device.c s16le 1ch 8000Hz IDLE
    8 bluez_source.D8_5B_2A_5B_7B_E6.headset_audio_gateway module-bluez5-device.c s16le 1ch 8000Hz RUNNING

    pactl list short sinks
    0 alsa_output.hw_1_0 module-alsa-sink.c s16le 2ch 48000Hz SUSPENDED
    1 alsa_output.platform-sound.analog-mono module-alsa-card.c s16le 1ch 48000Hz SUSPENDED
    2 alsa_output.platform-sound-hdmi.stereo-fallback module-alsa-card.c s16le 2ch 48000Hz SUSPENDED
    3 bluez_sink.D8_5B_2A_5B_7B_E6.headset_audio_gateway module-bluez5-device.c s16le 1ch 8000Hz RUNNING


    This is quite weird since sink changes from my HDMI monitor to the bluetooth device itself whenever I am in the call. Please find my /etc/pulse/default.pa below:



    .fail

    ### Automatically restore the volume of streams and devices
    load-module module-device-restore
    load-module module-stream-restore
    load-module module-card-restore

    ### Automatically augment property information from .desktop files
    ### stored in /usr/share/application
    load-module module-augment-properties

    ### Should be after module-*-restore but before module-*-detect
    load-module module-switch-on-port-available

    ### Load audio drivers statically
    ### (it's probably better to not load these drivers manually, but instead
    ### use module-udev-detect -- see below -- for doing this automatically)
    load-module module-alsa-sink device=hw:1,0
    #load-module module-alsa-source
    #load-module module-oss device="/dev/dsp" sink_name=output source_name=input
    #load-module module-oss-mmap device="/dev/dsp" sink_name=output source_name=input
    #load-module module-null-sink
    #load-module module-pipe-sink

    ### Automatically load driver modules depending on the hardware available
    .ifexists module-udev-detect.so
    load-module module-udev-detect
    .else
    ### Use the static hardware detection module (for systems that lack udev support)
    load-module module-detect
    .endif

    ### Automatically connect sink and source if JACK server is present
    .ifexists module-jackdbus-detect.so
    .nofail
    load-module module-jackdbus-detect channels=2
    .fail
    .endif

    ### Automatically load driver modules for Bluetooth hardware
    .ifexists module-bluetooth-policy.so
    load-module module-bluetooth-policy ag=true auto_switch=2
    .endif

    .ifexists module-bluetooth-discover.so
    load-module module-bluetooth-discover headset=auto
    .endif

    ### Load several protocols
    .ifexists module-esound-protocol-unix.so
    load-module module-esound-protocol-unix
    .endif
    load-module module-native-protocol-unix auth-anonymous=1

    ### Network access (may be configured with paprefs, so leave this commented
    ### here if you plan to use paprefs)
    #load-module module-esound-protocol-tcp
    #load-module module-native-protocol-tcp
    #load-module module-zeroconf-publish

    ### Load the RTP receiver module (also configured via paprefs, see above)
    #load-module module-rtp-recv

    ### Load the RTP sender module (also configured via paprefs, see above)
    #load-module module-null-sink sink_name=rtp format=s16be channels=2 rate=44100 sink_properties="device.description='RTP Multicast Sink'"
    #load-module module-rtp-send source=rtp.monitor


    ### Load additional modules from GConf settings. This can be configured with the paprefs tool.
    ### Please keep in mind that the modules configured by paprefs might conflict with manually
    ### loaded modules.
    .ifexists module-gconf.so
    .nofail
    load-module module-gconf
    .fail
    .endif

    ### Automatically restore the default sink/source when changed by the user
    ### during runtime
    ### NOTE: This should be loaded as early as possible so that subsequent modules
    ### that look up the default sink/source get the right value
    load-module module-default-device-restore

    ### Automatically move streams to the default sink if the sink they are
    ### connected to dies, similar for sources
    load-module module-rescue-streams

    ### Make sure we always have a sink around, even if it is a null sink.
    load-module module-always-sink

    ### Honour intended role device property
    load-module module-intended-roles

    ### Automatically suspend sinks/sources that become idle for too long
    load-module module-suspend-on-idle

    ### If autoexit on idle is enabled we want to make sure we only quit
    ### when no local session needs us anymore.
    .ifexists module-console-kit.so
    load-module module-console-kit
    .endif
    .ifexists module-systemd-login.so
    load-module module-systemd-login
    .endif

    ### Enable positioned event sounds
    load-module module-position-event-sounds

    ### Cork music/video streams when a phone stream is active
    load-module module-role-cork

    ### Modules to allow autoloading of filters (such as echo cancellation)
    ### on demand. module-filter-heuristics tries to determine what filters
    ### make sense, and module-filter-apply does the heavy-lifting of
    ### loading modules and rerouting streams.
    load-module module-filter-heuristics
    load-module module-filter-apply

    load-module module-switch-on-connect

    ### Make some devices default
    # Make HDMI default
    set-default-sink 0
    #set-default-source input


    The following is my .asoundrc ALSA configuration (HDMI device by default):



    pcm.!default 
    type hw
    card 1
    device 0










    share|improve this question

























      up vote
      0
      down vote

      favorite









      up vote
      0
      down vote

      favorite











      I'm trying to set up A2DP+HFP profiles in an embedded board. Goal is to use pulseaudio 12.2, ofono 1.18, and bluez 5.41 in order to connect to a mobile phone and use A2DP, HFP profiles automatically, whenever necessary. I did lots and lots of things to update the versions and configure the daemons. Right now I can see that HFP profile is available when connected.



      A2DP works perfectly and I am able to stream music from phone to embedded board. When I get a call, I can answer it with Bluetooth and it looks that HFP is the active profile whilst I'm in the call. The weird thing is that there is no audio from the embedded board (HDMI monitor connected to it).



      The following will give you how it looks like. When I'm streaming music from phone via A2DP, I get following sources and sinks:



      pactl list short sinks
      0 alsa_output.hw_1_0 module-alsa-sink.c s16le 2ch 48000Hz SUSPENDED
      1 alsa_output.platform-sound.analog-mono module-alsa-card.c s16le 1ch 48000Hz SUSPENDED
      2 alsa_output.platform-sound-hdmi.stereo-fallback module-alsa-card.c s16le 2ch 48000Hz RUNNING

      pactl list short sources
      0 alsa_output.hw_1_0.monitor module-alsa-sink.c s16le 2ch 48000Hz SUSPENDED
      1 alsa_output.platform-sound.analog-mono.monitor module-alsa-card.c s16le 1ch 48000Hz SUSPENDED
      2 alsa_input.platform-sound.analog-mono module-alsa-card.c s16le 1ch 48000Hz SUSPENDED
      3 alsa_output.platform-sound-hdmi.stereo-fallback.monitor module-alsa-card.c s16le 2ch 48000Hz IDLE
      5 bluez_source.D8_5B_2A_5B_7B_E6.a2dp_source module-bluez5-device.c s16le 2ch 44100Hz RUNNING


      Whenever I'm in the call (using HFP), I get following sources and sinks:



      pactl list short sources
      0 alsa_output.hw_1_0.monitor module-alsa-sink.c s16le 2ch 48000Hz SUSPENDED
      1 alsa_output.platform-sound.analog-mono.monitor module-alsa-card.c s16le 1ch 48000Hz SUSPENDED
      2 alsa_input.platform-sound.analog-mono module-alsa-card.c s16le 1ch 48000Hz SUSPENDED
      3 alsa_output.platform-sound-hdmi.stereo-fallback.monitor module-alsa-card.c s16le 2ch 48000Hz SUSPENDED
      7 bluez_sink.D8_5B_2A_5B_7B_E6.headset_audio_gateway.monitor module-bluez5-device.c s16le 1ch 8000Hz IDLE
      8 bluez_source.D8_5B_2A_5B_7B_E6.headset_audio_gateway module-bluez5-device.c s16le 1ch 8000Hz RUNNING

      pactl list short sinks
      0 alsa_output.hw_1_0 module-alsa-sink.c s16le 2ch 48000Hz SUSPENDED
      1 alsa_output.platform-sound.analog-mono module-alsa-card.c s16le 1ch 48000Hz SUSPENDED
      2 alsa_output.platform-sound-hdmi.stereo-fallback module-alsa-card.c s16le 2ch 48000Hz SUSPENDED
      3 bluez_sink.D8_5B_2A_5B_7B_E6.headset_audio_gateway module-bluez5-device.c s16le 1ch 8000Hz RUNNING


      This is quite weird since sink changes from my HDMI monitor to the bluetooth device itself whenever I am in the call. Please find my /etc/pulse/default.pa below:



      .fail

      ### Automatically restore the volume of streams and devices
      load-module module-device-restore
      load-module module-stream-restore
      load-module module-card-restore

      ### Automatically augment property information from .desktop files
      ### stored in /usr/share/application
      load-module module-augment-properties

      ### Should be after module-*-restore but before module-*-detect
      load-module module-switch-on-port-available

      ### Load audio drivers statically
      ### (it's probably better to not load these drivers manually, but instead
      ### use module-udev-detect -- see below -- for doing this automatically)
      load-module module-alsa-sink device=hw:1,0
      #load-module module-alsa-source
      #load-module module-oss device="/dev/dsp" sink_name=output source_name=input
      #load-module module-oss-mmap device="/dev/dsp" sink_name=output source_name=input
      #load-module module-null-sink
      #load-module module-pipe-sink

      ### Automatically load driver modules depending on the hardware available
      .ifexists module-udev-detect.so
      load-module module-udev-detect
      .else
      ### Use the static hardware detection module (for systems that lack udev support)
      load-module module-detect
      .endif

      ### Automatically connect sink and source if JACK server is present
      .ifexists module-jackdbus-detect.so
      .nofail
      load-module module-jackdbus-detect channels=2
      .fail
      .endif

      ### Automatically load driver modules for Bluetooth hardware
      .ifexists module-bluetooth-policy.so
      load-module module-bluetooth-policy ag=true auto_switch=2
      .endif

      .ifexists module-bluetooth-discover.so
      load-module module-bluetooth-discover headset=auto
      .endif

      ### Load several protocols
      .ifexists module-esound-protocol-unix.so
      load-module module-esound-protocol-unix
      .endif
      load-module module-native-protocol-unix auth-anonymous=1

      ### Network access (may be configured with paprefs, so leave this commented
      ### here if you plan to use paprefs)
      #load-module module-esound-protocol-tcp
      #load-module module-native-protocol-tcp
      #load-module module-zeroconf-publish

      ### Load the RTP receiver module (also configured via paprefs, see above)
      #load-module module-rtp-recv

      ### Load the RTP sender module (also configured via paprefs, see above)
      #load-module module-null-sink sink_name=rtp format=s16be channels=2 rate=44100 sink_properties="device.description='RTP Multicast Sink'"
      #load-module module-rtp-send source=rtp.monitor


      ### Load additional modules from GConf settings. This can be configured with the paprefs tool.
      ### Please keep in mind that the modules configured by paprefs might conflict with manually
      ### loaded modules.
      .ifexists module-gconf.so
      .nofail
      load-module module-gconf
      .fail
      .endif

      ### Automatically restore the default sink/source when changed by the user
      ### during runtime
      ### NOTE: This should be loaded as early as possible so that subsequent modules
      ### that look up the default sink/source get the right value
      load-module module-default-device-restore

      ### Automatically move streams to the default sink if the sink they are
      ### connected to dies, similar for sources
      load-module module-rescue-streams

      ### Make sure we always have a sink around, even if it is a null sink.
      load-module module-always-sink

      ### Honour intended role device property
      load-module module-intended-roles

      ### Automatically suspend sinks/sources that become idle for too long
      load-module module-suspend-on-idle

      ### If autoexit on idle is enabled we want to make sure we only quit
      ### when no local session needs us anymore.
      .ifexists module-console-kit.so
      load-module module-console-kit
      .endif
      .ifexists module-systemd-login.so
      load-module module-systemd-login
      .endif

      ### Enable positioned event sounds
      load-module module-position-event-sounds

      ### Cork music/video streams when a phone stream is active
      load-module module-role-cork

      ### Modules to allow autoloading of filters (such as echo cancellation)
      ### on demand. module-filter-heuristics tries to determine what filters
      ### make sense, and module-filter-apply does the heavy-lifting of
      ### loading modules and rerouting streams.
      load-module module-filter-heuristics
      load-module module-filter-apply

      load-module module-switch-on-connect

      ### Make some devices default
      # Make HDMI default
      set-default-sink 0
      #set-default-source input


      The following is my .asoundrc ALSA configuration (HDMI device by default):



      pcm.!default 
      type hw
      card 1
      device 0










      share|improve this question















      I'm trying to set up A2DP+HFP profiles in an embedded board. Goal is to use pulseaudio 12.2, ofono 1.18, and bluez 5.41 in order to connect to a mobile phone and use A2DP, HFP profiles automatically, whenever necessary. I did lots and lots of things to update the versions and configure the daemons. Right now I can see that HFP profile is available when connected.



      A2DP works perfectly and I am able to stream music from phone to embedded board. When I get a call, I can answer it with Bluetooth and it looks that HFP is the active profile whilst I'm in the call. The weird thing is that there is no audio from the embedded board (HDMI monitor connected to it).



      The following will give you how it looks like. When I'm streaming music from phone via A2DP, I get following sources and sinks:



      pactl list short sinks
      0 alsa_output.hw_1_0 module-alsa-sink.c s16le 2ch 48000Hz SUSPENDED
      1 alsa_output.platform-sound.analog-mono module-alsa-card.c s16le 1ch 48000Hz SUSPENDED
      2 alsa_output.platform-sound-hdmi.stereo-fallback module-alsa-card.c s16le 2ch 48000Hz RUNNING

      pactl list short sources
      0 alsa_output.hw_1_0.monitor module-alsa-sink.c s16le 2ch 48000Hz SUSPENDED
      1 alsa_output.platform-sound.analog-mono.monitor module-alsa-card.c s16le 1ch 48000Hz SUSPENDED
      2 alsa_input.platform-sound.analog-mono module-alsa-card.c s16le 1ch 48000Hz SUSPENDED
      3 alsa_output.platform-sound-hdmi.stereo-fallback.monitor module-alsa-card.c s16le 2ch 48000Hz IDLE
      5 bluez_source.D8_5B_2A_5B_7B_E6.a2dp_source module-bluez5-device.c s16le 2ch 44100Hz RUNNING


      Whenever I'm in the call (using HFP), I get following sources and sinks:



      pactl list short sources
      0 alsa_output.hw_1_0.monitor module-alsa-sink.c s16le 2ch 48000Hz SUSPENDED
      1 alsa_output.platform-sound.analog-mono.monitor module-alsa-card.c s16le 1ch 48000Hz SUSPENDED
      2 alsa_input.platform-sound.analog-mono module-alsa-card.c s16le 1ch 48000Hz SUSPENDED
      3 alsa_output.platform-sound-hdmi.stereo-fallback.monitor module-alsa-card.c s16le 2ch 48000Hz SUSPENDED
      7 bluez_sink.D8_5B_2A_5B_7B_E6.headset_audio_gateway.monitor module-bluez5-device.c s16le 1ch 8000Hz IDLE
      8 bluez_source.D8_5B_2A_5B_7B_E6.headset_audio_gateway module-bluez5-device.c s16le 1ch 8000Hz RUNNING

      pactl list short sinks
      0 alsa_output.hw_1_0 module-alsa-sink.c s16le 2ch 48000Hz SUSPENDED
      1 alsa_output.platform-sound.analog-mono module-alsa-card.c s16le 1ch 48000Hz SUSPENDED
      2 alsa_output.platform-sound-hdmi.stereo-fallback module-alsa-card.c s16le 2ch 48000Hz SUSPENDED
      3 bluez_sink.D8_5B_2A_5B_7B_E6.headset_audio_gateway module-bluez5-device.c s16le 1ch 8000Hz RUNNING


      This is quite weird since sink changes from my HDMI monitor to the bluetooth device itself whenever I am in the call. Please find my /etc/pulse/default.pa below:



      .fail

      ### Automatically restore the volume of streams and devices
      load-module module-device-restore
      load-module module-stream-restore
      load-module module-card-restore

      ### Automatically augment property information from .desktop files
      ### stored in /usr/share/application
      load-module module-augment-properties

      ### Should be after module-*-restore but before module-*-detect
      load-module module-switch-on-port-available

      ### Load audio drivers statically
      ### (it's probably better to not load these drivers manually, but instead
      ### use module-udev-detect -- see below -- for doing this automatically)
      load-module module-alsa-sink device=hw:1,0
      #load-module module-alsa-source
      #load-module module-oss device="/dev/dsp" sink_name=output source_name=input
      #load-module module-oss-mmap device="/dev/dsp" sink_name=output source_name=input
      #load-module module-null-sink
      #load-module module-pipe-sink

      ### Automatically load driver modules depending on the hardware available
      .ifexists module-udev-detect.so
      load-module module-udev-detect
      .else
      ### Use the static hardware detection module (for systems that lack udev support)
      load-module module-detect
      .endif

      ### Automatically connect sink and source if JACK server is present
      .ifexists module-jackdbus-detect.so
      .nofail
      load-module module-jackdbus-detect channels=2
      .fail
      .endif

      ### Automatically load driver modules for Bluetooth hardware
      .ifexists module-bluetooth-policy.so
      load-module module-bluetooth-policy ag=true auto_switch=2
      .endif

      .ifexists module-bluetooth-discover.so
      load-module module-bluetooth-discover headset=auto
      .endif

      ### Load several protocols
      .ifexists module-esound-protocol-unix.so
      load-module module-esound-protocol-unix
      .endif
      load-module module-native-protocol-unix auth-anonymous=1

      ### Network access (may be configured with paprefs, so leave this commented
      ### here if you plan to use paprefs)
      #load-module module-esound-protocol-tcp
      #load-module module-native-protocol-tcp
      #load-module module-zeroconf-publish

      ### Load the RTP receiver module (also configured via paprefs, see above)
      #load-module module-rtp-recv

      ### Load the RTP sender module (also configured via paprefs, see above)
      #load-module module-null-sink sink_name=rtp format=s16be channels=2 rate=44100 sink_properties="device.description='RTP Multicast Sink'"
      #load-module module-rtp-send source=rtp.monitor


      ### Load additional modules from GConf settings. This can be configured with the paprefs tool.
      ### Please keep in mind that the modules configured by paprefs might conflict with manually
      ### loaded modules.
      .ifexists module-gconf.so
      .nofail
      load-module module-gconf
      .fail
      .endif

      ### Automatically restore the default sink/source when changed by the user
      ### during runtime
      ### NOTE: This should be loaded as early as possible so that subsequent modules
      ### that look up the default sink/source get the right value
      load-module module-default-device-restore

      ### Automatically move streams to the default sink if the sink they are
      ### connected to dies, similar for sources
      load-module module-rescue-streams

      ### Make sure we always have a sink around, even if it is a null sink.
      load-module module-always-sink

      ### Honour intended role device property
      load-module module-intended-roles

      ### Automatically suspend sinks/sources that become idle for too long
      load-module module-suspend-on-idle

      ### If autoexit on idle is enabled we want to make sure we only quit
      ### when no local session needs us anymore.
      .ifexists module-console-kit.so
      load-module module-console-kit
      .endif
      .ifexists module-systemd-login.so
      load-module module-systemd-login
      .endif

      ### Enable positioned event sounds
      load-module module-position-event-sounds

      ### Cork music/video streams when a phone stream is active
      load-module module-role-cork

      ### Modules to allow autoloading of filters (such as echo cancellation)
      ### on demand. module-filter-heuristics tries to determine what filters
      ### make sense, and module-filter-apply does the heavy-lifting of
      ### loading modules and rerouting streams.
      load-module module-filter-heuristics
      load-module module-filter-apply

      load-module module-switch-on-connect

      ### Make some devices default
      # Make HDMI default
      set-default-sink 0
      #set-default-source input


      The following is my .asoundrc ALSA configuration (HDMI device by default):



      pcm.!default 
      type hw
      card 1
      device 0







      pulseaudio alsa bluetooth bluez






      share|improve this question















      share|improve this question













      share|improve this question




      share|improve this question








      edited Sep 13 at 12:02









      Rui F Ribeiro

      36.8k1273117




      36.8k1273117










      asked Sep 13 at 12:01









      mozcelikors

      1316




      1316

























          active

          oldest

          votes











          Your Answer







          StackExchange.ready(function()
          var channelOptions =
          tags: "".split(" "),
          id: "106"
          ;
          initTagRenderer("".split(" "), "".split(" "), channelOptions);

          StackExchange.using("externalEditor", function()
          // Have to fire editor after snippets, if snippets enabled
          if (StackExchange.settings.snippets.snippetsEnabled)
          StackExchange.using("snippets", function()
          createEditor();
          );

          else
          createEditor();

          );

          function createEditor()
          StackExchange.prepareEditor(
          heartbeatType: 'answer',
          convertImagesToLinks: false,
          noModals: false,
          showLowRepImageUploadWarning: true,
          reputationToPostImages: null,
          bindNavPrevention: true,
          postfix: "",
          onDemand: true,
          discardSelector: ".discard-answer"
          ,immediatelyShowMarkdownHelp:true
          );



          );













           

          draft saved


          draft discarded


















          StackExchange.ready(
          function ()
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2funix.stackexchange.com%2fquestions%2f468780%2fpulseaudio-setting-up-sinks-and-sources-for-a2dp-and-hfp-connections%23new-answer', 'question_page');

          );

          Post as a guest



































          active

          oldest

          votes













          active

          oldest

          votes









          active

          oldest

          votes






          active

          oldest

          votes















           

          draft saved


          draft discarded















































           


          draft saved


          draft discarded














          StackExchange.ready(
          function ()
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2funix.stackexchange.com%2fquestions%2f468780%2fpulseaudio-setting-up-sinks-and-sources-for-a2dp-and-hfp-connections%23new-answer', 'question_page');

          );

          Post as a guest













































































          Popular posts from this blog

          How to check contact read email or not when send email to Individual?

          Bahrain

          Postfix configuration issue with fips on centos 7; mailgun relay