超載
今時不同往日,現(xiàn)在的視頻格式大一統(tǒng)的趨勢十分明顯,最常見的格式多為MP4、MKV、MOV。這和很久以前AVI、RM、RMVB、MOV、FLV、MPEG、MP4(圖2)眼花繚亂的格式對比起來要“簡單”了許多。實際上,無論是RM、RMVB、MOV、FLV、MPEG、MP4哪一種,它們都是封裝格式,相當(dāng)于視頻文件的“容器”。
這些容器之內(nèi),都是由不同的視頻編碼處理的視頻文件——記住,所有流行的視頻文件都是經(jīng)過數(shù)字“壓縮”、編碼的,目的就是在視頻質(zhì)量、視頻容量上做到最好的平衡,這就是視頻文件的本質(zhì)。
MOV格式是蘋果公司開發(fā)的一種音頻、視頻文件格式,更適合蘋果系統(tǒng)的使用和播放。MP4是一種最常見的國際通用格式,在常見的播放軟件中都可以使用和播放,文件小,畫質(zhì)清晰。FLV是FLASHVIDEO的簡稱,由于它的尺寸很小,加載速度極快,使網(wǎng)絡(luò)觀看視頻文件成為可能;MKV是當(dāng)前最主流的視頻格式之一,它能夠在一個文件中容納無限數(shù)量的視頻、音頻、圖片或字幕軌道,它是Matroska定義的一種多媒體容器文件,自身沒有壓縮編碼技術(shù),也沒有壓縮編碼方式的限制,實際內(nèi)容可以采用多種流行的音視頻編碼。
AVI的英文全稱為AudioVideoInterleaved,即音頻視頻交錯格式,由微軟公司于1992年11月推出,是作為其Windows視頻軟件一部分的一種多媒體容器格式。它將音頻(語音)和視頻(影像)數(shù)據(jù)包含在一個文件容器中,可以保證音視頻同步回放。與DVD視頻格式類似,AVI文件支持多個音視頻流,不過,AVI格式的索引位于文件尾部,讀取到此處才能保證時間軸正常運行,所以不適合流媒體傳輸,而且近期有被WMV取代的趨勢。因此,現(xiàn)在最常見的視頻還是集中在MP4、MKV、MOV這三種文件格式上(圖3),它們也是本篇關(guān)注的重點。
既然有封裝格式,那就需要有一種方法把視頻文件壓縮好之后放進去。視頻的編碼就是這個作用,相當(dāng)于MP3音樂格式。視頻的編碼都是有損壓縮,通過更好的壓縮比在同體積下提供更好的視頻質(zhì)量,這就是視頻編碼一代一代“進化”的目標。編碼完成后,無論是通過下載還是在線直接播放,都需要我們的設(shè)備進行相應(yīng)格式的解碼,才能將數(shù)字信息“轉(zhuǎn)化”為我們能看到的圖像,繼而播放。
解碼的過程,目前主要是顯卡GPU的工作。在我們所使用的顯卡中,無論是集顯還是獨顯,都設(shè)計了專門的單元負責(zé)編碼工作(圖4)。不過,它們根據(jù)自己的技術(shù)特點、檔次高低,對編碼格式的支持也不盡相同。由于這些編碼單元都是固化在顯卡核心之中的,因此你使用的顯卡支持哪一些視頻編碼格式,從一開始就已經(jīng)確定了,不可能以軟件升級的形式獲得更多額外的視頻編碼能力(圖5)。之所以需要特定的單元做視頻編碼設(shè)計,是因為它依據(jù)特定的編碼算法進行設(shè)計,而不是用軟件編程來支持。這也是為什么顯卡編碼、解碼被稱作“硬件編解碼”,如果以CPU進行編碼、解碼工作,則被稱之為“軟件編解碼”。
如果你的顯卡不支持某一個特定的視頻編解碼工作,那是不是就不可以壓縮生成、或是播放這種編碼格式的視頻文件了呢?當(dāng)然不是,CPU也可以軟件編解碼。它通過軟件計算的方式,利用CPU自身的計算能力來處理視頻的編解碼工作——這也是為什么個人電腦使用的CPU被稱作“通用處理器”的根本原因。當(dāng)然,這樣做的代價就是,CPU編解碼會占用大量的計算資源,表現(xiàn)為編解碼視頻的時候CPU占用極高,影響電腦性能(圖5)。
以NVIDIA顯卡為例,NVIDIA顯卡的硬件編解碼性能遠遠超過使用CPU+軟件編解碼這種方式,特別是多路編解碼的情況下更是如此(圖6)。使用顯卡去編解碼會大大提高效率,節(jié)省時間。兩相對比,使用CPU在進行視頻編解碼的時候,資源占用率極高,這樣就會影響其他應(yīng)用的正常運行,系統(tǒng)明顯會感覺到卡頓。而使用顯卡編解碼就不會占用太多系統(tǒng)資源,不會影響其他應(yīng)用的使用性能。
●編碼這些是主流
一如視頻(封裝)格式有幾種不同的規(guī)格,視頻編碼也有自己的流行趨勢。目前主流的就是H.264、HEVC和VP9三種,此外還有一個冉冉升起的新星“AV1”編碼——對比H.264、HEVC編碼格式,AV1是最有可能實現(xiàn)大一統(tǒng)的,這是由于AV1編碼格式屬于開源產(chǎn)物,沒有任何的專利費用,而不是像H.264、HEVC等編碼格式一樣帶有專利壁壘。
●最普及的H.264
H.264格式(圖7)是當(dāng)前最為流行、普及的視頻編碼格式,是一種基于運動補償?shù)囊曨l編碼標準。它實際的名稱應(yīng)該被稱作“MPEG-4Part10,AdvancedVideoCoding,縮寫為MPEG-4AVC”,即MPEG-4第10部分的高級視頻編碼。它主要是配合1080P分辨率、因藍光而生的視頻編碼。它具有極高的壓縮比,而且可以實現(xiàn)流媒體播放,因此是諸多在線網(wǎng)站的重要視頻編碼格式。現(xiàn)在所有的電腦設(shè)備都可以無障礙編、解碼H.264的視頻文件——無論是硬解還是軟解(顯卡解碼、CPU解碼)。
為什么H.264可以如此流行呢?對比DVD時代的MPEG-2編碼,H.264編碼擁有非常驚人的壓縮比(圖8),甚至是MPEG-4編碼的1.5倍~2倍。舉個例子:一個100GB的視頻源文件,采用DVD下的MPEG-2編碼壓縮,得到的視頻文件是4GB,壓縮比為25∶1;換用H.264編碼壓縮,視頻文件的大小僅僅是980MB大小,壓縮比高達102∶1——也就是說,在同等畫質(zhì)的前提下,采用H.264編碼的壓縮比更大,視頻文件容量更小,因此更加便于傳輸、存儲。這也是為什么很多視頻在線網(wǎng)站也選用了H.264為編碼格式的根本原因之一。
在1080P視頻時代,H2.64編碼無疑是最值得選擇的,而且隨著硬件規(guī)格的變化,顯卡硬件編解碼H.264早已不是問題,時至今日,它也是最為普及的視頻編碼格式。但是,當(dāng)4K來臨之際,H.264也開始顯露“疲態(tài)”,HEVC的取代勢在必行,一如當(dāng)初H.264取代MEPG-2編碼一樣。
●4K標配的HEVC
4K為什么會讓H.264盡顯疲態(tài)呢?原因是分辨率的增加讓視頻文件的體積進一步擴大——4K分辨率相對于1080P,足足提高了4倍,3840×2160對比1920×1080,“多出來”的像素點必然也要占用容量空間。數(shù)據(jù)幾何倍數(shù)的增長,讓擁有極高壓縮比的H.264編碼也不足以應(yīng)對了。因此,HEVC(圖9)的出現(xiàn)就勢在必行。
HEVC也稱為H.265,是為最新一代高分辨率視頻而設(shè)計的視頻壓縮標準。它是廣泛使用的H.264編解碼器(也稱為AVC或MPEG-4Part10)的繼承者,它對H.264的壓縮方案進行了一些重大改進。HEVC壓縮視頻的效率比H.264要高出一倍,也就是說,使用HEVC編碼的視頻,相同視覺質(zhì)量的視頻只占用相當(dāng)于H.264編碼壓縮視頻容量的一半?;蛘撸哂邢嗤募笮『捅忍芈实囊曨l可以呈現(xiàn)更好的質(zhì)量。這也為在線播放超清視頻提供了可能,畢竟帶寬消耗更小一些(圖10)。
嚴格意義上來說,HEVC也不算太新的視頻編碼標準了,但是一個視頻編碼標準的普及程度,還是取決于設(shè)備是否支持,例如嗶哩嗶哩在2020年才將HEVC納入其中(圖11)。
能夠?qū)崿F(xiàn)HEVC硬件編解碼的設(shè)備才真正開始普及(圖12),因此,HEVC的普及速度要比H2.64慢一些。更重要的是,HEVC可以稱得上是4K視頻的“標配搭檔”,仔細注意視頻文件,如果是4K分辨率的,幾乎無一例外都是HEVC編碼格式,而1080P分辨率的視頻文件,則多為H.264編碼格式(也有部分HEVC編碼格式的)。
不過,HEVC的普及也許不會像H.264編碼格式那樣實現(xiàn)“大一統(tǒng)”,因為它出現(xiàn)了一個對手——極速推進的編碼格式:AV-1(圖13)。無論從壓縮比例還是沒有專利費用門檻這些特點上來看,AV-1頗有迅速取代HEVC的勢頭,唯一阻礙的就是電腦顯卡的硬件編解碼功能了——在2021年,支持AV-1編解碼的顯卡才開始上市。當(dāng)然,除了電腦,類似電視盒子使用的SoC處理器也是在2021年前后才開始擁有硬件解碼AV-1編碼格式的能力,想要全面替換、普及,還需要一些時日,但是肯定會快于HEVC編碼。
●8K和未來AV-1是終點?
AV-1編碼格式的出現(xiàn),主要是解決兩大問題:第一,8K(7680×4320分辨率)視頻的出現(xiàn),再一次對視頻壓縮比提出了更高的要求;第二,H.264、HEVC編碼格式的專利費用一直是服務(wù)商心中的痛。無論是電影公司還是在線視頻服務(wù)商,要提供不同介質(zhì)(流媒體、光盤、數(shù)字視頻)的視頻內(nèi)容,只要采用了H.264或HEVC的編碼格式,都需要付費使用!也就是權(quán)利金。因此,2015年的時候,以谷歌為首的諸多廠商自行組建了一個聯(lián)盟:開放媒體聯(lián)盟(AOMedia),目標只有一個:設(shè)計一個免費、高效的視頻編碼格式。
AV-1的誕生就基于此,它的全稱是AOMediaVideo1,它由谷歌開發(fā)的流媒體編碼VP9衍生而來,在技術(shù)上最大、最主要的特征就是AV-1擁有高于HEVC20%的壓縮比,這讓其具備了承載8K視頻編解碼工作的能力(圖14)。
正如前面筆者提到的,很多視頻網(wǎng)站的視頻編碼格式幾乎都是H.264和HEVC,都需要付費,而谷歌開發(fā)的VP9編碼格式,只占據(jù)了不到5%的份額。為了進一步提高壓縮比、降低(消除)專利費,AV-1的誕生可謂是“重任在肩”。它相比HEVC編碼格式,不僅能保持原視頻的分辨率、幀率、比特率,視頻體積還能再縮小20%(相比VP9壓縮率也高出30%),這就意味著在同等帶寬下可以傳輸更高質(zhì)量的畫質(zhì)(圖15),例如未來的8K視頻。
當(dāng)然,AV-1屬于“未來”,還不是現(xiàn)在。Intel的核心顯卡IrisXe、UHD700系列開始提供了AV-1的編解碼能力,是從11代酷睿處理器開始才提供支持;AMD的Radeon6000系列顯卡也剛剛開始支持AV-1的編解碼;NVIDIA的GeForce30系列顯卡同樣剛剛加入了對AV-1的編解碼支持。這是硬件端,在視頻源這一端,愛奇藝、嗶哩嗶哩等在線視頻網(wǎng)站,也從2021年剛剛開始小規(guī)模的嘗試使用AV-1編碼處理視頻。而要在電腦上本地播放AV-1編碼視頻,還需要額外安裝解碼器才可以——在Windows系統(tǒng)的MicrosoftStore商店中搜索“AV1VideoExtension”,匹配到擴展插件后,點擊AV1VideoExtension的“獲取”按鈕,系統(tǒng)將自動安裝(圖16)。安裝完畢,默認自帶的播放器就可以正常播放AV-1格式的視頻了。
●碼率清晰與否的關(guān)鍵
有了視頻封裝格式、也有了處理視頻的編碼格式,是不是視頻就沒什么神秘的了?不知道大家發(fā)現(xiàn)沒有,雖然各視頻網(wǎng)站都推崇自己的高清視頻如何“高清”,可是對比很多下載的高清視頻文件對比,還是差了許多,直觀感受就是視頻的細節(jié)不夠清晰、細膩。
對應(yīng)視頻碼率來看(以超清為例),60秒視頻×1200kbps碼率÷8=9000KB,一分鐘約消耗8.8MB的流量。從分辨率上去看視頻網(wǎng)站的高清、超清基本都能滿足分辨率要求,720P/1080P甚至是4K的垂直分辨率都達到了。但是,它的清晰度非常差,這就是碼率的作用。
碼率可以理解成“采樣率”:單位時間內(nèi)采樣率越大精度越高,編碼生成的的文件就越接近原始文件,但是文件體積與采樣率成正比(圖18),以1200Kbps碼率的在線超清視頻來說,一部2小時時長的視頻容量約為1GB,但同樣以H.264編碼處理的1080P視頻文件,正常容量應(yīng)該是在10GB左右。這,就是精度問題了。
碼率低,表現(xiàn)出來的結(jié)果就是視頻的細節(jié)不夠清晰、細膩,碼率高,視頻清晰必然是需要更多的流量(容量體積),同時也需要更大的帶寬。
因此,視頻文件不僅僅要看分辨率、視頻編碼格式,更要注意視頻的碼率問題,太低了視頻內(nèi)容的細節(jié)就會丟失,甚至有一些“涂抹”感,這就是在編碼的過程中,采樣精度下降導(dǎo)致的(圖19)。之所以諸多在線視頻網(wǎng)站采用高分辨率、低碼率這樣的編碼視頻處理方式,原因其實就兩個:第一是寬帶的普及度不夠,尤其是中低帶寬速率的寬帶,不足以支撐高碼率的視頻在線播放;第二,就是節(jié)省帶寬成本——視頻網(wǎng)站的帶寬開銷即為驚人,如果采用高碼率的視頻在線播放,成本上難以承受。
●HDR暗部細節(jié)的神還原
大家可能都有印象,很多視頻的黑夜場景或者是沒有燈火的場景中,幾乎都是一片黑,但是偶而也能看到有個物體移動等等。這種暗部細節(jié)難以還原清晰,“黑的夠黑,還不失去細節(jié)”是很多人比較頭痛的事情。于是,HDR應(yīng)運而生。HDR全稱是高動態(tài)范圍成像(HighDynamicRangeImaging),它的作用就是實現(xiàn)更大曝光動態(tài)范圍(即更大的明暗差別)的技術(shù)(圖20)。
在電腦圖形學(xué)與電影攝影術(shù)中,HDR是用來實現(xiàn)比普通數(shù)位圖像技術(shù)更大曝光動態(tài)范圍(即更大的明暗差別)的一組技術(shù),定義了相比于傳統(tǒng)標準動態(tài)范圍圖像(SDR)更大的亮度范圍,更廣的色域,更大的比特深度(圖21)。
但是,要實現(xiàn)HDR可不是那么簡單的,第一,設(shè)備要支持HDR播放;其次,顯示設(shè)備的亮度要足夠高,能夠正確顯示具備HDR技術(shù)的視頻內(nèi)容,同時操作系統(tǒng)要支持HDR功能。HDR在電腦端的普及并不高,從Windows101709版本才開始實現(xiàn)支持HDR開啟,并且顯示器必須支持HDR才可以(圖22)。更重要的,HDR還要求使用DisplayPort1.4或HDMI2.0及更高版本這樣擁有更大寬帶的連接方式連接顯示器與電腦(電視)才能實現(xiàn)。不僅如此,顯卡還必須支持PlayReady3.0硬件數(shù)字版權(quán)管理(用于保護HDR版權(quán)內(nèi)容),如NVIDIAGeForce10系列及更高版本、AMDRadeonRX400系列及更高版本或IntelUHDGraphics600系列及更高版本。你以為HDR的硬件門檻就這么多?HDR視頻必須是10bit視頻編碼(10bit色彩范圍)的編碼器編碼的,也就是說,至少是HEVC或者VP9編碼的視頻才能提供對HDR的支持。否則,HDR視頻只能使用播放軟件(如PotPlayer等)轉(zhuǎn)換成SDR模式播放。
但是,它的好處是顯而易見的,那些暗部細節(jié)可以一覽無余的同時,“該黑的地方”依舊“漆黑一片”,這可不是調(diào)整顯示器、電視對比度、亮度就能實現(xiàn)的。
你以為HDR就是最高門檻的視頻方式了嗎?不,還有個要求更加苛刻的產(chǎn)物——杜比視界。杜比視界DolbyVision,它是杜比實驗室提出的一種HDR標準,支持8K的最大分辨率、高達12bit的色深、10000尼特的最大峰值亮度,含有動態(tài)元數(shù)據(jù)。簡單來說,就是它的HDR標準上限極高,是目前最為苛刻、但是效果最為出眾的的HDR標準。
為什么筆者要提及杜比視界?有些視頻下載后播放,視頻畫面是紫綠色的。這是由于杜比視界的解碼需要杜比授權(quán)的設(shè)備支持。否則,即便是顯示器、連接線、硬件解碼都能夠支持,基于杜比視界的視頻依舊不能正常播放。比如在電腦上,就只能通過Windows系統(tǒng)的MicrosoftStore商店中搜索“HEVC視頻擴展插件”(圖23)、“DolbyVisionExtensions”分別安裝,安裝完畢后使用Windows系統(tǒng)自帶的“電影和電視”(圖24)來播放才可以。
電腦的操作固然繁瑣,但是至少可以在硬件支持的情況下無障礙播放視頻,這是電腦的優(yōu)勢也是缺點:操作繁瑣、但是“通用性”更強。視頻雖小但是“門道復(fù)雜”,想要好好觀看視頻,電腦的應(yīng)用知識可是不少,但這不正是我們的樂趣所在嗎?