1. 由于小弟用的平臺的AV播放一直不穩(wěn)定,為研究其原由,不得不把MediaPlayer這個東東搞個明白。 2. 媒體播放器本地部分對上層的接口是MediaPlayer,對下層的接口是媒體播放器對硬件的抽象層,StagefrightPlayer是其中的一個實現(xiàn),你也可以自己基于硬件驅動實現(xiàn)一個MyPlayer,然后添加到MediaPlayerService.cpp中的createPlayer中,同時需要修改本文件中的getPlayerType以指定哪些類型由你的MyPlayer來處理。CreatePlayer中是根據(jù)URL的player_type來創(chuàng)建對應的播放器,并把它保存在MediaPlayerService::Client的mPlayer成員變量中,以供BnMediaPlayer的onTransact調用。 3. 媒體播放器的框架如下圖所示: |
|