The OpenNET Project / Index page

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

Выпуск мультимедийного фреймворка GStreamer 1.6

26.09.2015 10:03

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

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

  • Реализована инфраструктура для обработки стереоскопического 3D-контента и стереоскопического видео.
  • Trick mode API для ускоренного воспроизведения в прямом и обратном направлении с использованием только ключевых кадров;
  • Добавлен ещё один декодировщик видео H.265 на основе libde265. В состав включен кодировщик x265 для H.265;
  • В библиотеке GStreamer GL и различных компонентах фреймворка реализована поддержка OpenGL 3;
  • Представлены новые элементы gtksink, gtkglsink, qmlglsink и caopengllayersink для интеграции отрисовки кадров видео в приложениях на GTK+ (через Cairo или OpenGL), Qt и OS X/iOS;
  • Поддержка потоков с отрицательным DTS (decoding timestamp);
  • Новый API GstVideoConverter, обеспечивающий более быстрое и корректное преобразование исходных (raw) кадров видео с изменением масштаба из одного формата в другой;
  • В v4l2src добавлена поддержка повторного согласования параметров (renegotiation);
  • В v4l2transform обеспечена поддержка масштабирования;
  • Упрощена организация записи в форматах MP4, Matroska, Ogg, MPEG-TS с разбиением на отдельные небольшие файлы вместо записи одного большого файла;
  • Для DASH/MP4 добавлена поддержка API защиты и шифрования контента (Content Protection и Common Encryption);
  • Улучена реализация адаптивного потокового вещания (DASH, HLS и MSS);
  • Поддержка определения точного времени с использованием протоколов PTP и NTP (синхронизация времени необходима для поддержки профессиональных стандартов вещания AES67, RAVENNA, AVB, SMPTE ST 2059-2);
  • Улучшено качество вывода субтитров на экранах высокого разрешения;
  • В RTSP Server добавлена поддержка команды RECORD, используемой для отправки клиентом данных на сервер;
  • В клиент и сервер RTSP добавлена поддержка повторной передачи (RTX, Retransmissions), устранены проблемы при изменении позиции в потоке;
  • В упаковщик (muxer) медиаконтента в формате MP4/MOV добавлен режим "robust", при котором осуществляется попытка поддержания записываемого файла в корректном состоянии в любой момент времени;
  • Значительно улучшена реализация Live-микшера в aggregator, audiomixer и compositor;
  • В compositor добавлена поддержка изменения масштаба и конвертации потоков на лету;
  • Добавлен новый элемент audiointerleave, обеспечивающий корректную синхронизацию входного потока и поддержку ввода в live-режиме;
  • С нуля переписана поддержка карт захвата видео Blackmagic Design DeckLink, добавлена поддержка разрешений 2k/4k;
  • Для RTP и MPEG-TS добавлена поддержка метаданных KLV metadata support in RTP and MPEG-TSKLV.



