吴忠躺衫网络科技有限公司

您好,歡迎來(lái)電子發(fā)燒友網(wǎng)! ,新用戶?[免費(fèi)注冊(cè)]

您的位置:電子發(fā)燒友網(wǎng)>電子百科>數(shù)碼產(chǎn)品>MD播放器>

Symbian平臺(tái)上實(shí)現(xiàn)流媒體播放器

2011年09月29日 15:56 本站整理 作者:羅明珊,武茜,袁夢(mèng) 用戶評(píng)論(0

  1 引言

  Symbian S60 平臺(tái)的Multimedia Framework( MMF) API 可以為上層應(yīng)用程序提供多媒體服務(wù),為用戶創(chuàng)建和分發(fā)豐富多彩的音樂(lè)應(yīng)用。作為一個(gè)多媒體處理單元的插件集,MMF 提供了操作終端硬件的通用接口,支持不同的音頻操作,可實(shí)現(xiàn)本地回放和流式回放兩種模式,可播放多種音頻格式。

  在現(xiàn)有基于Symbian OS 的多媒體播放器的相關(guān)文獻(xiàn)中,討論了基于Symbian 平臺(tái)的流媒體播放器移動(dòng)客戶端的設(shè)計(jì)原理,給出了指導(dǎo)性意見(jiàn),并在結(jié)構(gòu)、緩沖等方面給出了優(yōu)化建議,在此基礎(chǔ)上提出了用戶界面的設(shè)計(jì)方案。但該文獻(xiàn)沒(méi)有給出多媒體技術(shù)的具體實(shí)現(xiàn)。本文設(shè)計(jì)并實(shí)現(xiàn)了基于Symbian 平臺(tái)的多媒體播放器,但其僅支持本地播放,并沒(méi)涉及到流式播放的相關(guān)技術(shù)。

  MMusic 是一款基于MMF 架構(gòu),用于播放多種音樂(lè)文件的多媒體播放軟件。它不僅實(shí)現(xiàn)了音樂(lè)文件的本地播放,同時(shí)支持流式播放。除此之外,該音樂(lè)播放器還支持音樂(lè)下載、歌詞下載及播放同步等功能。其界面美觀、操作簡(jiǎn)單且具有多種功能。

  2 系統(tǒng)總體框架設(shè)計(jì)

  在設(shè)計(jì)系統(tǒng)框架時(shí),首先明確了播放器需要實(shí)現(xiàn)的四項(xiàng)基本功能: ①支持mp3、wmv、aac 等多種格式的本地音頻播放; ②支持流式音頻播放; ③支持歌曲搜索及下載的功能; ④支持歌詞同步的功能。

  MMusic 播放器的程序?qū)崿F(xiàn)基于Symbian S60 平臺(tái)的應(yīng)用程序架構(gòu),采用多視圖框架,根據(jù)不同的功能構(gòu)造不同的視圖。其視圖包括播放界面( 主界面) 、搜索歌曲界面、音樂(lè)媒體庫(kù)界面和電臺(tái)列表界面。其中播放界面是整個(gè)播放器的核心界面,主要負(fù)責(zé)音頻媒體的播放,包括本地播放和流式播放。

  根據(jù)播放模式的不同,動(dòng)態(tài)選擇相應(yīng)的菜單和播放引擎。本地播放使用CPlayerAdapter 引擎。該引擎使用音頻播放類CMdaAudioPlayerUTIlity 類及其相關(guān)的觀察器MMdaAudioPlayerCallback 來(lái)實(shí)現(xiàn)本地音頻播放。流式播放則使用CPluginAdaper 引擎來(lái)實(shí)現(xiàn),它使用了CMdaAudioOutputSTream 和MMdaAudioOutputStreamCallback 類。

  MMusic 音樂(lè)播放器按功能可劃分為六個(gè)模塊:

  ①UI 模塊,負(fù)責(zé)各個(gè)界面顯示和界面間的切換,并對(duì)用戶按鍵進(jìn)行處理;②本地播放模塊,可以提供本地音頻文件播放及音量控制等服務(wù);③流式播放模塊,實(shí)現(xiàn)與服務(wù)器的交互與流式播放;④數(shù)據(jù)下載模塊,負(fù)責(zé)音頻數(shù)據(jù)的下載及存儲(chǔ);⑤歌詞同步模塊,保證音頻播放與歌詞播放的同步;⑥服務(wù)器模塊,提供音樂(lè)文件和歌詞等下載資源。不同模塊的關(guān)系如圖1 所示。

  

