=====================================================
html
最簡單的視頻編碼器系列文章列表:git
最簡單的視頻編碼器:編譯最簡單的視頻編碼器:基於libx264(編碼YUV爲H.264)
github
最簡單的視頻編碼器:基於libx265(編碼YUV爲H.265)
web
最簡單的視頻編碼器:libvpx(編碼YUV爲VP8)
sql
=====================================================
ide
最近研究了一下幾種常見的視頻編碼器:x264,x265,vpx。本文簡單記錄一下它們的編譯方法。工具
x264,x265,vpx這三個開源的視頻編碼器能夠說是當今「最火」的視頻編碼器。x264如今佔據着H.264視頻編碼器的半壁江山;x265則是目前實現H.265標準最好的開源視頻編碼器,而且在將來可能接替x264;而vpx則是Google推出的開源視頻編碼器,它提出的VP9編碼標準的性能也不錯。在記錄完這篇文章後,計劃分別針對x264,x265,vpx寫三篇文章記錄它們的使用方法。性能
網站:http://www.videolan.org/developers/x264.html網站
源代碼獲取地址:ui
git clone git://git.videolan.org/x264.git
Windows下最簡單編譯步驟(MinGW)
1.下載安裝MinGW,運行後切換至源代碼目錄
2.輸入 "./configure"Linux下最簡單編譯步驟:
1.切換至源代碼目錄
2.輸入 "./configure"4.輸入"make install"安裝(可選)
編譯後生成:
x264.exe:能夠直接使用的編碼H.264命令行程序Windows下編譯得到lib類庫步驟(生成libx264.lib)
Libx264.a:能夠用於程序開發的編碼H.264的類庫
./configure --enable-shared --extra-ldflags=-Wl,--output-def=libx264.def這樣能夠生成「libx264.dll」,「libx264.def」文件。
LIB /DEF:libx264.def便可生成libx264.lib用於在VC下開發。
網站2:https://bitbucket.org/multicoreware/x265
源代碼獲取地址:hg clone http://hg.videolan.org/x265
以本機爲例,打開「vc10-x86」,運行其中的「make-solutions.bat」,便可生成VC2010的32位的解決方案文件。中間會彈出一個CMake的配置對話框,如圖所示。能夠直接先單擊「Configure」,而後單擊「Generate」便可。
編譯後生成:
x265.exe:能夠直接使用的編碼H.265的命令行程序
libx265.dll,libx265.lib:能夠用於程序開發的編碼H.265的類庫(lib和dll分開)
x265-static.lib::能夠用於程序開發的編碼H.265的類庫(單獨一個lib)
網站:http://www.webmproject.org/
源代碼獲取地址:
git clone https://chromium.googlesource.com/webm/libvpx
上述地址有可能訪問不了,能夠使用下面的鏡像地址:
git clone https://github.com/webmproject/libvpx
Windows下最簡單編譯步驟(MinGW)
1.下載安裝MinGW,運行後切換至源代碼目錄
編譯後生成:
vpxdec.exe:能夠直接使用的解碼VP8,VP9命令行程序
vpxenc.exe:能夠直接使用的編碼VP8,VP9命令行程序
libvpx.a:能夠用於程序開發的編碼VP8,VP9的類庫
Windows下編譯得到各個項目VS2010解決方案的步驟
1. configure的時候設置「—target」爲「x86-win32-vs10」
./configure --target=x86-win32-vs10
2. 用VC打開生成的vpx.sln,便可用VS瀏覽整個解決方案。能夠右鍵解決方案,選擇「生成解決方案」批量編譯其中全部的工程。