DeepStream Hello World:deepstream_test1_app 源代码深入剖析

本文介绍了DeepStream SDK中的深流测试1应用,它在Jetson Nano上展示了一个简单的视频流处理流程。主要涉及GStreamer元素、CUDA加速插件和消息循环机制。程序通过GStreamer管道连接各个插件,如h264parser、nvv4l2decoder、nvinfer等,利用GPU加速进行视频解码和推理。主消息循环g_main_loop处理来自多线程的消息,确保程序正确性和线程安全。此外,文章还提到了如何查看和创建GStreamer插件,以及DeepStream SDK中的关键组件和它们的功能。

0. 概述

DeepStream Hello World:deepstream_test1_app 提供了 DeepStream 一个最简单的演示。我在 Jetson Nano 上安装的 DeepStream,这个项目的位置是:/opt/nvidia/deepstream/deepstream-5.1/sources/apps/sample_apps/deepstream-test1

关于这程序的结构,官网有一幅图说得很明白:

在这里插入图片描述

简单地说,deepstream-test1:从文件中获取单一视频流,并在屏幕上显示出来。

1. 主程序结构

int main (int argc, char *argv[]) {
   
   
  ... ...
  g_object_set (G_OBJECT (source), "location", argv[1], NULL);
  g_object_set (G_OBJECT (streammux), "batch-size", 1, NULL);
  g_object_set (G_OBJECT (streammux), 
  		"width", MUXER_OUTPUT_WIDTH, 
  		"height", MUXER_OUTPUT_HEIGHT,
      	"batched-push-timeout", MUXER_BATCH_TIMEOUT_USEC, NULL);

  pgie = gst_element_factory_make ("nvinfer", "primary-nvinference-engine");
  g_object_set (G_OBJECT (pgie), "config-file-path", "dstest1_pgie_config.txt", NULL);

  loop =
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

许野平

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值