情景(原因)
avformat_open_input默认是阻塞操作,如果不加控制,等待时间可能会达到30s以上
av_read_frame的过程中相机断开连接导致读取码流一直死等
解决方法:打开流媒体之前注册FFmpeg回调函数
avformat_open_input的长时间默认阻塞问题
1、设置成非阻塞(通常是不推荐的)
ic->flags |= AVFMT_FLAG_NONBLOCK;
2、设置超时时间
rtsp支持;而rtmp不支持,配置参数会报错(ffmpeg bug)
3、设置interrupt_callback定义返回机制