gin-rtsp
gin-rtsp copied to clipboard
http请求堵塞问题
在windows环境下编译并启动项目,过一段时间之后 /stream/play 这个请求就进不去了,项目似乎堵塞了? @wanghaoxi3000
我在windows上测试了下还没发现这个问题,有日志发来看看么
ps:rtsp地址是无效的
BUG复现:当rtsp地址是错误的时候, post 一个访问不通的rtsp地址->等超过60s->post 相同的参数->阻塞
如
POST /stream/play
{
"url": "rtsp://admin:[email protected]:554/cam/realmonitor?channel=1&subtype=0"
}
假如这个地址访问不通,ffmpeg仍会启动,接口仍然返回类似于
{
"code": 0,
"data": {
"path": "/stream/live/10367d6f-2b75-33b9-bb0c-fa67c220af9f"
},
"msg": "success"
}
这样的结果,但是,当60s过后,这个ffmpeg进程不会被结束
此时,重新再post相同的rtsp地址,就会出现http请求阻塞现象。
造成后果:由这个错误的rtsp地址引出的ffmpeg进程永远不会结束,且post相同的参数就会阻塞
windows上FFMPEG进程拉取rtsp地址是错误的时候,会一直阻塞,新版本启动ffmpeg时添加了一个timeout参数,ffmpeg拉流失败就会自动结束了,不过返回成功的问题还没解决 @YE-Fan
最新的版本有问题啊,直接无法启动ffmpeg了
日志显示是开始translate和reflush了,但是tasklist查看进程并没有ffmpeg
-timeout 是直接报错的,改代码里的 -timeout 5为 -stimeout 5000000,目前来看好像是达成了你这次更新的目标
最近没做这块没RTSP流来测试,你拉取的这个RTSP流是正常的吗,我主要是参考了这个链接的资料 http://ffmpeg.org/pipermail/ffmpeg-user/2014-June/022087.html @YE-Fan