Bug 40188

Summary: [master] Changing source volume causes protocol error
Product: PulseAudio Reporter: Jan Alexander Steffens (heftig) <jan.steffens>
Component: pavucontrolAssignee: pulseaudio-bugs
Status: RESOLVED FIXED QA Contact: pulseaudio-bugs
Severity: major    
Priority: medium CC: colin, lennart
Version: unspecified   
Hardware: x86-64 (AMD64)   
OS: Linux (All)   
Whiteboard:
i915 platform: i915 features:
Bug Depends on:    
Bug Blocks: 40193    

Description Jan Alexander Steffens (heftig) 2011-08-17 22:08:06 UTC
Using PulseAudio 7ed177d and Pavucontrol 5c19f6b, PA disconnects Pavucontrol with a native protocol error after changing the volume of a source. 

D: [pulseaudio] protocol-native.c: Client pavucontrol changes volume of source alsa_input.pci-0000_00_1b.0.analog-stereo.
D: [alsa-source] alsa-source.c: Requested volume: 0:  56% 1:  56%
D: [alsa-source] alsa-source.c:            in dB: 0: -15.26 dB 1: -15.26 dB
D: [alsa-source] alsa-source.c: Got hardware volume: 0:  54% 1:  54%
D: [alsa-source] alsa-source.c:               in dB: 0: -16.00 dB 1: -16.00 dB
D: [alsa-source] alsa-source.c: Calculated software volume: 0: 103% 1: 103% (accurate-enough=no)
D: [alsa-source] alsa-source.c:                      in dB: 0: 0.74 dB 1: 0.74 dB
D: [alsa-source] source.c: Volume going up to 35466 at 16977398972
D: [alsa-source] source.c: Next volume change in 7942 usec
D: [alsa-source] source.c: Next volume change in 7911 usec
I: [pulseaudio] module-device-restore.c: Storing volume/mute/port for device source:alsa_input.pci-0000_00_1b.0.analog-stereo.
E: [pulseaudio] protocol-native.c: protocol error, kicking client
Comment 1 Colin Guthrie 2011-08-18 01:41:59 UTC
I cannot reproduce this.

How did you install PA? Are you sure you do not have mutliple libpulsecommon.so's installed (e.g perhaps one PA is in /usr/local and you have another in /usr or similar)

Also is it definitely pavucontrol that gets kicked? The actual volume change was successful (otherwise it would have been kicked before even getting logged), so it's something strange....

Help narrowing down exactly what call caused this would be appreciated (perhaps console output from pavucontrol?)
Comment 2 Colin Guthrie 2011-08-18 02:17:38 UTC
Scratch that. I can reproduce. My installed pavucontrol was too old :$
Comment 3 Colin Guthrie 2011-08-18 02:34:36 UTC
OK, yeah this is my fault (shock, surprise!)

It seems I didn't really think things through with the pa_ext_device_restore_info struct. It doesn't differentiate between sink/source, so the code on the receiving end doesn't know to which type of device the index refers.

I'll fix it up, but won't get the chance for a couple days.
Comment 4 Colin Guthrie 2011-08-18 09:48:10 UTC
Can you try latest HEAD of both? Should be fixed now.

It required an API change due to my previous thinko, but as we've not released yet, that's OK.
Comment 5 Jan Alexander Steffens (heftig) 2011-08-18 15:13:08 UTC
Indeed seems to be fixed.

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.