Среди базовых возможностей GStreamer:

  • Локальное проигрывание контента, обработка потокового вещания и проигрывание DVD;
  • Поддерживаемые видеокодеки: Theora, VP8, VP9, Dirac, MJPEG, h.264, h.265, 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.


  1. Главная ссылка к новости (http://lists.freedesktop.org/a...)
  2. OpenNews: Выпуск мультимедийного фреймворка GStreamer 1.4
  3. OpenNews: Выпуск мультимедийного фреймворка GStreamer 1.2
  4. OpenNews: В ночных сборках Firefox для Linux включена поддержка декодирования H.264 через GStreamer
  5. OpenNews: Стабильный выпуск мультимедийного фреймворка GStreamer 1.0
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/43045-gstreamer
Ключевые слова: gstreamer
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (23) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, Dkg (?), 10:08, 26/09/2015 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Хорошая штука!
     
     
  • 2.2, ORTA1991 (?), 10:10, 26/09/2015 [^] [^^] [^^^] [ответить]  
  • +3 +/
    Согласен! Отличный проект
     

  • 1.3, Аноним (-), 10:55, 26/09/2015 [ответить] [﹢﹢﹢] [ · · · ]  
  • +3 +/
    SSE3-патч на videoconvert приняли?
     
     
  • 2.21, agente (?), 16:18, 28/09/2015 [^] [^^] [^^^] [ответить]  
  • +/
    Не приняли, но сделали табличное преобразование по дефолту, что уже намного лучше чем было, и я адаптировал sse патч на 1.6,
    https://github.com/pontostroy/gstreamer-screenrecording/blob/master/patches/gs
     

  • 1.4, Зенитарка (?), 11:25, 26/09/2015 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Отлично! GStreamer всем покажет!
     
     
  • 2.20, Какаянахренразница (ok), 07:04, 28/09/2015 [^] [^^] [^^^] [ответить]  
  • +4 +/
    > Streamer всем покажет!

    Эксгибиционист или поклонник кузькиной матери от Никиты Сергеевича?

     

  • 1.6, Аноним (-), 12:24, 26/09/2015 [ответить] [﹢﹢﹢] [ · · · ]  
  • –4 +/
    >Интеграция с тулкитами для формирования GUI-интерфейса (GTK+, Clutter);

    И кто ещё будет продолжать утверждать, что GStreamer не является частью GNOME-технологий? Не зря его кдешники продолжают игнорировать.

     
     
  • 2.8, freeman2 (?), 14:34, 26/09/2015 [^] [^^] [^^^] [ответить]  
  • +7 +/
    Интеграция, Карл! Зависимости нет ни от того, ни от другого.
     
  • 2.11, Тузя (ok), 01:55, 27/09/2015 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Не зря его кдешники продолжают игнорировать.

    Phonon же и Gstreamer бекенд его. Хотя тут все зависит от вас или меинтейнеров вашего дистрибутива. Из альтернативных бекенов жив, если я не ошибаюсь, только бекенд VLC. Остальные протухли.

    > И кто ещё будет продолжать утверждать, что GStreamer не является частью GNOME-технологий?

    Ну, допустим, я. GStreamer - самодостаточный кроссплатформенный проект, GNOME ему вообще не нужен, но его можно собрать с поддержкой этих самых тулкитов. Интеграции с KDE нету почему-то исторически, вместо этого используется phonon в качестве надстройки.

    GLib, кстати, тоже уже очень давно живет отдельно от GNOME, просто обычная библиотека расширения синтаксиса языка С. А вы, таки, гномофоб?

     
  • 2.14, iCat (ok), 08:25, 27/09/2015 [^] [^^] [^^^] [ответить]  
  • +/
    И где тут хоть что-то из GNOME?

    RDEPEND="
        >=dev-libs/glib-2.34.3:2[${MULTILIB_USEDEP}]

        introspection? ( >=dev-libs/gobject-introspection-1.31.1 )
    "
    DEPEND="${RDEPEND}
        app-arch/xz-utils
        >=dev-util/gtk-doc-am-1.12

        sys-devel/bison
        sys-devel/flex
        >=virtual/pkgconfig-0-r1[${MULTILIB_USEDEP}]

        nls? ( sys-devel/gettext )
    "

     
     
  • 3.15, Аноним (-), 08:58, 27/09/2015 [^] [^^] [^^^] [ответить]  
  • +/
    > >=dev-libs/glib-2.34.3

    Пиндёж, у меня на 2.32 прекрасно собралось в CentOS 7!

     

  • 1.10, iZEN (ok), 22:51, 26/09/2015 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Уже:
    % pkg info -x gstream
    gstreamer-0.10.36_4
    gstreamer-plugins-0.10.36_6,3
    gstreamer-plugins-good-0.10.31_2,3
    gstreamer1-1.6.0
    gstreamer1-libav-1.6.0
    gstreamer1-plugins-1.6.0
    gstreamer1-plugins-bad-1.6.0
    gstreamer1-plugins-good-1.6.0
    gstreamer1-plugins-webp-1.6.0
    % uname -rsm
    FreeBSD 10.2-STABLE amd64
     
     
  • 2.12, Добрый Дохтур (?), 04:08, 27/09/2015 [^] [^^] [^^^] [ответить]  
  • +/
    что у вас выводит gst-inspect-1.0  | grep vaapi

    ?

     
     
  • 3.16, iZEN (ok), 12:46, 27/09/2015 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > что у вас выводит gst-inspect-1.0  | grep vaapi
    > ?

    Ничего.

    % pkg info -x vaapi
    pkg: No package(s) matching vaapi
    -ничего, связанного с vaapi, я не ставлю.

    Попробовал поставить: http://www.freshports.org/multimedia/gstreamer1-vaapi/
    - ошибка сборки - не хватает файлов:
    lib/libgstvaapi-1.4.a
    lib/libgstvaapi-1.4.so
    lib/libgstvaapi-1.4.so.1
    lib/libgstvaapi-1.4.so.1.0.0
    lib/libgstvaapi-glx-1.4.a
    lib/libgstvaapi-glx-1.4.so
    lib/libgstvaapi-glx-1.4.so.1
    lib/libgstvaapi-glx-1.4.so.1.0.0
    lib/libgstvaapi-x11-1.4.a
    lib/libgstvaapi-x11-1.4.so
    lib/libgstvaapi-x11-1.4.so.1
    lib/libgstvaapi-x11-1.4.so.1.0.0

     
     
  • 4.22, Добрый Дохтур (?), 00:50, 29/09/2015 [^] [^^] [^^^] [ответить]  
  • +/
    огонь! значит, видео у вас играется без аппаратной акселерации.
     
     
  • 5.23, iZEN (ok), 20:29, 29/09/2015 [^] [^^] [^^^] [ответить]  
  • –2 +/
    > огонь! значит, видео у вас играется без аппаратной акселерации.

    А накой она нужна? У меня Phenom II X4 810 нормально тянет Full HD+ видео в 1080p/60fps на полном экране. При этом загрузка CPU по всем ядрам около 30% - вполне реально что-то компилировать в фоне.

     
     
  • 6.24, Добрый Дохтур (?), 16:59, 30/09/2015 [^] [^^] [^^^] [ответить]  
  • +/
    повтори это на ноутбуке, работающем от батарейки.
     
     
  • 7.25, iZEN (ok), 21:01, 30/09/2015 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > повтори это на ноутбуке, работающем от батарейки.

    Ноутбук с Full HD экраном, скорее всего, будет оснащён довольно мощным современным CPU, не уступающим по быстродействию настольным процессорам 2009 г.в.


     
  • 5.26, iZEN (ok), 23:45, 02/10/2015 [^] [^^] [^^^] [ответить]  
  • +/
    > огонь! значит, видео у вас играется без аппаратной акселерации.

    Сделали: http://www.freshports.org/multimedia/gstreamer1-vaapi/

    % gst-inspect-1.0  | grep vaapi
    vaapi:  vaapidecodebin: VA-API Decode Bin
    vaapi:  vaapiencode_h265: VA-API H.265 encoder
    vaapi:  vaapiencode_vp8: VA-API VP8 encoder
    vaapi:  vaapiencode_jpeg: VA-API JPEG encoder
    vaapi:  vaapiencode_mpeg2: VA-API MPEG-2 encoder
    vaapi:  vaapiencode_h264: VA-API H.264 encoder
    vaapi:  vaapisink: VA-API sink
    vaapi:  vaapipostproc: VA-API video postprocessing
    vaapi:  vaapidecode: VA-API decoder
    vaapiparse:  vaapiparse_h265: H.265 parser
    vaapiparse:  vaapiparse_h264: H.264 parser


     
  • 2.13, mumu (??), 05:35, 27/09/2015 [^] [^^] [^^^] [ответить]  
  • +/
    > Уже
    > STABLE

    Ну-ну

     
     
  • 3.17, iZEN (ok), 12:47, 27/09/2015 [^] [^^] [^^^] [ответить]  
  • –2 +/
    >> Уже
    >> STABLE
    > Ну-ну

    В смысле?

     

  • 1.18, Влад (??), 00:33, 28/09/2015 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    что с производительностью? все так же заикается регулярно, как и раньше?
     
     
  • 2.19, Аноним (-), 03:01, 28/09/2015 [^] [^^] [^^^] [ответить]  
  • +/
    Если гонять на тостере – заикается.
     

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



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

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