Выпуск мультимедийного фреймворка GStreamer 1.12
4 мая 2017 года
Состоялся релиз GStreamer 1.12, написанного на языке Си кроссплатформенного набора компонентов для создания широкого спектра мультимедиа приложений, от медиаплееров и конвертеров аудио/видео файлов, до VoIP-приложений и систем потокового вещания. Код GStreamer распространяется под лицензией LGPLv2.1. Одновременно доступны обновления плагинов gst-plugins-base 1.12, gst-plugins-good 1.12, gst-plugins-bad 1.12, gst-plugins-ugly 1.12, а также обвязка gst-libav 1.12 и сервер потокового вещания gst-rtsp-server 1.12. На уровне API и ABI новый выпуск обратно совместим с веткой 1.0. Бинарные сборки в скором времени будут подготовлены для Android, iOS, macOS и Windows (в Linux рекомендуется использовать пакеты из дистрибутива).
Ключевые улучшения GStreamer 1.12:
- Новый плагин msdk, позволяющий использовать Intel Media SDK для ускорения декодирования и кодирования видео (H.264, H.265, MPEG-2, VP8) на оборудовании c GPU Intel;
- В кодировщике x264enc теперь можно на лету выбирать разные версии библиотеки x264, собранные для кодирования с разной глубиной цвета;
- Плагины videoscale и videoconvert переработаны для обеспечения масштабирования и конвертирования видео в многопоточном режиме, что позволяет добиться неплохого ускорения при обработке видео с большим разрешением;
- В библиотеке h264parse (Архивная копия от 31 января 2016 на Wayback Machine) реализована возможность автоматической подстановки разделителей блоков AU (Access Unit) при выводе в потоковом формате, что обеспечивает более полную совместимость со стандартом и может быть востребовано при воспроизведении HLS на платформах iOS и macOS;
- В плагин rtpbin добавлена поддержка многосессионных RTP-потоков (bundle), используемых в WebRTC;
- Добавлена поддержка форматов видео:
- GBR_12LE, GBR_12BE, GBRA_12LE, GBRA_12BE (плоский 4:4:4 RGB/RGBA, 12 бит на канал)
- GBRA_10LE, GBRA_10BE (плоский 4:4:4:4 RGBA, 10 бит на канал)
- GBRA (плоский 4:4:4:4 ARGB, 8 бит на канал)
- I420_12BE, I420_12LE (плоский 4:2:0 YUV, 12 бит на канал)
- I422_12BE,I422_12LE (плоский 4:2:2 YUV, 12 бит на канал)
- Y444_12BE, Y444_12LE (плоский 4:4:4 YUV, 12 бит на канал)
- VYUY (ещё один формат пактов 4:2:2 YUV )
- В API GstPlayer добавлены функции для создания скриншотов видео и включения точного позиционирования по потоку;
- Добавлен плагин iqa (Image Quality Assessment) с реализацией техники оценки качества видео, основанной на DSSIM;
- Добавлен элемент faceoverlay, позволяющий наложить SVG-изображение поверх определённого лица на видео;
- Добавлен элемент audiobuffersplit для разделения raw-буферов со звуком на равнозначные по размеру буферы;
- Добавлен элемент audiomixmatrix для смешивания звуковых каналов N:M по заданной матричной маске;
- Добавлен плагин ttml для разбора и отрисовки субтитров в формате TTML (Timed Text Markup Language);
- Плагин dataurisrc перемещён из набора gst-plugins-bad в core, а плагин rawparse перемещён из набора gst-plugins-bad в gst-plugins-base.
Среди основных возможностей GStreamer:
- Локальное проигрывание контента, обработка потокового вещания и проигрывание DVD;
- Поддерживаемые видеокодеки: Theora, VP8, VP9, Dirac, MJPEG, h.264, h.265, h.263, MPEG2, MPEG4, WMV/VC1 и т.д.
- Поддерживаемые аудиокодеки: Vorbis, FLAC, Speex, WavPack, AAC, MP3, WMA, Dolby Digital (AC3), DTS/DCA, AMR NB/WB и т.д.
- Поддерживаемые мультимедиа контейнеры: Ogg, WebM, Matroska, MP4, Quicktime, AVI, FLV, 3GPP, WAV, Real Media, ASF, MPEG PS/TS и т.д.
- Поддерживаемые протоколы: работа с локальными файлами, HTTP, Shoutcast/Icecast, HLS, RTSP, RTP и MMS;
- Интеграция с тулкитами для формирования GUI-интерфейса ( GTK+ (Архивная копия от 31 октября 2016 на Wayback Machine), Clutter (Архивная копия от 25 октября 2016 на Wayback Machine));
- Автоматическое определение контейнеров и кодеков;
- Функции извлечения метаданных;
- Поддержка субтитров;
- Средства для наглядной визуализации звукового потока;
- Поддержка переключения на лету между разными потоками со звуком и субтитрами;
- Перемещение внутри потока по абсолютной позиции;
- Режимы замедления и ускорения воспроизведения, перемотки в обратном порядке и покадрового просмотра;
- Автоматическое устранение чересстрочности (деинтерлейсинг), масштабирование и установка цветового баланса;
- Поддержка проброса сжатого звука;
- Поддержка функций рендеринга текстур библиотеки Clutter.
Источники[править]
Любой участник может оформить статью: добавить иллюстрации, викифицировать, заполнить шаблоны и добавить категории.
Любой редактор может снять этот шаблон после оформления и проверки.
Комментарии[править]
Если вы хотите сообщить о проблеме в статье (например, фактическая ошибка и т. д.), пожалуйста, используйте обычную страницу обсуждения.
Комментарии на этой странице могут не соответствовать политике нейтральной точки зрения, однако, пожалуйста, придерживайтесь темы и попытайтесь избежать брани, оскорбительных или подстрекательных комментариев. Попробуйте написать такие комментарии, которые заставят задуматься, будут проницательными или спорными. Цивилизованная дискуссия и вежливый спор делают страницу комментариев дружелюбным местом. Пожалуйста, подумайте об этом.
Несколько советов по оформлению реплик:
- Новые темы начинайте, пожалуйста, снизу.
- Используйте символ звёздочки «*» в начале строки для начала новой темы. Далее пишите свой текст.
- Для ответа в начале строки укажите на одну звёздочку больше, чем в предыдущей реплике.
- Пожалуйста, подписывайте все свои сообщения, используя четыре тильды (~~~~). При предварительном просмотре и сохранении они будут автоматически заменены на ваше имя и дату.
Обращаем ваше внимание, что комментарии не предназначены для размещения ссылок на внешние ресурсы не по теме статьи, которые могут быть удалены или скрыты любым участником. Тем не менее, на странице комментариев вы можете сообщить о статьях в СМИ, которые ссылаются на эту заметку, а также о её обсуждении на сторонних ресурсах.