天天看點

使用Vitamio打造自己的Android萬能播放器(1)——準備

前言

  雖然android已經内置了videoview元件和mediaplayer類來支援開發視訊播放器,但支援格式、性能等各方面都十分有限,這裡與大家一起利用開源項目vitamio來打造屬于自己的android萬能播放器!

注意

請下載下傳新釋出的sdk(2012-7-9):

使用vitamio打造自己的android萬能播放器——新版vitamio内測sdk釋出 

聲明

  歡迎轉載,但請保留文章原始出處:) 

    部落格園:http://www.cnblogs.com

    農民伯伯: http://over140.cnblogs.com

正文

  一、實作目标 

    1.1  支援格式

      支援主流的視音頻格式:mp3/mp4/mkv/avi/3gp/rmvb/mov/flv等。 

    1.2  支援功能 

      1.2.1  當然最重要的是播放功能,含播放控制(播放、暫停,聲音、亮度調整等)

      1.2.2  可以掃描sdcard,用清單展現出來,可以搜尋

      1.2.3  可以播放網絡視音頻(http、rtsp、mms)   

  二、vitamio項目簡介

    vitamio是一個支援所有android裝置的多媒體架構。vitamio與android預設的mediaplayer工作方式相似,但包含更加強大的功能,并且它是完全免費的!

    2.1  網址

 官方微網誌:http://weibo.com/vitamio 

 官方網址:http://vov.io/vitamio/

    2.2  成功案例

      國内:vplayer、熊貓影音、321影音等

      國外:tvltaliane、dizi

tv等

    2.3   網絡協定

       支援以下協定的音頻和視訊播放:

      *  mms

      *  rtsp (rtp, sdp)

      *  http流式傳輸(progressive streaming)

      *  http live streaming (m3u8), android 2.1+

    2.4   媒體格式

      vitamio內建了許多音頻和視訊的解碼包,相比android内置預設的媒體格式,這裡列出其中的一些:

      *   divx/xvid

      *   wmv

      *   flv

      *   ts

      *   rmvb

      *   mkv

      *   mov

      *   m4v

      *   avi

      *   mp4

      *   3gp 

    2.5   字幕

      vitamio支援顯示一些内置或外挂字幕格式:

      * subrip(.srt)

      * sub station alpha(.ssa) / advanced sub station  移步wiki

      * alpha(.ass)

      * sami(.smi/.sami)

      * microdvd(.sub/.txt)

      * subviewer2.0(.sub)

      * mpl2(.mpl/.txt)

      * matroska (.mkv) 字幕軌迹

    2.6   其他功能

      * 背景播放

      * 多音軌支援

      * 多字幕支援,包括内部或外挂的 

      * 多平台處理器優化

      * 可調長寬比

      * 文字編碼自動檢測 

    2.7  許可/授權(lisences) 

      vitamio使用了sevral開源項目,感謝他們。

      2.7.1  ffmpeg

        ffmpeg提供軟體解碼器和多路輸出(demuxers)。vitamio使用lgplv2.1許可下ffmpeg的代碼,代碼可以從這裡下載下傳。

      2.7.2  universalchardet (是mozilla的一個自動檢測頁面文字編碼的程式)

         universalchardet是mozilla的編碼檢測庫。vitamio使用mpl許可下universalchardet的代碼來檢測字母文本編碼。

    以上主要是對官方介紹進行了簡單翻譯。 

  三、示例代碼

    3.1  下載下傳vitamio的sdk

      vitamio-sdk.7z 含javadoc文檔和vitamio.jar。

    3.2   下載下傳demo代碼

      vitamio-demo.7z 這是一個使用vitamio.jar的demo工程。

    3.2   運作demo代碼

      3.2.1  下載下傳上面的demo包後,補充工程檔案.project、.classpath等,後面有重新打包下載下傳。

      3.2.2  運作工程,見如下圖:

         

使用Vitamio打造自己的Android萬能播放器(1)——準備

        需要安裝vitamio插件來播放視訊,這裡選擇vitamio website,下載下傳安裝重新運作,發現一抹黑,看看代碼,發現沒有視訊,修改視訊路徑,并且上傳視訊到sd卡,這裡提供一個測試視訊下載下傳這裡,再次運作即可。

      3.2.3  成功截圖

        

使用Vitamio打造自己的Android萬能播放器(1)——準備

      3.2.4  修改後的demo工程下載下傳

        vitamio-demo.zip 

        注意把上面的測試視訊解壓後拷貝到sd卡的根目錄。 

  四、相關文章

    移動流媒體移動協定綜述.pdf

    開發者指南android支援的媒體格式 

    android網絡收音機項目 

  五、文章維護

    2012-7-9 新版sdk第一個内測版已釋出,點這裡。

結束

  本系列将是繼 c#視訊監控系列 之後又一與視訊相關的重要系列,值得高興的是vitamio是國人開發的,在國外得到了廣泛使用,國内也有一些,歡迎大家交流。