Gainshift door MarshallPascal
Set any tab's volume independently, from silence to 600%. Works on normal video and audio, and on sites that use Web Audio — games, slots and custom players that other volume extensions can't reach. Remembers your level per site.
Metagegevens van extensie
Schermafbeeldingen
Over deze extensie
Every tab gets its own volume.
Firefox can mute a tab. It can't turn one down. Gainshift gives you the
level in between — drop a noisy tab to 15% and leave everything else
alone, or push a quiet one up to 600%.
WHY THIS ONE WORKS WHERE OTHERS DON'T
Most volume extensions go looking for <video> and <audio> tags. That is
fine on YouTube. It fails on a surprising amount of the web, because
plenty of pages make sound without ever creating one: browser games,
emulators and custom players push audio straight through the Web Audio
API, or through Audio objects built in JavaScript and never added to
the page at all. On those, a DOM-scanning extension reports "no audio
found" while the page is plainly making noise.
Gainshift works in three places instead:
• the Web Audio graph, which is where game and engine audio lives
• ordinary <video> and <audio> elements in the page
• detached Audio objects, created in code and never inserted
It also follows audio into nested cross-origin frames, so a game
embedded three or four iframes deep inside a page still answers.
WHAT YOU GET
• A slider and a typed box, 0 to 600% in 1% steps. Arrow keys nudge by
one either way.
• Keyboard shortcuts, so the common changes never need the panel at all.
• One-click presets: 0, 25, 50, 100 and 200%.
• Levels remembered per site, not per page. Set a site to 40% once and
every page on it opens there. One click on Forget clears it again.
• Or hold a level for one tab only, when two tabs on the same site need
different volumes.
• The toolbar button shows the level whenever a tab isn't at 100%, and
becomes a mute icon when one is silenced.
• A per-frame readout showing where the sound was actually found —
worth having when a page has a dozen frames and only one of them is
making noise.
• A panel that follows your browser's light or dark theme.
FROM THE KEYBOARD
Alt+Shift+W 5% louder
Alt+Shift+X 5% quieter
Alt+Shift+N set this tab to 100%
Alt+Shift+Q mute, and unmute
Alt+Shift+G open the panel
All five can be changed in Firefox under Add-ons → Manage Extension
Shortcuts. They act on the tab in front of you and never rewrite what a
site has saved, so boosting one loud video does not quietly redefine the
level for everything else on that site.
If one of them does nothing, rebind it there. Another program on the
machine may be holding that combination as a global shortcut, and it will
take the keypress before Firefox ever sees it — screen recorders and
graphics-card overlays are the usual culprits.
Alt+Shift+N is the one worth remembering: one key and the tab you are
looking at is back at plain 100%, however far you pushed it. It changes
that tab only — a site you keep at 45% is still at 45% everywhere else,
and in this tab again once it navigates away.
Unmuting returns you to the level you were at, not to 100%.
ONE SITE, TWO TABS
Volume is normally remembered against the site, which is what you want
almost all of the time. But two games open side by side are two pages on
one site, and no amount of per-site memory can tell them apart.
So the panel asks which you mean. Site saves the level everywhere, as
before. Tab holds it for that one tab and saves nothing — and while it
does, the panel still shows you what the site itself is set to, so it is
obvious which one is the exception. Close the tab and the exception goes
with it.
BELOW 100%, AND ABOVE IT
These are two different mechanisms, and the difference is worth knowing.
Below 100%, media elements are turned down through their own volume
control, and Web Audio is scaled in the graph. Both are exact
multiplications. No media element is re-routed, nothing is re-encoded,
and nothing is degraded — quiet is simply quiet.
Multiplication is meant literally: the level multiplies whatever the page
is already doing rather than replacing it. If you have already turned a
video down to 20% in the site's own player, Gainshift at 50% gives you
10%, and Gainshift at 100% gives you your 20% back untouched. The site's
own volume control keeps working while a level is set, too.
Above 100% there is no such shortcut: to make a media element louder
than its own maximum, the audio has to be routed through Web Audio and
amplified. That works on most sites. It does not work on media served
from another domain without CORS headers, where the browser blocks the
route and the tab goes silent instead of loud. Returning to 100% and
reloading recovers it.
The panel tells you this the moment you cross 100%, and if amplification
does fail it names the actual reason rather than guessing.
PRIVACY
Gainshift makes no network requests of any kind. Nothing is collected,
nothing is transmitted, and there is no analytics, no telemetry and no
server to send anything to.
The only thing stored is the list of sites you chose a level for, and
the number you chose. It stays in your own browser.
THE PERMISSIONS, AND WHY EACH ONE
• Access to all sites — audio can be on any site, and inside frames
loaded from other domains. The only thing looked for in a page is its
video and audio elements: no text, no form data, no cookies, no
browsing history.
• Tabs and webNavigation — to find every frame in a tab, including the
deeply nested ones that games load.
• Storage — to remember your per-site levels.
The keyboard shortcuts needed no new permission, and none has been added
since the first release.
ONE HONEST LIMIT
This is interception, not magic. It covers the ways a page normally
produces sound, and those cover a great deal — but something reaching
audio by a route nobody has run into yet would slip past it. If you hit
a site where it comes up empty, that is worth reporting rather than
assuming it can't be fixed.
Firefox can mute a tab. It can't turn one down. Gainshift gives you the
level in between — drop a noisy tab to 15% and leave everything else
alone, or push a quiet one up to 600%.
WHY THIS ONE WORKS WHERE OTHERS DON'T
Most volume extensions go looking for <video> and <audio> tags. That is
fine on YouTube. It fails on a surprising amount of the web, because
plenty of pages make sound without ever creating one: browser games,
emulators and custom players push audio straight through the Web Audio
API, or through Audio objects built in JavaScript and never added to
the page at all. On those, a DOM-scanning extension reports "no audio
found" while the page is plainly making noise.
Gainshift works in three places instead:
• the Web Audio graph, which is where game and engine audio lives
• ordinary <video> and <audio> elements in the page
• detached Audio objects, created in code and never inserted
It also follows audio into nested cross-origin frames, so a game
embedded three or four iframes deep inside a page still answers.
WHAT YOU GET
• A slider and a typed box, 0 to 600% in 1% steps. Arrow keys nudge by
one either way.
• Keyboard shortcuts, so the common changes never need the panel at all.
• One-click presets: 0, 25, 50, 100 and 200%.
• Levels remembered per site, not per page. Set a site to 40% once and
every page on it opens there. One click on Forget clears it again.
• Or hold a level for one tab only, when two tabs on the same site need
different volumes.
• The toolbar button shows the level whenever a tab isn't at 100%, and
becomes a mute icon when one is silenced.
• A per-frame readout showing where the sound was actually found —
worth having when a page has a dozen frames and only one of them is
making noise.
• A panel that follows your browser's light or dark theme.
FROM THE KEYBOARD
Alt+Shift+W 5% louder
Alt+Shift+X 5% quieter
Alt+Shift+N set this tab to 100%
Alt+Shift+Q mute, and unmute
Alt+Shift+G open the panel
All five can be changed in Firefox under Add-ons → Manage Extension
Shortcuts. They act on the tab in front of you and never rewrite what a
site has saved, so boosting one loud video does not quietly redefine the
level for everything else on that site.
If one of them does nothing, rebind it there. Another program on the
machine may be holding that combination as a global shortcut, and it will
take the keypress before Firefox ever sees it — screen recorders and
graphics-card overlays are the usual culprits.
Alt+Shift+N is the one worth remembering: one key and the tab you are
looking at is back at plain 100%, however far you pushed it. It changes
that tab only — a site you keep at 45% is still at 45% everywhere else,
and in this tab again once it navigates away.
Unmuting returns you to the level you were at, not to 100%.
ONE SITE, TWO TABS
Volume is normally remembered against the site, which is what you want
almost all of the time. But two games open side by side are two pages on
one site, and no amount of per-site memory can tell them apart.
So the panel asks which you mean. Site saves the level everywhere, as
before. Tab holds it for that one tab and saves nothing — and while it
does, the panel still shows you what the site itself is set to, so it is
obvious which one is the exception. Close the tab and the exception goes
with it.
BELOW 100%, AND ABOVE IT
These are two different mechanisms, and the difference is worth knowing.
Below 100%, media elements are turned down through their own volume
control, and Web Audio is scaled in the graph. Both are exact
multiplications. No media element is re-routed, nothing is re-encoded,
and nothing is degraded — quiet is simply quiet.
Multiplication is meant literally: the level multiplies whatever the page
is already doing rather than replacing it. If you have already turned a
video down to 20% in the site's own player, Gainshift at 50% gives you
10%, and Gainshift at 100% gives you your 20% back untouched. The site's
own volume control keeps working while a level is set, too.
Above 100% there is no such shortcut: to make a media element louder
than its own maximum, the audio has to be routed through Web Audio and
amplified. That works on most sites. It does not work on media served
from another domain without CORS headers, where the browser blocks the
route and the tab goes silent instead of loud. Returning to 100% and
reloading recovers it.
The panel tells you this the moment you cross 100%, and if amplification
does fail it names the actual reason rather than guessing.
PRIVACY
Gainshift makes no network requests of any kind. Nothing is collected,
nothing is transmitted, and there is no analytics, no telemetry and no
server to send anything to.
The only thing stored is the list of sites you chose a level for, and
the number you chose. It stays in your own browser.
THE PERMISSIONS, AND WHY EACH ONE
• Access to all sites — audio can be on any site, and inside frames
loaded from other domains. The only thing looked for in a page is its
video and audio elements: no text, no form data, no cookies, no
browsing history.
• Tabs and webNavigation — to find every frame in a tab, including the
deeply nested ones that games load.
• Storage — to remember your per-site levels.
The keyboard shortcuts needed no new permission, and none has been added
since the first release.
ONE HONEST LIMIT
This is interception, not magic. It covers the ways a page normally
produces sound, and those cover a great deal — but something reaching
audio by a route nobody has run into yet would slip past it. If you hit
a site where it comes up empty, that is worth reporting rather than
assuming it can't be fixed.
Met 0 gewaardeerd door 0 beoordelaars
Toestemmingen en gegevens
Vereiste machtigingen:
- Browsertabbladen benaderen
- Browseractiviteit tijdens navigeren benaderen
- Uw gegevens voor alle websites benaderen
Gegevensverzameling:
- De ontwikkelaar zegt dat deze extensie geen gegevensverzameling vereist.
Meer informatie
- Add-on-koppelingen
- Versie
- 2.1.0
- Grootte
- 48,95 KB
- Laatst bijgewerkt
- 3 uur geleden (14 sep. 2026)
- Verwante categorieën
- Licentie
- MIT-licentie
- Versiegeschiedenis
- Toevoegen aan collectie