使用RTMP网址进行OpenCV VideoCapture初始化需要30秒钟以上

问题描述

我正在执行以下操作以使用opencv打开RTMP流

VideoCapture cap;

cap.open("rtmp://192.168.1.122/live/secret-key0");

然后,程序等待30秒钟进行连接,然后继续播放,并捕获视频。我想在程序启动时立即捕获视频。我有我想念的东西吗?

当我尝试通过RTMP从OBS捕获流时,使用VideoCapture打开流没有延迟。

这是我的VideoWriter声明

VideoWriter out("appsrc ! videoconvert ! queue ! video/x-raw,width=640,height=480 ! videorate ! video/x-raw,framerate=60/1 ! x264enc bitrate=1000 noise-reduction=10000 pass=cbr speed-preset=ultrafast tune=zerolatency ! flvmux name=mux ! rtmpsink location=rtmp://192.168.1.122/live/secret-key0",CAP_GSTREAMER,CV_FOURCC('X','2','6','4'),30,Size(640,480),true);

我要播放的RTMP流来自nginx-rtmp服务器。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...