mirror of
https://gitlab.freedesktop.org/pulseaudio/pulseaudio.git
synced 2025-11-04 13:29:59 -05:00
alsa-sink/source: Make sure volumes are synchronised after fast user switching
Log in as user A, fast user switch to user B, let user B change port, volume or mute status, then switch back to user A. At this point we must make sure that the ALSA and PA volumes are synchronised by writing to the ALSA mixer when the ALSA device becomes available. BugLink: https://bugs.launchpad.net/bugs/915035 Signed-off-by: David Henningsson <david.henningsson@canonical.com>
This commit is contained in:
parent
29e4b187a3
commit
6961d3e1c7
6 changed files with 73 additions and 4 deletions
|
|
@ -111,6 +111,7 @@ struct pa_sink {
|
|||
|
||||
pa_hashmap *ports;
|
||||
pa_device_port *active_port;
|
||||
pa_atomic_t mixer_dirty;
|
||||
|
||||
unsigned priority;
|
||||
|
||||
|
|
@ -438,6 +439,7 @@ pa_bool_t pa_sink_get_mute(pa_sink *sink, pa_bool_t force_refresh);
|
|||
pa_bool_t pa_sink_update_proplist(pa_sink *s, pa_update_mode_t mode, pa_proplist *p);
|
||||
|
||||
int pa_sink_set_port(pa_sink *s, const char *name, pa_bool_t save);
|
||||
void pa_sink_set_mixer_dirty(pa_sink *s, pa_bool_t is_dirty);
|
||||
|
||||
unsigned pa_sink_linked_by(pa_sink *s); /* Number of connected streams */
|
||||
unsigned pa_sink_used_by(pa_sink *s); /* Number of connected streams which are not corked */
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue