動畫編碼格式
動畫編碼格式(Quicktime Animation format)是蘋果(Apple Inc.)公司在20世紀末(鬼知道到底是哪一年)推出的針對動畫素材進行編碼的編碼格式。該編碼格式主要使用步長壓縮算法(run-length encoding)與條件補償算法(conditional replenishment )進行編碼。
目前PR、AME與AE均支持使用Quicktime格式-動畫編碼器編碼素材並以.MOV格式將其封裝導出。

Premiere CC2018中的動畫編碼器
相比後期大神們常用的Avid公司推出的DNxHR系列編碼格式、蘋果公司推出的Prores系列編碼格式以及Gopro公司併購的Gopro CineForm編碼格式這樣的中間編碼格式,動畫編碼格式理論上更加適合作為板繪二維動畫或MG動畫素材的中間編碼。 這是我在三連動畫教學這期視屏中為大家分享的三連MG動畫製作方式的成品截圖:

這是我自己使用AI繪製、AE做動畫創作的板繪二維動畫作品截圖:

這是我使用相機隨便拍攝的一段畫面截圖:

可以明顯看到在MG動畫以及板繪動畫中,畫面中出現了大量的相同顏色色塊。而實拍的畫面即使看上去擁有有內味兒的“相同顏色色塊”,但事實上,色塊中的顏色只是色相、飽和度、明度都很接近的不同顏色們。

原理
為什麼要提這些色塊呢?
這就要說說動畫編碼器所使用的步長壓縮算法了。為了方便大家理解,這裡我用一個簡化的例子來解釋壓縮的邏輯,但實際情況往往更加複雜,幸好我不是程序員。簡單地說,編碼器會在每一幀將整個畫面的像素分解為一排一排的像素。

隨後將一排一排的像素逐個分解為長度不同的步格(runs),步格的長度以及所包含的顏色會根據前一幀的像素顏色以及這一幀的相同顏色色塊分布情況決定。


對於每一個步格,編碼器會選擇這三種編碼方式中的一種來將色彩信息編譯為碼流(Bitstream):1.染上你的顏色(same color) 2.跳過此幀(skip) 3.PCM。
在染上你的顏色模式下,步格中的所有像素色彩信息會被步格中的一種色彩信息代替並在編譯為碼流時壓縮為更短的“名字”來代表這個步格的色彩信息。如果步格中的顏色不同,則會造成有損壓縮。


跳過此幀模式也就是條件補償算法,這是一種幀間編碼方式。將與前一幀顏色相同的步格直接按照前一幀的色彩情況編碼。
PCM模式就硬編唄,對步格中的色彩信息不作任何壓縮,直接編譯為碼流。

選擇哪一種編碼方式取決於編譯結果的數據大小,算法會優先選擇體積最小的編譯方式,而在前兩種方式都不適用的時候就會使用PCM編碼方式。
了解這些以後,大家應該很容易理解,在視頻中出現大面積相同顏色的色塊且連續很多幀都不會發生變化時,比如最近流行的很多幽默小動畫:

素材取自Up主:@阿幕降臨
動畫編碼的壓縮率會比較高,並且不會丟失太多細節,甚至在100%編碼質量下可以做到無損。但是對於實拍的畫面或者光影複雜的3D動畫,畫面中很少會出現這樣大面積同色色塊還連續多幀保持不變(由於實拍畫面必然會因為傳感器產生噪點,所以幾乎不可能有大面積的同色色塊),即使在無損模式下動畫編碼的壓縮率也並不會比其他的中間編碼高,並且由於條件補償的算法邏輯 ,在編碼質量較低時還會製造更多肉眼可見的噪點。
實際體驗
我自製了一個非常標準的簡易MG小動畫,大概是這樣的:

一個五秒鐘的簡單MG小動畫
隨後我分別使用100%質量的動畫編碼、100%質量的CineForm編碼以及100%質量的DNxHR編碼來導出了視頻文件,導出時間見下圖。

動畫編碼器不出所料在面對這種大面積同色色塊的情況時效率超高,不過CineForm速度居然領先DNxHR(無論是444還是HQ),這點還蠻讓我驚訝的,看來CineForm的編碼算法在應對這類素材時也有一定的優勢。而對比生成文件的體積,動畫編碼器輕鬆取勝,甚至甩了DNxHR編碼幾條街。

值得一提的是,動畫編碼格式支持的採樣深度可以高至32bit ARGB 4:4:4。在某些非動畫情況下也是可以取代沒有Alpha通道的DNxHR編碼格式與最高16bit的Prores編碼格式而作為中間編碼格式的。況且100%壓縮質量的動畫編碼格式是可以做到無損壓縮的。
知道這些後,Prores和DNxHR望了望彼此,很有默契的退出了直播間。
總結
在製作MG動畫、板繪動畫、簡單3D動畫時,使用動畫編碼格式作為中間編碼格式。

在製作實拍視頻、複雜3D動畫時,使用Prores、DNxHR、CineForm作為中間編碼格式。
原創文章,作者:投稿專員,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/278172.html