Skip to content

Latest commit

 

History

History
165 lines (119 loc) · 12.4 KB

File metadata and controls

165 lines (119 loc) · 12.4 KB

Umbra EQ

Umbra EQ

Параметрический эквалайзер и усиление баса для каждой вкладки — Chrome, Edge и Opera
11 полос · один общий звук · правила для сайтов · 100% локально

Chrome Web Store Пользователи Chrome Web Store Лицензия MIT Статус сборки Manifest V3 Chrome 116+

Установить из Chrome Web Store   English README

Эквалайзер Umbra EQ   Правила для сайтов в Umbra EQ

Зачем нужен Umbra EQ

Слабый бас на ноутбучных динамиках, одно видео сведено слишком тихо, другое — слишком резко, а большинство эквалайзеров-расширений замолкают на стриминге, которым вы реально пользуетесь. Umbra правит звук вкладки, которую вы слушаете, вживую — и всё остаётся на вашем компьютере. Один звук на все вкладки или свой звук отдельным сайтам через правила.

Установка

Установить из Chrome Web Store — в один клик, с авто-обновлением.

На Edge или Opera, либо чтобы запустить свою сборку, загрузи как распакованное (около минуты):

  1. Скачай последний umbra-eq-<версия>.zip со страницы релизов и распакуй (или собери из исходников ниже).
  2. Открой chrome://extensions (или edge://, opera://) и включи Режим разработчика.
  3. Загрузить распакованное → выбери распакованную папку dist. Chrome 116+.

Note

Иконка не реагирует? Убедись, что выбрал папку dist (результат сборки), а не корень репозитория, на Chrome 116+ — движку нужен offscreen-document API.

Возможности

  • Параметрический EQ на 11 полос — тяни кривую, поднимай или срезай любую частоту вживую.
  • Один общий звук + правила сайтов — один EQ везде или переопределение по шаблону адреса (побеждает первое совпадение). У каждой вкладки своя цепочка.
  • Работает на Netflix, Spotify и других сайтах, где эквалайзеры-расширения замолкают.
  • Бас, громкость выше 100%, ограничитель — сильные бусты остаются чистыми, без клиппинга.
  • Пресеты — Bass Boost / Vocal / Movie / Warm + свои; экспорт файлом или кодом.
  • Живой спектр, гид по полосам, полноэкранный редактор.
  • Клавиатура + скринридеры, RU/EN, четыре темы. Без аккаунта, сети и аналитики.

Как пользоваться

  1. Включи звук на вкладке, нажми иконку Umbra EQ, затем EQ This Tab.
  2. Тяни точку (или стрелки): влево-вправо — частота, вверх-вниз — усиление/срез, Shift — ширина/Q, двойной клик сбрасывает. Полоса слева — громкость.
  3. Добавь правило вроде youtube. для звука сайта; останови вкладку во Tabs или открой Full window для большого графика.

Встроенный Гид (вкладка More) проходит по всему — на русском или английском.

Поддержка браузеров

Браузер Статус Примечания
Chrome Поддерживается Chrome 116+ (offscreen document + захват вкладки)
Edge Поддерживается Chromium, тот же пакет
Opera Поддерживается Chromium, тот же пакет
Firefox В планах Нужен отдельный движок на content-script (в Firefox нет tabCapture/offscreen). См. FIREFOX_PORT.md.

Сборка из исходников

Для разработчиков

Попап — приложение на React и TypeScript, собранное Vite и CRXJS. Аудиодвижок (service worker + offscreen-документ Web Audio) остаётся на чистом JS.

npm install
npm run build      # → dist/  (загружаемое, чистое по CSP расширение MV3)
npm run dev        # dev-сборка с HMR
npm test           # 64 модульных теста Vitest
npm run typecheck  # tsc, также в CI

Затем загрузи папку dist как распакованное расширение (см. Установка). Для zip магазина:

npm run build
powershell -ExecutionPolicy Bypass -File build-zip.ps1
# → release/umbra-eq-<версия>.zip

Тот же zip принимают Chrome Web Store, Edge Add-ons и Opera.

Цикл разработки: npm run buildReload на карточке расширения → Ctrl+R попапа. После vite dev удали node_modules/.vite и dist перед настоящей сборкой, иначе dist/ останется dev-заглушкой.

Как это устроено

Manifest V3. Попап (React + TypeScript) — источник истины: вычисляет звук каждой вкладки (правило → общий профиль → плоский) и отправляет полосы движку. Движок — на чистом JS: service worker владеет offscreen-документом и выдаёт id захвата вкладок; offscreen держит цепочку из 11 biquad-фильтров на вкладку за ограничителем «кирпичная стена», плавно без щелчков. Математика аудио/пресетов/правил — в src/lib (покрыта тестами); строгий CSP, без удалённого кода и eval.

Архитектура — в PROJECT.md, как контрибьютить — в CONTRIBUTING.md.

Приватность

100% локально — без сетевых запросов и аналитики; звук нигде не записывается и не отправляется, настройки и пресеты остаются в браузере. Подробности — в PRIVACY.md.

Стек

Слой Технология
Оболочка Manifest V3 — service worker + offscreen-документ
Аудио Web Audio API — 11 biquad-фильтров на вкладку + ограничитель
Попап React 18, TypeScript
Сборка Vite + CRXJS
UI Tailwind CSS, shadcn/ui, иконки lucide
Тесты Vitest (64)
CI/CD GitHub Actions — собирает zip dist/ на push, PR и тегах v*

Звёзды

Если Umbra починила твой звук — звезда помогает другим её найти.

Звёзды GitHub   Скачивания релизов

История звёзд Umbra EQ

Обратная связь

Предложить идею Открыть обсуждение
Что-то сломалось? Создать issue
Нравится? Поставьте звезду

Участие в разработке

Issues и pull request'ы приветствуются — см. CONTRIBUTING.md.

Авторство и лицензии

  • Код приложения: MIT (LICENSE).
  • Шрифты: Inter и Geist Mono под SIL Open Font License 1.1.
  • UI: React, Tailwind CSS, shadcn/ui (MIT), иконки lucide-react (ISC). Полный список: THIRD-PARTY-NOTICES.md.

Umbra EQ — независимый аудиоинструмент, не связанный с Netflix, Spotify, YouTube, Google или сайтами, звук которых обрабатывает, и не одобренный ими. Все товарные знаки принадлежат их владельцам.