Выпуск мультимедийного фреймворка GStreamer 1.4
Опубликовано 21 Июль 2014 18:25:11
После десяти месяцев разработки увидел свет релиз GStreamer 1.4, написанного на языке Си кроссплатформенного набора компонентов для создания широкого спектра мультимедиа приложений, от медиаплееров и конвертеров аудио/видео файлов, до VoIP-приложений и систем потокового вещания. Код GStreamer распространяется под лицензией LGPLv2.1. Одновременно доступны обновления плагинов gst-plugins-base 1.4, gst-plugins-good 1.4, gst-plugins-bad 1.4, gst-plugins-ugly 1.4, а также обвязка gst-libav 1.4 и сервер потокового вещания gst-rtsp-server 1.4.0. На уровне API и ABI новый выпуск обратно совместим с веткой 1.0. Бинарные сборки подготовлены для Android, iOS, Mac OS X и Windows.
Ключевые улучшения GStreamer 1.4:
- Проведено расширение API, например, добавлены новые вызовы GstDeviceMonitor для проверки наличия устройств и GstFlowAggregator для агрегации нескольких источников потоков, представлены API для настройки TLS-подтверждения для соединений RTSP и API для доступа к статистике RTP;
- В утилиты для работы с кодеками и различные библиотеки добавлена поддержка h265/HEVC и VP8;
- В библиотеку для работы с RTSP и SDP добавлена поддержка протокола обмена ключами MIKEY (RFC 3830) и возможность переключения между разными профилями RTSP;
- В gst-rtsp-server добавлена поддержка SRTP и MIKEY;
- В rtpbin добавлена поддержка вспомогательных (aux) потоков;
- Добавлена поддержка видео в raw-формате;
- Из gst-plugins-gl в gst-plugins-bad добавлен код библиотеки GL, что позволило использовать базовые средства обработки GL во внутренних операциях и плагинах GStreamer. В настоящее время поддерживаются такие платформы, как Android, Cocoa (OS X), DispManX (Raspberry Pi), EAGL (iOS), WGL (Windows), X11, Wayland и EGL;
- В dvbsrc добавлены механизмы доставки и другие возможности, включая поддержку DVB S2 и T2;
- Новые плагины:
- OpenNI2 для работы с 3D-камерами, такими как камера Kinect.
- OpenEXR для декодирования EXR-изображений с широким динамическим диапазоном;
- Из GStreamer 0.10 портированы плагины videosignal, ivfparse и sndfile;
- Новые элементы:
- v4l2videodec для доступа к аппаратным кодекам на платформах для которых поддерживается V4L2 (Video4Linux). v4l2videodec пришёл на смену mfcdec.
- Новый элемент downloadbuffer заменил собой функцию буферизации загрузки из состава queue2. Новая реализация отличается простотой и ориентацией на решение одной конкретной задачи;
- rtpstreampay и rtpstreamdepay для передачи RTP-пакетов поверх stream API (TCP)
- rtprtx с соответствующей стандартам реализацией системы повторной передачи, интегрируемой в плагин rtpmanager;
- audiomixer для смешивания нескольких звуковых потоков с обеспечением их синхронизации;
- curlsshsink и curlsftpsink для записи файлов через SSH/SFTP;
- Из GStreamer 0.10 портированы элементы avfvideosrc, vtdec и т.д.
Среди базовых возможностей GStreamer:
- Локальное проигрывание контента, обработка потокового вещания и проигрывание DVD;
- Поддерживаемые видеокодеки: Theora, VP8, Dirac, MJPEG, h.264*, h.263*, MPEG2*, MPEG4*, WMV/VC1* и т.д. (здесь и далее звёздочкой помечены форматы, по умолчанию не включаемые в GStreamer SDK, так как они могут потребовать приобретения лицензии в некоторых странах);
- Поддерживаемые аудиокодеки: 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+, Clutter);
- Автоматическое определение контейнеров и кодеков;
- Функции извлечения метаданных;
- Поддержка субтитров;
- Средства для наглядной визуализации звукового потока;
- Поддержка переключения на лету между разными потоками со звуком и субтитрами;
- Перемещение внутри потока по абсолютной позиции;
- Режимы замедления и ускорения воспроизведения, перемотки в обратном порядке и покадрового просмотра;
- Автоматическое устранение чересстрочности (деинтерлейсинг), масштабирование и установка цветового баланса;
- Поддержка проброса сжатого звука;
- Поддержка функций рендеринга текстур библиотеки Clutter.
Источник: http://www.opennet.ru/opennews/art.shtml?num=40239
|
0 | Tweet | Нравится |
|