На чем делать сервер потокового вещания
Производство видеоконтента перестало быть уделом студий и телеканалов. Смартфон породил новый класс потребителей видео и дал возможность каждому побыть творцом. Дело за малым - смонтировать снятый материал и организовать вещание, адаптируемое под устройства просмотра. Это работа медиасервера – получить видеопоток и сжать его для соответствия возможностям целевого устройства. Транскодирование видео достаточно ресурсоемкая задача.
Самым экономичный вариант аппаратного транскодера видео - ускоритель Quick Sync в интегрированном графическом ядре процессоров Intel (iGPU). В домашних условиях медиасервером может служить любой ПК на Intel Core. Переход к коммерческим трансляциям переносит активность и оборудование на площадки провайдеров. К платформе такого медиасервера и требования другие:
- Форм-фактор. Нужен стоечный формат, желательно 1U.
- IPMI. Удаленное управление питанием, возможность удаленно просматривать консоль и при необходимости переустанавливать ПО – обязательное свойство современных серверов
- Память с коррекцией ошибок ECC. Еще один must have для сервера
- Отказоустойчивость по питанию. Важна для непрерывности сервиса.
В списке процессоров Intel с Quick Sync есть Celeron, Pentium, Core, часть процессоров Xeon W и часть Xeon E – те, что с буквой G в названии. Память ECC поддерживают все процессоры Xeon E, Xeon W и часть процессоров Intel Core 12th Gen (но только в паре с платами на чипсете W680).
Проблема найти материнскую плату с IPMI и активируемым iGPU одновременно. В таких платах видео штатно выводится на порт VGA из сервисного процессора BMC (например, ASPEED AST2xxx ). BIOS плат с BMC блокирует активацию iGPU и только производитель платы может разрешить его проброс операционной системе и приложениям. Наличие BMC на серверных материнских платах стало нормой. Проблему решают материнские платы с несколькими независимыми видеовыходами и поддержкой мультимониторных конфигураций в BIOS.
Основной процессорный кандидат – Intel Xeon E. Из десяти номиналов последней линейки Xeon E 2300 графическое ядро iGPU с поддержкой Quick Sync есть в шести.
Пример компактного решения 1U, отвечающего требованиям устойчивого вещания - ASUS RS300-E11-RS4:
- Intel Xeon E от 4-ядерного 2324G до 8-ядерного 2388G
- До 128ГБ памяти DDR4-3200
- M.2 под загрузочный SSD и четыре отсека под диски горячей замены 3.5”/ 2.5”
- Два слота PCIe 4.0 под карты расширения
- Отказоустойчивый блок питания
- Два порта Intel I210AT Gigabit Ethernet
- Cервисный процессор ASMB10-iKVM на контроллере ASPEED AST2600 для удаленного управления, с портом VGA
- Независимый порт HDMI под видео из CPU (iGPU) для вывода графики.
Выбор процессора, памяти, накопителей определяется предполагаемой нагрузкой и рекомендациями разработчиков ПО вещания. Какое именно выбрать – решать организатору трансляций. В любом случае производительность зависит от многих параметров: частоты процессора и памяти, количества и битрейта потоков транскодируемого видео, емкость накопителей – от объема хранимого контента.
Чтобы воспользоваться Quick Sync, активируем iGPU в BIOS:
Теперь оба графических ядра активны: встроенное в BMC и встроенное в CPU (iGPU):
Если в сервере появится третье графическое ядро, на дискретной видеокарте, ОС увидит и его. Большинство приложений позволяет распределять нагрузку между CPU и GPU.
Выбор аппаратной базы сервера – первый, но важный шаг в организации потокового вещания. Домашний стример может обойтись без удаленного управления, стоечного исполнения и отказоустойчивости сервера. Коммерческие же трансляции предполагают продуктивность и непрерывность. Положение обязывает.