NDI
Протокол NDI (Network Device Interface) — это сетевой протокол, разработанный компанией NewTek для передачи высококачественного видео и аудио в реальном времени через IP-сети. Он широко используется в сфере видеопроизводства и вещания благодаря своей гибкости, низкой задержке и высокой производительности.
Техническая сущность протокола NDI
NDI предоставляет возможность передавать видео с высоким разрешением и с высоким битрейтом через стандартные Ethernet-сети без необходимости использования дорогостоящего специализированного оборудования.
- Кодирование и компрессия:
- NDI использует собственный кодек для сжатия видео, обеспечивающий баланс между качеством изображения и сжатием. Этот кодек оптимизирован для работы с высокими разрешениями (4K), и способен поддерживать видеопотоки с высокой частотой кадров (до 120 кадров в секунду). Алгоритмы сжатия включают адаптивную обработку данных, что позволяет минимизировать задержку (до 16 мс) при сохранении высокого уровня детализации и сжатия видео. Это позволяет добиться компромисса между качеством изображения и эффективным использованием пропускной способности сети.
- Сетевая архитектура:
- NDI работает поверх стандартного сетевого стека TCP/IP, используя преимущественно TCP для передачи данных, обеспечивая надежность и порядок доставки потоков, а также UDP для некоторых задач, требующих минимальной задержки, таких как синхронизация потоков., что обеспечивает совместимость с большинством сетевых инфраструктур.
- Протокол поддерживает как одноадресную (unicast), так и многоадресную (multicast) передачу данных, что позволяет оптимизировать использование сети в зависимости от конкретного сценария.
- Автоматическое обнаружение устройств:
- Устройства, поддерживающие NDI, автоматически обнаруживаются в локальной сети с использованием технологий mDNS (Multicast DNS) и Bonjour.
- Синхронизация:
- NDI обеспечивает точную синхронизацию видео и аудио потоков, что критично для профессионального использования.
Версии NDI: Сравнительный анализ
Существует несколько версий NDI, каждая из которых оптимизирована для различных сценариев использования. Основные версии:
| Версия | Кодек | Пропускная способность | Основные особенности |
|---|---|---|---|
| NDI | SpeedHQ2 | 100-250 Мбит/с, 4:2:2 | Высокое качество, низкая задержка. |
| **NDI | HX** | H.264 | 9–30 Мбит/с, 4:2:0 |
| **NDI | HX2** | H.265 | 6-21 Мбит/с, 4:2:0 |
| **NDI | HX3** | H.264, H.265 | 26-110 Мбит/с, 4:2:0 20-84 Мбит/с, 4:2:0 |
Ключевые различия:
- NDI|HX и NDI|HX2 используют более высокий уровень сжатия, что снижает требования к сети. Это полезно в ситуациях, где сеть ограничена по пропускной способности, например, в беспроводных или удаленных системах.
- NDI|HX2 отличается улучшенной производительностью, обеспечивая более низкую задержку и улучшенное качество по сравнению с NDI|HX.
- NDI|HX3 уменьшена задержка, несмотря на сжатие. Оборудование, заявляющее поддержку этой версии протокола, сертифицируется у NewTec
Применение NDI
Протокол NDI нашел применение в различных сферах, включая:
- Видеопроизводство и вещание:
- Образование и конференции:
- Видеолекции и трансляции могут легко интегрироваться с системами видеоконференций (например, Zoom, Microsoft Teams, Skype, Cisco Webex), а также с программными видеомикшерами (VMix, OBS Studio).
- Поддержка NDI в программных приложениях (например, OBS Studio) позволяет создавать студийные съемочные комплексы без создания отдельной сетевой инфраструктуры и с использованием обычных компьютеров.
- Виртуальные студии и AR/VR:
- NDI позволяет передавать видео для обработки в реальном времени в виртуальных или дополненных средах.
- Игровая индустрия и киберспорт:
- Используется для трансляции игрового процесса с минимальной задержкой.
- Позволяет интегрировать графику и видеопотоки с высокой степенью надежности.
Спецификация NDI
- Поддерживаемые форматы видео:
- SD, HD, 4K и выше.
- Поддержка различных частот кадров (например, 30, 60, 120 fps).
- Пропускная способность:
- Видео потоки NDI требуют порядка 125 Мбит/с для 1080p60 и около 250 Мбит/с для 4K60.
- Протокол также поддерживает NDI|HX (High Efficiency Mode), использующий более высокую степень сжатия и снижающий требования к пропускной способности до 10–20 Мбит/с.
- Совместимость:
- NDI поддерживается на различных платформах, включая Windows, macOS и Linux, а также на одноплатных компьютерах, таких как Orange Pi, Raspberry Pi и NVIDIA Jetson Nano, благодаря доступности SDK и совместимости с ARM-архитектурой..
- Существуют программные и аппаратные решения с поддержкой NDI, такие как TriCaster, OBS Studio, VLC Media Player.
- API и SDK:
- NewTek предоставляет бесплатный SDK, который позволяет интегрировать поддержку NDI в программные приложения.
- С помощью API разработчики могут создавать собственные решения для обработки, передачи и записи видео.
Работа с NDI
Для NDI требуется локальная сеть, которая представляет собой сеть компьютеров, подключенных к сетевому оборудованию. NDI может использовать стандартное сетевое оборудование, чтобы позволить вам отправлять и получать видео из различных источников в вашей сети.
Для начала необходимо скачать инструменты NDI (NDI Tools), которые используются для отправки и получения видео по стандартной локальной сети. Инструменты NDI позволяют любому начать использовать IP-видео и легко обойти старые технологии, которые раньше требовали дорогостоящих карт видеозахвата и коммутаторов.
Все программное и аппаратное обеспечение, совместимое с NDI, становится частью более широкой экосистемы, где все источники видны и доступны другим компьютерам в сети.
NDI Tools
Studio Monitor
Это приложение может быстро отображать все доступные для обнаружения источники NDI в вашей локальной сети. Studio Monitor обладает длинным списком функций.
Вы можете просматривать любой источник NDI, и если источником является PTZ-камера, вы можете управлять PTZ-камерой с помощью экранного набора управления.
Студийный монитор, подключенный к PTZ-камере, покажет элементы управления PTZ-камерой.
Студийный монитор NDI также может управляться удаленно с помощью веб-сервера. IP-адрес этого веб-сервера можно найти в области настроек приложений. Как только вы введете этот IP-адрес в веб-браузер в той же локальной сети, вы сможете получить доступ к элементу управления Studio Monitor.
Screen Capture
NDI Screen Capture может захватывать экран компьютера, на котором он установлен, и делать его доступным в качестве источника видео NDI. NDI Screen Capture поддерживает захват нескольких мониторов, а также включает в себя возможность захвата веб-камеры. Как только на компьютере будет запущен NDI Screen Capture, вы получите уведомление со словами: “Ваш экран теперь доступен в качестве источника NDI”. Вы также увидите значок NDI Screen Capture в системной области. Отсюда вы можете открыть настройки приложения, которые включают частоту кадров, настройки захвата, источник звука, источник видео с веб-камеры, источник звука с веб-камеры и включить управление KVM. Большинство из этих функций не требуют пояснений, но управление KVM - это интересная функция, которую вы можете использовать для удаленного управления компьютером с помощью клавиатуры и мыши. После включения приложение NDI Studio Monitor позволит вам удаленно управлять любым компьютером с включенной функцией управления KVM NDI Screen Capture.
Screen Capture HX
NDI Screen Capture HX - это высокоэффективная версия NDI Screen Capture, которая обеспечивает новые уровни управления для оптимизации пропускной способности и аппаратного ускорения графического процессора (GPU). Когда приложение будет открыто, вы получите уведомление о том, что ваш экран становится доступным в сети в качестве источника NDI. NDI Screen Capture HX включает в себя четыре варианта уровней пропускной способности. Вы можете выбрать между ультра, высоким, средним и низким. NDI Screen Capture HX использует преимущества новой технологии сжатия видео с видеокарты, которая может поддерживать разрешение до 4K при удивительно низких требованиях к пропускной способности.
Access Manager
NDI Access Manager позволяет администраторам ограничивать доступ к видеоисточникам NDI в своей сети. Приложение позволяет пользователям управлять видимостью и доступностью источников NDI для определенных компьютеров в сети. NDI Access Manager может легко группировать источники NDI вместе, чтобы сделать их общедоступными или доступными для частного обнаружения.
Auto Direct
NDI Audio Direct - это инструмент, предназначенный для интеграции аудиоисточников NDI в программное обеспечение Digital Audio Workstation (DAW). Программные решения DAW используются для записи, редактирования и продюсирования аудио. Инструмент NDI Audio Direct использует два плагина, предназначенных для передачи звука в программные решения DAW и из них. NDI Audio Direct совместим с любым DAW, поддерживающим аудио-плагины VST3 или LV2.
VLC Plugin
VLC - это бесплатный видеоплеер с открытым исходным кодом. Широкое внедрение VLC пользователями привело к тому, что NDI поддержала систему с помощью бесплатного плагина. Плагин обеспечивает прямой доступ к источникам видео NDI с помощью совместимого программного обеспечения VLC без необходимости перекодирования.
HX Driver
Драйвер NDI|HX® требуется для подключения к определенным устройствам NDI| HX®, таким как PTZ-камеры или кодеры. Новым устройствам, поддерживающим NDIv4 или более позднюю версию, этот драйвер не потребуется.
Студия
Работа с кодером
NDI кодеры обычно используются для захвата изображения с компьютера (например, презентации докладчика на конференции), но также позволяют подключать классические SDI/HDMI видеокамеры по сети.
Необходимо ли подключить кодер с помощью HDMI-кабеля к компьютеру (камере, другому источнику HDMI сигнала).

