OverLord
我們都知道在Windows系統(tǒng)下,文件都是有擴(kuò)展名(Filename Extension,或作延伸文件名、后綴名)的,它是早期操作系統(tǒng)(如VMS/CP/M/DOS等)用來標(biāo)志文件格式的一種機(jī)制。以DOS來說,一個(gè)文件擴(kuò)展名是跟在文件主名后面的,由一個(gè)分隔符號(hào)分隔。在一個(gè)像“example.t x t”的文件名中,example是文件主名,txt為文件擴(kuò)展名,表示這個(gè)文件是一個(gè)純文字文件,英文句號(hào)“.”就是文件主名與文件擴(kuò)展名的分隔符號(hào)。
文件擴(kuò)展名更重要的作用是讓系統(tǒng)決定當(dāng)用戶想打開這個(gè)文件的時(shí)候用哪種軟件運(yùn)行,例如Windows系統(tǒng)中exe文件是可執(zhí)行檔,doc文件默認(rèn)用Microsoft Word打開的Word文件。視頻類型的文件也不例外,只不過它們的后綴有很多,諸如MKV、AVI、MP4等等。
時(shí)下的視頻播放器固然支持多種格式播放,具有良好的兼容性,哪怕你把一個(gè)*.AVI格式的視頻文件改成*.MP4格式文件,也照樣可以播放,但是不要認(rèn)為這個(gè)視頻格式也隨著更名改變,本質(zhì)上它毫無變化。
這是為什么呢?其實(shí)無論M K V、AV I還是MP4格式,它們都是一種封裝格式,相當(dāng)于存儲(chǔ)視頻的一種容器——而且這些格式的創(chuàng)建者,都分屬于不同的公司。
AVI是Audio Video Interleave(“音頻視頻交織”或譯為“音頻視頻交錯(cuò)”)的首字母縮寫,由微軟在1992年11月推出的一種多媒體文件格式,用于對(duì)抗蘋果QuickTime的技術(shù),現(xiàn)在所說的AVI多是指一種封裝格式。
盡管AVI已經(jīng)屬于老舊的技術(shù),但是由于Windows的通用性,和簡(jiǎn)單易懂的開發(fā)API,仍被廣泛使用。AVI的文件結(jié)構(gòu)分為“頭部”,“主體”和“索引”三部分。主體中圖像數(shù)據(jù)和聲音數(shù)據(jù)是交互存放的。從尾部的索引可以索引跳到自己想放的位置。
AVI將視頻和音頻封裝在一個(gè)文件里,其順序是:若干視頻幀(Video Frame)之后接著若干音頻幀(Audio Frame),再然后是視頻幀、音頻幀,故名為“音頻視頻交織”,意即音頻和視頻按幀交錯(cuò)排列,以此達(dá)到音頻同步于視頻播放的效果。和DVD視頻格式一樣,AVI文件支持多視頻流和音頻流,雖然這些功能很少使用。大多數(shù)AVI文件還支持由Matrox OpenDML集團(tuán)于1996年2月開發(fā)的格式后綴。這些文件非正式的稱為“AVI 2.0”,并得到微軟的支持。
AVI本身只是提供了這么一個(gè)框架,內(nèi)部的圖像數(shù)據(jù)和聲音數(shù)據(jù)格式可以是任意的編碼形式。但是由于索引放在了文件尾部,所以在以網(wǎng)絡(luò)流媒體模式播放時(shí)必須先緩沖到尾部(其實(shí)就是將整個(gè)視頻完全緩沖完畢)才能按照時(shí)間軸順暢播放,顯然并不合理,這也是為什么在流媒體中從來沒有出現(xiàn)過AVI格式的視頻。
動(dòng)態(tài)影像專家小組(英語(yǔ):M o v i n gPicture Experts Group,簡(jiǎn)稱MPEG)為一源自ISO與IEC等國(guó)際組織的工作小組,主要工作是制定影音壓縮及傳輸?shù)囊?guī)格標(biāo)準(zhǔn)。MPEG的官方正式命名其實(shí)頗為復(fù)雜:ISO/IEC JTC 1/SC 29/WG 11 – Codingof moving pictures and audio 。
MPEG(通常指MPEG1)影像編碼是基于變換的有損壓縮。光學(xué)信號(hào)線經(jīng)過采樣形成視頻信號(hào),視頻信號(hào)基本的單位叫做幀,一個(gè)幀就是一幅獨(dú)立的圖像,然后幀被分割成小塊做變換編碼,然后量化,最后進(jìn)行編碼。
MPEG目前已經(jīng)擁有了MPEG1、MPEG2、MPEG3、MPEG4、MPEG7、MPEG21幾種相關(guān)標(biāo)準(zhǔn),注意,其中的MPEG3可不是MP3音樂文件格式!實(shí)際上,MP3音頻文件格式,是基于MPEG1的音頻Layer3而來。
這里面,MPEG4算是一個(gè)集大成者,也就是MP4或稱MPEG4第十四部分(MPEG4 Part 14),是一種標(biāo)準(zhǔn)的數(shù)字多媒體容器格式。MPEG4第十四部分的擴(kuò)展名為*.mp4,以存儲(chǔ)數(shù)字音頻及數(shù)字視頻為主,但也可以存儲(chǔ)字幕和靜止圖像。因其可容納支持比特流的視頻流(如高級(jí)視頻編碼),為流媒體。
雖然被官方標(biāo)準(zhǔn)定義的唯一擴(kuò)展名是*.mp 4,但第三方通常會(huì)使用各種擴(kuò)展名來指示文件的內(nèi)容,比如同時(shí)擁有音頻視頻的MPEG4文件通常使用標(biāo)準(zhǔn)擴(kuò)展名*.mp4;而僅僅有音頻的MPEG4文件會(huì)使用*.m4a擴(kuò)展名;在iTunes Store上銷售的僅有音頻、但是經(jīng)過加密版權(quán)管理的文件命名為*.m4p;包含章節(jié)標(biāo)記,圖像和超鏈接的有聲讀物、播客文件或是元數(shù)據(jù)會(huì)使用*.m4b作為擴(kuò)展名,但有時(shí)候也會(huì)使用*.m4a作為擴(kuò)展名。使用*.m4a擴(kuò)展名的文件不能使用書簽來記錄播放位置,而使用*.m4b擴(kuò)展名的就可以做到這一點(diǎn)。另外,蘋果公司的iPhone手機(jī)使用MPEG4音頻作為其電話鈴聲,但擴(kuò)展名是*.m4r而不是*.m4a。
至于原始的MPEG4視頻流,則會(huì)使用*.m4v擴(kuò)展名,但該擴(kuò)展名也被用于僅有視頻流的MPEG4文件。不止如此,當(dāng)初移動(dòng)端(手機(jī))經(jīng)常使用的一種叫做3GP的視頻格式,可能有些讀者還會(huì)有些許印象,它其實(shí)也是MPEG4的一部分(MPEG4第十二部分,又被稱為MPEG-4/JPEG2000基本媒體文件格式),它類似于*.mp4格式但使用*.3gp或是*.3g2擴(kuò)展名,該格式還存儲(chǔ)非MPEG4數(shù)據(jù)(如AMR,TX3G)。
WMV(Windows Media Video)是微軟公司開發(fā)的一組數(shù)字視頻編解碼格式的通稱,它是Windows Media架構(gòu)下的一部分。最初是為了滿足低速率流媒體應(yīng)用的需求,作為專有編解碼開發(fā)出來的,但是2003年微軟公司基于Windows Media Video第9版編解碼起草了視頻編解碼規(guī)范并且提交給SMPTE申請(qǐng)作為標(biāo)準(zhǔn)。這個(gè)標(biāo)準(zhǔn)在2006年3月作為SMPTE 421M被正式批準(zhǔn),這樣WindowsMedia Video 9編解碼就不再是一個(gè)專有的技術(shù)。其早期的編解碼版本(7和8)仍然被認(rèn)為是專有技術(shù),因?yàn)樗鼈儾辉赟MPTE 421M標(biāo)準(zhǔn)的涵蓋范圍內(nèi)。
WMV不是僅僅基于微軟公司的自有技術(shù)開發(fā)的。從第七版(WMV1)開始,微軟公司就使用它作為自己非標(biāo)準(zhǔn)MPEG4第二部分。但是,由于WMV第九版已經(jīng)是SMPTE的一個(gè)獨(dú)立標(biāo)準(zhǔn)(421M,也稱為VC-1),有理由相信WMV的發(fā)展已經(jīng)不像MPEG4那樣是一個(gè)它自己專有的編解碼技術(shù)。至2006年4月,VC-1專利共享的企業(yè)就有了16家之多,微軟公司也是MPEG4 AVC/H.264專利共享企業(yè)中的一家。
WMV可以使用如MPlayer或者Windows Media Player這樣的播放器播放,Windows Media Player只能在微軟Windows和蘋果MacOS系統(tǒng)上使用。也有許多用于如Linux這樣不同平臺(tái)上的使用FFmpeg實(shí)現(xiàn)WMV編解碼的第三方播放器。其視頻流通常與Windows Media Audio音頻流組合在一起并且使用擴(kuò)展名為*.wmv或者*.asf的Advanced Streaming Format的文件進(jìn)行封裝,也可以使用AVI或者M(jìn)atroska格式封裝。
RealVideo是由RealNetworks于1997年所開發(fā)的一種專用視頻壓縮格式——具體格式隨版本而變化,截止到2018年RealVideo的最新版本為RV60。它從開發(fā)伊始就被定位為應(yīng)用于網(wǎng)絡(luò)視頻播放的格式(即流媒體)。Re a l V i d e o支持各種播放平臺(tái),包含Windows、Mac、Linux、Solaris以及某些移動(dòng)電話。相較于其他的視頻編解碼器,RealVideo通??梢詫⒁曨l資料壓縮得更小,因此它可以在用56KbpsMODEM撥號(hào)上網(wǎng)的條件實(shí)現(xiàn)不間斷的視頻播放。
Re a l V i d e o最早的文件擴(kuò)展名一般為. r m或. r vm,之后廣泛流行的是RMVB格式,即使用動(dòng)態(tài)比特率的Real Vi deo,擴(kuò)展名一般為.rmvb——這就是當(dāng)初統(tǒng)治了窄帶互聯(lián)網(wǎng)的視頻格式。隨著網(wǎng)絡(luò)帶寬的提升和存儲(chǔ)設(shè)備的發(fā)展,RealVideo在網(wǎng)絡(luò)傳輸上不再有體積優(yōu)勢(shì),充裕的網(wǎng)絡(luò)帶寬和更廉價(jià)、空間更大的存儲(chǔ)設(shè)備使人們開始追求更高的畫質(zhì),因此目前Re al V i d e o已經(jīng)逐漸被高級(jí)視頻編碼、VP9等新一代視頻格式所取代。最新的RealVideo HD格式因其全新的編碼算法與高效率壓縮被期望著與高效率視頻編碼等新興格式抗衡,但其仍面臨著編解碼只能使用RealProducer(編碼用)和RealPlayer(解碼/播放用)的問題,應(yīng)用范圍十分狹窄,不易被大眾所接受。
MOV即QuickTime封裝格式(也叫影片格式),它是A p p l e公司開發(fā)的一種音頻、視頻文件封裝,用于存儲(chǔ)常用數(shù)字媒體類型。當(dāng)選擇Qu i c kT ime(*.mov)作為“保存類型”時(shí),動(dòng)畫將保存為.mov文件。1998年2月11日,國(guó)際標(biāo)準(zhǔn)組織(ISO)認(rèn)可QuickTime文件格式作為MPEG4標(biāo)準(zhǔn)的基礎(chǔ)。支持者表示QuickTime提供一個(gè)好的"生命周期"格式,很適合做截取、編輯、文件、散布和播放(相對(duì)于簡(jiǎn)單以文件為流資料方式的MPEG1和MPEG2而言,不適合作編輯之用)。在2002年開發(fā)者增加了MPEG4的兼容性到QuickTime 6。然而,蘋果電腦延遲這個(gè)版本的推出達(dá)到數(shù)個(gè)月之久,是因?yàn)镸PEG4授權(quán)本身的爭(zhēng)議,要求提出的授權(quán)金會(huì)限制很多用戶和內(nèi)容的提供者。在妥協(xié)之后,蘋果電腦于2002年7月15日推出QuickTime 6。
Matroska格式(后綴為*.MKV)是一種較新的多媒體封裝格式,這個(gè)封裝格式可把多種不同編碼的視頻及16條或以上不同格式的音頻和語(yǔ)言不同的字幕封裝到一個(gè)Matroska Media檔內(nèi),它也是其中一種開放源代碼的多媒體封裝格式。注意,它始終是一個(gè)封裝格式,而不是視頻格式,這和上述其它視頻格式不一樣。不過,Matroska“大包大攬”地封裝能力,還使讓它迅速成為非常重要的視頻(封裝)格式之一。此外,Matroska還可以提供非常好的交互功能,而且比MPEG更方便、強(qiáng)大。
Flash Video格式(后綴為*.FLV)是由Adobe Flash延伸出來的的一種流行網(wǎng)絡(luò)視頻封裝格式。隨著視頻網(wǎng)站的豐富,這個(gè)格式曾經(jīng)統(tǒng)治過相當(dāng)程度的網(wǎng)絡(luò)視頻流,不過隨著時(shí)間的推移,它已經(jīng)不再是主流了,未來也許會(huì)隨著Flash被瀏覽器與操作系統(tǒng)拋棄而逐漸消失。
視頻格式是決定了它出自于哪里,有什么樣的特點(diǎn),但是要讓它成為視頻,還需要編碼來“編織”——這就是視頻的編碼。
MPEG1第二部分主要使用在VCD上,有些在線視頻也使用這種格式。該編解碼器的常見視頻質(zhì)量大致上和以前的VHS錄像帶相當(dāng),但VCD屬于數(shù)字視頻技術(shù),它不會(huì)像VHS錄像帶一樣隨著播放的次數(shù)和時(shí)間而逐漸損失質(zhì)量。而且如果輸入視頻源的質(zhì)量足夠好,編碼的碼率足夠高,VCD可以給出從各方面看都比VHS要高的質(zhì)量。只是考慮到讓所有的VCD播放機(jī)都可以播放,高于1150kbps的視頻碼率或者高于352×288的視頻分辨率一般不會(huì)用于常見的VCD節(jié)目和光盤制品,這個(gè)限制也對(duì)單體VCD播放機(jī)及一些DVD播放機(jī)有效。MPEG1第三部分還包括了目前常見的*.mp3音頻編解碼器。如果考慮通用性的話,MPEG1的視頻/音頻編解碼器可以說是通用性最高的編解碼器,幾乎世界上所有的計(jì)算機(jī)都可以播放MPEG1格式的文件。
MPEG2第二部分使用在DVD、SVCD和大多數(shù)數(shù)字視頻廣播系統(tǒng)和有線分布系統(tǒng)(Cable Distribution Systems)中。當(dāng)使用在標(biāo)準(zhǔn)DVD上時(shí),它支持很高的圖像質(zhì)量和寬屏;當(dāng)使用在SVCD時(shí),它的質(zhì)量不如DVD但是比VCD高出許多。MPEG2也被使用在新一代DVD標(biāo)準(zhǔn)HD-DVD和Blu-ray(藍(lán)光光盤)上。從技術(shù)上來講,比起MPEG1,MPEG2最大的改進(jìn)在于增加了對(duì)隔行掃描視頻的支持?,F(xiàn)在看來,MPEG2也已經(jīng)是個(gè)相當(dāng)老的視頻編碼標(biāo)準(zhǔn),優(yōu)勢(shì)是具有很大的普及度和市場(chǎng)接受度。
MPEG4第二部分標(biāo)準(zhǔn)可以使用在網(wǎng)絡(luò)傳輸、廣播和媒體存儲(chǔ)上。它的壓縮性能比MPEG2有所提高。和之前的視頻編碼標(biāo)準(zhǔn)的主要不同點(diǎn)在于,它支持“面向?qū)ο蟆保∣bjectoriented)的編碼方法和一些其他并非用于提高通常視頻編碼壓縮率的技術(shù),當(dāng)然也引入了一些提高壓縮能力的技術(shù)。和MPEG2一樣,它同時(shí)支持逐行掃描和隔行掃描。
MPEG4第十部分,其實(shí)就是我們?nèi)粘Uf的H.264了,或者也稱之為AVC。它于2003年制定完成的視頻編碼標(biāo)準(zhǔn),并且在已經(jīng)得到了越來越多的應(yīng)用。該標(biāo)準(zhǔn)引入了一系列新的能夠大大提高壓縮性能的技術(shù),并能夠同時(shí)在高碼率端和低碼率端大大超越以前的諸標(biāo)準(zhǔn)。和MPEG2和MPEG4 ASP等壓縮技術(shù)相比,在同等圖像質(zhì)量下,采用H.264技術(shù)壓縮后的數(shù)據(jù)量只有MPEG2的1/8,MPEG4的1/3,它也是目前最為普及的視頻編碼技術(shù)之一。
MPEG-H第二部分又稱為高效率視頻編碼(High Ef f iciencyVideo Coding, HEVC),也就是著名的H.265編碼,或稱HEVC。HE VC被認(rèn)為不僅提升影像質(zhì)量,同時(shí)也能達(dá)到H. 2 6 4 /MPEG4AVC兩倍之壓縮率(等同于同樣畫面質(zhì)量下比特率減少到了50%)!H . 2 6 5旨在在有限帶寬下傳輸更高質(zhì)量的網(wǎng)絡(luò)視頻,僅需H . 2 6 4的一半帶寬即可播放相同質(zhì)量的視頻。H. 2 6 5標(biāo)準(zhǔn)也同時(shí)支持4K(4096×2160)和8K(8192×4320)超高清視頻。
WMV(Windows Media Video)是微軟公司的視頻編解碼器家族,包括WMV 7、WMV 8、WMV 9、WPV 10。這一族的編解碼器可以應(yīng)用在從撥號(hào)上網(wǎng)的窄帶視頻到高清晰度電視(HDTV)的寬帶視頻。使用Windows Media Video用戶還可以將視頻文件刻錄到CD、DVD或者其它一些設(shè)備上。它也適用于用作媒體服務(wù)器。WMV可以被看作是MPEG4的一個(gè)增強(qiáng)版本。最新的WMV的版本是正在SMPTE制定中的VC-1標(biāo)準(zhǔn)。WMV9(V C - 1,開發(fā)代號(hào)為“Corona”)剛推出的時(shí)候稱為VC-9,之后才被電影電視工程師協(xié)會(huì)(SMPTE)改稱為VC-1(VC指Video Codec)。技術(shù)上,V C - 1 也與H.264有諸多相似之處。
AVS是中國(guó)制定的音視頻壓縮編碼標(biāo)準(zhǔn),準(zhǔn)確來說,其不僅僅包括視頻編碼標(biāo)準(zhǔn)。它最主要的目的是通過采用與H.264不同的專利授權(quán)方式,來避免付出大筆的專利授權(quán)費(fèi)用。在技術(shù)上可以回避一些非必要專利,也可以在幾乎不影響編碼壓縮效率的基礎(chǔ)上,提高編解碼速度。
DivX,Xv iD和3ivx視頻編解碼器基本上使用的都是MPEG4第二部分的技術(shù),以后綴*.avi, *.mp4,*.ogm或者*.mkv結(jié)尾的文件有一部分是使用這些視頻編解碼器的。
AOMedia Video 1(簡(jiǎn)稱AV1)是一個(gè)開放、免專利的視頻編碼格式,專為通過網(wǎng)路進(jìn)行流傳輸而設(shè)計(jì)。它由開放媒體聯(lián)盟(AOMedia)開發(fā),該聯(lián)盟由半導(dǎo)體企業(yè)、在線視頻廠商和網(wǎng)頁(yè)瀏覽器開發(fā)商于2015年成立?;ヂ?lián)網(wǎng)工程任務(wù)組(IETF)也將這項(xiàng)工作標(biāo)準(zhǔn)化為在線視頻編解碼器(NetVC)。相比目前的H.265(HEVC)編碼,AV1不僅能保持原視頻的分辨率、幀率、比特率,視頻體積還能再縮小20%,相比于VP9壓縮率也高出30%。這就意味著在同等帶寬下可以傳輸更高清的畫質(zhì)。AV1編碼的開發(fā),基本就是沖著ITU-T VCEG(視頻編碼專家組)和H.265而來。主要原因是H.265編碼高昂的專利費(fèi)用和復(fù)雜的授權(quán)政策導(dǎo)致的授權(quán)費(fèi)高昂和重復(fù)收費(fèi)。
VP9是谷歌公司為了替換老舊的VP8影像編碼格式并與動(dòng)態(tài)專家圖像組(MPEG)主導(dǎo)的高效率視頻編碼(H.265/HEVC)競(jìng)爭(zhēng)所開發(fā)的免費(fèi)、開源的影像編碼格式。不同的是,VP9主要針對(duì)的還是在線流媒體視頻,尤其是使用瀏覽器播放的在線視頻。與HEVC等視頻編碼標(biāo)準(zhǔn)相比,VP9等比特流格式的視頻編碼標(biāo)準(zhǔn)相對(duì)簡(jiǎn)單,對(duì)流媒體支持更加出眾。
實(shí)際上,現(xiàn)在主流的視頻格式就集中在*.AVI、*.MKV以及*.mp4上,而它們常用的編碼則主要集中在H.264、H.265(HEVC)上,AV1將是未來非常重要的視頻編碼,但還不是現(xiàn)在——畢竟它需要硬件解碼才能“還原”視頻繼而播放。而且,采用這種編碼格式的視頻數(shù)量還較為稀少,遠(yuǎn)沒有達(dá)到普及的程度。