關於 Azure 遠端轉譯
Azure 遠端轉譯 (ARR) 是一項服務,可讓您在雲端中轉譯高品質的互動式 3D 內容,並將其實時串流至裝置,例如 HoloLens 2。
未系結的裝置對於轉譯複雜模型具有有限的計算能力。 不過,對於許多應用程式而言,以任何方式減少視覺效果逼真度是無法接受的。 下列螢幕快照會比較模型的完整詳細數據,以及已使用一般內容建立工具所減少的模型:
縮減的模型包含大約 20 萬個三角形(包括詳細的內部部分),而原始模型中超過 1800 萬個三角形。
遠端轉譯 藉由將轉譯工作負載移至雲端中的高端 GPU 來解決此問題。 雲端裝載的圖形引擎會轉譯影像、將其編碼為視訊串流,並將該數據流編碼至目標裝置。
Mermaid 轉譯
在大部分的應用程式中,只轉譯複雜模型是不夠的。 您也需要自訂UI來為使用者提供功能。 Azure 遠端轉譯 不會強制您使用專用的 UI 架構,而是支援混合式轉譯。 這表示您可以使用慣用的方法,在裝置上轉譯元素,例如 MRTK。
在畫面結尾,Azure 遠端轉譯 接著會自動結合本機轉譯的內容與遠端影像。 它甚至可以使用正確的遮蔽來執行這項操作。
多 GPU 轉譯
有些模型太複雜,無法以互動式幀速率轉譯,即使是高端 GPU 也一樣。 特別是在產業視覺效果中,這是常見的問題。 若要進一步推送限制,Azure 遠端轉譯 可以將工作負載分散到多個 GPU。 結果會合併成單一影像,讓程式對使用者完全透明。
高階結構
下圖說明遠端轉譯架構:
映射產生的完整周期牽涉到下列步驟:
- 用戶端:框架設定
- 您的程式代碼:處理使用者輸入,場景圖形會更新
- ARR 程式代碼:場景圖形更新和預測的頭部姿勢會傳送至伺服器
- 伺服器端:遠端轉譯
- 轉譯引擎會將轉譯分散到可用的 GPU
- 多個 GPU 的輸出會組成單一映像
- 影像會編碼為視訊串流,並傳送回用戶端
- 用戶端:最終化
- 您的程式代碼:已轉譯選擇性的本機內容(UI、標記...)
- ARR 程式代碼:在「目前」上,本機轉譯的內容會自動與視訊串流合併
網路等待時間是主要問題。 傳送要求和接收結果之間的轉折時間,通常對於互動式幀速率而言太長。 因此,一個以上的框架隨時可能處於飛行中。