- Разработчик Анис Икбал представил проект ffmpeg-over-ip для запуска медиасервера с удалённым использованием GPU через TCP.
- Проект написан на Go и C с модифицированным ffmpeg, обеспечивающим передачу операций ввода-вывода по одному TCP-порту без NFS/SMB.
- ffmpeg-over-ip поддерживает аппаратное ускорение (NVENC, QSV, VAAPI, AMF и др.), кроссплатформенность и аутентификацию HMAC-SHA256.
Анис Икбал, разработчик из сферы открытого программного обеспечения, анонсировал новый проект под названием ffmpeg-over-ip. Это решение позволяет запускать медиасервер на удалённой машине с мощной видеокартой, используя удалённое транскодирование через GPU. Исходный код проекта написан на языках Go и C и открыт для свободного использования под лицензией MIT на платформе GitHub.
Ключевая особенность проекта заключается в обходе традиционных протоколов общего доступа к файлам, таких как NFS и SMB. Вместо них серверная часть запускает специально модифицированный ffmpeg, который туннелирует все операции чтения и записи файлов обратно клиенту по единственному TCP-порту. Это упрощает настройку и исключает необходимость в монтировании удалённых файловых систем.
ffmpeg-over-ip поддерживает широкий спектр технологий аппаратного ускорения: NVENC от NVIDIA, QSV от Intel, VAAPI для Linux, AMF от AMD, а также VideoToolbox для macOS и другие. Разработчик предоставляет предварительно собранные исполняемые файлы ffmpeg, включающие пропатченный ffmpeg и ffprobe, что исключает необходимость отдельной установки этих утилит. Решение кроссплатформенно и совместимо с Linux (x86_64 и arm64), macOS (arm64 и x86_64) и Windows (x86_64), при этом версия клиента для Windows arm64 пока отсутствует.
Проект использует unix-сокеты для локальной работы без накладных расходов TCP и предлагает гибкую конфигурацию в формате JSONC с комментариями и возможностью размещения конфигурации в восьми стандартных местах. Для повышения безопасности реализована аутентификация HMAC-SHA256, при которой каждая команда подписывается общим секретом, обеспечивая надёжную проверку подлинности.
В целом ffmpeg-over-ip становится удобным инструментом для тех, кто нуждается в удалённом видеотранскодировании с использованием ресурсов GPU, облегчая настройку и сокращая сложности, связанные с традиционными протоколами общего доступа к файлам и настройками монтирования. Этот проект может быть интересен как разработчикам, так и системным администраторам, работающим с видеообработкой и распределёнными вычислительными системами.
