AceStream → VLC

Перенаправляет открытие acestream:// ссылки в VLC Player (vlc:// протокол с fallback на M3U)

Aby zainstalować ten skrypt, wymagana jest instalacje jednego z następujących rozszerzeń: Tampermonkey, Greasemonkey lub Violentmonkey.

You will need to install an extension such as Tampermonkey to install this script.

Aby zainstalować ten skrypt, wymagana jest instalacje jednego z następujących rozszerzeń: Tampermonkey, Violentmonkey.

Aby zainstalować ten skrypt, wymagana będzie instalacja rozszerzenia Tampermonkey lub Userscripts.

You will need to install an extension such as Tampermonkey to install this script.

Aby zainstalować ten skrypt, musisz zainstalować rozszerzenie menedżera skryptów użytkownika.

(Mam już menedżera skryptów użytkownika, pozwól mi to zainstalować!)

You will need to install an extension such as Stylus to install this style.

You will need to install an extension such as Stylus to install this style.

You will need to install an extension such as Stylus to install this style.

Będziesz musiał zainstalować rozszerzenie menedżera stylów użytkownika, aby zainstalować ten styl.

Będziesz musiał zainstalować rozszerzenie menedżera stylów użytkownika, aby zainstalować ten styl.

Musisz zainstalować rozszerzenie menedżera stylów użytkownika, aby zainstalować ten styl.

(Mam już menedżera stylów użytkownika, pozwól mi to zainstalować!)

Autor
ktt21
Dziennych instalacji
0
Wszystkich instalacji
9
Oceny
0 0 0
Wersja
1.3.1
Utworzono
06-07-2026
Zaktualizowano
06-07-2026
Rozmiar
9,5 KB
Kompatybilność
Kompatybilny z przeglądarką Firefox Kompatybilny z przeglądarką Chrome Kompatybilny z przeglądarką Opera Kompatybilny z przeglądarką Safari Kompatybilny z przeglądarką Edge
Licencja
MIT
Dotyczy
Wszystkie strony

AceStream → VLC

Открывает ссылки вида acestream://… прямо в VLC — без ручного копирования хэша, без сторонних сервисов.

AceStream → VLC

Лицензия: MIT · Платформы: Windows 10/11, Linux · Менеджеры скриптов: Tampermonkey, Violentmonkey, Greasemonkey


Что делает скрипт

На странице с плагином AceStream часто встречаются ссылки вида acestream://<hash>. Обычно браузер не знает, что с ними делать, либо открывает страницу с ошибкой. Этот скрипт:

  1. перехватывает клик по такой ссылке;
  2. строит адрес потока через локальный AceStream Engine (http://127.0.0.1:6878/ace/getstream?id=<hash>);
  3. пытается открыть его напрямую в VLC через vlc://-протокол (мгновенно, без промежуточных файлов);
  4. если vlc:// не зарегистрирован в системе — автоматически скачивает .m3u-плейлист, который откроется в VLC, если он назначен для .m3u обработчиком по умолчанию.

Шаг 4 — это подстраховка «из коробки»: скрипт работает даже без ручной настройки, просто чуть медленнее (через скачивание плейлиста). Шаг 3 превращает клик в мгновенное воспроизведение, но требует один раз вручную зарегистрировать vlc://-протокол в системе (см. ниже).

Требования

  • AceStream Engine, запущенный локально и слушающий 127.0.0.1:6878 (стандартный порт).
  • VLC media player, установленный в системе.
  • Браузер с поддержкой userscript-менеджеров: Chrome, Chromium, Microsoft Edge, Brave, Opera, Firefox (в любом из них — Tampermonkey; в Firefox также подойдут Violentmonkey и Greasemonkey).
  • ОС: Windows 10/11 или Linux с окружением, поддерживающим .desktop-файлы и xdg-mime (GNOME, KDE, XFCE и большинство других). macOS не тестировалась.
  • Для мгновенного воспроизведения через vlc:// (шаг 3 выше) — права на редактирование реестра (Windows) или на запись в ~/.local/share/applications (Linux). Без этого тоже всё работает, просто через .m3u-фоллбэк.

Установка

  1. Поставь менеджер скриптов — Tampermonkey (Chrome/Edge/Firefox/Brave/Opera) или Violentmonkey/Greasemonkey.
  2. Установи сам скрипт (кнопка «Install this script» на этой странице).
  3. Убедись, что AceStream Engine запущен, а VLC установлен.
  4. (необязательно, но рекомендуется) Зарегистрируй vlc://-протокол — см. разделы ниже для своей ОС. Это включает мгновенное воспроизведение вместо скачивания .m3u.

Windows 10/11 — регистрация vlc:// (только штатные средства, ничего доустанавливать не нужно)

Создай текстовый файл vlc-protocol.reg с содержимым ниже (кодировка сохранения не важна — весь текст состоит из ASCII-символов) и запусти его двойным щелчком, подтвердив добавление в реестр:

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\vlc]
@="URL:vlc Protocol"
"URL Protocol"=""

