hevc/265 开源项目及相关
1.X265
個(gè)是有兩個(gè)版本,一個(gè)是國內(nèi)人搞的,是國外公司搞的
1.國外公司版本
只是一個(gè)編碼器,目前沒有支持解碼
開發(fā)語言 c++
web url: www.x265.org
source url:?https://bitbucket.org/multicoreware/x265
x265 is an open-source project and free application library for encoding video streams into the H.265/High Efficiency Video Coding (HEVC) format, and is released under the terms of the GNU GPL.
MulticoreWare公司發(fā)布x265預(yù)覽版。x265是HEVC/H.265標(biāo)準(zhǔn)的開源編碼器。根據(jù)相關(guān)網(wǎng)站作出的基準(zhǔn)測試,和x264相比,x265的CPU占用率更高,相同比特率時(shí)畫質(zhì)質(zhì)量更高,視頻體積縮小近一半。
2.國人也搞了一個(gè)x265
code url (http://code.google.com/p/x265/)
作者blog地址?http://chenm003.blog.163.com/
2. openHevc
只是一個(gè)解碼庫,目前沒有支持編碼
開發(fā)語言 C ? 基于ffmpeg/libav框架寫的
source url:?https://github.com/OpenHEVC/openHEVC
GPAC url:?http://gpac.wp.mines-telecom.fr
openHEVC is a fork from smarter's libav git (smarter.free.fr) with only required files from libav to decode HEVC content. openHEVC in combination with GPAC is used into 3 research projects:
4EVER
H2B2VS
AUSTRAL
3 libde265
source url ?https://github.com/strukturag/libde265
德國公司 Stuttgarter Struktur AG發(fā)布了H.265編解碼器的開源實(shí)現(xiàn)——libde265,代碼發(fā)布在Github上,采用LGPL許可證授權(quán)
出于簡化和效率的考慮,libde265采用C語言編寫,其API很容易整合到其它軟件中。libde265還在開發(fā)之中,功能還不完整,只支持解碼幀內(nèi)編碼幀。
H265 HM開源軟件
http://hevc.hhi.fraunhofer.de/
由德國fraunhofer研究生負(fù)責(zé)開發(fā),為HEVC HM參考軟件HM維護(hù)單位,相當(dāng)于HEVC標(biāo)準(zhǔn)的C++實(shí)現(xiàn)。
代碼下載
https://hevc.hhi.fraunhofer.de/svn/svn_HEVCSoftware/
X265開源庫也是基于H265 HM(H265 test Model)開發(fā)的開源庫
主要開發(fā)者擁有原來h264的主要開發(fā)者,主導(dǎo)公司是Multicoreware.
源代碼
https://bitbucket.org/multicoreware/x265/
VideoLan鏡像
https://github.com/videolan/x265
開發(fā)者列表
mingw編譯ffmpeg+x265過程記錄
工作環(huán)境?OS:windows?7
1.相關(guān)資源下載
Ffmpeg-2.3?????http://ffmpeg.org/releases/ffmpeg-2.3.3.tar.bz2
X265-1.3下載??https://bitbucket.org/multicoreware/x265/wiki/Home
http://ffmpeg.zeranoe.com/builds/source/external_libraries/
X264下載?http://ffmpeg.zeranoe.com/builds/source/external_libraries/
??
2.編譯x265-1.3
x264、x265、ffmpeg等都需要yasm編譯器,需要將yasm編譯器下載,復(fù)制到ming/bin目錄下。
X265需要安裝cmake來生產(chǎn)工程文件,需要下載最新的cmake-2.8.12版本,并安裝,注意需要將其安裝路徑加入windows環(huán)境變量的PATH變量下。
2.1?進(jìn)入到x265/build/msys目錄,執(zhí)行?make-Makefiles.sh
先點(diǎn)下面的configure,然后點(diǎn)generate即可,然后關(guān)閉,回到命令行。同上面的執(zhí)行make?然后是?make?install。最后編譯成功應(yīng)該可以找到對(duì)應(yīng)的lib文件在/loacal/lib目錄下。
3.編譯ffmpeg-2.3
3.1.?Ffmpeg編譯配置選項(xiàng)
將x264、x265編譯后的頭文件,靜態(tài)庫文件copy至/usr/local/對(duì)應(yīng)的目錄下
將tyd.sh文件copy值ffmpeg-2.3.3目錄下。運(yùn)行tyd.sh腳步即可
3.2?運(yùn)行編譯選項(xiàng)存在的問題
ERROR:?x265?not?found
3.2.1.?缺少pkg-config程序、缺少x265.pc文件
查看config.log日志文件,根據(jù)以下的錯(cuò)誤信息,應(yīng)該是缺少pkg-config程序,以及缺少對(duì)應(yīng)的x265.pc文件。
pkg-config程序的安裝參考一下文章,或者直接下載pkg-config?copy到/ming/bin目錄下
pkg-config
安裝??http://blog.csdn.net/chaosllgao/article/details/3984462
下載??http://ftp.gnome.org/pub/gnome/binaries/win32/dependencies/pkg-config-0.23-2.zip
x265.pc文件copy?/usr/local/lib
可以通過pkg-config得到x265相關(guān)的文件信息。
3.2.2?config.log錯(cuò)誤日志信息
a)?缺少gcc依賴庫
??如下圖所示,鏈接new\delete函數(shù)失敗,顯然是缺省gcc相關(guān)的函數(shù)導(dǎo)致
原因是msys版本的pkg-config不能正確讀取x265庫的依賴庫導(dǎo)致,需要手動(dòng)添加
b)?奇怪的鏈接錯(cuò)誤
c:/mingw/lib/libstdc++.a(new_op.o):new_op.cc:(.text+0x34):?undefined?reference?to?`_Unwind_SjLj_Register'
c:/mingw/lib/libstdc++.a(new_op.o):new_op.cc:(.text+0x87):?undefined?reference?to?`_Unwind_SjLj_Unregister'
c:/mingw/lib/libstdc++.a(new_op.o):new_op.cc:(.text+0xb7):?undefined?reference?to?`_Unwind_SjLj_Resume'
通過分析查找,發(fā)現(xiàn)時(shí)上述鏈接使用的gcc函數(shù)庫與x265.exe使用的函數(shù)庫不一致的原因?qū)е隆1举|(zhì)原因還是pkg-config不能正確解析x265.pc文件所致,解決方案如下:
c)?正確執(zhí)行configure配置的結(jié)果
可以看到ffmpeg依賴的第三方庫已經(jīng)正確的配置好了libx264和libx265
4.編譯ffmpeg項(xiàng)目
到這一步基本上大功告成了,只需要執(zhí)行make?&&?make?install即可。
最后可以在目錄output下找到編譯的結(jié)果。
編解碼技術(shù)學(xué)習(xí)網(wǎng)站匯總
1.音視頻開源
1.1 FFMPEG
http://www.ffmpeg.org/ http://dranger.com/ffmpeg/ Ffmpeg Basic http://ffmpeg.tv/ http://www.libav.org/1.2 H264/AVC
http://www.videolan.org/developers/x264.html1.3 H265/HEVC
1.HM(HEVC test Model)
團(tuán)隊(duì)名稱 Joint Collaborative Team on Video Coding (JCT-VC)? 資料 http://hevc.hhi.fraunhofer.de/ 編解碼器SVN URL https://hevc.hhi.fraunhofer.de/svn/svn_HEVCSoftware/ 其他很多HEVC開源都是基于該基礎(chǔ)上開發(fā)的,例如X265,OpenHevc2.X265?
基于HM開發(fā)的多線程版本編碼器,開發(fā)團(tuán)隊(duì)有部分原X264開發(fā)成員,主導(dǎo)公司是Multicoreware 源代碼 https://bitbucket.org/multicoreware/x265/VideoLan 鏡像 https://github.com/videolan/x2653.OpenHEVC
只是一個(gè)解碼庫,目前沒有支持編碼。基于ffmpeg/libav框架寫的,解碼器技術(shù)也采用了HM source url: https://github.com/OpenHEVC/openHEVC1.4 流服務(wù)器
http://www.live555.com/ http://www.rtmpd.com/2. ITU-T的Recommendation
ITU-T官方網(wǎng)站主頁:
http://www.itu.int標(biāo)準(zhǔn)的下載列表:
http://www.itu.int/publications/publications.aspx?lang=en&parent=T-L&selection=2§or=2? 打開列表后,根據(jù)標(biāo)準(zhǔn)的分類號(hào)點(diǎn)擊對(duì)應(yīng)的字母,進(jìn)入這個(gè)系列的文檔。例如需要找H263的標(biāo)準(zhǔn)文檔時(shí),只要點(diǎn)擊H,然后在打開的子列表中找到H.263,再點(diǎn)擊進(jìn)入,就可以獲取到這個(gè)標(biāo)準(zhǔn)以及附件(如源代碼或者Appendix)。部分收費(fèi)文檔在這個(gè)列表下無法找到。3.IETF的RFC標(biāo)準(zhǔn)文檔
IETF官方網(wǎng)站主頁:
我一直訪問而且整理的比較好的網(wǎng)站,這里可以下載到pdf版本。
http://www.faqs.org/rfcs/
上面的網(wǎng)站可能找不到部分協(xié)議號(hào)比較高的文檔,可以到下面的鏈接中找到:
http://www.rfc-editor.org/rfc-index2.html
http://www.rfc-editor.org/rfc-index.html?
www.ietf.org
總結(jié)
以上是生活随笔為你收集整理的hevc/265 开源项目及相关的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 三表连接之内连接
- 下一篇: s3c2440移植MQTT