Deepstream取流问题

  • 4 replies
  • 1166 views
Deepstream取流问题
« 于: 三月 19, 2020, 02:11:30 pm »
我想将官方示例的deepstream-test1-rtsp_out中的deepstream_test1_app.c改为自己的程序。
我将filesrc这一行注释掉了,希望用udpsrc来取摄像机流。
程序代码: [选择]
 
//source = gst_element_factory_make ("filesrc", "file-source");
my_src = gst_element_factory_make ("udpsrc", "emos_source");

deepstream_test1_app.c文件中的所有“source”相关的我全部删掉了,包括后面的管道连接也换成新的了。

程序代码: [选择]
gst_bin_add_many (GST_BIN (pipeline),
      my_src, my_depay, h264parser, decoder, streammux, pgie,
      nvvidconv, nvosd, transform, cap_filter, encoder, rtppay, sink, NULL);
/*…………*/
if (!gst_element_link_many (my_src, my_depay, h264parser, decoder, NULL))

甚至连main最开始的这一行也注释掉了:
程序代码: [选择]
/*
  if (argc != 2) {
    g_printerr ("Usage: %s <H264 filename>\n", argv[0]);
    return -1;
  }
*/

但是为什么make此程序后,系统依然提示我用法不对,应该在deepstream-test1-app后加文件地址。
而且我后缀了自带的示例视频的文件后运行,推理和显示的依然是对自带示例视频的处理结果呢?
我想显示的是我的udpsrc对应的视频流啊 :'(这个流我用gst-launch-1.0已经测试可以取到了。

Re: Deepstream取流问题
« 回复 #1 于: 三月 19, 2020, 05:54:40 pm »
我想将官方示例的deepstream-test1-rtsp_out中的deepstream_test1_app.c改为自己的程序。
我将filesrc这一行注释掉了,希望用udpsrc来取摄像机流。
程序代码: [选择]
 
//source = gst_element_factory_make ("filesrc", "file-source");
my_src = gst_element_factory_make ("udpsrc", "emos_source");

deepstream_test1_app.c文件中的所有“source”相关的我全部删掉了,包括后面的管道连接也换成新的了。

程序代码: [选择]
gst_bin_add_many (GST_BIN (pipeline),
      my_src, my_depay, h264parser, decoder, streammux, pgie,
      nvvidconv, nvosd, transform, cap_filter, encoder, rtppay, sink, NULL);
/*…………*/
if (!gst_element_link_many (my_src, my_depay, h264parser, decoder, NULL))

甚至连main最开始的这一行也注释掉了:
程序代码: [选择]
/*
  if (argc != 2) {
    g_printerr ("Usage: %s <H264 filename>\n", argv[0]);
    return -1;
  }
*/

但是为什么make此程序后,系统依然提示我用法不对,应该在deepstream-test1-app后加文件地址。
而且我后缀了自带的示例视频的文件后运行,推理和显示的依然是对自带示例视频的处理结果呢?
我想显示的是我的udpsrc对应的视频流啊 :'(这个流我用gst-launch-1.0已经测试可以取到了。

你是不是忘记清理了
make clean
make
试试看

Re: Deepstream取流问题
« 回复 #2 于: 三月 19, 2020, 06:14:04 pm »
你是不是忘记清理了
make clean
make
试试看

清理过了,也不行哦

Re: Deepstream取流问题
« 回复 #3 于: 三月 19, 2020, 08:23:17 pm »
你是不是忘记清理了
make clean
make
试试看
谢谢你的帮助,现在可以了!
不过不清楚具体问题出在哪里了,我将主机重启了,engine文件也删除重新生成了,就好了。

Re: Deepstream取流问题
« 回复 #4 于: 三月 19, 2020, 09:41:16 pm »
谢谢你的帮助,现在可以了!
不过不清楚具体问题出在哪里了,我将主机重启了,engine文件也删除重新生成了,就好了。

如果你都make clean了,被注释掉的帮助信息输出代码,重新make后,居然还能执行!居然无视注释!居然还能正常输出相关提示!

那么我想不到有其他更好的解释了。