個(gè)人電腦
在x86方面,此版本主要改進(jìn)了Dav1d的SSSE3性能。Jiang Xuefeng對(duì)亮度和Paeth幀內(nèi)預(yù)測(cè)函數(shù)的色度預(yù)測(cè)做出了貢獻(xiàn),分別提高了0.8%和0.4%的全局性能。
Liwei Wang繼續(xù)他的逆變換工作,針對(duì)更大的8x32,32x16和32x32以及高達(dá)64x64的塊,提供了這個(gè)版本的最大速度優(yōu)化,在一些視頻上超過10%。
Dav1d0.3.0還新增了第一個(gè)SSE4.1程序集。在大多數(shù)情況下添加的SSE4.1指令除了SSSE3之外沒有太多利用上,但Victorien Le Couviour - Tuffet近一個(gè)月還在優(yōu)化SSE4。他對(duì)CDEF約束方向增強(qiáng)濾波器濾波器進(jìn)行了優(yōu)化,使模塊級(jí)別的速度提高了115倍,整體提升了1.5%。
與此同時(shí),Henrik Gramner編寫了一些非常聰明的SSE2代碼來加速熵解碼/碼流讀取,剛開始會(huì)占用大部分解碼時(shí)間,尤其是在AVX2指令上。匯編代碼為所有64位x86平臺(tái)帶來了加速,AVX2約為4%、SSSE3和SSE4.1約提升2%。
總的來看,這些測(cè)試使得SSSE3上的Dav1d0.3.0快24%,SSE4.1快26%,AVX2 CPU快4%。
雖然單線程aomdec仍然非常強(qiáng)大,但是多線程Dav1d0.3.0使libaom在下面對(duì)比圖中的位置更微小。
Arm64
MartinStorsj?提供了兩個(gè)非常好的提交,使用NEON匯編代碼加速了loopfilter(NEON環(huán)路過濾器)和自導(dǎo)環(huán)路恢復(fù)。這兩項(xiàng)功能都加速了大約3倍,使性能提升了7%到36%。不僅可以實(shí)現(xiàn)更高的分辨率、幀率和碼率,還可以降低相同畫面內(nèi)容的硬件功耗。
在高通驍龍835上單核解碼1080p視頻突破25FPS,使用多個(gè)線程穩(wěn)定30 FPS,某些內(nèi)容甚至達(dá)到60FPS。
總結(jié)以上結(jié)果,我們看到《RED》的測(cè)試結(jié)果提升明顯,因?yàn)樗艽蟪潭壬弦蕾囉趌oopfilter。單線程增益介于11%和36%之間(平均19%),多線程介于7%和16%之間。
應(yīng)用現(xiàn)狀
Dav1d的應(yīng)用進(jìn)行得非常順利,重大新聞是Chrome瀏覽器和新的Microsoft Edge背后的開源項(xiàng)目Chromium現(xiàn)在也用了Dav1d,默認(rèn)情況下將在Chrome 74中集成。
Firefox 67也在最新版本里使用了Dav1d,Dav1d已更新為0.2.1并使用了多線程。 除了Windows之外,默認(rèn)情況下還在Linux和macOS上啟用Dav1d解碼。
FFmpeg和 VLC 自然也使用了Dav1d,一旦FFmpeg 4.2發(fā)布,Handbrake,自然也會(huì)考慮集成Dav1d。
Youtube越來越多的使用AV1編碼,他們甚至編碼了一些4K和8K分辨率高達(dá)60fps的視頻,在這里了解如何讓Youtube啟用AV1。(https://www.youtube.com/testtube)
-
高清視頻
+關(guān)注
關(guān)注
1文章
66瀏覽量
51663
原文標(biāo)題:Dav1d移動(dòng)端解碼高清視頻達(dá)30FPS
文章出處:【微信號(hào):livevideostack,微信公眾號(hào):LiveVideoStack】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論