- Что такое OBS WebSocket
- Важное про версии
- Где включить WebSocket в OBS
- Почему нужен пароль
- Что можно автоматизировать
- Подключение из Node.js
- Подключение из Python
- Мини-проект для автора уроков
- Как проверить подключение
- Безопасность
- Где это полезно соло-предпринимателю
- Ответы на эти вопросы могут быть для вас полезными
- Нужно ли ставить obs-websocket plugin отдельно?
- Какой порт использует OBS WebSocket?
- Можно ли управлять OBS из браузера?
- Что можно переключать через OBS WebSocket?
- Почему скрипт не видит сцену?
- Что почитать дальше по WebSockets
Что такое OBS WebSocket
OBS WebSocket — это способ управлять OBS удаленно через WebSocket API: переключать сцены, запускать и останавливать запись, получать состояние стрима, менять источники, автоматизировать действия
Для автора уроков это особенно интересно. Можно записывать видеоуроки не только руками, но и с автоматикой:
- нажал кнопку в своей панели — OBS переключил сцену;
- начался блок кода — включилась сцена с редактором;
- пошел экран браузера — сменилась раскладка;
- завершился урок — остановилась запись;
- скрипт отметил таймкоды.
Это уже не просто "стримерская штука", а инструмент для производства контента
Важное про версии
Раньше obs-websocket часто ставили как отдельный plugin. В современных версиях OBS WebSocket remote control уже встроен в OBS Studio. Но в поиске до сих пор много запросов obs websocket plugin, потому что старые инструкции живут долго
Поэтому перед установкой отдельного плагина сначала проверьте свою версию OBS и настройки remote control в самой программе
Где включить WebSocket в OBS
В OBS откройте настройки remote control или WebSocket server. Название пункта зависит от версии и локализации OBS
Что обычно нужно:
- включить WebSocket server;
- посмотреть port;
- задать password;
- сохранить настройки;
- не публиковать пароль в открытом доступе.
Для локальной автоматизации часто используется адрес:
ws://localhost:4455
Порт 4455 часто встречается в современных инструкциях, но всегда проверяйте значение в настройках OBS
Почему нужен пароль
OBS управляет записью, сценами и трансляцией. Если открыть WebSocket без защиты, кто-то в вашей сети теоретически сможет дергать управление
Даже если вы работаете локально, пароль — нормальная привычка. Особенно если ноутбук бывает в чужих сетях, а OBS открыт во время записи
Что можно автоматизировать
Типовые сценарии:
- переключить сцену;
- узнать текущую сцену;
- включить или выключить источник;
- стартовать запись;
- остановить запись;
- поставить запись на паузу;
- получить статус стрима;
- менять текстовый источник;
- реагировать на события OBS.
Для уроков по программированию мне особенно нравится идея "сцены как главы": заставка, редактор, браузер, терминал, итог. Автоматизация помогает не держать всю механику в голове
Подключение из Node.js
Для Node.js есть библиотеки-клиенты к obs-websocket. Конкретный пакет выбирайте по актуальной поддержке версии протокола
Условный пример структуры:
import OBSWebSocket from 'obs-websocket-js';
const obs = new OBSWebSocket();
await obs.connect('ws://localhost:4455', 'your_password');
const { currentProgramSceneName } = await obs.call('GetCurrentProgramScene');
console.log('Текущая сцена:', currentProgramSceneName);
await obs.call('SetCurrentProgramScene', {
sceneName: 'Code'
});
Этот пример показывает идею: подключиться, вызвать метод, передать параметры
Перед публикацией конкретный код лучше сверить с документацией выбранной библиотеки, потому что API клиентов может меняться
Подключение из Python
В Python тоже есть клиенты для OBS WebSocket. Сценарий похожий:
- Подключиться к
ws://localhost:4455. - Передать password.
- Вызвать метод API.
- Обработать ошибку, если сцена не найдена.
Для учебного материала можно не привязываться к одному пакету намертво, а показать общий принцип и дать ссылку на актуальный клиент
Мини-проект для автора уроков
Сделаем сценарий:
- сцена
Intro— начало урока; - сцена
Code— редактор; - сцена
Browser— демонстрация результата; - сцена
End— финальный экран.
Логика:
start lesson -> Intro
show code -> Code
show result -> Browser
finish lesson -> End
Такой сценарий можно повесить на кнопки в локальной панели или на горячие клавиши
Как проверить подключение
Проверяйте по шагам:
- OBS открыт.
- WebSocket server включен.
- Port совпадает.
- Password совпадает.
- Клиент подключается к
localhost, если скрипт на той же машине. - Метод существует в вашей версии API.
- Сцена с таким названием реально есть.
Если ошибка "connection refused", сервер WebSocket в OBS выключен или порт другой
Если ошибка авторизации, пароль неверный или клиент не прошел handshake протокола
Если метод не найден, вероятно, библиотека или пример не соответствует версии obs-websocket
Безопасность
Не открывайте OBS WebSocket в интернет без крайней необходимости. Если нужно удаленное управление:
- используйте пароль;
- ограничивайте доступ сетью/firewall;
- не публикуйте порт наружу без защиты;
- не храните пароль в коде;
- используйте переменные окружения;
- проверяйте, какие команды может выполнить ваш скрипт.
OBS — это не просто "окошко записи". Это управление трансляцией и файлами
Где это полезно соло-предпринимателю
Если вы записываете уроки, WebSocket может убрать повторяющуюся ручную работу:
- начать запись при запуске сценария;
- переключить сцену при переходе от теории к коду;
- включить нижнюю плашку с названием урока;
- обновить текстовый источник с темой;
- остановить запись и сохранить лог таймкодов.
Это небольшая автоматизация, но она снижает когнитивную нагрузку во время записи. Можно думать о содержании, а не о том, какую сцену нажать
Ответы на эти вопросы могут быть для вас полезными
Нужно ли ставить obs-websocket plugin отдельно?
Сначала проверьте свою версию OBS. В современных OBS remote control через WebSocket обычно уже встроен. Отдельный plugin нужен не всегда
Какой порт использует OBS WebSocket?
Часто встречается 4455, но точное значение смотрите в настройках OBS
Можно ли управлять OBS из браузера?
Да, если использовать подходящий WebSocket-клиент и учесть авторизацию. Но не открывайте управление без защиты
Что можно переключать через OBS WebSocket?
Сцены, источники, запись, трансляцию, состояние, некоторые настройки и события — зависит от версии API и клиента
Почему скрипт не видит сцену?
Проверьте точное имя сцены. Регистр, пробелы и язык имеют значение
Что почитать дальше по WebSockets
Если вы собираете тему по шагам, рядом лучше открыть:
- WebSocket простыми словами: когда нужен real-time — освежить, почему OBS remote control использует постоянное соединение.
- WebSocket test online: как проверить соединение — аккуратно проверить локальное соединение и сообщения.
- WebSocket на JavaScript и Node.js: мини-чат в браузере — использовать Node.js как простой язык для автоматизации сцен.
- WebSocket на Python: быстрый пример клиента и сервера — использовать Python, если автоматизация OBS будет частью скриптов.



