MCI_SETVIDEO コマンド

MCI_SETVIDEO コマンドは、ビデオ再生に関連付けられている値を設定します。 デジタル ビデオおよび VCR デバイスは、このコマンドを認識します。

このコマンドを送信するには、次のパラメーターを指定して mciSendCommand 関数を呼び出します。

MCIERROR mciSendCommand(
  MCIDEVICEID wDeviceID, 
  MCI_SETVIDEO, 
  DWORD dwFlags, 
  (DWORD) (LPMCI_GENERIC_PARMS) lpSetVideo
);

パラメーター

wDeviceID

コマンド メッセージを受信する MCI デバイスのデバイス識別子。

dwFlags

MCI_NOTIFYMCI_WAIT、または MCI_TEST。 これらのフラグの詳細については、「 待機、通知、およびテスト フラグ」を参照してください。

lpSetVideo

MCI_GENERIC_PARMS構造体へのポインター。 (拡張コマンド セットを持つデバイスは、この構造体をデバイス固有の構造に置き換える場合があります)。

戻り値

成功した場合は 0 を返し、それ以外の場合はエラーを返します。

解説

"digitalvideo" デバイスの種類では、次の追加フラグが使用されます。

MCI_DGV_SETVIDEO_ALG

lpSetVideo によって識別される構造体の lpstrAlgorithm メンバーには、ビデオ圧縮アルゴリズムの名前を含むバッファーのアドレスが含まれています。 圧縮アルゴリズムは、後続の MCI_RESERVE または MCI_RECORD コマンドで使用されます。 使用可能なアルゴリズムはデバイスに依存します。

指定したアルゴリズムが現在のファイル形式と互換性がない場合、ファイル形式はアルゴリズムの既定の形式に変更されます。

MCI_DGV_SETVIDEO_CLOCKTIME

MCI_DGV_SETVIDEO_OVERと共に使用する場合、 は時間がミリ秒単位で指定され、絶対時間であることを示します。 (今回は、ワークスペースの再生に関する手順ではありません。)

MCI_DGV_SETVIDEO_INPUT

MCI_DGV_SETVIDEO_BRIGHTNESSMCI_DGV_SETVIDEO_COLORMCI_DGV_SETVIDEO_CONTRASTMCI_DGV_SETVIDEO_GAMMA、MCI_DGV_SETVIDEO_SHARPNESS、またはMCI_DGV_SETVIDEO_TINTを変更して、入力信号に影響を与え、記録される内容を変更します。 可能であれば、入力を監視する場合の既定値です。

MCI_DGV_SETVIDEO_ITEM

ビデオ定数は、lpSetVideo によって識別される構造体の dwItem メンバーで指定されます。 定数は、設定されている値を識別します。 このフラグを使用して、次の定数を指定できます。

MCI_AVI_SETVIDEO_DRAW_PROCEDURE

lpSetVideo で識別される構造体の dwValue メンバーに、新しい描画プロシージャ アドレスが指定されます。 デバイスがアイドル状態の場合にのみ、新しい描画プロシージャを指定できます。 このフラグは、MCIAVI デジタル ビデオ ドライバーによってのみ認識されます。 文字列コマンド インターフェイスには、このフラグに相当するものはありません。

MCI_AVI_SETVIDEO_PALETTE_COLOR

lpSetVideo によって識別される構造体の dwOver メンバーと dwValue メンバーに、新しいパレットの色が指定されます。 dwOver メンバーは、変更する色のパレット インデックスを指定し、dwValue メンバーは新しい色を RGB 値として指定します。 この定数を使用する場合は、 MCI_DGV_SETVIDEO_OVER フラグと MCI_DGV_SETVIDEO_VALUE フラグを MCI_DGV_SETVIDEO_ITEM で指定する必要もあります。 このフラグは、MCIAVI デジタル ビデオ ドライバーによってのみ認識されます。

MCI_AVI_SETVIDEO_PALETTE_HALFTONE

既定のパレットではなく、ハーフトーン パレットを使用する必要があることを示します。 このフラグは、MCIAVI デジタル ビデオ ドライバーによってのみ認識されます。

MCI_DGV_SETVIDEO_BITSPERPEL

ピクセルあたりのビット数は、lpSetVideo によって識別される構造体の dwValue メンバーで指定されます。 キャプチャまたは記録されたデータを保存するために、ピクセルあたりのビット数が使用されます

MCI_DGV_SETVIDEO_BRIGHTNESS

ビデオの明るさレベルは、lpSetVideo によって識別される構造体の dwValue メンバーの係数として指定されます。

MCI_DGV_SETVIDEO_COLOR

ビデオの色の彩度レベルは、lpSetVideo によって識別される構造体の dwValue メンバーの係数として指定されます。

MCI_DGV_SETVIDEO_CONTRAST

ビデオ コントラスト レベルは、lpSetVideo によって識別される構造体の dwValue メンバーの係数として指定されます。

MCI_DGV_SETVIDEO_FRAME_RATE

