如何测量内部GStreamer / gst-launch延迟

时间:2015-12-17 15:48:36

标签: raspberry-pi video-streaming gstreamer raspberry-pi2

我目前正在我的Raspberry PI上建立一个GStreamer pipleine,如下所示:

v4lsrc - h264enc - mpegtsmux - udpsink

我试着弄清楚如何测量一个或多个元素的时间(以毫秒为单位),例如。 h264enc和mpegtsmux消耗的时间。

当然我发现以下条目通过使用gstreamer插件解决了这个问题:

How can I quantitatively measure gstreamer H264 latency between source and display?

但我不确定如何编译这样的插件。特别是在Raspberry Pi上!我读过每个GStreamer Element都需要计算它的延迟。如果有人可以帮助我,那将是超级酷! 干杯, 马库斯

1 个答案:

答案 0 :(得分:1)

我认为没有一种开箱即用的方法可以做到这一点。在过去,我们习惯在要测量的元素周围包裹一对标识元素,并将其添加到bin中。非常笨重。

我继续上传了一些使用新GstMeta API和两个新元素的代码:markin和markout。所以你可以像这样使用它:

export GST_DEBUG=markout:5

gst-launch-1.0 -f -e videotestsrc pattern=ball ! video/x-raw,width=320,height=240 ! markin name=moo ! videoscale ! markout ! video/x-raw,width=1280,height=720 ! ximagesink

https://github.com/mpekar/gstreamer_timestamp_marking