CRI Sofdec  Last Updated: 2026-05-20 13:08 p
ビデオフレームの変換と表示について

PC版Sofdec で使用可能なビデオ出力フォーマットについて説明します。

ビデオフレーム出力フォーマット

Sofdec ライブラリのデコード結果は、独自フォーマットで保持しています。
ビデオフレーム出力バッファーにビデオフレームをコピーする際に、描画に適したフォーマットに変換します。
PC(Windows)プラットフォームではYUV個別バッファーフォーマット(PixelShader用)を推奨します。

ビデオフレーム出力バッファーのサイズとピッチ

ビデオフレーム出力先のYUV個別バッファーはアプリケーションが確保してください。
YUV個別バッファーのサイズはムービーの解像度や描画のフォーマットに依存します。

  • 解像度によってはムービーの横ピクセル数とバッファーの横幅(ピッチ)が異なる場合があります。
  • Sofdec のビデオフレームをコピーする時は、基本的にバッファーポインタ、バッファーサイズ、ピッチの3つのパラメーターが必要となります。
    これらのパラメーターは criManaPlayer_ReferFrame で得られる CriManaFrameInfo 構造体のメンバー CriManaImageBufferInfo を参照してください。

ビデオフレームの出力フォーマット

YUV個別バッファー(Pixel Shader用)
Yバッファー、Uバッファー、Vバッファーの3つのバッファーにビデオフレームを取得します。
criManaPlayer_CopyFrameToBuffersYUV 関数を使用してください。関数引数には CriManaTextureBuffersYUV 構造体を使います。
このフォーマットは、Pixel Shader でYUV→RGBの色変換を行いながら描画するのに適しています。
Pixel Shader はアプリケーションで実装・制御する必要があります。