LINUX.ORG.RU

Инспектирование связей между элементами gstreamer'а

 ,


0

1

Не могу понять как «проинспектировать» имеющиеся связи между элементами.

Вот есть у меня объект GstElement elem_uridecodebin, на нём GstPad src_0 (который я нашел проитериров gst_element_iterate_pad() и выбрав pad с именем "src_0").

Как дальше получить элемент/пад к которому elem_uridecodebin.src_0 слинкован?


Вообще, если тебе нужно посмотреть на весь конвейер в виде схемы, то его можно распечатать в .dot формате.

GST_DEBUG_BIN_TO_DOT_FILE(GST_BIN(pipeline), GST_DEBUG_GRAPH_SHOW_ALL, "/path/to/file.dot");

pipeline - указатель на твой конвейер.

ox55ff ★★★★★
()
Ответ на: комментарий от ox55ff

О, подходит, спасибо. Искать по слову «peer» я чёт не додумался.

alois
() автор топика
Ответ на: комментарий от ox55ff

Сейчас мне не это нужно было, но раньше пытался пользоваться.

Не нашел удобного способа смотреть .dot-файлы. Скриптами конвертил в pdf, результат получался слишком огромным месивом в которое неудобно зумить, плюс текст/фигуры местами друг на друга залезали.

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

alois
() автор топика
Ответ на: комментарий от alois

Хотелось бы какой-то интерактивный просмотрщик

Все графические просмоторщики, которые я пробовал, были говном. Сейчас я конвертирую в png и смотрю. Утилита dot из graphviz. dot -Tpng filename.dot -o out.png. Я запилил скрипт, который все файлы из папки перегоняет в png. Просто запускаю его, потом смотрю файлы.

ox55ff ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.