【Gstreamer】如何生成pipeline构件图

本文参考:How to generate a Gstreamer pipeline diagram (graph)

1 命令行 中产生

步骤1:安装 dot

 sudo apt-get install graphviz

“graphviz”包中提供了“dot”命令。

步骤2:在目标中,运行:

export GST_DEBUG_DUMP_DOT_DIR=/tmp/

这会将.dot生成的文件放在/ tmp /目录中,如果需要,可以更改该目录。

步骤3:运行您的管道,例如:

gst-launch-1.0 v4l2src device="/dev/video0" ! "video/x-raw, width=640, height=480, format=(string)YUY2" ! xvimagesink -e

管道结束后,您可以看到.dot生成的文件,并且“* PLAYING_PAUSED *”通常用于生成图表。

$  ls /tmp 
0.00.00.238129310-gst-launch.NULL_READY.dot
0.00.00.247064574-gst-launch.READY_PAUSED.dot
0.00.00.632677398-gst-launch.PAUSED_PLAYING.dot
0.00.05.464861472-gst-launch.PLAYING_PAUSED.dot
0.00.05.484623147-gst-launch.PAUSED_READY.dot

步骤4:在主机中,从点文件生成图表

此步骤意味着您知道如何将.dot文件从目标传输到主机。 完成后,您可以使用主机中的“dot”命令生成.png图像:

dot -Tpng 0.00.05.464861472-gst-launch.PLAYING_PAUSED.dot > aa.png

点击aa.png,显示如下
pipeline构件图

  • 橘黄色:src element 和 src pad
  • 紫色:sink element 和 sink pad
  • 绿色:一般的element(除src element 和sink element外)

2 应用程序中产生

在您的应用程序创建和链接所有元素后,将其添加进去。

GST_DEBUG_BIN_TO_DOT_FILE(GST_BIN(pipeline), GST_DEBUG_GRAPH_SHOW_ALL, "pipeline");
// 或者
GST_DEBUG_BIN_TO_DOT_FILE_WITH_TS(GST_BIN(pipeline), GST_DEBUG_GRAPH_SHOW_ALL, "pipeline");

您的应用程序

GST_DEBUG_DUMP_DOT_DIR=/tmp/ ./application [参数1] [参数2] ...

当然,也可以通过下面的函数在程序中设置dot文件保存路径:

g_setenv("GST_DEBUG_DUMP_DOT_DIR", "/tmp/", TRUE);

切记:此函数必须在gst_init (&argc, &argv);之前调用。

在运行应用程序的位置,您可以找到名为pipeline.dot的文件,将其移动到您的计算机并应用以下内容:

dot -Tpng pipeline.dot > pipeline.png

打开pipeline.png

eog pipeline.png

示例:https://github.com/NVIDIA-AI-IOT/redaction_with_deepstream/blob/master/deepstream_redaction_app.c

在这里插入图片描述

  • 5
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值