IT-инфраструктура • инструкции • практикаПоиск по сайту

Серверы и системное администрирование

Найти материал →

Gstreamer 1.28.6: поддержка H.266 в Mp4 и совместимость с ffmpeg 9.0

GStreamer 1.28.6: поддержка H.266 в MP4 и совместимость с FFmpeg 9.0

Разработчики мультимедийного фреймворка GStreamer выпустили версию 1.28.6 - очередное стабильное обновление ветки 1.28. Релиз посвящён исправлению ошибок, повышению надёжности воспроизведения, совершенствованию WebRTC и устранению проблем совместимости с FFmpeg 9.0.

Одним из главных нововведений стал GStreamer H.266 MP4 muxing. Мультиплексоры MP4 и fragmented MP4, реализованные на Rust, теперь умеют корректно работать с видеопотоками, закодированными современным стандартом H.266, также известным как Versatile Video Coding (VVC). Кроме того, улучшена обработка входных буферов без временных меток. Аналогичное исправление добавлено в элемент hlssink3, что особенно важно для потоковой передачи и формирования HLS-сегментов.

Проблемы воспроизведения устранены в playbin и playbin3: ранее отключённые субтитры больше не приводят к зависанию после повторного включения. В ядре фреймворка исправлена регрессия, возникавшая при перепривязке pad во время отправки изменённых sticky events. Эти изменения повышают предсказуемость работы сложных конвейеров обработки медиаданных.

Значительный объём доработок пришёлся на WebRTC и потоковую передачу в реальном времени. Реализации DTLS и WebRTC скорректированы для устранения проблем совместимости с OpenSSL 4.0.0. Также исправлен расчёт битрейта при повторной передаче RTP-пакетов. Отдельно разработчики устранили ошибку депакетизации кадров SMPTE ST 291, содержащих несколько пакетов вспомогательных данных.

В webrtcsink улучшено согласование профиля и уровня H.264. Это помогает точнее подбирать параметры соединения между устройствами с разными возможностями декодирования. Дополнительно появилась поддержка аппаратного кодировщика H.265 nvv4l2h265enc от NVIDIA, который широко применяется на встраиваемых платформах компании.

Важные изменения затронули метаданные SMPTE ST 2038 и объединение данных закрытых субтитров. Исправлена проблема с добавлением Supplemental Enhancement Information в видеопотоки H.265/HEVC, использующие альфа-канал. Это может быть полезно при работе с профессиональным видео, графикой и трансляционными форматами.

Аппаратное ускорение видео также получило ряд исправлений. В VA-API энкодерах улучшена обработка размера кодированных буферов, а элемент захвата экрана D3D11 WinRT в Windows больше не допускает ошибок при расчёте высоты изображения. Такие изменения важны для приложений записи экрана, видеоконференций и удалённого рабочего стола.

Разработчики обновили и textaccumulate. Элемент теперь стабильнее формирует текстовый вывод и корректнее обрабатывает французскую пунктуацию. На практике это может улучшить конвейеры, связанные с распознаванием речи, автоматическим переводом, генерацией субтитров и синтезом голоса.

Отдельное внимание уделено совместимости с FFmpeg 9.0. Пользователи, которые собирают GStreamer с использованием недавно выпущенной версии FFmpeg, получат необходимые исправления. Подробнее о ключевых изменениях можно узнать в материале о поддержке H.266 MP4 и FFmpeg 9.0 в GStreamer 1.28.6.

Изменения коснулись и системы сборки Cerbero. В Windows-пакеты больше не должны ошибочно попадать статические файлы .lib, относящиеся к Rust-плагинам. Ранее эта ошибка приводила к неоправданному увеличению размера готовых бинарных дистрибутивов. Рецепт встроенной библиотеки SRT также обновлён до версии 1.5.6.

Для разработчиков, которым требуется GStreamer 1.28.6 скачать для Android, iOS, macOS или Windows, готовые бинарные сборки будут опубликованы на странице загрузок проекта. Тем, кто собирает фреймворк самостоятельно, важно учитывать обновлённые требования к FFmpeg и зависимостям Rust.

Выпуск имеет значение не только для пользователей готовых медиаплееров, но и для команд, занимающихся интеграцией потокового видео. GStreamer настройка и интеграция в проектах с WebRTC, HLS, аппаратным кодированием и субтитрами теперь должны проходить стабильнее. Исправления в обработке временных меток особенно полезны для систем, где данные поступают от нескольких независимых источников.

Совместимость с FFmpeg 9.0 также расширяет возможности современных сборочных окружений. Формулировка "GStreamer FFmpeg 9.0 поддержка" отражает практическую задачу разработчиков: обновление FFmpeg нередко требует адаптации интерфейсов и устранения несовместимостей в плагинах. Версия 1.28.6 закрывает часть таких проблем без перехода на новую функциональную ветку.

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

Как и другие промежуточные версии обслуживания, GStreamer 1.28.6 включает множество дополнительных исправлений ошибок, проблем сборки, утечек памяти и непредсказуемого поведения. Обновление рекомендуется пользователям, которым важны стабильность, работа с современными видеокодеками и совместимость с актуальным программным окружением.

Прокрутить вверх