Некоторые кодеры NDI имеют индикацию Tally. Индикатор загорается, когда поток с кодера выбран в видеомикшере в предпросмотр или в программу (соответственно зеленым и красным цветом). В RTSP кодерах таких возможностей не предусмотрено, т.к. протокол для этого не предназначен.
Управление PTZ камерой через NDI
-
Установите NDI Tools (на студийных компьютерах уже есть). Откройте Studio Monitor.
-
Откройте меню нажав на иконку в левом верхнем углу или щелкнув правой кнопкой мыши в любом месте экрана. Выберите вашу камеру.

-
Снова откройте меню, перейдите в раздел Settings, далее перейдите в раздел PTZ Settings, где необходимо нажать Show PTZ Control.

-
На экране должна появиться навигационная панель. Движение камеры происходит с помощью зажатой левой кнопки мыши и движения курсора внутри круга. Прямо справа от круга находится панелька для приближения и отдаления изображения.

Видео пример работы.
Работа в OBS
Получаем изображение с камеры
-
Установите NDI Tools (на студийных компьютерах уже есть).
-
Подключите кодер к камере как написано выше.
-
В OBS создайте новую сцену или выберите уже существующую.
-
Создайте новый источник NDI Source.

-
Задайте имя источнику.

-
Во вкладке Source name выберите свой кодер.

