normandie为什么不碰videoview

发布时间:2019-06-17 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了normandie为什么不碰videoview脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。

normandie是一套播放框架及其实现,并且90%的接口与android mediaplayer一致,包括生命周期状态机的实现等等。方便原来android框架的开发者迁移。

在andROId上做音视频开发的同学应该比较清楚,除了mediaplayer,android还提供了其它播放音视频的类,比如视频播放的还有videoview。
normandie在设计之初,就没有打算实现类似videoview这样的类。
videoview的优点是接口更简单,但它的缺点也是接口太简单,这里简单的意思是不够灵活。

音视频播放尤其是在线音视频播放的情况更为复杂,mediaplayer可以为开发者提供更为灵活的接口,更贴近底层框架的能力,让开发者去发挥,videoview大大的限制了开发者可以利用底层框架的能力。

下图是mediaplayer的状态机,设计的比较灵活
https://developer.android.com...

normandie为什么不碰videoview

android mediaplayer
https://developer.android.com...

android videoview
https://developer.android.com...

1.开发者可以基于normandie的mediaplayer api自己根据需要定制,videoview,baseplayerview都可以。
2.有开发者这么做了,并且将这个定制提供给其它业务使用,扩大了normandie的覆盖范围。但是之后随着一些业务的发展,这个定制就出现了之前提到的类似videoview不能满足业务需求的问题。
举两个例子:
(1).类似videoview的定制不容易实现预加载,因为它提供的接口不能让开发者知道更多状态信息。
预加载:同时多个palyer进行加载,但只有一个在前台播放。
(2).开发者想关心,拉取的内容的一些信息,比如分辨率等,类似videoview定制没有接口可以做。

有时候少即是多。

脚本宝典总结

以上是脚本宝典为你收集整理的normandie为什么不碰videoview全部内容,希望文章能够帮你解决normandie为什么不碰videoview所遇到的问题。

如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。