Расширение для Chromium-браузеров. Расширяет работу с музыкой на vk.com: массовая загрузка, проверка наличия треков на странице, поиск дубликатов, скачивание, обработка звука прямо в плеере и удобная настройка раскладки.
- Перетаскивание группы MP3 в диалог «Добавить аудиозапись» — файлы выстраиваются в очередь и загружаются по одному.
- Состояние каждого трека отображается отдельно, упавшие можно перезапустить или скопировать их имена в буфер.
- Очередь ставится на паузу, отдельные файлы — отменяются.
- Отсутствующие исполнитель и название можно автоматически взять из имени файла по шаблону
Исполнитель - Название.mp3.
После окончания очереди расширение само открывает диалог создания плейлиста, заполняет название/описание из тегов и ставит обложку. Обложка — либо выбранная в настройках картинка 1000×1000, либо встроенная APIC из первого трека. На обложку накладывается водяной знак «перезалито».
Альтернатива загрузке: кидаете MP3 в ту же область, расширение сверяет имена с треками на странице и показывает, какие уже есть, а каких нет.
- Сравнение умное: игнорируются
[квадратные]и(круглые)метки в названиях, хвостыfeat. X, разные тире, регистр. - Диалог загрузки закрывается сам, сразу после дропа.
- По умолчанию сканируются первые 100 треков (мгновенно). Можно включить «всю страницу» — расширение само проматывает её до конца.
- Результат: панель справа с миникартой и тремя списками — «Отсутствуют», «Уже есть на странице», «Все треки страницы».
- Клик по любой строке или маркеру миникарты — перелетает к нужной аудиозаписи на странице и подсвечивает её.
- У каждой секции своя кнопка копирования: отсутствующие, имеющиеся, все треки в формате
Artist — Title, отдельно — уникальные имена артистов.
Кнопка в попапе плейлиста разворачивает список целиком и помечает:
- пары «исполнитель + название», которые встречаются больше одного раза;
- треки, недоступные по данным VK.
Справа от попапа появляется панель с миникартой позиций и списком найденного. Клик по маркеру/строке прокручивает попап к нужному треку. Список можно скопировать.
- Один трек — иконка скачивания в строке (появляется при наведении). Поддерживает обычные ссылки и HLS-потоки (с расшифровкой AES-128).
- Отмена — повторный клик во время скачивания прерывает загрузку.
- Весь плейлист — две кнопки в попапе плейлиста: «по одному файлу» или одним ZIP-архивом. Виден прогресс с фазой и счётчиком.
- Многопоточность — треки плейлиста скачиваются параллельно, количество одновременных потоков настраивается (1–25, см. настройки).
- По ссылке с SoundCloud — отдельная кнопка (облачко) рядом с шестерёнкой настроек в диалоге загрузки открывает панель для вставки ссылки. Понимает и одиночные треки, и сеты (плейлисты) — все треки сохраняются в подпапку
SoundCloud/папки загрузок. Треки без прямого mp3-потока (только HLS) пропускаются с пометкой в статусе.
Иконка со слайдерами в панели плеера (слева от кнопки «Транслировать») открывает панель live-обработки звука для текущего проигрываемого трека через Web Audio API + AudioWorklet. Цепочка — три независимые стадии (EQ, компрессор, brick-wall-лимитер), каждая со своим тумблером, в любом порядке (дропдаун «Цепочка»). У каждого элемента управления есть значок «?» с полным пояснением по наведению. Панель разбита на четыре вкладки: Компрессор, Лимитер, EQ, Метринг — Цепочка и Вход/Выход показаны отдельно над вкладками, поскольку относятся ко всему сигнальному пути, а не к одному модулю.
- Стиль — 7 характеров компрессии (Transparent, Dynamic, Punchy, Allround, Modern, Bus, Safe): от мягкого/незаметного до жёсткого/предсказуемого. Меняет форму колена, детектор (пик/RMS) и подмес быстрого восстановления — сами слайдеры ниже при этом не трогает. Allround — поведение по умолчанию.
- Обработка стерео — Связка (общее решение по громче́му каналу, по умолчанию) / Раздельно (независимое усиление на L и R) / M-S (независимое усиление на mid/side). Действует на обе динамические стадии.
- Авто-восстановление — время восстановления подстраивается под материал в реальном времени (медленнее на плотном звуке, быстрее на перкуссивном) вместо фиксированного значения слайдера.
- Авто-гейн — компенсирует громкость, которую съедает компрессор, чтобы A/B-сравнение вкл/выкл было честным по громкости (приближение, не точный LUFS-матчинг).
- График передаточной характеристики (вход → выход) по текущим порогу/соотношению/колену/стилю, с живой точкой текущей рабочей точки. Панель графика — фиксированного тёмного цвета в обеих темах VK, чтобы линии всегда были видны.
- Порог, Соотношение, Колено, Атака, Восстановление — стандартные слайдеры компрессора.
- Метр снижения усиления — сколько сейчас снимает компрессор.
- Настоящий lookahead brick-wall с собственной огибающей: бесконечное соотношение к потолку, атака жёстко привязана к lookahead (5 мс — огибающая успевает опуститься до выхода транзиента из задержки), финальный клэмп остаётся только страховкой от остаточных долей дБ, а не основным механизмом.
- Гейн — отдельный дожим сигнала прямо перед лимитером (независимо от Входа/Выхода всей цепочки): потолок остаётся тем же, но лимитер снимает больше/меньше — классическая ручка «подать погорячее».
- Истинный пик — лимитирование по межсэмпловым перегрузам (inter-sample peaks), а не только по сэмплам: огибающая целится в реконструированный пик.
- Передискретизация — кратность передискретизации для истинного пика (2×/4×/8×/16×, настоящий полифазный FIR-банк, не аппроксимация).
- Потолок, Потолок R, Восстановление — потолок (Потолок R — отдельный потолок правого канала, только в режиме «Раздельно») и время восстановления лимитера.
- Свой метр снижения усиления — сколько сейчас снимает лимитер.
10-полосный графический эквалайзер (31 Гц – 16 кГц), каждая полоса ±12 дБ, кнопка сброса всех полос разом.
- Скроллящийся график истории (15 сек) с уровнем сигнала, снижением усиления и истинным пиком. Значения сглажены (быстрый подъём/плавный спад), чтобы отражать реальную динамику, а не «пилу» между отчётами воркера.
- Метр истинного пика (нужно включить «Истинный пик» на вкладке «Лимитер», иначе прочерк).
- LUFS: Мгновенная, Кратковременная, Интегральная (по ITU-R BS.1770-4, гейтинг двухпроходный) и LRA (диапазон громкости). Показания ориентировочные, не сертификационно точные — K-weighting фильтр пересчитывается под фактический sample rate, но не бит-в-бит совпадает с эталонными коэффициентами.
- Кнопка сброса накопленных значений (Интегральная/LRA).
- Пресеты — с категориями, тегами и поиском: кнопка «+» открывает форму сохранения (название, категория, теги через запятую), кнопка с текущим названием открывает список с фильтром по категориям и поиском по названию/тегам, у каждого пресета — своя кнопка удаления.
- Базовый пресет — при первом запуске в список пресетов автоматически добавляется «Базовый» (фабричные настройки), чтобы всегда было куда вернуться.
- Сброс на дефолт — кнопка «⟲» рядом с «+» мгновенно возвращает компрессор, лимитер, EQ, порядок цепочки и стиль к фабричным значениям (в отличие от «↺» у отдельных слайдеров, которые сбрасывают только к значению на момент открытия панели).
- A / B — два слота для мгновенного сравнения двух наборов настроек целиком. Переключение слота сохраняет текущие правки в тот, откуда переключились, и подгружает второй.
Все настройки (компрессор, лимитер, EQ, порядок цепочки, стиль, режим, пресеты, A/B) применяются мгновенно, переживают смену трека и перезагрузку страницы (сохраняются в localStorage). При выключенных тумблерах обработка полностью прозрачна (эквивалент отсутствия эффекта).
- Закрепить сайдбар — левая колонка остаётся на месте при прокрутке страницы, прилипает прямо под верхней панелью.
- Смещение контента — слайдер от −400 до +400px сдвигает сайдбар, основной контент и верхнюю панель синхронно влево или вправо. Кнопка «↺» сбрасывает в ноль.
- Оптимизация больших плейлистов — не рендерит строки за пределами экрана, меньше лагов при скролле длинных списков.
- Скрыть кнопку «Наверх» — убирает левую полосу со скроллом наверх.
- Закрепить панель вкладок — «Моя музыка» / «Обзор» / поиск сливаются с верхней панелью при прокрутке.
- Скачать или склонировать репозиторий.
- Открыть
chrome://extensions/и включить режим разработчика. - «Загрузить распакованное расширение» — указать папку проекта.
- Обновить открытые вкладки vk.com.
Основные настройки открываются по иконке шестерёнки в шапке диалога загрузки. Эквалайзер/лимитер — отдельная кнопка прямо в панели плеера.
| Опция | По умолчанию | Назначение |
|---|---|---|
| Режим работы | Загрузка | Переключатель «Загрузка / Проверка» |
| Сканировать всю страницу | выкл. | В режиме «Проверка» — сканировать всю страницу вместо первых 100 |
| Авто-плейлист | выкл. | Создавать плейлист после очереди загрузки |
| Обложка | — | Картинка 1000×1000 для плейлиста |
| Обложка из ID3 | выкл. | Использовать встроенную обложку первого трека, если своя не задана |
| Авто-метаданные | выкл. | Дополнять отсутствующие теги из имени файла |
| Закрепить сайдбар | выкл. | Левая колонка следует за прокруткой |
| Смещение контента | 0 | Горизонтальный сдвиг макета в пикселях |
| Оптимизация больших плейлистов | выкл. | Не рендерить строки плейлиста за пределами экрана |
| Скрыть кнопку «Наверх» | выкл. | Убрать левую полосу со скроллом наверх |
| Закрепить панель вкладок | выкл. | Слить вкладки/поиск с верхней панелью при прокрутке |
| Потоков скачивания | 3 | Сколько треков плейлиста скачивать одновременно (1–25) |
| Эквалайзер/лимитер | выкл. | Обработка звука текущего трека (см. выше) |
Chromium-браузеры (Chrome, Edge и совместимые), десктопная версия vk.com. Мобильная версия m.vk.com не поддерживается. Внешних зависимостей нет. Интерфейс расширения подстраивается под текущую тему VK (тёмная/светлая).
PS. Расширение может периодически отваливаться и работать некорректно — ВК почти каждый день зачем-то меняют названия стилей и data-testid, на которые всё завязано. Если что-то перестало находиться/работать — скорее всего именно поэтому.