Библиотека сайта rus-linux.net
Фреймворк GStreamer. Руководство разработчика приложений. Компиляция
Оригинал: GStreamer Application Development ManualАвторы: Wim Taymans, Steve Baker, Andy Wingo, Ronald S. Bultje, Stefan Kost
Дата публикации: 21 мая 2014 г.
Перевод: А.Панин
Дата перевода: 23 июня 2014 г.
Глава 22. Компиляция
В данной главе будут обсуждаться некоторые действия, которые вы можете предпринять при сборке и распространении своих приложений и плагинов.
22.1. Включение статических элементов в комплект поставки вашего приложения
Руководство разработчика плагинов в мельчайших подробностях описывает процесс реализации элементов для фреймворка GStreamer. В данном разделе мы будем обсуждать исключительно способ добавления этих элементов в комплект поставки вашего приложения. Данный подход может быть полезен в случае использования специфичных для приложения элементов, которые не могут использоваться где-либо еще в рамках фреймворка GStreamer.
Динамически загружаемые плагины содержат структуру, которая объявляется с помощью макроса GST_PLUGIN_DEFINE ()
. Эта структура загружается в момент, когда соответствующий плагин подгружается средствами ядра фреймворка GStreamer. Структура содержит функцию инициализации (обычно с именем plugin_init
), которая вызывается сразу же после загрузки плагина. Она предназначена для регистрации элементов, предоставляемых плагином, в рамках фреймворка GStreamer. Если вы хотите интегрировать элементы непосредственно в ваше приложение, единственная необходимая манипуляция будет заключаться в замене макроса GST_PLUGIN_DEFINE ()
на вызов функции gst_plugin_register_static ()
. После того, как вы вызовете функцию gst_plugin_register_static ()
элементы станут доступными для использования точно так же, как какие-либо другие стандартные элементы, без необходимости подгрузки разделяемых библиотек. В случае использования кода из примера ниже вы сможете вызвать функцию gst_element_factory_make ("my-element-name", "some-name")
для создания экземпляра элемента.
Следующий раздел : Вещи, на которые стоит обратить внимание при разработке приложения.