「設計冷知識」影片的導入與導出

MUMU
7 min readNov 12, 2018

--

看到Youtube上面很多的Vlog,於是買了一台相機開始記錄生活,每天每天的把記憶卡的資料讀出來時,總會發現…奇怪?怎麼短短幾分鐘的影片就要個1、2Gb? 到底是甚麼原因讓影片的檔案這麼的肥大呢?

一部影片有兩個比較重要的概念,一個叫做「編碼」,一個叫做「封裝」,將這兩個概念釐清後,在影片的導入與導出就會比較精準,讓電腦的資源消耗變得比較小,降低電腦與硬碟的負擔。

一部影片包含了四個比較重要的資訊:影像、音頻、媒體訊息以及封裝格式。影像、音頻這兩個我相信大家都相當熟悉,這些是可見的、可感覺的。

「東西是怎麼包的?」甚麼是封裝格式?
封裝格式就是在檔案後面的副檔名,像是MOV、MP4、AVI等等都是很常見的封裝格式,封裝顧名思義就是將東西打包起來,影片的封裝格式就是向一個箱子,打包了影像、音頻以及媒體訊息。

比較常見的封裝格式有以下幾種:

01. avi
屬於一個比較老舊的封裝方式,雖然大部分的系統都支持,但是本身卻不見得支持每種影片編碼方式。

02. wmv
wmv本身是微軟開發的封裝模式,因此在將編碼模式封裝時,也不太相容於非微軟開發的編碼模式。

03. mov
mov是由蘋果開發的,對於編碼模式的相容性較高,本身有可以在兩種系統(window/mac)裡面透過quicktime進行播放。

04. mkv/ogg
是屬於開源的封裝模式,但也因為開源所以沒有背後的廠家支持,因此在編碼模式還有各大軟體上都有相容性低落的情況。

05. AVCHD
AVCHD 則是屬於消費性錄影機的封裝方式,因為是消費性產品,因此本身是將媒體訊息與影像音頻分開儲存,因此如果封裝後裡面的資料有掉落或遺失,可能播放上就會出現問題。

06. mp4
mp4也是目前最好的封裝模式,可以將全部的數據保留,也不容易有遺漏的問題,各大軟體的相容性好,不會有無法導入軟體進行剪輯的問題,也不會因為系統不同而無法播放。

「媒體訊息」隱藏在影片背後的資訊
甚麼是媒體訊息? 媒體訊息就是在這些影像、音頻背後的資訊,比較常見的就是影片的偵率、分辨率(解析度)、碼率等等。

「解析度」
解析度就是大家以前常說的Full HD、大家之前喊的4K高清或是大家之後喊的8K時代,影片的解析度(分辨率)會是影響到影片播放出來的質感,如果影片本身的解析度不夠,任何在正常的影片都會看起來像是打了碼的色情片。

「幀率」
幀率是甚麼? 幀率就是每秒鐘有幾張(fps, Frame per Second),由於人眼的生理結構,當看到畫面高於10–12fps時,就會自動腦補成連貫的動作,這也就是所謂的視覺暫留,這也就是為什麼動畫一張一張的畫,我們在看的時候還是會覺得裡面的東西是連貫的在移動。
早期的電影幀率大致上在16–24fps之間,因為攝影機是手搖的關係,加上沒有慢放或是其他的技術來表現情緒,因此播放時常常會以比錄製時更高的幀率來進行播放,也就是為什麼看起來老電影裡面的人都走得很快。到了後期,因為技術的進步讓影片的錄製可以超越24fps,在1930年24fps也被當作是電影的播放標準,對人眼來說這也是一個可以接受的情況。

但是進到數位時代後,高動態的電子遊戲因為是一個像素一個像素的呈現,沒有以往錄影的動態模糊,所以影像的幀率就開始需要超過原本的24fps,因此才會開始出現60fps的情況。

在錄影的時候,高偵率的影像可以更清晰的紀錄每個毫秒的情況,畫面的銳利度也會提高,但是缺少了動態模糊便會讓人產生不適感,因此大部分的情況還是會希望影片本身的幀率維持在24fps。

這時候影響「幀率」、「分辨率」的最重要因素來了……

「碼率」
甚麼是碼率?就是每秒鐘能夠釋放多少的訊息量,在同樣是16mbps的情況下,越高的解析度每個像素之間能攜帶的訊息量被稀釋,因此在設定分辨率、幀率時,需要考量到本身的碼率(也包含了網路上能傳輸的碼率)。在高碼率的情況,高解析度、高幀率的影像也才能有它的優勢。

上面講到的都是一個影片所具備的訊息,那為什麼需要編碼?

「一個優秀的編碼,能在低碼率的情況下儲存更多的訊息」
一段影片中會包含了影像本身(色彩)、音頻(音質)、媒體訊息(碼率、幀率等等),因此需要透過編碼,將這些資訊重新的編輯過,讓文件的大小降低,進而節省電腦、硬碟的負擔。

未壓縮的1080p影片如果拍攝一小時大概會產生500gb大小的文件,這樣就會造成整個電腦、硬碟甚至是網路的負擔。假如沒有編碼,那我們究竟該丟失掉甚麼呢?是碼率?讓影片本身就算是1080p也還是很糟糕?還是幀率?讓影片不連貫?還是解析度?在一個超低解析度看起來都像是打了碼的情況播放?還是影片的顏色?丟棄調色彩? 這些都不是好辦法,因此我們需要編碼。

「編碼格式」
編碼格式分成兩種:有損格式、無損格式,有損跟無損的差別主要在於文件的壓縮程度,有損相比於無損來說,壓縮的比例較好,能夠將文件的大小大幅度的降低。

有損格式又可以分成兩種:一種是幀內壓縮,另一種則是幀間壓縮。

幀間壓縮便是將每一幀進行比對,比對後將前後兩幀的畫面合算成一幀,但相對的每個像素帶的訊息量就下降了,適合在最後的導出階段。而幀內壓縮則是透過將每一幀內部的訊息壓縮來改善本身文件的大小,在運算因為不需要進行比較才能開始壓縮,也因此能降低電腦本身的負擔。

比較常見到的編碼方式在幀間壓縮上,H.264 H.265是大家比較熟悉也必較常用的模式、mpeg則是(DVD),幀內壓縮則有Prores、DNxHD /HR、Cineform,在最終導出的情況下,目前最好的選擇就是H.264。
在過去剪輯與拍攝的時候,Prores只有在mac上比較合適,Windows則是比較合適DNxHD /HR的編碼方式。但是現在比較合適高效的編碼目前則是Cineform,在特效上面也是比較合適的編碼方式。

感謝Tim Pan的影片:
https://youtu.be/P-k4nqCL7tw
https://youtu.be/hqNcj6_lYg0
以上資料主要參考於此

--

--

MUMU
MUMU

Written by MUMU

Ins: pai_product. Financial Product Manager. SH

No responses yet