OpenGL でレンダリングするために平面 YUVA 画像を転送する最も効率的な方法は何ですか?
現在、各フレームで 4 つの個別の PBO からアップロードする 4 つの個別のテクスチャ (Y、U、V、A) を使用しています。ただし、少数のテクスチャで大量のデータを転送する方がはるかに効率的です。たとえば、YUV422 を 1 つのパックされたテクスチャに転送すると、同じデータを 3 つ (Y、U、V) の個別のテクスチャに転送するよりも最大 50% 高速です。
この問題について私が考えたことは、(Y、A) 用と (U、V) 用の 2 つの配列テクスチャを使用できるかどうかということです。
私が検討したもう 1 つの方法は、データを PBO にコピーして転送するときに、平面からパックに変換することですが、これには CPU のオーバーヘッドが多少かかります。
助言がありますか?
注: dim(Y) == dim(A) && dim(U) == dim(V) && dim(Y) != dim(U)。