Перейти к содержанию

Поддерживаемые форматы видеоданных и изображений#

Форматы изображений#

Поддерживаются следующие форматы изображений: JPG, PNG, BMP, PORTABLE PIXMAP, TIFF, WebP, AVIF, HEIC и GIF.

Важно! Форматы WebP, AVIF, HEIC и GIF поддерживают анимацию. При отправке анимированного изображения для обработки используется только первый кадр. Остальные кадры игнорируются.

LUNA PLATFORM поддерживает многие цветовые модели (например, RGB, RGBA, CMYK, HSV и др.), однако при обработке изображения, все они преобразуются в цветовую модель RGB.

Дополнительная информация приведена в разделе "Исходные изображения".

Форматы видео#

Форматы пикселей#

Поддерживаются следующие форматы пикселей: BGR, BGR_32F, NV12, P10, P12, RGB, RGB_32F, RGB_32F_PLANAR, RGB_PLANAR, YCBCR, YUV420, YUV420_10bit, YUV422, YUV444, YUV444_10bit.

Особенности декодирования на CPU и GPU#

Декодирование на CPU обеспечивает высокое качество, гибкость и совместимость с широким спектром форматов, но работает медленнее и потребляет больше ресурсов.

Декодирование на GPU, напротив, выполняется быстрее и снижает нагрузку на CPU, но имеет ограничения по поддерживаемым форматам и кодекам, которые зависят от модели видеокарты.

Рекомендуем заранее ознакомиться с возможностями используемого оборудования, чтобы избежать ошибок декодирования. См. информацию о декодировании на разных GPU NVIDIA.

Видеофайлы и видеокодеки#

LUNA PLATFORM поддерживает широкий спектр форматов, которые могут быть обработаны с использованием ffmpeg, но с известными ограничениями. Фактическая поддержка видеоформатов зависит от нескольких составляющих:

  • версии компонентов VPF и MediaMTX
  • модели и драйверов GPU
  • конкретных параметров видеофайла (пиксельный формат, разрешение, профиль кодека)

Основные поддерживаемые форматы:

  • Контейнеры: MP4, MOV, AVI, MKV, WebM, MPEG-TS, WMV
  • Кодеки: MJPEG, AVC/H.264, HEVC/H.265, VVC/H.266, AV1, VP8/VP9, WMV

Известные ограничения:

  • кодек и контейнер WMV, а также кодеки VVC/H.266 и AV1 — работают только на CPU
  • кодеки VP8/VP9: на CPU работают без ограничений. На GPU поддерживаются не все пиксельные форматы (например, GBR_PLANAR) из-за ограничений модуля NVIDIA CUVID

Указанные сведения основаны на тестировании на конкретных конфигурациях. Возможны исключения.

Для видеопотоков доступен механизм ретрансляции с использованием MediaMtx для расширения совместимости с форматами. Если поток не может быть обработан стандартным способом, агент автоматически пытается ретранслировать его в поддерживаемый формат (например, WebRTC).

Что нужно знать:

  • Механизм включается параметром retransmission_fallback (значение 1) в настройках LUNA_VIDEO_AGENT_SETTINGS
  • Работает только для видеопотоков, не для видеофайлов

Подробнее см. в разделе Retransmission fallback руководства разработчика.