ijkplayer设置rtmp秒开(转)

ijkplayer和ffplay在打开rtmp串流视频时,大多数都会遇到5~10秒的延迟,在ffplay播放时,如果加上-fflags nobuffer可以缩短播放的rtmp视频延迟在1s内,而在ijkVideoView中加入

 

 
  1. IjkMediaPlayer ijkMediaPlayer = null;

  2. ijkMediaPlayer = new IjkMediaPlayer();

  3. ijkMediaPlayer.setOption(1, "analyzemaxduration", 100L);

  4. ijkMediaPlayer.setOption(1, "probesize", 10240L);

  5. ijkMediaPlayer.setOption(1, "flush_packets", 1L);

  6. ijkMediaPlayer.setOption(4, "packet-buffering", 0L);

  7. ijkMediaPlayer.setOption(4, "framedrop", 1L);


这几个选项设置,可以让rtmp加载时间从5~10秒缩短到1s以内,以达到秒开且低延迟的目的。

 

同样,只要是基于ffmpeg中的ffplay播放器,都可以通过加上类似设置达到这个效果。比如在PLDroidPlayer当中,也可以加入这个选项:

 
  1. AVOptions options = new AVOptions();

  2.  
  3. options.setInteger(AVOptions.VALUE_FFLAGS_NOBUFFER, 1);

  4.  
  5. options.setInteger(AVOptions.KEY_PROBESIZE,10240);

  6.  

 

原文:https://blog.csdn.net/lp8800/article/details/65629187

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值