Bug#776637: pulseaudio: resets the volume to 100% everytime I connect my bluetooth speakers

Stefan Nagy public at stefan-nagy.at
Thu Feb 12 18:38:00 UTC 2015


Am Donnerstag, den 12.02.2015, 10:30 -0300 schrieb Felipe Sateler:
> >> Does this problem occur after disconnecting and reconnecting the
> >> speakers? If so, please provide a verbose log of pulseaudio[1] where
> >> you connect the bluetooth speakers.
> >
> > This problem occurs every time I connect my speakers. I'll attach a
> > pulseaudio log file I already posted with report #776632.
> >
> > I started pulseaudio, entered GNOME bluetooth settings, connected to my
> > bluetooth speakers and then entered GNOME audio settings. In this case I
> > was not affected by bug #776632, so the speakers were addded as audio
> > output device.
> 
> Thanks for this log. I'm currrently a bit busy to investigate this,
> but in the meantime please check this askubuntu post to see if
> anything applies to you:
> 
> http://askubuntu.com/questions/396841/how-can-i-save-my-bluetooth-headset-volume-settings


Thanks for your speedy answer and the link!

I didn't edit my /etc/pulse/default.pa but I'll attach this file anyway.
I'll also attach the output of 'pacmd list-modules'. Modules
module-device-restore and module-card-restore are both loaded.

I deleted ~/.config/pulse/ which contains the database with device
volumes several times before and tried it again now – but without any
luck.

Since it is mentioned that applications can override the default
settings I didn't use Rhythmbox this time but tried out Totem, VLC and
Iceweasel after connecting the speakers instead – also without any luck.

I had these speakers for some months now and connected them several
times every day. Every single time I connected them volume was set to
100%.

Please tell me if I can provide any more useful information.
-------------- next part --------------
#!/usr/bin/pulseaudio -nF
#
# This file is part of PulseAudio.
#
# PulseAudio is free software; you can redistribute it and/or modify it
# under the terms of the GNU Lesser General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
# PulseAudio is distributed in the hope that it will be useful, but
# WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public License
# along with PulseAudio; if not, write to the Free Software Foundation,
# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.

# This startup script is used only if PulseAudio is started per-user
# (i.e. not in system mode)

.nofail

### Load something into the sample cache
#load-sample-lazy x11-bell /usr/share/sounds/gtk-events/activate.wav
#load-sample-lazy pulse-hotplug /usr/share/sounds/startup3.wav
#load-sample-lazy pulse-coldplug /usr/share/sounds/startup3.wav
#load-sample-lazy pulse-access /usr/share/sounds/generic.wav

.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
#load-module module-alsa-source device=hw:1,0
#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
.endif

.ifexists module-bluetooth-discover.so
load-module module-bluetooth-discover
.endif

### Load several protocols
.ifexists module-esound-protocol-unix.so
load-module module-esound-protocol-unix
.endif
load-module module-native-protocol-unix

### 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

# X11 modules should not be started from default.pa so that one daemon
# can be shared by multiple sessions.

### Load X11 bell module
#load-module module-x11-bell sample=bell-windowing-system

### Register ourselves in the X11 session manager
#load-module module-x11-xsmp

### Publish connection data in the X11 root window
#.ifexists module-x11-publish.so
#.nofail
#load-module module-x11-publish
#.fail
#.endif

