AceStream → VLC

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

이 스크립트를 설치하려면 Tampermonkey, Greasemonkey 또는 Violentmonkey와 같은 확장 프로그램이 필요합니다.

이 스크립트를 설치하려면 Tampermonkey와 같은 확장 프로그램을 설치해야 합니다.

이 스크립트를 설치하려면 Tampermonkey 또는 Violentmonkey와 같은 확장 프로그램이 필요합니다.

이 스크립트를 설치하려면 Tampermonkey 또는 Userscripts와 같은 확장 프로그램이 필요합니다.

이 스크립트를 설치하려면 Tampermonkey와 같은 확장 프로그램이 필요합니다.

이 스크립트를 설치하려면 유저 스크립트 관리자 확장 프로그램이 필요합니다.

(이미 유저 스크립트 관리자가 설치되어 있습니다. 설치를 진행합니다!)

이 스타일을 설치하려면 Stylus와 같은 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 Stylus와 같은 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 Stylus와 같은 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 유저 스타일 관리자 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 유저 스타일 관리자 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 유저 스타일 관리자 확장 프로그램이 필요합니다.

(이미 유저 스타일 관리자가 설치되어 있습니다. 설치를 진행합니다!)

작성자
ktt21
일일 설치 수
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. Используй, изменяй и распространяй свободно, при сохранении уведомления об авторстве.