The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Доступен мультимедийный фреймворк GStreamer 1.26.0

12.03.2025 13:55

После года разработки представлен релиз GStreamer 1.26, кроссплатформенного набора компонентов для создания широкого спектра мультимедиа приложений, от медиаплееров и конвертеров аудио/видео файлов, до VoIP-приложений и систем потокового вещания. Код GStreamer распространяется под лицензией LGPLv2.1. Отдельно развиваются обновления плагинов gst-plugins-base, gst-plugins-good, gst-plugins-bad, gst-plugins-ugly, а также обвязка gst-libav и сервер потокового вещания gst-rtsp-server. На уровне API и ABI новый выпуск обратно совместим с веткой 1.0. Бинарные сборки в скором времени будут подготовлены для Android, iOS, macOS и Windows (в Linux рекомендуется использовать пакеты из дистрибутива).

Ключевые улучшения GStreamer 1.26:

  • Добавлены кодировщик и декодировщик формата видео VVC (Versatile Video Coding), известного также как стандарт сжатия видео H.266, разработанный совместно рабочими группами MPEG (ISO/IEC JTC 1) и VCEG (ITU-T), при участии таких компаний, как Apple, Ericsson, Intel, Huawei, Microsoft, Qualcomm и Sony. H.266 идёт на смену H.265 (HEVC) и обеспечивает высокую эффективность передачи и хранения всех экранных разрешений (от SD и HD до 4K и 8K), поддерживает видео с расширенным динамическим диапазоном (HDR, High Dynamic Range) и панорамное видео в режиме 360 градусов.
  • Добавлены кодировщик и декодировщик стандарта кодирования видео LCEVC (Low Complexity Enhancement Video Coding), реализующий дополнительный слой с метаданными для улучшения качества уже существующих кодеков H.26x и MP4/ISOBMFF.
  • Добавлены кодировщик и декодировщик для формата изображений JPEG XS, который позиционируется как легковесная система кодирования изображений, обеспечивающая минимальные задержки при кодировании и декодировании, и ориентированная на оптимизацию передачи последовательностей изображений очень высокого качества (до 8K). JPEG XS позволяет существенно снизить необходимую пропускную способность канала связи без заметных для человеческого глаза потерь качества.
  • Добавлена возможность подстановки и извлечения скрытых субтитров для форматов H.264 и H.265.
  • Улучшена поддержка адаптивного потокового вещания на базе протоколов HLS (HTTP Live Streaming) и DASH (Dynamic Adaptive Streaming over HTTP). Добавлены новые приёмники мультимедийных данных (sink) hlscmafsink и hlssink3 для вывода фрагментов CMAF (fMP4) и MPEG-TS, а также hlsmultivariantsink для вариативного вывода.
  • В упаковщик и распаковщик мультимедийных контейнеров MPEG-TS добавлена поддержка кодеков H.266, JPEG XS, AV1 и VP9, а также метаданных SMPTE ST-2038 и ID3.
  • В форматы Matroska и ISO MP4 добавлены упаковщики и распаковщики для кодека H.266/VVC. В MP4 добавлены распаковщики для видео в форматах Hap и Lagarith.
  • Добавлена поддержка SMPTE 2038, системы для прикрепления дополнительных данных и метаданных к мультимедийным контейнерам.
  • Улучшена интеграция с графическим API Vulkan. Расширены возможности для управления памятью, выбора цветового пространства, управления устройствами и работы в полноэкранном режиме. Добавлена поддержка Vulkan-расширений для ускорения декодирования видео H264 и H265. Повышена производительность кодировщика, использующего Vulkan.
  • Улучшена интеграция с OpenGL. Добавлена поддержка дополнительных форматов преобразования цветов и пиксельных форматов. Добавлена поддержка импорта потоков с использованием DMABufs.
  • Улучшена интеграция с библиотекой Qt6 и QML.
  • Расширены компоненты для интеграции с CUDA и NVIDIA Video Codec SDK. Добавлен кодировщик формата AV1 на базе API NVCODEC.
  • Реализована библиотека gst-d3d12 с кодировщиками и декодировщиками на базе API Direct3D 12.
  • В стек RTSP добавлена поддержка управления ключами MIKEY на стороне клиента.
  • В audioconvert добавлена поддержка перегруппировки звуковых каналов.
  • В плагин на базе библиотеки GTK3 добавлена поддержка OpenGL/WGL на платформе Windows.
  • В элемент imagefreeze добавлена поддержка форматов JPEG и PNG.
  • В элементе pitch реализована возможность воспроизведения в обратном направлении.
  • В элементе rtmp2 улучшены механизмы аутентификации на RTP-серверах. Добавлена поддержка аутентификации в CDN Limelight.
  • В плагин для интеграции с VA-API добавлены элементы для ускорения декодирования H.266 (VVC), а также кодирования VP8 и JPEG.
  • Добавлены элементы для работы с потоками на базе протокола QUIC (raw QUIC, RTP-over-QUIC и WebTransport).
  • В набор gst-plugins-rs добавлено 23 новых элемента или плагина, написанных на языке Rust. Плагины, написанные на языке Rust, могут использоваться в программах на любых языках и работа с ними аналогична использованию плагинов на C и C++.


  1. Главная ссылка к новости (https://lists.freedesktop.org/...)
  2. OpenNews: Выпуск мультимедиа-пакета FFmpeg 7.1
  3. OpenNews: Доступен мультимедийный фреймворк GStreamer 1.22.0
  4. OpenNews: Уязвимости в GStreamer, приводящие к выполнению кода при обработке файлов SRT и PGS
  5. OpenNews: В мультимедийном фреймворке GStreamer выявлено 29 уязвимостей
  6. OpenNews: Опубликован мультимедийный сервер PipeWire 1.4.0
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/62865-gstreamer
Ключевые слова: gstreamer, multimedia
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (25) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, Big Robert TheTables (?), 14:15, 12/03/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • –3 +/
    Неплохо в релиз набрали фич. Немного забавляет то, что ни одна из них не реализована при помощи упомянутых в последнем предложении "23 новых элемента или плагина". Нечему удивлятся, но все-таки забавно.
     
     
  • 2.2, Аноним (-), 14:21, 12/03/2025 [^] [^^] [^^^] [ответить]  
  • +2 +/
    > Неплохо в релиз набрали фич. Немного забавляет то, что ни одна из них не реализована
    > при помощи упомянутых в последнем предложении "23 новых элемента или плагина".

    А как фичи вообще могли его использовать, если он есть только в плагинах, а не в основной кодовой базе? Ну хотя на минуту задумывайтесь перед тем как комменты строчить.

     
     
  • 3.5, Big Robert TheTables (?), 14:33, 12/03/2025 [^] [^^] [^^^] [ответить]  
  • –1 +/
    >> Неплохо в релиз набрали фич. Немного забавляет то, что ни одна из них не реализована
    >> при помощи упомянутых в последнем предложении "23 новых элемента или плагина".
    > А как фичи вообще могли его использовать, если он есть только в
    > плагинах, а не в основной кодовой базе? Ну хотя на минуту
    > задумывайтесь перед тем как комменты строчить.

    вы когда с "А" начинаете вопрос, то остановитель на ту же самую минутку, подумайте над вариантами ответа - скорее всего, вопрос задавать будет не нужно.
    Отвечаю - запрсто. "Реализована фича такая-то, быстрое индексирование по хлс-плейлисту с хранением хлс-чанков большими блобами для экономии айнодов фс, фича доступна только при использовании такого-то пререквизита". и далее ерничать над "дидами-экспердами опенета, которые супротив прагреса".  Чем не фича?

     
     
  • 4.9, Аноним (-), 14:42, 12/03/2025 [^] [^^] [^^^] [ответить]  
  • +3 +/
    Напр. так "New spotifylyricssrc element for grabbing lyrics from Spotify."
    И единственная претензия, что автор новости не скопипастил список из этих 23 пунктов в саму новость.
    Ты просто очень хочешь набросить, но получается крайне уныло((
     

  • 1.3, Аноним (3), 14:22, 12/03/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Почему G? Это такой масонский хинт?
     
     
  • 2.6, Аноним (6), 14:37, 12/03/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Гномовская библиотека, как GLib и прочия.
     
  • 2.7, Аноним (7), 14:39, 12/03/2025 [^] [^^] [^^^] [ответить]  
  • +3 +/
    Потому что  based on GObject
     
     
  • 3.26, Аноним (3), 17:05, 12/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    А в GObject что значит G?
     
     
  • 4.28, Брус Ю (?), 17:43, 12/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Great
     
  • 4.30, Аноним (7), 17:54, 12/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    GObject это GLib.Object
     
  • 2.12, Аноним (12), 14:46, 12/03/2025 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Конечно. Ты бы хоть на сайт к ним сходила. GNU == Google's New UNIX
     
  • 2.13, YetAnotherOnanym (ok), 14:48, 12/03/2025 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Потому что G - и точка.
     
     
  • 3.25, Аноним (25), 16:51, 12/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Или точка G.
     

  • 1.4, Алконим (?), 14:30, 12/03/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    А почему не на раст?
     
     
  • 2.8, Аноним (7), 14:41, 12/03/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Специально для тебя же написали: добавлено 23 новых элемента или плагина, написанных на языке Rust.
     
  • 2.10, Аноним (10), 14:42, 12/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Они на Zig перепишутся.
     
  • 2.11, VladSh (?), 14:46, 12/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Не в этой версии. Ждите.
     

  • 1.15, Аноним (15), 15:11, 12/03/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Пора перевестись на комерческую лицензию и получать десяток-другой лярдов ковыряя пальцем в носу
     
  • 1.18, Аноним (18), 15:14, 12/03/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Вот наконец таки разрабы GStreamer допетрили силу и могущество Раста, и стали пилить на нём плагины. Раст и только Раст имеет право называться системным языком программирования. УРА!
     
     
  • 2.21, Аноним (-), 16:01, 12/03/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Вот наконец таки разрабы GStreamer допетрили силу и могущество Раста,
    > и стали пилить на нём плагины.

    Лучше бы они сам GStreamer на нем пилили.
    А то дырявое peшeтo какое-то, а не софтина.
    Из последнего "В мультимедийном фреймворке GStreamer выявлено 29 уязвимостей", но на самом деле их намного больше opennet.ru/openforum/vsluhforumID3/135618.html#109

     
  • 2.29, Аноним (29), 17:47, 12/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    А С++?
     

  • 1.22, Аноним (22), 16:08, 12/03/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    > gst-plugins-base, gst-plugins-good, gst-plugins-bad, gst-plugins-ugly

    Это меня всегда поражало. Не gst-plugin-mp3, gst-plugin-ogg, gst-plugin-flac, а с одной стороны похеренная гранулярность, с другой - какая-то совершенно левая классификация. В каком пакете мне искать поддержку нужного формата? Что если она в bad? Не рабочая? Неподдерживаемая? Зачем она тогда вообще? А если в ugly? А что хуже, bad или ugly? А что если что-то переедет из base в bad? А наоборот?

    Ну и напомню что это насквозь дырявая и текущая сишная пакость.

     
     
  • 2.27, Аноним (27), 17:06, 12/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Там ребята с юмором (на самом деле нет, и им просто наsrать на всех): https://gitlab.freedesktop.org/gstreamer/gstreamer/-/tree/main/subprojects/gst

    >Не беспокойте нас по поводу качества плагинов, воспользуйтесь своими правами в мире опенсорса - исправьте баг сами и пришлите нам патч. Видишь ли, дорогуша, в этом мире есть два типа людей: те, у кого заряжены ружья, и те, кто копает. Ты копаешь.

     

  • 1.23, Аноним (-), 16:30, 12/03/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    А кто-то может рассказать как оно работает с браузером и драйвером видеокарты. Помню с ним пробовал разбираться когда решал проблемы с видео браузера
     
     
  • 2.31, Аноним (31), 17:55, 12/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Очень просто, обрабатывает медиа-контент посредством этого фреймворка. И gstreamer позволяет перенаправлять ресурсы на аппаратные обработчики среди прочего, он вообще довольно гибкий (впрочем через nvdec в wine у меня так и не завелось, а vaapi просто никак не работал в самом gstreamer). Тебе понадобится скомпилировать opera 12 из утёкших исходников для начала, потом, видимо, где-то найти adobe flash npapi, наконец, адаптировать gstreamer 0.10 под работу на современных системах. Мелочи, в общем.
     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2025 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру