Volume control is shared with other chromium apps.
Currently, the volume control is shared with other chromium apps. In my case, I'm trying to use Tidal while using Vesktop, but the volume is shared between both, so if I close one and reopen, it sets the volume to the last used setting in a chromium app.
Note that I'm not talking about the volume slider inside Tidal-Hifi. I use KDE and I tend to use the volume slider in the app's icon/preview on the taskbar since it's much quicker than switching to the app's window, and by default on this app, it doesn't affect the volume slider inside the app, but the chromium volume slider.
Is that something that can be changed?
Not from within the app itself I don't think. Volume control is currently also not a supported API option so the only way to do it inside tidal-hifi is to manually click & drag the little slider.
It's strange that multiple apps would use the same slider in KDE, is it the same for all electron apps 🤔?
Hey there @Mastermindzh, just starting using this, really enjoying it, thanks for your work.
Volume control is currently also not a supported API option
Is this a planned feature, since I am looking for ways to control the volume from waybar directly (no success with playerctl).
Hey,
To be honest, no. I'm behind on simple features even, and this would be rather involved.
Especially since it would only be fixed for tidal-hifi.
Hmm i see seprate sliders for vivaldi, chrome and tidal.. but im on MATE desktop and using pipewire. I added a conf file to change the icon to not have same chrome icon on everything but sliders are all separate for me
if anyone is interested.
in the ~/.config/pipewire/pipewire-pulse.conf.d
12-tidal.rules.conf
stream.rules = [
{
matches = [
{
# all keys must match the value. ~ starts regex.
application.process.binary = "tidal-hifi"
}
]
actions = {
update-props = {
application.name = "Tidal HiFi"
application.icon-name = "tidal-hifi"
}
}
}
]
There are multiple sliders for me in the sound applet for chromium apps, it's just that after changing one, it sets all other ones to the last set slider volume after reopening a chromium app, but I'll try your config, thanks!
My config only changes icon and app name in the volume slider (so its easier to identify what is what), but yeah i cant reproduce your problem. All of them have their own slider. setting one doesn't change others for me. Maybe KDE bug? or maybe the name change does somehting indeed. i have changed it for multiple applications that otherwise had chromium icon there
I have found another solution that works for me:
You can set the voume via pactl as described here
So in practice:
- Get the sink id:
SINK_INPUT_ID=$(pactl list sink-inputs | awk '/^Sink Input #/{id=$3} /application.name = "Tidal HiFi"/{print id; exit}' | tr -d '#')(this assumes you have the custom pipewire rules from @xpander69's reply above) - Set the volume:
pactl set-sink-input-volume $SINK_INPUT_ID +5%. You can use + and - to or absolute values. You can use % or a value between 0 and 65536 (value to percentage:(value / 65536) × 100)
In my script for waybar, this looks like this:
SINK_INPUT_ID=$(pactl list sink-inputs | awk '/^Sink Input #/{id=$3} /application.name = "Tidal HiFi"/{print id; exit}' | tr -d '#')
VOLUME=$(pactl list sink-inputs | awk -v id="$SINK_INPUT_ID" ' $0 ~ "^Sink Input #" id "$" {found=1} found && /Volume:/ {print $5; exit}')
pactl set-sink-input-volume $SINK_INPUT_ID +5%
echo "Tidal Volume set to $VOLUME"
You may find my complete implementation in my dotfiles