Instance Property
rotationOverride
收到的畫面已經是正的(發送端轉正),這只是 App 額外指定的顯示角度。 填法(layoutMode)以轉向後的寬高計算;和鏡像合成同一個 transform(先轉再鏡像)。
@MainActor var rotationOverride: VideoRotation? { get set }Discussion
Metal:畫之前把圖片轉向,下一幀起生效。
SampleBuffer:轉整個 layer,90°/270° 時 layer 寬高對調,設值當下生效。
App 在 main 寫;Metal 路徑在送幀的執行緒讀,所以存在鎖裡。