GStreamer: использование типа find - PullRequest
2 голосов
/ 09 ноября 2011

У меня есть filesrc, связанный с элементом typefind.По сигналу «имей тип» я распечатываю возможности.Что я могу сделать с этой информацией?Т.е.:

"Media type video/mpeg, systemstream=(boolean)false, mpegversion=(int)4, parsed=(boolean)false found, probability 79%"

Можно ли искать совместимые элементы или мне нужно обрабатывать это вручную?Как мне определить, каким должен быть следующий элемент в конвейере?

Также, пожалуйста, не предлагайте использовать playbin2 - он не подходит для моего приложения.

Спасибо!

Ответы [ 2 ]

1 голос
/ 13 декабря 2011
uridecode2 ,playbin2 ,decodebin2 

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

Сначала они берут элемент filesrc и открывают этот файл и в зависимости от некоторой информации заголовка устанавливают заглавные буквы filesrc.

так что теперь, в зависимости от заглавных букв src-панели filesrc, следующий демультиплексор найдет из реестра и связывает его ... и так далее

и я думаю, что вы собираетесь что-то вроде этого в своем приложении, поэтому я предлагаю вам взглянуть на исходный код этого автозапуска ..

начать с кода playbin2 ..

1 голос
/ 23 ноября 2011

Это говорит вам, по крайней мере, что в вашем файле.Теперь вы можете подключить демультиплексор (в соответствии с информацией о typefinds) и использовать сигнал «pad-Added» демультиплексора для обработки потоков мультимедиа внутри.(до тех пор, пока не будет написано «больше никаких колодок»)

http://gstreamer.freedesktop.org/data/doc/gstreamer/head/manual/html/section-dynamic.html

...