After Effects Beta(23.1)原生支援OCIO,引入ACES色彩管理

過去After Effects如果處理影像,需要使用非Adobe的色彩管理引擎,必須要手動安裝OpenColorIO (OCIO),以外掛插件的方式,加入圖層、素材中使用。這種方式不僅設定麻煩,又容易疊床架屋造成效能低落。那為何要使用OCIO,難道Adobe原本內建的色彩管理系統,在功能上有不足嗎?


After Effects原本的色彩管理系統

After Effects原生使用 Adobe Color Management Engine 來處理色彩管理,它是一套基於ICC描述檔架構的色管引擎,如同Adobe其他的軟體一樣(Photoshop、Lightroom、illustrator…)共用這個色彩引擎。關於ICC色彩管理的原理和架構,詳細討論請參考本網站的專文「為何螢幕總和印刷差很多-以ICC色彩描述檔為架構的色彩管理系統介紹與分析

ICC架構的色彩轉換,通常需要知道輸入與輸出的兩個描述檔。
第一是來源的影像原本的色彩空間/色域,第二則是轉換目標的色彩空間/色域;轉換引擎(黃色示意)透過兩個色彩描述檔的資訊,就能將來源影像色彩轉換至目標上。

Adobe旗下的兩大動態影像軟體After Effects與Premiere Pro,多數使用者都在用最傳統色彩管理方式預覽編輯畫面:編輯時「編輯環境Timeline、Project」的色彩空間,就是「輸出的目標」的色彩空間,軟體中編輯的影像無須轉換,直接輸出給系統、顯示卡,呈現道你們螢幕上。以Premiere Pro為例,SDR專案預設的空間是帶Gamma 2.4的Rec.709,因此,在多數使用者工作的環境中(Gamma接近2.2的sRGB環境),其實看到編輯室窗內的影像都是不正確的,中間調略為被提高。關於Premiere Pro的色彩管理設定,可以參考本網站專文【Premiere Pro色彩管理指引】

Premiere Pro 撰文時發布的23.0.0版本,
提供Rec.709/SDR與Rec.2100 PQ與HLG/HDR的編輯時間軸

相較於Premiere Pro強硬規定使用Rec.709 Gamma 2.4標準 (新版本支援HDR時間軸,使用Rec.2100 PQ色彩空間),After Effects相對有彈性,可以自行設定不同的色彩空間作為編輯專案Working Space使用,另外還帶有一個「Use Display Color Management」使用螢幕色彩管理工具來將工作空間的色彩正確轉換至顯示器的色域上。理論上,AE是可以不同的工作色彩空間,例如較大的ACES色彩空間作為中介空間,配合螢幕色管工具,做到即時預覽。

After Effects 撰文時發布的22.6.0版本,使用者可自訂編輯時間軸的色彩空間

開啟Use Display Color Management能讓After Effects讀取系統上關於顯示器的ICC Profile設定,將正在編輯中的預覽視窗畫面,透過顯示器描述檔做正確的色彩轉換

為何要使用ACES

「編輯環境」與「輸出的目標」使用一致的色彩空間這件事情,在小規模製作的工作流程中問題不大,因為多數輸出目標不是Rec.709就是sRGB(而這兩者又非常相近,導致即便錯用也只會造成影像些許的對比度差異),到了中大型的製作項目中,After Effects扮演的腳色解許只是影片合成、剪輯過程中的一的軟體,並不是最終輸出使用的程式,因此,被限制住的「編輯環境」色彩空間造成工作流程上的不順利。

另外,素材輸入與輸出,在After Effects雖然能處理色彩管理/色彩轉換,但實際操作的工具極其有限,如果不透過OCIO等外掛,僅靠軟體原生的工具,那多半只能從ICC色彩設定或尋求特定Look Up Table, LUT來處理素材的色彩變換。而無論是ICC或是LUT工具,其基本概念都是A to B的轉換,但有時候影像編輯過程中,我們並不確定最後輸出的目標色域為何,有時候會希望將編輯過程定義在一個單純為了計算用的廣色域、通用、標準化的色彩空間中,用來保留輸入與輸出的彈性。

目前在電影產業的中,大家通用的標準算是奧斯卡學院/電影藝術與科學學院推出的「Academy Color Encoding System (ACES)」這個編碼系統,它定義了一個能夠讓不同編輯人員互相交換、編輯影像,而會不改變色彩的標準工作流程。在遵循ACES的規範下,編輯製作的影像可以預期在不同的裝置上,都能獲得一致的影像效果。最讓人興奮之處應該是ACES針對不同的輸入設備與輸出裝置,都有非常完整的預先參數設定,例如不同攝影機、不同底片的檔案特性,不同SDR或HDR顯示裝置的顯示標準,這些設定讓使用者操作時可以快速切入ACES的工作流程中,獲得良好、一致的預期效果。

內建Adobe Color Management Engine不足之處

After Effects雖然可以自行設定不同的色彩空間作為編輯專案Working Space使用,但實際使用過的朋友應該會發現系統極其不穩定,非常容易導致軟體閃退。
另外作為ICC架構的色彩管理轉換,影像的色彩計算依賴不同的ICC描述檔才能進行,但很多影視使用的影像標準是沒有辦法取得ICC描述檔的,雖然理想上也許能夠製作,但現實上很難執行。如果轉換是基於LUT那勢必也是A to B硬性變換,很多時候根本不知道要從哪裡獲得這個LUT檔案。

