AceStream → VLC

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

スクリプトをインストールするには、Tampermonkey, GreasemonkeyViolentmonkey のような拡張機能のインストールが必要です。

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

スクリプトをインストールするには、TampermonkeyViolentmonkey のような拡張機能のインストールが必要です。

スクリプトをインストールするには、TampermonkeyUserscripts のような拡張機能のインストールが必要です。

このスクリプトをインストールするには、Tampermonkeyなどの拡張機能をインストールする必要があります。

このスクリプトをインストールするには、ユーザースクリプト管理ツールの拡張機能をインストールする必要があります。

(ユーザースクリプト管理ツールは設定済みなのでインストール!)

このスタイルをインストールするには、Stylusなどの拡張機能をインストールする必要があります。

このスタイルをインストールするには、Stylus などの拡張機能をインストールする必要があります。

このスタイルをインストールするには、Stylus tなどの拡張機能をインストールする必要があります。

このスタイルをインストールするには、ユーザースタイル管理用の拡張機能をインストールする必要があります。

このスタイルをインストールするには、ユーザースタイル管理用の拡張機能をインストールする必要があります。

このスタイルをインストールするには、ユーザースタイル管理用の拡張機能をインストールする必要があります。

(ユーザースタイル管理ツールは設定済みなのでインストール!)

このスクリプトの質問や評価の投稿はこちら通報はこちらへお寄せください
作者
ktt21
1日のインストール数
0
累計インストール数
9
評価
0 0 0
バージョン
1.3.1
作成日
2026/07/06
更新日
2026/07/06
大きさ
9.5KB
互換性
Firefox への互換性あり Chrome への互換性あり Opera への互換性あり Safari への互換性あり Edge への互換性あり
ライセンス
MIT
対象サイト
すべてのサイト

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. Используй, изменяй и распространяй свободно, при сохранении уведомления об авторстве.