There
is a new playback engine implemented by Google comes with Android 2.0 (i.e, Stagefright), which seems to be quite simple and straightforward compared with the OpenCORE solution.

- MediaExtractor is responsible for retrieving track data and the corresponding meta data from the underlying file system or http stream;
- Leveraging OMX for decoding: there are two OMX plugins currently, adapting to PV's software codec and vendor's hardware implementation respectively. And there is a local implementation of software codecs which encapsulates PV's decoder APIs directly;
- AudioPlayer is responsible for rendering audio, it also provides the timebase for timing and A/V synchronization whenever audio track is present;
- Depending on which codec is picked, a local or remote render will be created for video rendering; and system clock is used as the timebase for video only playback;
- AwesomePlayer works as the engine to coordinate the above modules, and is finally connected into android media framework through the adapter of StagefrightPlayer.

本文深入探讨了Google在Android 2.0中引入的Stagefright播放引擎,它采用了一种相对简单直接的方法。通过MediaExtractor模块检索文件系统或HTTP流中的轨道数据和元数据,OMX插件用于解码,AudioPlayer负责音频渲染,并根据所选编解码器创建本地或远程渲染。AwesomePlayer作为协调各个模块的引擎,最终通过Stagefright Player适配器连接到Android媒体框架。
2720

被折叠的 条评论
为什么被折叠?



