Some fixes
This commit is contained in:
parent
ec216264b1
commit
cf0703f7f5
13 changed files with 798 additions and 0 deletions
58
README.md
Normal file
58
README.md
Normal file
|
|
@ -0,0 +1,58 @@
|
|||
# Volume Booster — Chrome Extension
|
||||
|
||||
Ein Volume Booster für Chrome: macht jeden Tab lauter (bis 600 %) oder leiser,
|
||||
mit stummschalten und Schnellwahl-Presets.
|
||||
|
||||
## Installieren
|
||||
|
||||
1. ZIP entpacken (falls noch nicht geschehen).
|
||||
2. In Chrome `chrome://extensions` öffnen.
|
||||
3. Oben rechts **Entwicklermodus** einschalten.
|
||||
4. **Entpackte Erweiterung laden** klicken und den Ordner `volume-booster` auswählen.
|
||||
5. Das Lautsprecher-Icon erscheint in der Toolbar — anpinnen, fertig.
|
||||
|
||||
## Benutzen
|
||||
|
||||
- Auf das Icon klicken, um das Panel zu öffnen.
|
||||
- **Slider** ziehen oder die **+ / –** Knöpfe nutzen (10 %-Schritte).
|
||||
- **Mute**-Knopf (mittig) schaltet stumm und beim erneuten Klick wieder zurück.
|
||||
- **Presets**: 100 % / 200 % / 400 % / 600 % für einen Klick.
|
||||
- Pfeiltasten ↑ / ↓ funktionieren ebenfalls, wenn das Panel offen ist.
|
||||
|
||||
## Wie es funktioniert
|
||||
|
||||
- Bis **100 %** passiert nichts Besonderes — die Seite spielt normal.
|
||||
- Über **100 %** holt der Service Worker per `chrome.tabCapture.getMediaStreamId`
|
||||
eine Stream-ID des Tabs und reicht sie an ein **Offscreen-Dokument** weiter.
|
||||
Dort wird der Stream durch einen Web-Audio `GainNode` geschickt und
|
||||
verstärkt wieder ausgegeben.
|
||||
- Der Umweg über das Offscreen-Dokument ist in Manifest V3 nötig: Der
|
||||
Service Worker hat kein DOM und kann selbst kein Audio verarbeiten.
|
||||
- Pro Tab wird ein eigener Verstärkungswert gespeichert (für die Session).
|
||||
- Schließt du den Tab oder lädst ihn neu, wird der Stream sauber freigegeben.
|
||||
|
||||
## Hinweise
|
||||
|
||||
- Bei sehr hohen Werten kann der Ton übersteuern/verzerren — das ist eine
|
||||
physikalische Grenze der Quelle, dann einfach etwas zurückdrehen.
|
||||
- Funktioniert nicht auf internen Seiten wie `chrome://`,
|
||||
dem Web Store oder anderen Extension-Seiten — dort gibt Chrome keinen
|
||||
Audio-Stream frei.
|
||||
- Beim ersten Verstärken eines Tabs muss kurz Audio laufen, damit Chrome
|
||||
den Stream herausgibt.
|
||||
- Verstärkung gilt jeweils für den Tab, in dem du sie einstellst.
|
||||
- Nach einem Update der Extension immer einmal auf `chrome://extensions`
|
||||
neu laden.
|
||||
|
||||
## Dateien
|
||||
|
||||
| Datei | Zweck |
|
||||
|------------------|----------------------------------------------------------|
|
||||
| `manifest.json` | Extension-Manifest (Manifest V3) |
|
||||
| `background.js` | Service Worker — holt Stream-ID, steuert Offscreen-Doc |
|
||||
| `offscreen.html` | Unsichtbares Dokument, Träger des Audio-Codes |
|
||||
| `offscreen.js` | AudioContext + GainNode — das eigentliche Verstärken |
|
||||
| `popup.html` | Aufbau des Interfaces |
|
||||
| `popup.css` | Styling (dunkles Studio-Theme, Amber-Akzent) |
|
||||
| `popup.js` | Logik, State, Kommunikation mit dem Worker |
|
||||
| `icons/` | Icon in 16 / 32 / 48 / 128 px + SVG-Quelle |
|
||||
Loading…
Add table
Add a link
Reference in a new issue