フレーム レートは、lpSetVideo によって識別される構造体の dwValue メンバーで指定されます。 レートは、1 秒あたり 1000 回のフレームの単位で指定されます。 たとえば、1 秒あたり 29.97 フレームは 29970 として指定されます。

MCI_DGV_SETVIDEO_GAMMA

ガンマ補正指数値は、lpSetVideo によって識別される構造体の dwValue メンバーで指定されます。 ガンマ補正は、プレゼンテーション ソースでエンコードされた強度と表示される明るさの間のマッピングを調整します。 値は、指数部に 1000 を掛けた値です。 たとえば、2200 は 2.2 の指数を示します。 値 1000 は、ガンマ補正を適用しない 1 の指数を示します。

MCI_DGV_SETVIDEO_KEY_COLOR

キーの色は、lpSetVideo によって識別される構造体の dwValue メンバーで指定されます。 キーの色は RGB 値です。

MCI_DGV_SETVIDEO_KEY_INDEX

lpSetVideo で識別される構造体の dwValue メンバーに、キー インデックス値が指定されています。 index パラメーターは、物理パレット インデックスです。

MCI_DGV_SETVIDEO_PALHANDLE

パレット ハンドルは、lpSetVideo によって識別される構造体の dwValue メンバーで指定されます。 パレット ハンドルは、下位ワードに含まれています。 デジタルビデオデバイスは、このコマンドで渡されたパレットを解放しないでください。 アプリケーションは、デバイスを閉じてから解放する必要があります。 このフラグは、パレットを使用するデバイスでのみサポートされます。 この指定したパレット ハンドルが 0 の場合は、既定のパレットが使用されます。

MCI_DGV_SETVIDEO_SHARPNESS

ビデオの鮮明度の値は、lpSetVideo によって識別される構造体の dwValue メンバーの係数として指定されます。

MCI_DGV_SETVIDEO_SOURCE

ビデオ入力のソースを指定する定数は、lpSetVideo によって識別される構造体の dwValue メンバーで指定されます。 次の定数が定義されています。

  • MCI_DGV_SETVIDEO_SRC_NTSC: NTSC テレビ。
  • MCI_DGV_SETVIDEO_SRC_PAL: PAL テレビ。
  • MCI_DGV_SETVIDEO_SRC_RGB: RGB ビデオ。
  • MCI_DGV_SETVIDEO_SRC_SECAM: SECAM テレビ。
  • MCI_DGV_SETVIDEO_SRC_SVIDEO: S-Video。

MCI_DGV_SETVIDEO_STREAM

ビデオ ストリームは、lpSetVideo で識別される構造体の dwValue メンバーで指定されます。 整数値は、ワークスペースから再生されるビデオ ストリームを指定します。 ストリームが指定されておらず、ファイル形式で既定のストリームが定義されていない場合は、最初の物理的にインターリーブされたビデオ ストリームが再生されます。

MCI_DGV_SETVIDEO_TINT

ビデオの濃淡の値は、lpSetVideo によって識別される構造体の dwValue メンバーの要素として指定されます。 通常、この調整は、多くのカラー テレビ セットの濃淡コントロールの後にモデル化されます。250 は緑、750 は赤、0 (または 1000) は青として定義されます。 名目値は常に 500 です。

MCI_DGV_SETVIDEO_OUTPUT

MCI_DGV_SETVIDEO_BRIGHTNESSMCI_DGV_SETVIDEO_COLORMCI_DGV_SETVIDEO_CONTRASTMCI_DGV_SETVIDEO_GAMMAMCI_DGV_SETVIDEO_SHARPNESS、またはMCI_DGV_SETVIDEO_TINT フラグが変更され、表示されるシグナルのみに影響し、記録される内容には影響しません。 可能であれば、ファイルを監視する場合の既定値です。

MCI_DGV_SETVIDEO_OVER

遷移長パラメーターは、lpSetVideo によって識別される構造体の dwOver メンバーに含まれています。 切り替えの長さは、変更に要する時間 (現在の時刻形式) を指定します。 このフラグを使用しない場合、変更はすぐに行われます。

MCI_DGV_SETVIDEO_QUALITY

lpSetVideo によって識別される構造体の lpstrQuality メンバーには、ビデオ品質を記述するバッファーのアドレスが含まれています。 バッファー内のテキスト文字列は、ビデオ圧縮アルゴリズムの特性を指定します。

MCI_DGV_SETVIDEO_ALG フラグを使用して、指定したアルゴリズムの品質記述子を選択できます。 このフラグを省略すると、現在のアルゴリズムが使用されます。

使用できるアルゴリズムと記述子の名前は、デバイスによって異なります。 各デバイスには、使用可能なアルゴリズムのドキュメントと、該当する記述子名の説明が用意されています。 MCI_QUALITY コマンドでは、追加の記述子名を定義できます。 すべてのデバイスは、記述子 "low"、"medium"、"high" をサポートしています。 既定値はドライバー固有です。

