我正在编写我的第一个gstreamer插件,但无法显示调试跟踪。
我使用:gst-template-0.10 / gst-plugin / tools / make_elem来生成我自定义的插件模板。
我的第一个动作之一是在gst_demux_hbb_tv_chain中添加宏GST_LOG_OBJECT以获取缓冲区的大小。
但是没有显示跟踪。
我阅读了有关为gstreamer开发插件的文档,有一个debug part,我在模板中的内容完全相同。
我以这种方式启动了我的管道: GST_DEBUG = demuxhbbtv = 5 gst-launch fakesrc! demuxhbbtv silent = TRUE! fakesink
(GST_DEBUG_CATEGORY_INIT(gst_demux_hbb_tv_debug,“ demuxhbbtv ”,0,“模板demuxhbbtv”);)
我错过了什么?
以下是我的代码的一部分:
GST_DEBUG_CATEGORY_STATIC (gst_demux_hbb_tv_debug);
#define GST_CAT_DEFAULT gst_demux_hbb_tv_debug
static gboolean demuxhbbtv_init (GstPlugin * demuxhbbtv)
{
...
GST_DEBUG_CATEGORY_INIT (gst_demux_hbb_tv_debug, "demuxhbbtv", 0, "Template demuxhbbtv");
...
}
static GstFlowReturn
gst_demux_hbb_tv_chain (GstPad * pad, GstBuffer * buf)
{
...
demuxHbbTv = GST_DEMUXHBBTV (gst_pad_get_parent (pad));
GST_LOG_OBJECT (demuxHbbTv, "!!!!!!!!!!!!!!!!!!!!!!!!!!==> buffer size= %d ....\n", GST_BUFFER_SIZE(buf) );
...
}
答案 0 :(得分:2)
是GST_DEBUG = demuxhbbtv:5(将第二个=替换为:)