前言 雖然Android已經內建了VideoView組件和MediaPlayer類來支援開發視頻播放器,但支援格式、效能等各方面都十分有限,這裡與大家一起利用免費的Vitamio來打造屬於自己的Android萬能播放器!
聲明 歡迎轉載,但請保留文章原始出處:) 部落格園: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的代碼來檢測字母文本編碼。
以上主要是對官方介紹進行了簡單翻譯。
三、相關文章
移動流媒體移動協議綜述.pdf
開發人員指南Android支援的媒體格式
Android網路收音機項目
四、文章維護
Vitamio 3.0 新手教程
結束
本系列將是繼 C#視頻監控系列 之後又一與視頻相關的重要系列,值得高興的是Vitamio是國人開發的,在國外得到了廣泛使用,國內也有一些,歡迎大家交流。