Decklink SDI
Flussonic Media Server работает с платами Blackmagic: Decklink SDI или Decklink HDMI, а также Decklink Quad 2, у которых 8 портов.
Вы сможете:
-
Захватывать видео с плат захвата Blackmagic Decklink SDI или Decklink HDMI
-
Читать телетекст и читать метки врезки рекламы из полученного с Decklink потока. Метки врезки рекламы преобразуются из VBI SCTE-104 в формат SCTE-35, пригодный для отправки в MPEG-TS и HLS
-
Передавать телетекст (Teletext B) из MPEG-TS в видео, передаваемое на SDI карты Decklink.
Содержание:
- Установка драйвера для Decklink Blackmagic
- Захват видео с платы захвата Decklink SDI или HDMI
- Захват с Decklink Quad 2
- Транскодирование видео с плат Decklink
- Устранение чересстрочности в прогрессивных потоках
- Захват SD видео - указание SAR
- Вывод на плату Decklink SDI или Decklink HDMI
- Глобальные настройки Decklink
Также полезно:
Установка драйвера для платы захвата
-
Вы можете скачать драйвера с официального сайта Blackmagic (версия 11.5.1 доступна по ссылке)
-
Установите пакет:
cd Blackmagic_Desktop_Video_Linux_11.5.1/deb/x86_64
dpkg -i desktopvideo_11.5a33_amd64.deb
Если у вас установлена другая версия, вы можете удалить ее командой:
dpkg -r desktopvideo
Захват видео с платы захвата Decklink SDI или HDMI
После установки драйвера Blackmagic и обновления прошивки, настройте поток таким образом:
stream sdi {
url decklink://0;
}
Flussonic Media Server подключится к указанному первому устройcтву (0) и запустит на нем автоконфигурацию для поиска активного разрешения.
Некоторые модели Decklink не поддерживают автоматический поиск активного разрешения и для них необходимо указывать режим вручную с помощью опций mode
и vinput
.
Например, для Intensity Pro с подключенным к нему по HDMI источником 720p и 50 fps поток нужно настроить так:
stream sdi {
url decklink://0 mode=hp50 vinput=3;
}
Параметры в url decklink://:
- mode - режим входящего потока
-
vinput - видео интерфейс:
1 - Composite
2 - Component
3 - HDMI
4 - SDI
5 - Optical SDI
6 - SVideo
-
ainput - аудио интерфейс:
0 - Analog
1 - Embedded
2 - AESEBU
-
vpts - режим синхронизации для видео:
2 - по аудио
3 - по эталонному сигналу
-
apts - режим синхронизации для аудио:
1 - по видео
3 - по эталонному сигналу
-
duplex - используется при захвате с Blackmagic Decklink Quad 2 для указания количества активных портов на плате:
full - карта использует 4 порта
half - карта использует 8 портов
-
sar - SAR входного потока. Имеет смысл указать SAR для анаморфного видео с соотношением сторон не равным 1:1. Пример: sar=16:11
Захват с Decklink Quad 2
Если вы настраиваете захват с платы Blackmagic Decklink Quad 2, укажите параметр duplex = full|half, чтобы сообщить Flussonic, использует ли ваша плата 4 или 8 портов SDI.
Установите full
, если карта использует 4 порта, и установите half
, если карта использует все 8 портов.
Установите эту опцию для устройств 0, 1, 2, 3.
Следующая конфигурация позволяет Flussonic использовать 8 портов при захвате:
stream test {
url decklink://0 duplex=half;
}
Warning
Убедитесь, что вы задали опцию duplex
для всех потоков, принимаемых через плату Decklink Quad 2.
Транскодирование видео с плат SDI
Если необходимо транскодировать захваченный поток из Decklink SDI, добавьте директиву transcoder
в настройки потока:
stream sdi {
url decklink://0;
transcoder vb=3096k ab=64k;
}
Note
Параметр транскодирования external=false
теперь используется по умолчанию для SDI, HDMI и других "сырых" видеопотоков, предотвращая чрезмерную нагрузку на сервер, возникающую при external=true
.
Параметры транскодирования больше не указываются отдельно для источника url decklink://
, так как теперь Flussonic умеет получать видео из SDI в виде сырых кадров. Ранее необходимо было сразу транскодировать SDI-поток опцией enc=
в настройках захвата, потому что Flussonic не мог работать с ним в виде некодированного видео.
Что это даёт:
-
Повышение качества видео. Мы избегаем двойного транскодирования в потоках с несколькими источниками и транскодированием, поскольку все источники потока транскодируются теперь один раз согласно параметрам, указанным в
transcoder
.stream sdi { url decklink://0; url fake://fake; transcoder vb=3096k ab=64k; }
-
Экономия ресурсов (по той же причине).
-
"Бесшовное" переключение между SDI и другими источниками потока.
-
Удобство настройки SDI источника через UI — теперь не нужно указывать опции транскодера отдельно для SDI источника, нет необходимости редактировать файл flussonic.conf и затем применять конфигурацию.
-
Это позволит использовать аппаратные транскодеры для кодирования видео, полученного из Decklink SDI (в будущих версиях Flussonic).
Caution
Если вы не укажете настройки транскодирования в transcoder
, то поток не будет работать.
Устранение чересстрочности в прогрессивных потоках
Flussonic может устранять чересстрочность в прогрессивных потоках для улучшения качества видео. Для этого следует использовать метод деинтерлейсинга CUDA yadif:
stream test {
url decklink://1 vinput=4;
transcoder vb=4000k hw=nvenc preset=slow fps=50 deinterlace=yadif ab=128k;
}
Захват SD видео с плат SDI (20.09)
Flussonic поддерживает видео с неквадратными пикселями (анаморфное видео) при захвате с SDI карт. Зачастую это видео SD (standard definition) качества.
Например, при захвате каналов в формате PAL, в выходном потоке может появиться искажение пропорций изображения если соотношение сторон пикселя не 1:1. Подавляющее большинство устройств ожидает, что соотношение сторон пикселя 1:1.
Чтобы Flussonic сохранил пропорции в выходном видео без искажения картинки, следует указать sar входящего потока:
stream test {
url decklink://1 vinput=4 sar=16:11;
}
Flussonic исходя из sar
вычисляет разрешение выходного видео. В примере с sar=16:11 входящее анаморфное видео 720x576 пройдет внутри Flussonic с разрешением 1048x576.
Эта настройка работает при захвате с плат Decklink и StreamLabs.
Вывод на плату Decklink SDI или Decklink HDMI
Flussonic Media Server может не только захватывать, но и передавать видео на плату захвата и вывода Decklink SDI или HDMI.
Для вывода на Decklink укажите параметр push decklink://
:
stream test {
url udp://239.0.0.1:1234;
push decklink://0 size=720x576 fps=50 deinterlace=true;
}
Flussonic передает раскодированный поток на указанный номер устройства или порт на самой карте (например, 0). При необходимости можно указать опцию deinterlace=true
для устранения чересстрочности. Максимальный уровень громкости (volume
) — 1.0.
Глобальные настройки Decklink
Чтобы настроить дуплексный режим Decklink, позволяющий выбрать направление input/output SDI карты, используйте следующую конфигурацию
Flussonic 20.11 и новее:
decklink 0 {
profile two_half;
}
decklink 1 {
profile two_half;
}
Flussonic 20.10 и старее:
decklink {
card 0 profile=two_half;
card 1 profile=two_half;
}
В зависимости от модели, поддерживаются следующие режимы:
- one_full - bmdProfileOneSubDeviceFullDuplex
- one_half - bmdProfileOneSubDeviceHalfDuplex
- two_full - bmdProfileTwoSubDevicesFullDuplex
- two_half - bmdProfileTwoSubDevicesHalfDuplex
- four_half - bmdProfileFourSubDevicesHalfDuplex