MCI_DGV_SETVIDEO_RECORD

録画にビデオ データを含めるか除外するかを指定します。 MCI_SET_ONと組み合わせると、ビデオ データが記録されます。 MCI_SET_OFFと組み合わせると、ビデオ データは除外されます。 既定値にはビデオ データが含まれます。

MCI_DGV_SETVIDEO_SRC_NUMBER

ビデオ ソースの数値は、lpSetVideo によって識別される構造体の dwSourceNumber メンバーで指定されます。 MCI_DGV_SETVIDEO_VALUEで指定された型の入力が複数ある場合、値によって入力が選択されます。 このフラグは常に MCI_DGV_SETVIDEO_SOURCEで使用する必要があります。 ただし 、MCI_DGV_SETVIDEO_VALUE を省略した場合、指定したソース番号は、 MCI_LIST コマンドで指定したとおりに使用する絶対ソースを示します。

MCI_DGV_SETVIDEO_STILL

指定されたアルゴリズム名または品質値は、静止画像に適用されます。

すべてのデバイス ドライバーは、圧縮がないことを意味する "none" のアルゴリズムをサポートする必要があります。 既定値です。 この場合、デジタル ビデオ デバイスは、静止画像を RGB デバイスに依存しないビットマップ (DIB) として保存します。

MCI_DGV_SETVIDEO_VALUE

値は、lpSetVideo によって識別される構造体の dwValue メンバーに含まれます。 値の意味は、 MCI_DGV_SETVIDEO_ITEM フラグで指定します。

MCI_SET_OFF

ビデオ出力を無効にします。 デジタル ビデオ デバイスの場合、ビデオを無効にすると、 MCI_PUT コマンドによって定義された変換先の四角形のピクセル (または既定の現在のウィンドウのクライアント領域) が単色に設定されますが、フレーム バッファーには影響しません。 必要に応じて、 MCI_WINDOW コマンドを使用してウィンドウを非表示にすることができます。 ワークスペースでも外部入力でも、ビデオのソースはフレーム バッファーに新しい画像を保存し続ける可能性がありますが、ビデオが有効になるまで表示されません。 アプリケーションでは MCI_SETVIDEO コマンドを使用してこの機能を制御する必要があります。ただし、デジタル ビデオ デバイスでは引き続きこのフラグをサポートする必要があります。 開いた後の既定値はオンです。

MCI_SET_ON

ビデオ出力を有効にします。

デジタル ビデオ デバイスの場合、 lpSetVideo パラメーターは MCI_DGV_SETVIDEO_PARMS 構造体を指します。

"vcr" デバイスの種類では、次の追加フラグが使用されます。

MCI_VCR_SETVIDEO_RECORD

ビデオ録画をオンまたはオフに設定します。 次のいずれかのフラグと組み合わせて使用します。

  • MCI_SET_ON。 ビデオ録画オン。
  • MCI_SET_OFF。 ビデオ録画をオフにします。 ビデオ録画をオフにする前に、最初にアセンブル記録をオフにする ( MCI_VCR_SET_ASSEMBLE_RECORD フラグをオフにした 状態でMCI_SET コマンドを使用する) 必要がある場合があります。

MCI_TRACK

lpSetVideo によって識別される構造体の dwTrack メンバーは、コマンドの影響を受けるトラックを指定します。

MCI_VCR_SETVIDEO_SOURCE

ビデオ ソースを設定し、 MCI_VCR_SETVIDEO_TO フラグと共に使用する必要があります。

MCI_VCR_SETVIDEO_MONITOR

ビデオ ソース モニターを設定し、MCI_VCR_SETVIDEO_TO フラグと共に使用する必要があります。

MCI_VCR_SETVIDEO_TO

lpSetVideo によって識別される構造体の dwTo メンバーには、次のいずれかの定数が含まれています。

**MCI\_VCR\_SRC\_TYPE\_TUNER**
**MCI\_VCR\_SRC\_TYPE\_LINE**
**MCI\_VCR\_SRC\_TYPE\_AUX**
**MCI\_VCR\_SRC\_TYPE\_GENERIC**
**MCI\_VCR\_SRC\_TYPE\_MUTE**
**MCI\_VCR\_SRC\_TYPE\_OUTPUT**
**MCI\_VCR\_SRC\_TYPE\_RGB**
**MCI\_VCR\_SETVIDEO\_NUMBER**

lpSetVideo によって識別される構造体の dwNumber メンバーには、使用するビデオ入力 (dwTo メンバーで指定された型) が含まれています。

VCR デバイスの場合、 lpSetVideo パラメーターは MCI_VCR_SETVIDEO_PARMS 構造体を指します。

必要条件

要件
サポートされている最小のクライアント
Windows 2000 Professional [デスクトップ アプリのみ]
サポートされている最小のサーバー
Windows 2000 Server [デスクトップ アプリのみ]
ヘッダー
Mmsystem.h (Windows.h を含む)

関連項目

Mci

MCI コマンド