首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >[deepstream][原创]更改deepstream_test1_app在弹出视频上显示fps

[deepstream][原创]更改deepstream_test1_app在弹出视频上显示fps

作者头像
云未归来
发布2025-07-18 17:43:21
发布2025-07-18 17:43:21
880
举报

先上结果图片

main函数添加定义:

GstElement *nvsink = NULL;

将这一句代码注释:

//sink = gst_element_factory_make ("nveglglessink", "nvvideo-renderer");

然后添加下面代码

nvsink = gst_element_factory_make("nveglglessink", "nvvideo-renderer");

sink = gst_element_factory_make("fpsdisplaysink", "fps-display");

g_object_set(G_OBJECT(sink), "text-overlay", FALSE, "video-sink", nvsink, "sync", FALSE, NULL);

将倒数第二个NULL参数

gst_pad_add_probe(osd_sink_pad, GST_PAD_PROBE_TYPE_BUFFER,

osd_sink_pad_buffer_probe, NULL, NULL);

改成:

gst_pad_add_probe(osd_sink_pad, GST_PAD_PROBE_TYPE_BUFFER,

osd_sink_pad_buffer_probe, (gpointer)sink, NULL);

最后在osd_sink_pad_buffer_probe显示地方添加如下关键代码:

gchar *msg = NULL;

g_object_get(G_OBJECT(u_data), "last-message", &msg, NULL);

if (msg != NULL)

{

g_print("Fps info: %s\n", msg);

}

display_meta = nvds_acquire_display_meta_from_pool(batch_meta);

NvOSD_TextParams *txt_params = &display_meta->text_params[0];

display_meta->num_labels = 1;

txt_params->display_text = (char *)g_malloc0(MAX_DISPLAY_LEN);

offset = snprintf(txt_params->display_text, MAX_DISPLAY_LEN, "Person = %d ", person_count);

offset = snprintf(txt_params->display_text + offset, MAX_DISPLAY_LEN, msg);

参考issue:FPS in test apps. - DeepStream SDK - NVIDIA Developer Forums

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2021-11-16,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档