This bug [1] is still reported as present in 3.0, so I tried to track it down, but I'm not sure what the best fix is. Here's where it crashes: module-stream-restore.c: if (sink_input->save_volume && pa_sink_input_is_volume_readable(sink_input)) { pa_assert(sink_input->volume_writable); According to this code, volume_writeable must be true if save_volume is true. It apparently isn't always so. But what is the right solution? 1) Ignore volume_writable, i e, just remove the assertion, or 2) If volume_writable is false, skip saving the volume, but not mute and route, or 3) If volume_writable is false, skip saving the sink input completely Or, should one 4) Change everywhere that sets save_volume to "true" to also check for volume_writable and if so never set save_volume to true? I'm not sure what the thoughts are behind these two variables, so looking for advice here. -- David Henningsson, Canonical Ltd. https://launchpad.net/~diwic [1] https://bugs.launchpad.net/ubuntu/+source/pulseaudio/+bug/896602