|
|
|
@ -80,24 +80,26 @@ bool Cffmpeg_decode::open_input_file() {
|
|
|
|
|
// 0);//注:设置tcp会导致吊舱拉流中断
|
|
|
|
|
// av_dict_set(&avdic, "rtsp_transport", "udp", 0);
|
|
|
|
|
// 设置缓存大小,1080p可将值调大
|
|
|
|
|
av_dict_set(&avdic, "buffer_size", "2048000", 0);
|
|
|
|
|
av_dict_set(&avdic, "buffer_size", "4096000", 0);
|
|
|
|
|
// 设置超时断开连接时间,单位微秒//listen_timeout
|
|
|
|
|
// av_dict_set(&avdic, "listen_timeout", "200000", 0);
|
|
|
|
|
av_dict_set(&avdic, "stimeout", "5000000", 0); // 设置超时5秒
|
|
|
|
|
av_dict_set(&avdic, "max_delay", "300000", 0); // 设置最大时延300ms
|
|
|
|
|
// av_dict_set(&avdic, "max_delay", "300000", 0); // 设置最大时延300ms
|
|
|
|
|
av_dict_set(&avdic, "tune", "zerolatency", 0); // 实时编码
|
|
|
|
|
av_dict_set(&avdic, "preset", "faster", 0); // ultrafast
|
|
|
|
|
av_dict_set(&avdic, "threads", "auto", 0); // 自动开启线程数
|
|
|
|
|
// 设置最大重试时间为1s,解决avformat_open_input打开空流时间过长问题
|
|
|
|
|
av_dict_set(&avdic, "max_interleave_delta", "1000000", 0);
|
|
|
|
|
|
|
|
|
|
// av_dict_set(&avdic, "reconnect", "1", 0); // 开启自动重连
|
|
|
|
|
// av_dict_set(&avdic, "reconnect", "1", 0); // 开启自动重连
|
|
|
|
|
// av_dict_set(&avdic, "reconnect_streamed", "1", 0); // 对于流媒体自动重连
|
|
|
|
|
// av_dict_set(&avdic, "reconnect_delay_max", "5", 0); // 最大重连延时 5 秒
|
|
|
|
|
av_dict_set(&avdic, "reconnect_delay_max", "5",
|
|
|
|
|
0); // 最大重连延时 5 秒f'f'f'f'f'f'f'f'f'f'f
|
|
|
|
|
// av_dict_set(&avdic, "rtsp_flags", "prefer_tcp", 0); // 保持TCP连接
|
|
|
|
|
// av_dict_set(&avdic, "timeout", "500000", 0); // 超时时间设置为500ms
|
|
|
|
|
// av_dict_set(&avdic, "probesize", "50000000", 0); // 增加探针大小,1MB
|
|
|
|
|
// av_dict_set(&avdic, "analyzeduration", "5000000", 0); //
|
|
|
|
|
// av_dict_set(&avdic, "keepalive", "1", 0);
|
|
|
|
|
// 增加分析持续时间,5秒
|
|
|
|
|
|
|
|
|
|
// 打开输入流之前,设置非阻塞模式
|
|
|
|
|