向运行中的GStreamer Pipeline添加rtspsrc时流启动失败/超时
动态添加RTSP流到Deepstream GStreamer管道超时失败问题
问题描述
- 基于NVIDIA
deepstream-app参考实现的GStreamer管道,启动阶段通过rtspsrc加载RTSP流可正常播放 - 管道运行1-2分钟后,动态添加同一路RTSP流时,流无法启动且触发超时错误
- 动态添加时显式调用状态设置函数返回成功,但流仍无法工作:
gboolean play_source(GstElement *source) { GstStateChangeReturn ret = gst_element_set_state(source, GST_STATE_PLAYING); /* 'ret'始终为GST_STATE_SUCCESS */ /* ... */ }
已做排查
- 启用包括DEBUG在内的多级别GStreamer日志输出,未发现明确异常,仅动态添加场景最终出现超时警告
- 对比NVIDIA官方示例代码,元素创建、Pad连接、状态切换逻辑完全一致,且确认RTSP本地流本身无故障
- 更新:使用
GST_DEBUG_BIN_TO_DOT_*工具分析管道结构,发现动态添加流时管道缺少部分必要的流处理元素,目前正在针对该问题排查修复
内容的提问来源于stack exchange,提问作者BtySgtMajor
相关产品推荐
相关产品推荐

