色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

您好,歡迎來電子發燒友網! ,新用戶?[免費注冊]

您的位置:電子發燒友網>電子百科>數碼產品>MD播放器>

流式播放引擎 - Symbian平臺上實現流媒體播放器

2011年09月29日 15:56 本站整理 作者:羅明珊,武茜,袁夢 用戶評論(0
3. 1. 2 流式播放引擎

  對于流式音頻播放,則使用多媒體框架的CMdaAudioOutputStreamAPI。CPluginAdaper 為封裝好的流式播放引擎,由它來調用流媒體播放的相關接口。本地內容播放和流式播放的主要不同在于文件打開方式、初始化方法及對音頻數據流的處理方式。

  要實現流式播放,在程序里需要編寫一個實現了MMdaAudioOutputStreamCallback 的客戶端類。

  這個類提供三個回調函數,向客戶端提示音頻輸出的流式過程結果,讓程序能處理可能的錯誤。這些回調函數是MaoscOpenComplete( ) 、MaoscBufferCopied() 及MaoscPlay - Complete ( ) ,它們都必須由CMdaAudioOutputStream 類的使用類實現。因此,CPluginAdaper 須繼承觀察類MMdaAudioOutputStreamCallback來得到流式播放過程的結果。

  

本地播放流程圖

?

  圖2 本地播放流程圖

  在實現流式播放前,需要與服務器進行連接,獲得待播放的音頻數據流。在MMusic 播放器里,使用套接字來實現服務端與客戶端的通信。客戶端首先需要連接到Symbian OS 套接字服務器,然后打開一個套接字并指定TCP 作為傳輸協議。接著從列表文件得到服務器的IP 地址和端口,向服務器發送請求。等服務器作出響應后,讀取響應的數據并進行分析,用來初始化播放引擎。客戶端繼續對服務端請求播放的音頻數據。

  得到要播放的音頻數據流后,則開始流式播放。

  其播放流程如圖3 所示。首先初始化CMdaAudioOutputStream類。初始化完成后,Multimedia 框架會調用MaoscOpenComplete( ) 回調函數,指出音頻輸出已經可用。該框架所給出的參數是一個出錯值,它指出初始化是否成功。如果成功,則給出KErrNONe。此處可以設置采樣率和音量等。成功初始化后,則可以在客戶端調用PlayL( ) 函數來播放音頻數據流。它調用FillBufferL( ) 函數把數據往緩沖區填充,并使用CMdaAudioOutputStream: : WriteL( const TdesC8&aData) 進行播放。其中參數aData 為緩沖區數據。

  WriteL( ) 是一個異步函數。當復制了描述符aData中的數據到音頻硬件之后,該框架將調用MMdaAudioOutputStreamCallback: : MaoscBufferCopied( ) 回調方法,通知客戶端應用已收到aData 并將其復制到播放流。此時,可以再調用FillBufferL( ) 函數繼續填充緩沖區,從而實現連續不斷地流播放。

  

流式播放流程圖

?

  圖3 流式播放流程圖

  3. 2 音頻文件下載及斷點續傳

  MMusic 使用超文本傳輸協議HTTP 來實現音頻文件和歌詞的下載。HTTP 是在TCP /IP 協議上實現的應用層協議,用于在互聯網上傳輸信息。它使用Socket 在服務器和客戶端之間進行數據傳輸。

  在Symbian OS 版本中,提供了對HTTP 客戶端的API 支持。

  使用HTTP 進行通信時,客戶端需要建立一個HTTP 客戶端會話,在會話上處理與HTTP 服務器的通信。在會話上建立HTTP 通信事務,事務由請求和響應組成,在同一個會話上可以建立一個或多個事務。也可以同時建立多個會話,來實現不同的連接。

  在創建HTTP 引擎時,首先創建一個RHTTPSession類的對象,然后調用該類的Open( ) 方法,打開這個新建立的會話。然后使用RHTTPTransaction類代表HTTP 事務。事務是在HTTP 客戶端會話打開的。打開事務時,需制定事務使用的數據傳輸方法,GET 或POST,同時傳入要打開的URL。服務端處理完成后,返回響應數據。HTTP 客戶端通過對MHTTP - TransactionCallback 的回遞,處理響應結果和接收響應數據。

  

非常好我支持^.^

(0) 0%

不好我反對

(0) 0%

( 發表人:小蘭 )

      發表評論

      用戶評論
      評價:好評中評差評

      發表評論,獲取積分! 請遵守相關規定!

      ?
      主站蜘蛛池模板: 国产精品久久久久久人妻精品蜜桃 | 狼与美女谐音歌词 | 在线 亚洲 日韩 欧洲视频 | 中文字幕成人免费高清在线 | 日日噜噜夜夜爽爽 | 热久久伊大人香蕉网老师 | 日本aaaa| 亚洲国产欧美在线人成aaaa20 | 小SB几天没做SAO死了H | 亚洲精品久久久久AV无码 | 伦 乱真实故事 | 臀精插宫NP文 | 亚洲免费在线视频观看 | 久久精品无码人妻无码AV蜜臀 | 女王羞辱丨vk | 嗯别插太快好深再深点 | 欧美一区二区三区不卡免费 | 国产偷国产偷亚洲高清SWAG | 欧美中文字幕一区二区三区 | 男男女女爽爽爽视频免费 | 青柠在线观看视频在线 | 国产成人在线免费 | 99精品影院| 国产精品人成视频免费999 | 中文字幕在线观看网站 | 果冻传媒视频在线播放 免费观看 | 公和我做好爽添厨房中文字幕 | 免费视频精品38 | yy8090韩国理伦片在线 | 午夜理论片日本中文在线 | 男男高H啪肉Np文多攻多一受 | 芭乐草莓樱桃丝瓜18岁大全 | 一区精品在线 | 日本电影免费久久精品 | 无码任你躁久久久久久老妇双奶 | 最近的2019中文字幕国语 | 午夜精品久久久久久久99蜜桃 | 邻家美姨在线观看全集免费 | 中国成人在线视频 | 国内精品乱码卡一卡2卡三卡 | 亚洲伊人久久综合影院2021 |