ffmpeg rtsp 丢包处理
直接用 demux 在有些网络中,丢包画屏;
再ffmpeg和ffplay中,可以指定 tcp 方式,所以代码直接设置陶瓷坯方式;
// 设置RTSP选项优化接收数据流防止数据包丢失
av_dict_set(&options, "rtsp_transport", "tcp", 0);
av_dict_set(&options, "stimeout", "5000000", 0); // 设置RTSP超时时间(5秒)
av_dict_set(&options, "max_delay", "500000", 0); // 设置最大延迟(500ms)
av_dict_set(&options, "fflags", "+genpts", 0);// 强制生成PTS(若流中缺少)
avformat_open_input 的时候设置完成;
这个文章写的不错可以参考: 使用ffmpeg实现rtsp流录播功能_ffmpeg rtsp-CSDN博客