avformat_open_input降低延时设置

ffmpeg4.3

AVDictionary* options = NULL;
av_dict_set(&options, "fflags", "nobuffer", 0);
int re = avformat_open_input(&ic, URL, NULL, &options);

经测试发现,延时2s,使用nobuffer设置后,延时只有17帧,视屏为1080i50数据。

另外,如果是网络URL,在使用avformat_open_input打开输入流之后,那么此时就建立了连接,记录此时刻为A,那么当av_read_frame读取数据时,第一帧读到的数据是A时刻的数据。因此在两个函数之间应尽量减少执行的程序,实测如果中间有10s的程序要执行,那么视频延时在10s以上。

实测用一下方式设置解码器的参数,并不能很有效的减少延时,1080i50在设置之前延时17帧,多次测试设置之后16帧左右,每帧间隔40ms。

av_opt_set(decodec_ctx_v->priv_data, "preset", "ultrafast", 0);//superfast
av_opt_set(decodec_ctx_v->priv_data, "tune", "zerolatency", 0);

ffmpeg是音视频必备,但即使从业数年,它似乎依然有无穷的秘密,感兴趣添加笔者微信:YQW1163720468,加入ffmpeg微信群讨论。但记得备注:ffmpeg爱好者

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

、、、、南山小雨、、、、

分享对你有帮助,打赏一下吧!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值