得益于攝像頭和顯示技術的進步,現在可以在 8K 分辨率和每秒 60 幀 (FPS) 下截取視頻片段和玩游戲。RED Digital Cinema、Nikon 和 Canon 等主要的領先多媒體公司已經為消費者和專業市場推出了 8K60 攝像頭。
在顯示器方面,8K60 采用最新的 HDMI 2.1 標準,現已得到廣泛應用,支持游戲顯示器和智能電視。雖然 8K60 提供 驚人的畫質和清晰度,但在傳輸和存儲時消耗更多數據會帶來巨大的成本。
因此,快速編解碼器在彌合傳感器和顯示器之間的差距方面至關重要。為了促進 8K60 的廣泛應用,NVIDIA Ada Lovelace GPU 架構提供了 NVENC 加速視頻編碼性能的引擎,同時保持高畫質。(NVIDIA RTX 4090 和 4080 分別提供兩個和三個 NVENC,而 NVIDIA RTX 6000 Ada Lovelace (L40) 也配備了 NVENC。)
實際上,與前幾代產品相比,使用單個 GPU 時,這可以將編碼性能提高一倍或三倍,從而實現 8K60 視頻編碼及以上。
本文將介紹如何使用分幀編碼 (SFE) 技術利用 NVIDIA Ada Lovelace 架構中的多個可用 NVENC 來實現 8K60 視頻編碼性能。我們將探討這種 SFE 技術如何在 4K 和 8K 分辨率下工作,以及如何通過 NVENCODE API 啟用該技術。最后,我們將介紹一些基準測試,這些基準測試顯示了這種技術在實際應用中的巨大性能優勢。
分幀編碼
SFE 是一種技術,它通過分割幀并使用 NVIDIA Ada Lovelace GPU 中存在的多個 NVENC 引擎對每個部分幀進行編碼,從而在對單個視頻序列進行編碼時能夠提高效率。這一技術已集成在 NVIDIA 視頻編解碼器 SDK 12.0 中。SFE 能夠在可用的 NVENC 中有效地分割編碼工作(圖 1)。然而,到目前為止,SFE 是基于編碼預設、調整信息和分辨率隱式啟用的,以支持 HEVC 或 AV1 中的 8K 實時編碼。(請注意,H.264 不支持 8K。)如需了解更多詳情,請參閱 借助 AV1 和 NVIDIA Ada Lovelace 架構提高視頻質量和性能。

通過 NVIDIA Video Codec SDK 12.1,您可以啟用或禁用 SFE 功能。這意味著 SFE 現在可以在不受分辨率、預設和調整信息限制的情況下,利用 NVIDIA Video Codec SDK 12.1 中的兩個甚至三個 NVENC,在 NVIDIA RTX 4090 和 NVIDIA RTX 6000 Ada 架構 上使用。這使得應用程序在使用雙路或三路 SFE 對單個視頻序列進行編碼時,能夠將編碼性能提高一倍甚至三倍。在對 8K 視頻進行編碼時,這種性能提升尤其重要,因為這是一個對性能要求極高的應用場景。
4K 和 8K 分辨率下的 SFE
SFE 的應用方式可能會因分辨率和所選的視頻編解碼器而異。在關閉 SFE 的情況下使用 HEVC 時,只需使用單個切片。在使用雙向或三向 SFE 時,會分別使用兩個或三個切片。這些切片可水平地分離每幀。它適用于 4K 和 8K 分辨率(圖 2)。此外,在對分辨率高達 4K 的視頻進行編碼時,這同樣適用于 AV1.但是,AV1 使用圖塊而不是切片來創建這些獨立的幀分區。

使用 AV1 編碼 8K 視頻時,請考慮標準定義的最大圖塊分辨率為 4096 x 2304 像素。這意味著在編碼 8K 視頻時,每個幀將被拆分為四個圖塊,每個圖塊的分辨率為四分之一(3840 x 2160 像素)。使用 SFE 時,為了實現與 HEVC 相同的性能優勢,每個圖塊將進一步水平拆分,分別為 8 個或 12 個圖塊,雙向和三向 SFE (圖 3)。

