android ijkPalyer播放rtsp流延迟问题解决办法

 在网上搜索到相关B站ijkPlayer可以播放rtsp的信号流,后满怀欣喜的下载了动态库和开源代码,播放问题不大,但加载时间都在5-10s的延迟实在不能接受,尤其是做直播功能,继续找相关资料,很多人都告诉了怎么去修改源码,需要编译动态库,这对于没有Linux环境的小伙伴简直就是一个字:“难”;在结合相关资料的改进终于解决了延迟问题,为了小伙伴们不再苦恼编译源码,再次特奉上处理方法和源码,有的是用到网上小伙伴们分享的资料,我加以改进只为方便给需要的小伙伴。

    也就是网上的解决方法也是设置

  1. ijkMediaPlayer.setOption(IjkMediaPlayer.OPT_CATEGORY_PLAYER, "start-on-prepared"0);  
  2. ijkMediaPlayer.setOption(IjkMediaPlayer.OPT_CATEGORY_FORMAT, "http-detect-range-support"0);  
  3. ijkMediaPlayer.setOption(IjkMediaPlayer.OPT_CATEGORY_CODEC, "skip_loop_filter"48);  
  4. ijkMediaPlayer.setOption(IjkMediaPlayer.OPT_CATEGORY_CODEC, "skip_loop_filter"8);  
  5. ijkMediaPlayer.setOption(1, "analyzemaxduration", 100L);  
  6. ijkMediaPlayer.setOption(1"probesize", 10240L);  
  7. ijkMediaPlayer.setOption(1"flush_packets", 1L);  
  8. ijkMediaPlayer.setOption(4"packet-buffering", 0L);  
  9. ijkMediaPlayer.setOption(4"framedrop", 1L);
  10. 因没有提供已有的动态库可以到我的百度网盘下载动态库(http://download.youkuaiyun.com/download/aoxiangdefeiying/9952263),修改方法也添加好,基本是秒开,最多延迟为2秒完全可以接受
  11. 添加的方法如下:
    VideoOptionModel videoOptionMode0l = new VideoOptionModel(1, "analyzemaxduration", 100);
    VideoOptionModel videoOptionMode02 = new VideoOptionModel(1, "probesize", 10240);
    VideoOptionModel videoOptionMode03 = new VideoOptionModel(1, "flush_packets", 1);
    VideoOptionModel videoOptionMode04 = new VideoOptionModel(4, "packet-buffering", 0);
    VideoOptionModel videoOptionMode05 = new VideoOptionModel(4, "framedrop", 1);
    VideoOptionModel videoOptionMode06 = new VideoOptionModel(IjkMediaPlayer.OPT_CATEGORY_PLAYER, "framedrop", 1);
    VideoOptionModel videoOptionMode07 = new VideoOptionModel(IjkMediaPlayer.OPT_CATEGORY_FORMAT, "rtsp_transport", "tcp");
    List<VideoOptionModel> list1 = new ArrayList<VideoOptionModel>();
    list1.add(videoOptionMode0l);
    list1.add(videoOptionMode02);
    list1.add(videoOptionMode03);
    list1.add(videoOptionMode04);
    list1.add(videoOptionMode05);
    list1.add(videoOptionMode06);
    list1.add(videoOptionMode07);
    GSYVideoManager.instance().setOptionModelList(list1);


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值