MMusic 播放器功能關(guān)系圖

?

  圖1 MMusic 播放器功能關(guān)系圖

  3 關(guān)鍵技術(shù)的介紹

  3. 1 音頻播放

  音頻播放功能可以通過(guò)MMF 所提供的接口來(lái)實(shí)現(xiàn)。其中音頻播放類CMdaAudioPlayerUtility 類提供本地播放的API,而CMdaAudioOutputStream 類則提供流式播放的API。

  3. 1. 1 本地播放引擎

  MMusic 播放器把對(duì)音頻文件的初始化、播放、暫停等操作封裝在本地播放引擎CPlayer - Adapter中。該引擎包含支持音頻回放操作和簡(jiǎn)單元數(shù)據(jù)讀取操作的音頻播放類CMdaAudio - PlayerUtility。由于它的所有操作都是異步的,需要一個(gè)客戶端來(lái)*音頻播放操作。播放引擎CPlayerAdapter 須繼承MMdaAudioPlayerCallback 接口類。該接口類提供了兩個(gè)方法,MapcInitComplete( ) 和MapcPlayComplete( ) 。本地播放流程如圖2 所示。首先通過(guò)調(diào)用CMdaAudioPlayerUtility: : NewFilePlayerL( ) 函數(shù)構(gòu)造并創(chuàng)建一個(gè)音頻播放器的實(shí)例。當(dāng)打開(kāi)及初始化一個(gè)音頻采樣的工作結(jié)束后,系統(tǒng)自動(dòng)調(diào)用MapcInit-Complete( ) 方法,通知客戶端創(chuàng)建實(shí)例的結(jié)果。若成功創(chuàng)建,則可調(diào)用CMdaAudioPlayerUtility: : Play( ) 方法來(lái)播放音頻文件。當(dāng)播放某段音頻采樣操作完成后,系統(tǒng)再通過(guò)MapcPlayComplete( ) 回調(diào)函數(shù)通知客戶端播放已完成。

  

非常好我支持^.^

(0) 0%

不好我反對(duì)

(0) 0%

( 發(fā)表人:小蘭 )

      發(fā)表評(píng)論

      用戶評(píng)論
      評(píng)價(jià):好評(píng)中評(píng)差評(píng)

      發(fā)表評(píng)論,獲取積分! 請(qǐng)遵守相關(guān)規(guī)定!

      ?
      大发888下载客户端| 王子百家乐的玩法技巧和规则| 百家乐官网在线怎么玩| 威尼斯人娱乐城 196| 百家乐筹码方形筹码| 百家乐官网出老千视频| 澳门百家乐鸿运| 灵丘县| 大发888网址官方| 百家乐明灯| 百家乐官网博牌规| A8百家乐官网娱乐网| 百家乐官网在线小游戏| 百家乐网页游戏| 大发888充值100| 全景网百家乐官网的玩法技巧和规则| 石棉县| 大众百家乐的玩法技巧和规则| 百家乐投注网中国| 在线百家乐官网纸牌| 错那县| 百利宫娱乐城信誉| 大发888娱乐城主页| 二八杠网| 威尼斯人娱乐城易博| 为什么百家乐玩家越来越多选择网上百家乐 | 百家乐官网龙虎规则| 万博国际| 百家乐国际娱乐平台| 永利高百家乐怎样开户| 阴宅24山吉凶| 波浪百家乐官网游戏中| 最新百家乐官网双面数字筹码| 新澳门百家乐官网娱乐城| 百家乐官网开户最快的平台是哪家 | 大发888官方网站| 百家乐投法| 贵族百家乐官网的玩法技巧和规则| 新全讯网a3322.com| 百家乐预测和局| 博盈百家乐游戏|