Android關於流媒體播放(1)

   很少寫博客這種形式,不太清楚怎麼寫才能清楚的把我想表達的意思通過文字表達出來。能力有限就寫寫在看流媒體方面遇到的問題和當時我的想法還有處理的方式。目的一方面是寫下來也是加深了一次理解,另一方面也是大家看了之後,發現哪裏不對或是新的解決方案的話,可以留下評論和意見。t_0003.gif

   流媒體,個人理解簡單來說就是多媒體文件(音頻和視頻)通過流式傳輸在網絡上的形式。那麼Android支持流媒體這種形式?下面爲大家列舉下Android系統下支持的一些網絡協議和媒體格式:目前支持的網絡協議:RTSP(RTP、SDP),HTTP/HTTPS實時流(在Android3.1之前不支持HTTPS),HTTP/HTTPS Live Streaming(有些版本不支持)。那麼Android對多媒體格式和編碼的支持情況怎麼樣,給大家個表:點擊查看密碼是1494。項目當中如果服務器恰好能提供Android所支持的的協議和格式。那麼不需要再進行單獨解碼處理,直接可以播放。

   那麼對於系統不支持的協議流傳輸,Anroid要怎麼處理呢?對於這個問題我嘗試了基本上兩個方面。一方面是使用第三方的播放器框架,進行解碼處理。推薦使用VLC播放器,(因爲幾乎支持網絡上主流的媒體傳輸協議,因此叫中文名字萬能播放器)網上可以下載對應Android系統的源碼地址下載對應的源碼。

  如果你已經下載了Vlc源碼,並且已經導入到你的工程當中去了(Eclipse),項目目錄如圖:

wKioL1PCKhCg5V8RAACvKf4svvc426.jpg你剛導入的時候可能沒有這個目錄,你需要重新對項目進行編譯,編譯成功之後,工程當中就會生成此目錄,lib是中主要是編碼的依賴cpu進行的編碼處理。所以針對不同cpu架構(cpu指令集不同,主要是arm系列和x86系列)。所以如果想支持所有手機,必須至少生成兩種cpu指令集的編碼庫。目前市面上x86機型瞭解到 聯想的k800系列之後的手機和華碩的ZenFone 5,機型不多,用戶量沒有統計出具體數字。主流依然是arm架構的手機。

   對於VLC的編譯,我也不懂,正在研究。因爲其中涉及到很多參數,不知道是做什麼的,有什麼用,不過還好VLC的Demo例子已經給你編譯好了兩套libs庫 arm-v7和x86。今天就先寫這麼多。大家如果對編譯VLC有興趣可以的話,可以先把配好NDK。最新版本r9d,不用再配置Cygwin,去官網上下載配置好路徑就可以了(前提是你IDE裏已經配好了CDT)。

    哪裏如果有問題歡迎大家留言。


                                                                              未完待續...

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章