ICC描述檔架構的色管引擎過去其實並不常用於主流的動態影像的剪輯、調光軟體,也許是因為主導的產業別不同(ICC協會與印刷、攝影、材料行業較緊密),也許是原本設計的架構上不太適合用於動態渲染的計算上,所以過去主流剪輯軟體多半使用自建的色彩管理系統來處理素材間的色彩轉換。


After Effects Beta(23.1) OCIO

在最新的After Effects Beta(23.1)中,新增了對於OCIO的原生支援,內部的色彩管理引擎可以從Adobe Color Management Engine更換為OCIO color Management Engine。OpenColorIO,簡稱OCIO。

After Effects Beta(23.1)預設的色彩管理設定,與舊版相似
After Effects Beta(23.1)更換為OCIO的色彩管理設定,可以看到多了很多選項

After Effects Beta(23.1)中,使用OCIO color Management Engine時,可以發現有設計三種預設情境;標準ACES 1.0.3,ACES CG v1.0與ACES Studio v1.0,還有一組Custom手動。主要的差異在於預設不同的工作色彩空間Working Color Space與不同的顯示色彩空間Display Color Space。(BTW在本篇文章編輯過程中,更新版本23.2已經更新預設情境至ACES 1.2與1.3版本)

因為ACES最早用於After Effects上的功能,主要是影片動畫製作時,統一交換檔案的色彩格式之用,所以可以發現OCIO的設定都是圍繞著動畫製作不同的步驟、功能來標示的。以ACES 1.03這個設定來說,可以留意到選擇這個配置後工作空間會出現特別的標示選項,例如Color Picking、Timing、Compositing、Data、Matt Paint、Rendering等等動畫功能的標示。

更改至ACES CG v1.0這個設定,可以發現到與前一個設定重複的部分選項,例如Color Picking、Timing、Compositing、Data等等,另外也多了一些其他製作CG過程可能會用到的步驟。在此我們可以知道,這個OCIO Configuration功能就是提供入門使用者,一個快速選擇/判斷工作空間應該要設置成怎樣的工具,實際上內容是重複的。

選項例如Compositing-log: ACEScct,後墜標示了使用ACEScct這個模式,它是ACES的log對數版本,而T表示帶有暗部尾端Toe帶有提升曲線的效果,關於ACEScct詳細的說明可以goolge查詢這邊不做贅述。

如果你已經知道自己該用ACES2065-1、ACEScc、ACEScct或ACEScg作為工作空間,那可以直接手動選擇,OCIO Configuration唯一不同的是還多了一些非ACES標準的交換檔案空間可選,例如電影院CIE-XYZ或是常見的sRGB。

 Input Transform/解釋素材Interpret Footage

過去使用Adobe Color Management Engine下,解釋素材Interpret Footage功能的用處不多,素材標誌的色彩空間沒有被軟體正確辨識是常態,但即便知道不正卻,多半也無法透過軟體內建功能更改,多半只能透過外部方式尋求轉換(例如轉換LUT、或外掛OCIO)。

原生支援OCIO後,自然在解釋素材這部分也引入了ACES Input Transform眾多的輸入設備標準參數,讓未來編輯、設定素材時,不僅能替素材檔案選擇到適合的色彩空間/色域作為匹配,還能得益於ACES的色彩科學,獲得正確的顯示姓果。

顯示端變換Display Color Space

ACES工作流程中,常使用ACES/ACEScg/ACEScc/ACEScct等色彩空間作為中介工作空間,這些色彩空間身定義是非常非常大的色彩空間,甚至ACES使用的AP0中有,很大部分數值是超出人類可見的CIE1931色彩刺激值僅作運算使用,因此可以理解並沒有辦法直接輸出給顯示器來呈現影像。

不過無須擔心,因為ACES對於輸出變換,有一套非常靈活的設計,主要由Reference Rendering Transform,RRT加上Output Device Transform,ODT兩部分所控制,詳細的內容這邊不贅述。總而言之,針對不同設備、不同特性的顯示器,ACES系統有能力將編輯的數值正確、一致的轉換到裝置上呈現最佳化的影像。

下圖中可以看到在不同預設ACES,ACES CG與ACES Studio中,已經替使用者設想可能會用到的輸出設備,例如標準sRGB螢幕,符合HDTV標準的Rec.1886曲線Rec.709色域顯示器,或是Rec.2100 HLG/Rec.2100 PQ的HDR顯示器,在預設組中都能夠直接選取使用。

圖層效果Layer effects 

當然,就如同過去OCIO作為一款外掛,原本的FX使用方式,也就是套用在圖層上的做法也被保留下來。OCIO提供了兩種色彩轉換功能,一套是使用LUT or CDL作為色彩變換的OCIO FILE TRANSFORM,另一套則是基於色彩引擎計算的OCIO COLOR SPACE TRANSFORM。

小結

考慮到AE支援OCIO的Beta版早在2022/10/19就發布,這篇文章其實拖稿了超過一個月,原因是原本想要將AE的色彩管理架構簡單的說明,再配合新的OCIO一起來並列比較,可能對使用者會比較理解這些色彩管理架構是在做什麼,又對於平日的專案有什麼幫助,有沒有需要使用。

不過問題就是關於After Effects基礎的色彩管理教學,我一直沒有認真撰寫,所以根本不是一小篇幅介紹AE原生內見OCIO就能夠解釋的清楚的,最後放棄只做簡單的功能呈現與說明。

但凡事總是要有個起頭,After Effects基礎的色彩管理教學應該很快會在本網站分享給大家 🙂

%d