Стриминг без карты захвата с использованием плагина OBS-ndi

Представьте себе ситуацию, если у вас есть несколько компьютеров, которые не тянут стрим и игру одновременно, а стримить очень хочется, прям сил нет. Если это все про вас, то добро пожаловать в статью.

Перво на перво расскажу, что такое этот ваш плагин obs-ndi. Obs-ndi - это OpenSource кросс-платформенный проект по сетевой передачи видео для проведения трансляции картинки одного устройства, обработкой которого занимается другое устройство. При этом нет никакого значения какая OS на обоих устройствах.

Ключевым требованием является сетевое соединение между устройствами со скоростью 1Гб/с.

Установка на Linux

Так как мы тут все пользователи Линукс систем со стажем или без оного, то все ниже описанное будет относиться к работе плагина на Linux.
Проект изначально ориентирован на Ubuntu/Debian, поэтому основной способ установки, описанный на странице проекта ориентирован именно на данные дистрибутивы, ставим естественно на обе машинки:

# Start by installing the latest libndi deb available [here](https://github.com/Palakis/obs-ndi/releases).
git clone https://github.com/Palakis/obs-ndi.git
cd obs-ndi
mkdir build && cd build
# If you are on Ubuntu, add the `-DUSE_UBUNTU_FIX=true` flag to your cmake command
cmake -DLIBOBS_INCLUDE_DIR="<path to the libobs sub-folder in obs-studio's source code>" -DCMAKE_INSTALL_PREFIX=/usr ..
make -j4
sudo make install

Для пользователей Arch производных систем все еще проще, требуется просто установить пакет obs-ndi из репозитория:

sudo pacman -S obs-ndi

Теперь важный нюанс, который в свое время мне стоил некоторого количества времени и нервов. Для того чтобы все заработало, на машине с которой планируется захватывать картинку, необходимо запустить демон avahi:

sudo systemctl enable --now avahi-daemon.service

Думаю он уже будет установлен в системе, если нет, то поставить из репозитория вашего дистрибутива.

Настройка obs-ndi

На машине источнике картинки произвести настройки захвата окон, приложений и прочих всяких сцен. Затем в меню “Инструменты” зайти в “Настройки выхода NDI”

1

и включить выход с понятным наименованием, если будете с нескольких физических источников пускать картинку, чтобы потом не путаться.

На машине, которая собственно будет отсылать картинку на стриминговую площадку произвести настройки кодировщика по вкусу, затем в источниках найти и добавить “NDI источник”

В названии источника из выпадающего списка найти нужный нам источник и выбрать его, в зависимости от вашего железа можно включить аппаратное ускорение.

Вуаля. Картинка с устройства источника подается на стрим.

Остается только запустить трансляцию на необходимый сервис.

1 Like