電影、電視和遊戲中的幀率

之前在即刻上看到一個搬運自極客灣的視頻,知乎上也有更詳盡的文字解釋https://www.zhihu.com/question/21081976/answer/34748080。我這裏再簡單總結一下。

衆所周知,電影一般是24幀的,有一個電影的公衆號就叫24幀。首先我們來看爲什麼大多數電影都是24幀,然後再比較一下電影中的幀數和遊戲中的幀有什麼區別,爲什麼遊戲中需要更高的幀數會流暢。

通常的解釋是:24幀的視頻就能滿足人眼,然後大家墨守成規,同時爲了音畫同步,大家就都統一使用24幀的畫面。即便是在數字時代,更高的幀數依然需要高昂的成本,24幀依然是主流。當然也有一些例外,如《霍比特人》使用了48幀技術,《比利林恩的中場故事》使用了120幀技術。更高的幀數會有什麼效果呢?可以在b站就可以找到很多60幀視頻。李安使用4K加取120 幀技術絕對是一項技術革命,從光源,到播放技術,到演員的表演,因爲在這種清晰度下真的是毫髮畢現,但是這也造成了一種電視劇感,因爲我們理解的電影就因爲是有一種距離感,一種old school的美學。爲什麼幀率越高越清晰呢?電影不是連續曝光,24幀是在一秒內拍攝了24張照片,但是不是說每一張照片的曝光時間就是1/24秒,曝光時間應該是1/48秒。曝光時間是通過叫做葉子板的半圓形裝置進行的,通過改變開角就可以調整曝光時間,可以理解爲快門。只要快門時間不爲0,理論上就會造成殘影。更高的幀率就代表了每一張照片的曝光時間更短,對比於30幀的視頻,60幀的視頻中每一幅畫面的快門時間更短,造成的模糊效應更小,所以雖然分辨率沒有改變,但是視頻更加清晰。

以60幀製作的視頻相比於30幀的更清晰,那麼60幀的視頻以30幀的速率播放呢?我們在播放時可以選擇更低的幀率,可以發現,當使用30幀播放時畫面顯得卡頓,這是因爲30幀畫面丟失了一些模糊的細節信息,所以人腦自動補全受到了更大的挑戰。這其實也是遊戲中要求更高的幀率才能流暢的原因,因爲在遊戲中畫面不是拍攝得到的,而是渲染製作出來的,所以遊戲中的快門時間可以認爲是0,在遊戲中不會有運動模糊。賽車遊戲中,即便已經飆車到了120邁,按下截圖鍵依然可以得到清晰的截圖,而我們手機拍照時稍微不穩定都可能拍糊。同樣是24幀,如果我們將快門速度從1/48秒改爲1/96秒,單張圖像的清晰度高了,但是由於少了運動模糊,在連貫播放時我們依然會覺得不流暢。所以說幀率和快門時間還要有一個對應關係,而且運動模糊對於視頻來說是很重要的。

遊戲中由於靜止幀造成的卡頓可以通過開啓動態模糊選項進行模糊幀的模擬。但是這種模擬的改善有限。此外,遊戲中需要更高幀率的原因還有兩個:一是幀生成時間(幀與幀間隔的時間),因爲遊戲場景更復雜,顯卡渲染不同的幀需要的時長不確定,會造成間隔不穩定,解決的方法是開啓垂直同步。還有一個是遊戲特有的人機交互,人眼最大能接受的響應時間是100ms,而機器和屏幕的反應時間是3-5幀,所以遊戲中一般要求60幀才能流暢。特別地,如果使用遊戲主機玩遊戲,在30幀下就算是流暢,這是因爲相比於PC機,遊戲主機做了針對性的優化,且默認都開啓了動態模糊和垂直同步,並且手柄相比於鼠標限制了用戶大範圍的大動作,當鼠標一秒60像素的時候,鼠標箭頭是1像素1像素的移動,一秒600像素的時候,箭頭就變成10像素10像素的移動了,中間9個像素的位置信息就丟失了,畫面就不連貫了,就卡了。同時遊戲主機情景下人眼離屏幕更遠,這也在一定程度上對流暢性有影響。

前面說的是電影和遊戲之間的一些區別,那麼電影和電視呢?CCTV電影頻道經常播放電影(此時播放的其實叫做電視電影),從電影到電視播放時需要哪些轉換呢?電視劇等電視節目與電影除了美學方面的區別,還有很多技術方面的區別:電視的顯像管的掃描方式是隔行掃描,而即便是膠片電影,其形成的數字中間片是逐行掃描的;在幀率方面,PAL和SECAM制式是25fps,在美國等一些國家使用的電視掃描頻率是59.94Hz,幀率是29.97fps。下面就主要介紹了個從電影到電視的幀率適應技術:pulldown。

我國和大多數歐洲國家使用的交流電是50Hz,由於採用隔行掃描,在PAL或者SECAM視頻標準中播放是25 frames per second(fps),PAL標準中爲電視節目錄制的電影也是25 frames per second,所以對於每一個film frame,捕獲得到一個video frame。但是對於最初以24frames/s拍攝的電影,在播放時要加快1/24來匹配,這樣就會導致聲音不同步,需要使用音高變換器進行校正。使用pulldown方法可以避免加速的過程。爲了適應mismatch,需要將24電影幀分配在50個PAL fields中。

NTSC制下交流電頻率信號是60Hz,而如果採用間隔掃描下,其實每秒是30張圖片,就是30fps,爲了把信號和載波區分開,頻率降低千分之一,變成了29.97fps。而在電影上播放時,要變成24幀,問題是你不能隨便刪掉開頭的6幀或者結尾的6幀,這樣畫面會變得很不連續,所以就想出一個方法,叫做2:3pulldown,硬是把5幀的內容縮成了4幀第一個電影幀顯示兩次,第二幀顯示3次,第三幀又顯示兩次,按照這個規律循環,這樣29.97*4/5就是23.976fps了。

Reference:

  1. https://www.zhihu.com/question/21081976/answer/34748080
  2. https://www.zhihu.com/search?type=content&q=24%E5%B8%A7
  3. https://en.wikipedia.org/wiki/Telecine#2:2_pulldown
  4. https://wenku.baidu.com/view/b2dcf05de45c3b3567ec8bcf.html
  5. https://www.zhihu.com/question/24245483/answer/145785359
     
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章