Gstreamer pipieline diagram

Gstreamer pipieline diagram

本文主要解决问题:
1.如何制作Gstreamer pipeline转化成图表

本节介绍一种将Gstreamer pipeline转换成直观的图表的方法(基于Linux系统)

1.安装dot工具
sudo apt-get install graphviz

安装完成后,在命令行中可以检测到’dot’命令

2导出pipeline数据的存放目录,(通常是在目标开发板)
export GST_DEBUG_DUMP_DOT_DIR=/tmp/
3.运行pipeline,生成pipeline数据,如:
gst-launch-1.0 playbin uri=file:///mnt/mmc/test_h264.avi video-sink=fbdevsink

此处依据实际跟踪的pipeline状况而定,gst-launch为Gstreamer自带的非常有用的工具;
pipeline运行完成后,将在export的目录下生成.dot的文件,通常带有关键字PLAYING_PAUSED的文件就是用于生成图表的;

 # ls /tmp
 0.00.00.972540004-gst-launch.NULL_READY.dot
 0.00.01.051387461-gst-launch.READY_PAUSED.dot
 0.00.01.074729712-gst-launch.PAUSED_PLAYING.dot
 0.00.12.187852589-gst-launch.PLAYING_PAUSED.dot
 0.00.12.201485839-gst-launch.PAUSED_READY.dot
5.主机端,依据dot文件生成图表
 $ dot -Tpng 0.00.24.846778049-gst-launch.PLAYING_PAUSED.dot > pipeline.png
6.打开图表
eog pipeline.png
批量的将dot文件转换成图表的方法

如果有大量的DOT文件需要转换,使用批处理脚本将十分方便,假设存放DOT文件的目录为(DOT_FILES_DIR);

#!/bin/bash
DOT_FILES_DIR="fs/fs/graphs"
PNG_FILES_DIR="fs/fs/graphs"

DOT_FILES=`ls $DOT_FILES_DIR | grep dot`

for dot_file in $DOT_FILES
do
  png_file=`echo $dot_file | sed s/.dot/.png/`
  dot -Tpng $DOT_FILES_DIR/$dot_file > $PNG_FILES_DIR/$png_file
done
如何在Gstreamer应用中使用
在创建完所有的elements和连接好elements后,添加如下代码:
GST_DEBUG_BIN_TO_DOT_FILE(pipeline, GST_DEBUG_GRAPH_SHOW_ALL, "pipeline")
运行app
#GST_DEBUG_DUMP_DOT_DIR=. ./application  (第一个点后面为空格)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值