-
Получите изображение.

Получаем изображение с компьютера
-
Установите NDI Tools (на студийных компьютерах уже есть).
-
Подключите кодер к компьютеру, с которого хотите получить изображение.
-
На компьютере, с которого хотите получить изображение, включите screen capture.
-
В OBS создайте новую сцену или выберите уже существующую.
-
Создайте новый источник NDI Source.

-
Задайте имя источнику.

-
Во вкладке Source name выберите свой компьютер.

-
Получите изображение.

Источники
- Cтатья из Wiki МИЭМ
- GigaChat
Полезные ссылки:
(все статьи на английском языке)
- Что такое NDI?
- История NDI
- Работа с сетью для NDI
- Какая должна быть пропускная способность сети, чтобы работать с NDI?
- Видео дисплеи, использующие NDI
- Как работать с NDI в OBS?
- Как работать с NDI в vMix?
- Почему важно научится работать с IP видео?
- Как пользоваться NDI камерами?
- Как использовать NDI для создания графики?
- Как использовать NDI вместе с Wi-fi?
- Как использовать NDI Studio Monitor и NDI Screen Capture?
- NDI - как не запутаться в стандартах
Вложения
- image-10-2.png
- image-10.png
- image-11-2.png
- image-11.png
- image-12-2.png
- image-12.png
- image-13.png
- image-14.png
- image-15.png
- image-2-2.png
- image-2-3.png
- image-2-4.png
- image-2-5.png
- image-2.png
- image-3-2.png
- image-3-3.png
- image-3-4.png
- image-3.png
- image-4-2.png
- image-4-3.png
- image-4.png
- image-5-2.png
- image-5.png
- image-6-2.png
- image-6.png
- image-7-2.png
- image-7.png
- image-8-2.png
- image-9-2.png
- image-9.png
- image.png