Exoplayer(2)-Exoplayer的优缺点

本文比较了Exoplayer与Android内置MediaPlayer,强调了ExoPlayer的动态自适应流支持、自定义性和应用层面的灵活性,但其硬解依赖、Java层级限制和复杂架构使得在性能上不如Ijkplayer,适合对播放性能要求不高的团队。

Exoplayer与MediaPlayer

与Android内置的MediaPlayer相比,ExoPlayer具有许多优点:

  1. 支持通过HTTP(DASH)和SmoothStreaming进行动态自适应流,这两种都不受MediaPlayer的支持。还支持许多其他格式
  2. 能够自定义和扩展播放器,以适应各种不同需求。 ExoPlayer专门设计了这一点,大部分组件都可以自己替换

Exoplayer 与Ijkplayer

优点:

  1. 支持通过HTTP(DASH)和SmoothStreaming进行动态自适应流

  2. 架构上支持应用层面自定义Extractor 解析流媒体(Mp4, FLV, HLS等) ,不需要单独在底层集成流媒体解析

  3. 支持应用层级缓存配置

  4. 支持同时设置多个播放地址

  5. Exoplayer自动支持预加载

缺点:

  1. 视频只支持硬解,受限于硬件设备容易导致解码不支持, 导致无法播放 (Exoplayer音频可以实现软解)

  2. 数据流的请求和内存缓存分配在Java层级实现,受限于虚拟机机制,内存效率不高,容易抖动

  3. Extractor在Java层级实现,流媒体解析效率不高

  4. 架构复杂,可读性较差,学习成本高,开发者如果想实现自定义功能成本较高

  5. 只支持Android设备,无法跨设备支持

总结

  1. 性能Exoplayer 相对于Ijkplayer 总体性能偏低,对低端设备不友好。

  2. 业务接口比较完善,适合播放开发人手不足,对播放极端播放性能要求不高的团队

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值