ffmpeg推流方式采用TCP协议
ffmpeg默认推流方式采用UDP方式,若需要使用TCP协议,则需要修改。
1、使用命令时:
ffmpeg 跟参数 -rtsp_transport tcp
2、编码时
AVFormatContext *ofmt_ctx;
AVDictionary *optionsDict = NULL;
//采用tcp传输
av_dict_set(&optionsDict, "rtsp_transport", "tcp", 0);
//如果没有设置stimeout,那么把ipc网线拔掉,av_read_frame会阻塞(时间单位是微妙)
av_dict_set(&optionsDict, "stimeout", "5000000", 0);
ret = avformat_write_header(ofmt_ctx, &optionsDict);