DeepStream--调试Gstreamer
DeepStream是基于Gstreamer开发的。有时候需要在Gstreamer加日志,比如想在rtpjitterbuffer里加日志。
首先,执行gst-inspect-1.0 ?rtpjitterbuffer命令。
从结果中可以看到,rtpjitterbuffer插件的源码是gst-plugins-good,版本是1.16,在/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrtpmanager.so中.
如下步骤是搭环境,下代码,编译。
1. 参考:https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/tree/1.16?ref_type=heads
,pip install meson用于装meson,?apt-get install ?ninja-build 用于装ninja。
2.?git clone https://gitlab.freedesktop.org/gstreamer/gst-plugins-good.git
3.?git branch 1.16 &&?git checkout 1.16 &&?git reset --hard origin/1.16
4.?meson build
5.?ninja -C build
到此编译成功,编好库的路径是:build/gst/rtpmanager/libgstrtpmanager.so.
如下步骤是加日志,编译。
1. 将GST_ERROR_OBJECT (jitterbuffer, "in gst_rtp_jitter_buffer_chain"); 加到gst_rtp_jitter_buffer_chain函数里,再执行ninja -C build。
如下步骤是替换测试。
mv /usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrtpmanager.so /usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrtpmanager.so_bk
mv build/gst/rtpmanager/libgstrtpmanager.so /usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrtpmanager.so
export GST_DEBUG=3
gst-launch-1.0 rtspsrc location=rtsp://xx ! rtph264depay ! h264parse ! 'video/x-h264,stream-format=byte-stream' ! filesink location=test.h264
可以看到程序在不停打印in gst_rtp_jitter_buffer_chain。
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!