簡單說,10bit影片是指一種影片編碼的特徵,意思是每個顏色通道用10個bit來表達。這樣,每個顏色通道的色彩級數從8bit的256級提高到了1024級,就可以更細緻地表達顏色。實際體驗上,更細緻的顏色分級意味著漸變色更細膩。在8bit編碼下,有些時候一些漸變色塊由於色彩變化範圍很小而面積很大,容易導致一端到另一端總共只出現了很少的幾種顏色,這就使得畫面看上去不是漸變色帶而是幾塊顏色,這種現象叫做banding。10bit由於顏色級數是8bit的4倍,色塊就不容易出現,同時由於相鄰顏色區別更小,人眼也難以看出色塊之間的界限。(從wiki偷來的banding效果圖,左邊是banding,中間是dithering,右邊是高bit數下的效果)雖然直觀上感覺10bit比8bit多佔用25%的資料量,但實際上在實踐中10bit往往能帶來更高的壓縮率。這是由於10bit更能準確地描述顏色,提升了信噪比。例如為了解決banding,8bit編碼技術可以透過一種稱為dither(抖動)的方法,也就是在色塊邊緣混入細碎的相鄰色的色點,來模糊色塊邊緣。但是由於這些色點的存在大幅提高了畫面的複雜度,產生了許多冗餘資訊量。由於8bit必須採用這些技術來提高視覺觀感,所以8bit編碼往往要引入大量冗餘資訊,而10bit不需要dither也能實現一樣的畫面感受,所以往往10bit編碼出來的影片大小小於同等質量的8bit影片。(一張關於各種dithering演算法的圖)有人可能關心10bit編碼並沒有意義,因為終端使用者的螢幕可能只有6bit或者8bit。這不會使10bit變得沒有意義,因為最終在輸出階段畫面會經由輸出硬體或渲染軟體抖動。這樣就能夠在6bit/8bit的裝置上實現類似10bit的輸出效果。當然10bit不是沒有缺點。首先,計算機系統處理資料的單位往往是byte,也就是8bit。使用10bit,可能會浪費一部分硬體資料傳輸和處理能力,使得處理效能低於8bit編碼。這也是為什麼一直以來使用8bit的原因。同時,該技術較新,很多硬體和軟體尚沒有提供較好的支援,使得應用起來往往存在播放困難、消耗太多資源等等問題。
簡單說,10bit影片是指一種影片編碼的特徵,意思是每個顏色通道用10個bit來表達。這樣,每個顏色通道的色彩級數從8bit的256級提高到了1024級,就可以更細緻地表達顏色。實際體驗上,更細緻的顏色分級意味著漸變色更細膩。在8bit編碼下,有些時候一些漸變色塊由於色彩變化範圍很小而面積很大,容易導致一端到另一端總共只出現了很少的幾種顏色,這就使得畫面看上去不是漸變色帶而是幾塊顏色,這種現象叫做banding。10bit由於顏色級數是8bit的4倍,色塊就不容易出現,同時由於相鄰顏色區別更小,人眼也難以看出色塊之間的界限。(從wiki偷來的banding效果圖,左邊是banding,中間是dithering,右邊是高bit數下的效果)雖然直觀上感覺10bit比8bit多佔用25%的資料量,但實際上在實踐中10bit往往能帶來更高的壓縮率。這是由於10bit更能準確地描述顏色,提升了信噪比。例如為了解決banding,8bit編碼技術可以透過一種稱為dither(抖動)的方法,也就是在色塊邊緣混入細碎的相鄰色的色點,來模糊色塊邊緣。但是由於這些色點的存在大幅提高了畫面的複雜度,產生了許多冗餘資訊量。由於8bit必須採用這些技術來提高視覺觀感,所以8bit編碼往往要引入大量冗餘資訊,而10bit不需要dither也能實現一樣的畫面感受,所以往往10bit編碼出來的影片大小小於同等質量的8bit影片。(一張關於各種dithering演算法的圖)有人可能關心10bit編碼並沒有意義,因為終端使用者的螢幕可能只有6bit或者8bit。這不會使10bit變得沒有意義,因為最終在輸出階段畫面會經由輸出硬體或渲染軟體抖動。這樣就能夠在6bit/8bit的裝置上實現類似10bit的輸出效果。當然10bit不是沒有缺點。首先,計算機系統處理資料的單位往往是byte,也就是8bit。使用10bit,可能會浪費一部分硬體資料傳輸和處理能力,使得處理效能低於8bit編碼。這也是為什麼一直以來使用8bit的原因。同時,該技術較新,很多硬體和軟體尚沒有提供較好的支援,使得應用起來往往存在播放困難、消耗太多資源等等問題。