deepstream生成pipeline拓扑图的方法

1、前期工作

1.1 安装dot

 sudo apt-get install graphviz

2、使用命令行生成

2.1、添加环境变量

export GST_DEBUG_DUMP_DOT_DIR=/Comac/Project/deepstream/dot  # /home/hiccup/gst_pipeline路径可以随意改变,为生成的.dot pipeline拓扑结构图

2.2 、运行管道

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

管道结束后,可以在“/Comac/Project/deepstream/dot”下看到.dot生成的文件“ds-tracker-pipeline.dot”,其中“ds-tracker-pipeline”是定义的pipeline的名字

2.3 、使用dot 生成png图片

dot -Tpng ds-tracker-pipeline.dot > ds-tracker-pipeline.png

ds-tracker-pipeline
橘黄色:src element 和 src pad
紫色:sink element 和 sink pad
绿色:一般的element(除src element 和sink element外)

3、在c中使用

3.1、添加代码

在启动管道pipeline前加入如下代码,其中字符"pipeline"需要换成创建pipeline时命名的名字,例如“ds-tracker-pipeline”

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_element_set_state(pipeline, GST_STATE_PLAYING); //启动管道

3.2、运行代码

运行应用程序时前缀加上如下代码,其中路径"/Comac/Project/deepstream/dot"为生成的.dot pipeline拓扑结构图的路径

GST_DEBUG_DUMP_DOT_DIR=/Comac/Project/deepstream/dot ./ds_app_multi file:///Comac/Project/deepstream/ds_tracker/media/55.mp4

3.3 、使用dot 生成png图片

dot -Tpng ds-tracker-pipeline.dot > ds-tracker-pipeline.png

4、在python中使用

4.1、添加代码

在import处添加

import os
os.environ["GST_DEBUG_DUMP_DOT_DIR"] = "/Comac/Project/deepstream/dot"
os.putenv('GST_DEBUG_DUMP_DIR_DIR', '/Comac/Project/deepstream/dot')

在启动管道pipeline前加入如下代码:

Gst.debug_bin_to_dot_file(pipeline, Gst.DebugGraphDetails.ALL, "pipeline")
# start play back and listen to events
print("Starting pipeline \n")
pipeline.set_state(Gst.State.PLAYING)
try:
    loop.run()
except:
    pass
# cleanup
pipeline.set_state(Gst.State.NULL)

4.2 、使用dot 生成png图片

dot -Tpng ds-tracker-pipeline.dot > ds-tracker-pipeline.png
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值