CBaseControlVideo.GetVideoPaletteEntries メソッド

[このページに関連付けられている機能 DirectShow は、従来の機能です。 MediaPlayerIMFMediaEngine、および Media Foundation のオーディオ/ビデオ キャプチャに置き換わりました。 これらの機能は、Windows 10とWindows 11用に最適化されています。 新しいコードでは、可能であれば、DirectShow ではなく Media Foundation で MediaPlayerIMFMediaEngineAudio/Video Capture を使用することを強くお勧めします。 Microsoft は、従来の API を使用する既存のコードを、可能であれば新しい API を使用するように書き直すよう提案しています。]

メソッドは GetVideoPaletteEntries 、ビデオのパレット エントリの範囲を取得します。

構文

HRESULT GetVideoPaletteEntries(
   long StartIndex,
   long Entries,
   long *pRetrieved,
   long *pPalette
);

パラメーター

Startindex

0 から始まる開始パレットエントリ。

エントリ

必要なエントリの数。

pRetrieved

取得した色の数へのポインター。

pPalette

色の出力バッファーへのポインター。

戻り値

成功した場合は NOERROR を返し、ビデオ サンプルにカラー パレットがない場合はVFW_E_NO_PALETTE_AVAILABLE、使用可能なメモリが不足している場合はE_OUTOFMEMORY、 StartIndex が無効な場合はE_INVALIDARG、パレットに色がない場合はS_FALSEを返します。

解説

このメンバー関数は、ユーザーによって割り当てられた配列としてビデオの現在のパレットを返します。 一貫性を維持するには、WIN32 PALETTEENTRY 構造体のメンバーを使用して、 RGBQUAD 構造体のメンバーではなく色を返します (パラメーターは LONG です)。 メモリは呼び出し元によって割り当てられるので、それぞれを順番にコピーするだけです。 要求されたエントリの数と開始位置オフセットの両方が有効であることを確認します。 エントリの数が 0 に評価された場合は、S_FALSEコードを返します。

要件

要件
ヘッダー
Ctlutil.h (Streams.h を含む)
ライブラリ
Strmbase.lib (小売ビルド);
Strmbasd.lib (デバッグ ビルド)

関連項目

CBaseControlVideo クラス