表 1 總結了每個編解碼器和輸入視頻分辨率所需的部分幀數和分辨率。
編解碼器 | 視頻分辨率 | 部分幀數和分辨率 | |||||
無 SFE | 雙路 SFE | 三路 SFE | |||||
HEVC | 4K 分辨率 | 1x 3840 x 2160 | 2x 3840 x 1080 | 3x 3840 x 720 | |||
8K 分辨率 | 1x 7680 x 4320 | 2x 7680 x 2160 | 3x 7680 x 1440 | ||||
AV1 | 4K 分辨率 | 1x 3840 x 2160 | 2x 3840 x 1080 | 3x 3840 x 720 | |||
8K 分辨率 | 4 臺 3840 x 2160 顯示器 | 8x 3840 x 1080 | 12x 3840 x 720 |
啟用分幀編碼
隨著 NVIDIA Omniverse 開發者套件的 API 更新,視頻編解碼器 SDK 12.1 在最新的 NVENCODER API 標頭中引入了 NV_ENC_SPLIT_ENCODE_MODE
。這一功能可以實現對 SFE(分割幀編碼)的控制,如表 2 所示。現在,使用隱式或顯式模式配置 SFE 變得更加簡單。通過 NV_ENC_SPLIT_AUTO_MODE
和 NV_ENC_SPLIT_AUTO_FORCED_MODE
,您可以輕松地采用 SFE 的隱式模式。如需了解更多詳情,請參閱借助 AV1 和 NVIDIA Ada Lovelace 架構提高視頻質量和性能。
其余選項是指顯式 SFE 配置。這些選項包括強制禁用 SFE、雙向或三路。要強制禁用 SFE,需要使用具有適當數量 NVENC 引擎的 NVIDIA GPU.
NV_ENC_SPLIT_ENCODE_MODE | SFE 類型 | 說明 |
NV_ENC_SPLIT_AUTO_MODE (0) | 自動模式(默認) | 雙路 SFE 將根據輸入視頻分辨率和編碼參數隱式觸發 |
NV_ENC_SPLIT_AUTO_Forced_MODE (1) | 強制自動模式 | |
NV_ENC_SPLIT_Two_Forced_MODE (2) | 強制雙向 SFE | 無論輸入視頻和編碼參數如何,都將使用相應的 SFE 配置 |
NV_ENC_SPLIT_THREE_Forced_MODE (3) | 強制三路 SFE | |
NV_ENC_SPLIT_DISABLE_MODE (15) | 強制取消 SFE |
NV_ENC_SPLIT_ENCODE_MODE
選項最新的視頻編解碼器 SDK 編碼示例AppEncMultiInstance
還重點介紹了如何向應用程序添加顯式 SFE 控制。
性能和壓縮效率基準測試
測試了多種配置和輸入 8K 視頻,如表 3 所示。
基準測試配置 | |
GPU | GPU RTX 6000 Ada 生成(3 個 NVENC) |
輸入視頻 | 7 個視頻(4 個游戲視頻和 3 個自然視頻) |
編碼器 | HEVC 和 AV1 |
預設 | P1 (最快)、P4 (中等)和 P7 (最慢) |
調優信息 | 低延遲 (LL) 和高質量 (HQ) |
比特率 | 15、20、60、150 和 250 Mbps |
執行了兩種類型的基準測試:
轉碼性能:轉碼的目的是為了盡可能減少系統瓶頸(包括文件 I/O、CPU 與 GPU 之間的內存復制)的影響。為了測試轉碼性能,原始的 8K 視頻被預先以非常高的比特率編碼。在轉碼過程中,NVDEC 負責視頻解碼。而在沒有使用分割、雙向 SFE 和三路 SFE 的情況下,視頻由一到三個 NVENC 進行重新編碼。HEVC 和 AV1 的性能結果分別展示在圖 4 和圖 5 中。
壓縮效率損失:通過在多個 NVENC 上拆分編碼工作,預計會產生一定的壓縮效率損失。為了測量這種損失,我們使用了 BD-RATE 指標,在多個基準配置中比較了單一編碼、雙向 SFE 和三路 SFE 之間的壓縮效率。該指標反映了在相同目標質量下的平均壓縮效率損失。在這些基準測試中,目標質量指標為 PSNR。HEVC 和 AV1 的壓縮效率損失結果分別展示在圖 6 和圖 7 中。


使用雙向 SFE 時,HEVC 和 AV1 的平均性能可提升約 1.8 倍。三路 SFE 可實現 HEVC 高達 2.95 倍、AV1 高達 2.31 倍的性能提升。在實踐中,這可通過 NVIDIA RTX 6000 Ada Generation 實現 8K60 視頻編碼,同時使用 HEVC 和 AV1,并在中等預設 (P4) 下提供 LL 和 HQ 調優信息。
假設使用一到三個 NVENC 和一個 NVDEC,則 NVDEC 可能會成為轉碼 8K 時的瓶頸。因此,最快的預設 (P1) 可能會導致 FPS 平均最高達到約 120 FPS.這是單個 NVDEC 在 8K 下實現的平均最大性能。
只要 NVDEC 不是瓶頸,您就能看到更好的擴展效果。對于速度較慢的預設,例如 P4 和 P7,情況就是如此,與 P1 相比,性能擴展效果要好得多。


通常情況下,使用 BD-RATE (PSNR) 測量質量時,雙向 SFE 的壓縮效率損失預計不會超過 2%,三向 SFE 的壓縮效率損失預計不會超過 4%.對于總部調整信息而言,此損失比 LL 更明顯。此外,根據執行的基準測試,與 AV1 相比,使用 HEVC 時,此損失略為明顯。
盡管與性能權衡相比,這種壓縮效率損失仍然相對較低,但要由用戶來確定所需的用例是否受益于更高的性能或壓縮效率。無論如何,NVENCODE API 不僅可以完全控制 8K 的 SFE,而且還可以控制更低的分辨率。
總結
分幀編碼 (SFE) 是一項革命性功能,它能在 8K60 及更高分辨率下實現視頻編碼。此功能讓用戶能夠利用 NVIDIA Ada Lovelace 架構 GPU 中的多個 NVENC 強大功能,對單個視頻序列進行編碼。本文探討了雙向 SFE(使用兩個 NVENC)和三路 SFE(使用三個 NVENC)的性能優勢。NVIDIA 視頻編解碼器 SDK 提供了對 SFE 的顯式控制,以便進行優化定制。
?