Keep in mind that behind the scenes, when running one program, Pulseaudio actually treats the device volume as the current application volume, and scales other applications relative to the loudest application. This is because in terms of amplification and quietness, the actual hardware's dynamic volume range is more important -- ultimate loudness and quietness will depend on the sound card's capabilities, and not volume scaling math in the background. For this reason the predominant application's volume is applied directly to the hardware, rather than putting it through fancy mathematics and rescaling. As far as I understood it, this is what Pulse actually does by design. [I could be wrong or misunderstood.] It just "hides" that fact by using user-visible volume UI that matches the application volumes relative to the master volume.