開源視訊播放器介紹

Sinkiang發表於2018-08-21

一、MPV播放器

MPV是一個基於 MPlayer 和 mplayer2 的開源極簡全能播放器。支援各種視訊格式、音訊解碼、支援特效字幕(電影動漫的ass特效字幕都沒啥問題),不僅支援本地播放,同樣支援網路播放。重點是 MPV 具有多系統平臺支援、命令列、自定義、GPU 解碼、指令碼支援等特點……另外介面簡單美觀,操作方便,無廣告,啟動快。

  1. 官方網站:mpv.io/

  2. 開源可以用於二次開發,原始碼:github.com/mpv-player(…

  3. MPV是一個很小眾的播放器分支,而且也支援android、ios 、windows、linux 、unix、 mac等主流作業系統和移動平臺,它的程式碼很多來自MPlayer, 為了更好的支援移動平臺,整體框架被改寫,和MPlayer的風格一樣,介面及其簡單,設定可以說沒有介面,但是對第三方軟體的呼叫支援的非常友好,各種的支援.MPV目前已經被移植到了android , ios平臺,雖然在windows平臺,mpv還有很多不足,例如有聲音無畫面等,但是在移動平臺,mpv播放器做的很不錯,頂多就是影音不同步等小bug,通常通過切換網路協議,例如從ftp切換到http播放,就可以暫時消除這個bug.

  4. 安裝說明:以Windows為例,下載對應版本,解壓之後找到一個install.bat檔案,點選這個檔案後會自動安裝,然後將系統視訊播放預設程式改為MPV播放器。解除安裝點選對應的uninstall.bat檔案即可。

  5. 介面操作說明

    開源視訊播放器介紹

Windows平臺測試:

開源視訊播放器介紹
開源視訊播放器介紹
測試結果如下:

  1. 不能智慧識別檔名,亂碼。

  2. 加速拖動滾動條,音畫同步,字幕同步,沒有延遲卡頓。

  3. 無法單獨調節音量,只能靜音或者全音。

  4. 將視訊資料夾拖入播放器內閃退。

  5. 播放暫停正常,無停止鍵。

  6. 有一些快捷鍵可以控制播放器的相關功能需要查閱相關資料。

二、VLC media player

VLC 是一款自由、開源的跨平臺多媒體播放器及框架,可播放大多數多媒體檔案,以及 DVD、音訊 CD、VCD 及各類流媒體協議。

  1. 官方網站:www.videolan.org/

  2. 開源可用於二次開發,原始碼:www.videolan.org/vlc/downloa…

  3. 能播放任何內容---檔案、光碟、攝像頭、裝置以及流媒體。

  4. 可播放大多數格式,無需安裝編解碼器包---MPEG-2,MPEG-4,H.264,MKV,WebM,WMV,MP3.........。

  5. VLC播放器採用了c++語言開發,支援windows/linux/unix/mac,目前移動平臺支援ios android兩大系統,VLC的優點在於很成熟,由於採用了現代的c++開發,因此很多最新的技術,更多的開發人員都堆積在了這個專案中,發展的非常快,雖然它是在MPlayer之後才出現的,但是短時間內在功能上就超越了mplayer,並且在移動平臺出現後,很輕鬆的移植到了ios android等系統,同樣完整支援流播放,最主要的就是它有一個完整的介面,這對使用者,特別是我們中國使用者來說,是很受歡迎的。

Windows平臺測試:

開源視訊播放器介紹

開源視訊播放器介紹
測試結果如下:

  1. 正常顯示檔名。

  2. 暫停、播放、停止正常,停止後播放正常。

  3. 快進、快退、加速拖拉滾動條,音畫同步,字幕同步,沒有延遲卡頓。

  4. 支援資料夾列表播放。

  5. 支援位置記憶繼續播放功能,在預設情況下,會詢問是否繼續上次位置播放。

  6. 播放器比較完善,功能強大。

三、SMPlayer

SMPlayer 是免費媒體播放器,內建解碼器,可以播放幾乎所有格式的視訊和音訊檔案。無需再安裝任何外部解碼器。只要安裝了 SMPlayer,你就能夠播放所有的格式,不用再費事查詢安裝解碼包。

  1. 官方網站:www.smplayer.info/

  2. 開源可用於二次開發,原始碼:www.smplayer.info/zh/download…

  3. SMPlayer 可用於Windows 和 Linux,不瞭解是否支援Android、iOS。

  4. SMPlayer會記住您播放過的所有檔案的設定。它將恢復到您離開時的播放位置,並使用相同的設定:音軌、字幕、音量...

  5. SMPlayer 是個用於屢獲殊榮的MPlayer的圖形化介面 (GUI),它能夠播放幾乎所有已知的視訊和音訊格式。但除了提供MPLayer的大多數常用命令外 SMPlayer也有一些好玩的特性,例如:支援播放Youtube視訊和下載字幕。

Windows平臺測試:

開源視訊播放器介紹

開源視訊播放器介紹
測試結果如下:

  1. 檔名無法智慧識別,存在亂碼。

  2. 播放、暫停、停止正常,但停止後播放存在卡頓。

  3. 切換視訊存在卡頓,響應慢。

  4. 快進、快退、加速拖拉滾動條,音畫同步,字幕同步,沒有延遲卡頓。

  5. 音量可以任意調節。

  6. 有些功能存在反應卡頓。

  7. 功能較齊全。

四、MPlayer

MPlayer是一款開源多媒體播放器,以GNU通用公共許可證釋出。此款軟體可在各主流作業系統使用,例如Linux和其他類Unix系統、Windows及Mac OS X系統。但是移植到android ios等移動平臺困難重重,一堆mplayer志願者就設立了新的分支,這就是mpv播放器。

  1. 官方網站:www.mplayerhq.hu/design7/new…

  2. 開源不可用於二次開發,原始碼:www.mplayerhq.hu/design7/dlo…

  3. 安全低消耗,相容多種格式,另外支援P2P點播。

Windows平臺測試:

開源視訊播放器介紹

開源視訊播放器介紹

測試結果如下:

  1. 智慧識別檔名,無亂碼,但是載入視訊進入播放器比較慢。

  2. 播放、暫停、停止正常,但停止後播放存在卡頓。

  3. 快進、快退、加速拖拉滾動條,音畫同步,字幕同步,沒有延遲卡頓。

  4. 音量可以任意調節。

  5. 不能列表播放,只能單個新增進去播放。

  6. 功能比較少。

五、使用者行為的埋點說明

參照微信公眾平臺對視訊資料的統計分析,然後分別對四款開源播放器的以下幾個方面進行相關的調研,得出以下結論:

  1. MPV播放器

①使用者拖拽:使用者開始拖動進度條的位置點至使用者停止拖動進度條的位置點,MPV播放器介面簡單,支援網路播放,另外GitHub上面程式碼資料夾分類明確,可以在原有基礎之上實現使用者拖拽(用程式碼分別識別拖拽起點、終點)。

②使用者完播率:MPV內建編解碼器對視訊完美編解碼(提前將視訊編解碼至緩衝區,然後等待播放),當然也可以滿足此需求。

③使用者播放時長:現在的視訊播放時間基本控制在3小時以內(包括電視劇、電影),當然直播除外,MPV架構比較穩定,效能強大,對播放時長沒有限制,可以完成相應需求。

④是否可以加入互動廣告:MPV播放器整體架構比較簡潔,連 GUI 介面都沒有提供,直接通過命令列或配置檔案設定,這樣只需要將廣告的連結嵌入其中進行相應配置即可。所以可以加入互動廣告(當使用者暫停播放時)。

說明:可以自定義相應功能。

  1. VLC media player

①使用者拖拽:VLC原始碼裡的Control函式有獲取拖拽起點的時間位置引數以及終點的時間位置引數,然後獲取拖拽的總時長,在這個區間進行測試。因此可以滿足此需求。

②使用者完播率:VLC具有記憶功能,自動上次播放的位置,更好的支援使用者的播放體驗,效能也是很完美。因此滿足此需求。

③使用者播放時長:同上,Control函式有控制時長引數。此項需求亦滿足。

④是否可以加入互動廣告:可以。做一個聯動控制,在播放視訊前或者暫停時引入,看需求。

  1. SMPlayer

①使用者拖拽:滿足。基於MPlayer的圖形化介面,也可以很好的捕捉拖拽起終點。

②使用者完播率:滿足。(不多解釋,同上,因為它會記住您播放過的所有檔案的設定。)

③使用者播放時長:滿足。(不多解釋,同上,因為內建解碼器,完全識別視訊時長。)

④是否可以加入互動廣告:不能加入。因為SMPlayer本身不能播放多媒體檔案,它需要多媒體引擎的支援(MPlayer、MPV)。

  1. MPlayer

①使用者拖拽:滿足。不同平臺有不同的圖形化介面,也可以很好的捕捉拖拽起終點。

②使用者完播率:不滿足。因為自身BUG導致播放時,不能完整播放。

③使用者播放時長:滿足。(不多解釋,同上,因為內建解碼器,完全識別視訊時長。)

④是否可以加入互動廣告:可以。因為其本身也自帶廣告(暫停或停止時),只需改變廣告相應地址。

六、總結

  1. 經過自己的瞭解以及測試,可用於二次開發比較好的播放器有MPV、VLC。但首推VLC,因為技術比較成熟,有許多程式設計師將其作為開發物件,所以適合做為二次開發。

  2. 備註:同樣結合七牛雲DEM文件說明,發現做埋點資訊的時候,需要對這幾款播放器做相應的測試,在我們實現使用者拖拽、使用者完播率、使用者播放時長、是否可以加入廣告等等使用者需求的時候,是否存在BUG、是否很好支援PC端、移動端。這些需要我們在開發的時候做相應的監控除錯,才能達到我們的需求。

七、打賞

覺得小弟寫的不錯的,可以請小弟喝瓶礦泉水。嘻嘻嘻

開源視訊播放器介紹            開源視訊播放器介紹

相關文章