下面是主流的媒體解碼或播放庫清單,它們都是跨平臺支持的:
庫名簡介需要的能力官網鏈接
ffmpegFFmpeg是一套可以用來記錄、轉換數字音頻、視頻,并能將其轉化為流的開源計算機程序。采用LGPL或GPL許可證。它提供了錄制、轉換以及流化音視頻的完整解決方案。它包含了非常先進的音頻/視頻編解碼庫libavcodec,為了保證高可移植性和編解碼質量,libavcodec里很多codec都是從頭開發的。了解視頻編解碼原理和流程、了解圖像壓縮技術、音頻壓縮技術等http://ffmpeg.org
live555Live555實現了對多種音視頻編碼格式的音視頻數據的流化、接收和處理等支持,包括MPEG、H.263+、DV、JPEG視頻和多種音頻編碼。同時由于良好的設計,Live555非常容易擴展對其他格式的支持。了解視頻編解碼原理和流程、了解圖像壓縮技術、音頻壓縮技術等http://www.live555.com
MobileVLCKit鼎鼎大名的播放器VLC,優秀的封裝,源碼中最核心的部分,被封裝成了獨立的庫,基于ffmpeg,live555提供完整的媒體播放庫,你只需要定制自己的界面,支持CocoaPods導入庫,開發一個簡單界面的播放器,你只需要幾行代碼,幾乎覆蓋所有媒體格式!你只需要定制好自己的界面,它的API看起來就是一個播放器http://www.videolan.org
項目選用
如果是播放標準協議的視頻流(http,rtsp,ftp等),建議使用VLC,這個庫有600M左右,兼容armv7 armv7s arm64的情況下,編譯后大約會增加15~20M左右的體積。
使用pod引入的話,非常簡單,省去了編譯煩惱。
pod'MobileVLCKit'
如果你要做精細的視頻解碼控制,或者要優化程序的體積,或者說你喜歡折騰!那么可以選用ffmpeg或者live555。
要做視頻編碼的話,使用ffmpeg會得到很好的支持!