[HKEY_CLASSES_ROOT\vlc\shell]
[HKEY_CLASSES_ROOT\vlc\shell\open]
[HKEY_CLASSES_ROOT\vlc\shell\open\command]
@="powershell.exe -NoProfile -WindowStyle Hidden -Command \"& {param($u) $u = $u -replace '^vlc://',''; $u = 'http://' + $u; $u = [System.Uri]::UnescapeDataString($u); $q = [char]34; try { Start-Process -FilePath 'C:\\Program Files\\VideoLAN\\VLC\\vlc.exe' -ArgumentList ($q+$u+$q) } catch { $_ | Out-File -Append ($env:TEMP+'\\ace2vlc.log') } } '%1'\""

Что делает эта запись: при переходе по vlc://… Windows напрямую вызывает powershell.exe (входит в состав системы), который срезает vlc://, восстанавливает http:// и передаёт готовый адрес в VLC. Если путь к VLC у тебя нестандартный — поменяй C:\Program Files\VideoLAN\VLC\vlc.exe внутри команды на свой. После импорта перезапусти браузер (он кэширует обработчики протоколов).

Если что-то пойдёт не так — ошибки пишутся в %TEMP%\ace2vlc.log.

Linux — регистрация vlc://

Создай файл ~/.local/share/applications/vlc-protocol.desktop:

[Desktop Entry]
Name=VLC Protocol Handler (AceStream2VLC)
Exec=sh -c 'u="$1"; u="${u#vlc://}"; exec vlc "http://$u"' sh %u
Type=Application
MimeType=x-scheme-handler/vlc;
NoDisplay=true

Затем выполни:

xdg-mime default vlc-protocol.desktop x-scheme-handler/vlc
update-desktop-database ~/.local/share/applications/

Проверить, что обработчик назначился, можно командой:

xdg-mime query default x-scheme-handler/vlc

Она должна вывести vlc-protocol.desktop. После этого перезапусти браузер.

Настройки скрипта

В самом начале файла скрипта — блок с константами, которые можно менять под себя:

const DEBUG        = true;   // true — писать ход работы в консоль браузера (F12), false — тишина
const VLC_PROTO     = true;  // true — пробовать vlc:// с фоллбэком на .m3u; false — сразу .m3u
const PROTO_TIMEOUT = 1500;  // мс ожидания реакции ОС на vlc://, после — фоллбэк на .m3u

Если vlc:// зарегистрирован вручную (см. выше), PROTO_TIMEOUT можно смело уменьшить до 800 — отклик станет быстрее.

Как это работает технически (коротко)

  • Детект того, сработал ли vlc://, построен на событии blur: когда ОС передаёт ссылку внешней программе, окно браузера теряет фокус. Если фокус не потерян за PROTO_TIMEOUT мс — протокол считается незарегистрированным, и скрипт скачивает .m3u.
  • Ссылка для vlc:// собирается без вложенной схемы (vlc://host:port/path, а не vlc://http://host:port/path) — это принципиально: вложенная схема ломается при нормализации URL в браузере и до VLC доходит мусор.

Устранение неполадок

  • Ссылка ничего не открывает — проверь, что AceStream Engine запущен и слушает 127.0.0.1:6878 (можно открыть этот адрес в браузере — Engine должен ответить).
  • Каждый раз скачивается .m3u, а не открывается VLC мгновенно — значит vlc:// не зарегистрирован в системе (см. разделы «Установка» выше) либо браузер был не перезапущен после регистрации.
  • Windows: .m3u тоже не открывается в VLC — назначь VLC приложением по умолчанию для .m3u/.m3u8 (правый клик по файлу → «Открыть с помощью» → VLC → «Всегда»).
  • Linux: то же самоеxdg-mime default vlc.desktop audio/x-mpegurl.
  • Включи DEBUG = true в настройках скрипта и посмотри консоль браузера (F12 → Console) — там будет видно, на каком шаге что произошло.

Лицензия

MIT License. Используй, изменяй и распространяй свободно, при сохранении уведомления об авторстве.