User Tools

Site Tools


Ignore last used device for new streams of a given application

Okay, that sounds very complicated, but it's not[1]. Let's say you're listening to some YouTube video and want to listen to it using another device – for e.g., an USB sound card, or even an old-style PCI Audigy card, like me. The easiest way to achieve it is to use pavucontrol. However, should you do that, no matter what device is selected as the default sink, all Firefox stream from this point on will play on the card you selected manually. Congratulations, you just have switched Firefox to the manual sink selection, a hellhole in which it stays forever…

… unless…

  • … you just go into ~/.pulse and delete <random-id>-stream-volumes.tdb, kill and relaunch Pulseaudio;
  • … or disable that pesky module responsible for this behavior, for instance module-stream-restore, it's really just a question of comenting it out at /etc/pulse/

Whoa, how did you know?

Trial and error. As per usual. I've been messing arround with those aforementioned TDB's. And, at some point, I did some changes that crashed Pulseaudio. By running it verbosely (pulseaudio -v) it was told the error came from that module – module-stream-restore. I Google'd it up and found some docs[2], not that they helped much, because those parameters don't seem to work inside, but I didn't test it enough, because I settled for simply not loading the module.

There's also a better explained version at [1], that I came across before, but didn't pay enough attention.


sound/pulseaudio-new-streams-default-device.txt · Last modified: 2020/06/23 21:59 by prppedro