Рейтинг@Mail.ru
[Войти] [Зарегистрироваться]

Наши друзья и партнеры

UnixForum
Беспроводные выключатели nooLite купить дешевый 
компьютер родом из Dhgate.com

Lines Club

Ищем достойных соперников.

Библиотека сайта или "Мой Linux Documentation Project"

Фреймворк GStreamer. Руководство разработчика плагинов. Разработка демультиплексора или элемента для разбора мультимедийного потока

Оригинал: GStreamer Plugin Writer's Guide
Авторы: Richard John Boulton, Erik Walthinsen, Steve Baker, Leif Johnson, Ronald S. Bultje, Stefan Kost, Tim-Philipp Muller, Wim Taymans
Дата публикации: 19 июля 2014 г.
Перевод: А.Панин
Дата перевода: 30 июля 2014 г.

Глава 24. Разработка демультиплексора или элемента для разбора мультимедийного потока

Демультиплексоры являются использующими модель 1-к-N элементами, при разработке которых необходимо применение специальных механизмов. Они ответственны за расстановку меток времени при разделении необработанного и неразобранного потока данных на элементарные видео- или аудиопотоки, при этом существует множество вариантов оптимизаций или ошибок, которые могут быть выявлены при их реализации. В данной главе будут описаны некоторые проблемные решения и приведены общие рекомендации по разработке описываемых элементов. Элементы для разбора мультимедийного потока являются демультиплексорами, имеющими только одну выходную точку соединения. Также они исключительно разделяют поток данных на буферы данных и не обрабатывают сами данные каким-либо образом.

Как упоминалось ранее в главе под названием "Согласование возможностей", демультиплексоры должны использовать фиксированные возможности, так как типы обрабатываемых ими данных не должны изменяться.

Как было сказано в главе под названием "Различные режимы планирования работы точек соединения элементов", элементы демультиплексоров могут создаваться для работы в различных режимах:
  • Они могут управлять работой конвейера, используя для этого собственный объект задачи. Это решение является особенно удачным при реализации элементов, которым необходим произвольный доступ к данным, например, демультиплексора потока формата AVI.
  • Также они могут работать в режиме передачи, который подразумевает, что расположенный в начале конвейера элемент будет управлять работой конвейера. Это решение является особенно удачным при обработке потоков данных, которые передаются по сети, таких, как потоки формата Ogg.

В дополнение следует упомянуть о том, что элементы для разбора аудиоданных с одной выходной точкой соединения также в теории могут быть разработаны для функционирования в режиме произвольного доступа к данным. Несмотря на то, что простое проигрывание мультимедийного потока может осуществляться успешно даже в том случае, если ваш элемент будет поддерживать только один режим планирования своей работы, может потребоваться реализовать поддержку множества режимов для получения возможности использования элемента совместно со всеми типами приложений, в том числе с приложениями для редактирования мультимедийных потоков. Кроме того, производительность элемента может повыситься в том случае, если вы реализуете поддержку множества режимов планирования работы этого элемента. Обратитесь к главе под названием "Различные режимы планирования работы точек соединения элементов" для того, чтобы ознакомится с особенностями реализации поддержки множества режимов планирования работы в рамках одного элемента.


Следующий раздел : Разработка работающего по схеме N-к-1 элемента или мультиплексора.


Эта статья еще не оценивалась
Вы сможете оценить статью и оставить комментарий, если войдете или зарегистрируетесь.
Только зарегистрированные пользователи могут оценивать и комментировать статьи.

Комментарии отсутствуют