#anyone figured out the volume issue with firefox?
41 messages · Page 1 of 1 (latest)
I'm still having that problem but haven't investigated any further. I'd really like to switch back to Firefox but I think it's an inherent issue with Firefox. Hopefully someone else has figured it out?
messed with this one and found a fix that works for me
If you want Firefox to use ALSA type
about:config
into Firefox's search bar. It warns you this can bork Firefox. Proceed anyway. Now add an entry
media.cubeb.backend
and set the type to 'string'. Now give it the value
alsa
then change your config to use alsa_playback.firefox instead of firefox
fwiw im using pipewire-alsa ofc
this also makes it so that the youtube volume controls are independent from deej's volume which is a bonus for me
also i'm using the pipewire fork of deej found here
Thanks @cerulean sand for the suggestion. The volume jumps are gone now, but the audio is crackling heavily. Any idea where to fix that? Maybe the sampling rate doesn't fit to my device
Not sure about that one, seems like something with the sample rate yeah
Nevermind, after a reboot it works flawlessly 🙂
where do i find the config to change this, is it in the about:config on firefox? or is it something else
by config i meant your deej config
oh, gotcha
ok so i tried switching the config in firefox and deej and it didnt work, before i changed the deej config, it still worked but the problem persisted
@upper holly means you didn't do the about:config part correctly
Alright, when I get home tonight I'll try again
thanks that worked for me! not sure why, but renaming firefox to alsa_playback.firefox made it just not recognise firefox (could only change volume from the deej.unmapped slider) but leaving it to firefox made it work somehow
yeah not sure if that part is specific to my setup somehow but glad it worked
not sure why but the issue is back for me despite doing your whole fix @cerulean sand 🥲. only difference is i didn't change firefox to alsa_playback.firefox in deej config (as that didn't let me control the volume of firefox at all anymore) i did have to install pipewire alsa on the fly for your fix so maybe i screwed that up?
if anybody is still having the issue i switched to fedora and started having the issue even with alsa set, but setting the same key in about:config to "oss" instead of "alsa" worked instead
This ones still an issue for me. Has anyone found any other solutions for this issue?
Yeah, either I'm following the instructions incorrectly or it doesn't work for me too
still works for me on zen browser, not sure what the issue would be
tried this on Fedora with pipewire fix, firefox, zen and other firefox based broswers. Still nothing 😦
Not sure what's wrong
I ended up grabbing the source from https://github.com/peeteer1245/deej-pipewire-fix
that "c" mentioned and made some slight modifications to it. Created a virtual output named "Media Sink" and modified session_map.go and session_linux.go, when I compiled it I got a version that can control the media sink virtual device with the setting map of media-source.
Forgive my TERRIBLE naming consistency. I was half asleep and a little inebriated. lol
But with that! I can control the volume of that virtual output separately. And then I told Firefox to always use that as it's output.
THE BIGGEST ISSUE!!! Is that for whatever reason, the code doesn't actually show the volume change in the UI? No clue why. And since it works and I have other things to work on I couldn't care less. Buut!! It worked for me. So if anyone else wants a go at either fixing it. Or with just using what I did I'll attached the modified versions of those files here. Just overwrite them in ./deej-pipewire-fix/pkg/deej/
Good luck!
nano ~/.config/pipewire/pipewire.conf.d/20-media-sink.conf
context.modules = [
{
name = libpipewire-module-loopback
args = {
audio.position = [ FL FR ]
node.description = "Media Loopback"
capture.props = {
node.name = "media-sink"
node.description = "Media Sink"
media.class = "Audio/Sink"
node.passive = true
}
playback.props = {
node.name = "media-source"
node.description = "Media Source"
node.passive = true
}
}
}
]
Theoretically you could do this as many times as you want just giving them a different node.name and it SHOULD be able to recognize it. The program does spit out the list of nodes it can see to terminal now so you should be able to see the names of them and add them to the config.
I haven't tested it though. But I feel like it's on the right track to add full per device level functionality to linux if someone with more patience and time than me wants to tidy it up and work on it. Cheers!
i don't recommend my old fix anymore anyways, on the new discord canary update with wayland screenshare it breaks audio sharing for some reason
sadly just using chrome now lol
do you have a setup for this now or still just rocking chrome? having to deal with the jumpscares on firefox myself.
im using zen now but i kinda just deal with the issue sadly
bc alternate audio backends don't work with discord screenshare unless i use vesktop
hello, i need some help with this
i'm using this deej fork currently https://github.com/czanescu/deej-with-libayatana-compatibility
does this fix still work with this fork?
i hav't gotten it to work. i also tryed to install the Pipwire fix fork but i get the same error as the main release version
Building deej (release)...
Embedding build-time parameters:
- gitCommit e92a227
- versionTag e92a227
- buildType release
github.com/getlantern/systray
[pkg-config --cflags -- gtk+-3.0 webkit2gtk-4.0 appindicator3-0.1]
Package webkit2gtk-4.0 was not found in the pkg-config search path.
Perhaps you should add the directory containing `webkit2gtk-4.0.pc'
to the PKG_CONFIG_PATH environment variable
Package 'webkit2gtk-4.0', required by 'virtual:world', not found
Package 'appindicator3-0.1', required by 'virtual:world', not found
Error: "go build" exited with a non-zero code. Are you running this script from the root deej directory?