Skip to content

Repository files navigation

VK Multi Audio Upload

Расширение для 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 — отдельный потолок правого канала, только в режиме «Раздельно») и время восстановления лимитера.
  • Свой метр снижения усиления — сколько сейчас снимает лимитер.

EQ

10-полосный графический эквалайзер (31 Гц – 16 кГц), каждая полоса ±12 дБ, кнопка сброса всех полос разом.

Метринг

  • Скроллящийся график истории (15 сек) с уровнем сигнала, снижением усиления и истинным пиком. Значения сглажены (быстрый подъём/плавный спад), чтобы отражать реальную динамику, а не «пилу» между отчётами воркера.
  • Метр истинного пика (нужно включить «Истинный пик» на вкладке «Лимитер», иначе прочерк).
  • LUFS: Мгновенная, Кратковременная, Интегральная (по ITU-R BS.1770-4, гейтинг двухпроходный) и LRA (диапазон громкости). Показания ориентировочные, не сертификационно точные — K-weighting фильтр пересчитывается под фактический sample rate, но не бит-в-бит совпадает с эталонными коэффициентами.
  • Кнопка сброса накопленных значений (Интегральная/LRA).

Пресеты и A/B

  • Пресеты — с категориями, тегами и поиском: кнопка «+» открывает форму сохранения (название, категория, теги через запятую), кнопка с текущим названием открывает список с фильтром по категориям и поиском по названию/тегам, у каждого пресета — своя кнопка удаления.
  • Базовый пресет — при первом запуске в список пресетов автоматически добавляется «Базовый» (фабричные настройки), чтобы всегда было куда вернуться.
  • Сброс на дефолт — кнопка «⟲» рядом с «+» мгновенно возвращает компрессор, лимитер, EQ, порядок цепочки и стиль к фабричным значениям (в отличие от «↺» у отдельных слайдеров, которые сбрасывают только к значению на момент открытия панели).
  • A / B — два слота для мгновенного сравнения двух наборов настроек целиком. Переключение слота сохраняет текущие правки в тот, откуда переключились, и подгружает второй.

Общее

Все настройки (компрессор, лимитер, EQ, порядок цепочки, стиль, режим, пресеты, A/B) применяются мгновенно, переживают смену трека и перезагрузку страницы (сохраняются в localStorage). При выключенных тумблерах обработка полностью прозрачна (эквивалент отсутствия эффекта).

Настройка раскладки VK

  • Закрепить сайдбар — левая колонка остаётся на месте при прокрутке страницы, прилипает прямо под верхней панелью.
  • Смещение контента — слайдер от −400 до +400px сдвигает сайдбар, основной контент и верхнюю панель синхронно влево или вправо. Кнопка «↺» сбрасывает в ноль.
  • Оптимизация больших плейлистов — не рендерит строки за пределами экрана, меньше лагов при скролле длинных списков.
  • Скрыть кнопку «Наверх» — убирает левую полосу со скроллом наверх.
  • Закрепить панель вкладок — «Моя музыка» / «Обзор» / поиск сливаются с верхней панелью при прокрутке.

Установка

  1. Скачать или склонировать репозиторий.
  2. Открыть chrome://extensions/ и включить режим разработчика.
  3. «Загрузить распакованное расширение» — указать папку проекта.
  4. Обновить открытые вкладки vk.com.

Настройки

Основные настройки открываются по иконке шестерёнки в шапке диалога загрузки. Эквалайзер/лимитер — отдельная кнопка прямо в панели плеера.

Опция По умолчанию Назначение
Режим работы Загрузка Переключатель «Загрузка / Проверка»
Сканировать всю страницу выкл. В режиме «Проверка» — сканировать всю страницу вместо первых 100
Авто-плейлист выкл. Создавать плейлист после очереди загрузки
Обложка Картинка 1000×1000 для плейлиста
Обложка из ID3 выкл. Использовать встроенную обложку первого трека, если своя не задана
Авто-метаданные выкл. Дополнять отсутствующие теги из имени файла
Закрепить сайдбар выкл. Левая колонка следует за прокруткой
Смещение контента 0 Горизонтальный сдвиг макета в пикселях
Оптимизация больших плейлистов выкл. Не рендерить строки плейлиста за пределами экрана
Скрыть кнопку «Наверх» выкл. Убрать левую полосу со скроллом наверх
Закрепить панель вкладок выкл. Слить вкладки/поиск с верхней панелью при прокрутке
Потоков скачивания 3 Сколько треков плейлиста скачивать одновременно (1–25)
Эквалайзер/лимитер выкл. Обработка звука текущего трека (см. выше)

Совместимость

Chromium-браузеры (Chrome, Edge и совместимые), десктопная версия vk.com. Мобильная версия m.vk.com не поддерживается. Внешних зависимостей нет. Интерфейс расширения подстраивается под текущую тему VK (тёмная/светлая).


PS. Расширение может периодически отваливаться и работать некорректно — ВК почти каждый день зачем-то меняют названия стилей и data-testid, на которые всё завязано. Если что-то перестало находиться/работать — скорее всего именно поэтому.

About

Расширение для Chromium-браузеров, расширяющее работу с музыкой на vk.com: массовая загрузка MP3, автоматическое создание плейлиста, скачивание треков и плейлистов, поиск дубликатов и недоступных записей.

Resources

Stars

3 stars

Watchers

2 watching

Forks

Releases

Packages

Contributors

Languages