### Make some devices default
#set-default-sink output
#set-default-source input
-------------- next part --------------
29 module(s) loaded.
    index: 0
	name: <module-device-restore>
	argument: <>
	used: -1
	load once: yes
	properties:
		module.author = "Lennart Poettering"
		module.description = "Automatically restore the volume/mute state of devices"
		module.version = "5.0"
    index: 1
	name: <module-stream-restore>
	argument: <>
	used: -1
	load once: yes
	properties:
		module.author = "Lennart Poettering"
		module.description = "Automatically restore the volume/mute/device state of streams"
		module.version = "5.0"
    index: 2
	name: <module-card-restore>
	argument: <>
	used: -1
	load once: yes
	properties:
		module.author = "Lennart Poettering"
		module.description = "Automatically restore profile of cards"
		module.version = "5.0"
    index: 3
	name: <module-augment-properties>
	argument: <>
	used: -1
	load once: yes
	properties:
		module.author = "Lennart Poettering"
		module.description = "Augment the property sets of streams with additional static information"
		module.version = "5.0"
    index: 4
	name: <module-switch-on-port-available>
	argument: <>
	used: -1
	load once: no
	properties:
		
    index: 5
	name: <module-udev-detect>
	argument: <>
	used: -1
	load once: yes
	properties:
		module.author = "Lennart Poettering"
		module.description = "Detect available audio hardware and load matching drivers"
		module.version = "5.0"
    index: 6
	name: <module-alsa-card>
	argument: <device_id="0" name="pci-0000_00_1b.0" card_name="alsa_card.pci-0000_00_1b.0" namereg_fail=false tsched=yes fixed_latency_range=no ignore_dB=no deferred_volume=yes use_ucm=yes card_properties="module-udev-detect.discovered=1">
	used: 0
	load once: no
	properties:
		module.author = "Lennart Poettering"
		module.description = "ALSA Card"
		module.version = "5.0"
    index: 7
	name: <module-bluetooth-policy>
	argument: <>
	used: -1
	load once: yes
	properties:
		module.author = "Frédéric Dalleau"
		module.description = "When a bluetooth sink or source is added, load module-loopback"
		module.version = "5.0"
    index: 8
	name: <module-bluetooth-discover>
	argument: <>
	used: -1
	load once: yes
	properties:
		module.author = "João Paulo Rechi Vita"
		module.description = "Detect available Bluetooth daemon and load the corresponding discovery module"
		module.version = "5.0"
    index: 9
	name: <module-bluez5-discover>
	argument: <>
	used: -1
	load once: yes
	properties:
		module.author = "João Paulo Rechi Vita"
		module.description = "Detect available BlueZ 5 Bluetooth audio devices and load BlueZ 5 Bluetooth audio drivers"
		module.version = "5.0"
    index: 10
	name: <module-bluez4-discover>
	argument: <>
	used: -1
	load once: yes
	properties:
		module.author = "João Paulo Rechi Vita"
		module.description = "Detect available BlueZ 4 Bluetooth audio devices and load BlueZ 4 Bluetooth audio drivers"
		module.version = "5.0"
    index: 11
	name: <module-native-protocol-unix>
	argument: <>
	used: -1
	load once: no
	properties:
		module.author = "Lennart Poettering"
		module.description = "Native protocol (UNIX sockets)"
		module.version = "5.0"
    index: 12
	name: <module-gconf>
	argument: <>
	used: -1
	load once: yes
	properties:
		module.author = "Lennart Poettering"
		module.description = "GConf Adapter"
		module.version = "5.0"
    index: 13
	name: <module-default-device-restore>
	argument: <>
	used: -1
	load once: yes
	properties:
		module.author = "Lennart Poettering"
		module.description = "Automatically restore the default sink and source"
		module.version = "5.0"
    index: 14
	name: <module-rescue-streams>
	argument: <>
	used: -1
	load once: yes
	properties:
		module.author = "Lennart Poettering"
		module.description = "When a sink/source is removed, try to move its streams to the default sink/source"
		module.version = "5.0"
    index: 15
	name: <module-always-sink>
	argument: <>
	used: -1
	load once: yes
	properties:
		module.author = "Colin Guthrie"
		module.description = "Hält stets einen Sink geladen, selbst wenn dies ein Null-Sink ist"
		module.version = "5.0"
    index: 16
	name: <module-intended-roles>
	argument: <>
	used: -1
	load once: yes
	properties:
		module.author = "Lennart Poettering"
		module.description = "Automatically set device of streams based on intended roles of devices"
		module.version = "5.0"
    index: 17
	name: <module-suspend-on-idle>
	argument: <>
	used: -1
	load once: yes
	properties:
		module.author = "Lennart Poettering"
		module.description = "When a sink/source is idle for too long, suspend it"
		module.version = "5.0"
    index: 18
	name: <module-console-kit>
	argument: <>
	used: -1
	load once: yes
	properties:
		module.author = "Lennart Poettering"
		module.description = "Create a client for each ConsoleKit session of this user"
		module.version = "5.0"
    index: 19
	name: <module-systemd-login>
	argument: <>
	used: -1
	load once: yes
	properties:
		module.author = "Lennart Poettering"
		module.description = "Create a client for each login session of this user"
		module.version = "5.0"
    index: 20
	name: <module-position-event-sounds>
	argument: <>
	used: -1
	load once: yes
	properties:
		module.author = "Lennart Poettering"
		module.description = "Position event sounds between L and R depending on the position on screen of the widget triggering them."
		module.version = "5.0"
    index: 21
	name: <module-role-cork>
	argument: <>
	used: -1
	load once: yes
	properties:
		module.author = "Lennart Poettering"
		module.description = "Mute & cork streams with certain roles while others exist"
		module.version = "5.0"
    index: 22
	name: <module-filter-heuristics>
	argument: <>
	used: -1
	load once: yes
	properties:
		module.author = "Colin Guthrie"
		module.description = "Detect when various filters are desirable"
		module.version = "5.0"
    index: 23
	name: <module-filter-apply>
	argument: <>
	used: -1
	load once: yes
	properties:
		module.author = "Colin Guthrie"
		module.description = "Load filter sinks automatically when needed"
		module.version = "5.0"
    index: 24
	name: <module-x11-publish>
	argument: <display=:0>
	used: -1
	load once: no
	properties:
		module.author = "Lennart Poettering"
		module.description = "X11 credential publisher"
		module.version = "5.0"
    index: 25
	name: <module-x11-cork-request>
	argument: <display=:0>
	used: -1
	load once: no
	properties:
		module.author = "Lennart Poettering"
		module.description = "Synthesize X11 media key events when cork/uncork is requested"
		module.version = "5.0"
    index: 26
	name: <module-x11-xsmp>
	argument: <display=:0 session_manager=local/rosa:@/tmp/.ICE-unix/1328,unix/rosa:/tmp/.ICE-unix/1328>
	used: -1
	load once: no
	properties:
		module.author = "Lennart Poettering"
		module.description = "X11 session management"
		module.version = "5.0"
    index: 27
	name: <module-bluez5-device>
	argument: <path=/org/bluez/hci0/dev_00_02_3C_49_93_08>
	used: 1
	load once: no
	properties:
		module.author = "João Paulo Rechi Vita"
		module.description = "BlueZ 5 Bluetooth audio sink and source"
		module.version = "5.0"
    index: 28
	name: <module-cli-protocol-unix>
	argument: <>
	used: -1
	load once: no
	properties:
		module.author = "Lennart Poettering"
		module.description = "Command line interface protocol (UNIX sockets)"
		module.version = "5.0"


More information about the pkg-pulseaudio-devel mailing list