Android 系统下Stagefright Player框架
介绍
Stagefright在Android多媒体架构中的位置
Android中OpenMax的基本层次结构
TI OpenMax IL层实现的结构
组件
<<实现类>>MediaPlayer
<<实现类>>
MediaPlayerService
<<实现类>>Client
mediaplayerserivce进程
客户进程
openmax IL
调用
<<子系统>>
TimedEventQueue::threadEntry()
<<实现类>>StagefrightPlayer
<<结构>>AwesomePlayer
notify
创建&调用
创建&调用
sendEvent
notifyListener_l
<<结构>>OMXCodec
创建&调用
消息
<<实现类>>OMX
<<结构>>OMXNodeInstance
<<结构>>
OMXMaster
<<结构>>
SECOMXPlugin
调用
创建&调用
core
<<子系统>>
CallbackDispatcher::threadEntry
调用
CallbackDispatcher::post发消息
<<结构>>
OMXCodecObserver::onMessage
调用
调用
创建
创建
创建
调用
调用
<<子系统>>
消息处理线程SEC_OMX_MessageHandlerThread
<<子系统>>
buffer处理线程SEC_OMX_BufferProcessThread
OMXClient
调用
调用
<<实现类>>OMX
<<结构>>
OMXNodeInstance::onMessage
调用
<<结构>>
OMXCodec::on_message
调用
<<结构>>
OMXNodeInstance::kCallbacks
openmax IL适配层
端口
端口
调用
struct MediaSource
class MediaPlayerInterface
class MediaPlayerBase
Class BnMediaPlayer
Class BnMediaPlayerService
Class BnMediaPlayerClient
class BnOMX
struct OMXPluginBase
struct OMXPluginBase
class BnOMXObserver
<<实现类>>MPEG4Source<<实现类>>MPEG4Extractor<<实现类>>FileSource
struct MediaSource
class MediaExtractor
class DataSource
sniff getTrack
输入数据预处理
- 1
- 2
前往页