论文部分内容阅读
Android系统自问世以来就迅猛发展,并迅速占据着移动终端的主导地位。随着Android系统发展以及移动终端的应用需求的增长,Android平台的应用开发越来越丰富。Android系统的不断更新使得它更支持用户或程序员直接利用系统资源在应用层开发。然而,Android系统本身的局限性在一定程度上束缚了应用程序的多功能化和可扩展性。本文从不同层次上对Android流媒体播放器进行研究和开发。由于Android系统带有自身的媒体框架,且在不同层面上开放,包括已有的媒体框架——OpenCore,以及基于OpenCore封装的Media库,因此本文针对Android系统的三层架构,基于最接近应用层的Media库、原生的OpenCore、第三方移植的FFmpeg开发流媒体播放器。由于Media库是以OpenCore为基础封装的,因此使用Media库开发时,主要是在应用层的设计及对库的调用,其开发出的播放器性能也因底层的固化而受局限。虽然OpenCore本身支持格式较少,但是直接基于它开发可以减少一些无需或无关的文件,简化系统,减少对内存的占用。而使用的第三方移植的流媒体解决方案,可以根据我们的需要,同时满足支持较多的格式和减少内存的占用。本文选择功能强大,移植性强的FFmpeg进行开发,通过剪裁、优化、编译、移植,实现了一套完整的、精简的Android流媒体播放方案。