IVideoWindow::p ut_FullScreenMode メソッド (control.h)
[このページに関連付けられている機能 DirectShow は、従来の機能です。 MediaPlayer、IMFMediaEngine、および Media Foundation のオーディオ/ビデオ キャプチャに置き換わりました。 これらの機能は、Windows 10とWindows 11用に最適化されています。 新しいコードでは、可能であれば、DirectShow ではなく Media Foundation で MediaPlayer、IMFMediaEngine、Audio/Video Capture を使用することを強くお勧めします。 Microsoft は、従来の API を使用する既存のコードを、可能であれば新しい API を使用するように書き直すよう提案しています。]
メソッドは put_FullScreenMode
、全画面表示のビデオ レンダリングを有効または無効にします。
構文
HRESULT put_FullScreenMode(
[in] long FullScreenMode
);
パラメーター
[in] FullScreenMode
全画面表示モードを有効または無効にするかどうかを指定するブール値。 次のいずれかの値を指定する必要があります。
値 | 説明 |
---|---|
OATRUE | 全画面表示モードに切り替えます。 |
OAFALSE | 全画面表示モードを無効にします。 (既定値。) |
戻り値
可能な戻り値は次のとおりです。
リターン コード | 説明 |
---|---|
|
フィルターは全画面表示モードをサポートしていません。 |
|
既に要求されたモードです。 |
|
成功しました。 |
|
全画面表示モードをサポートするフィルターが見つかりませんでした。 |
解説
ビデオ レンダラーによっては、アプリケーションがグラフを実行または一時停止するまで、全画面表示モードへの切り替えが表示されない場合があります。 全画面表示モードでは、ユーザーがアプリケーションから離れた場合 (たとえば、Alt + TAB キーを使用)、フィルター グラフ マネージャーは EC_FULLSCREEN_LOST イベントを送信します。
次の解説では、フィルター グラフ マネージャーが全画面表示モードを実装する方法について説明します。 アプリケーション開発者はこの情報を無視できますが、カスタム ビデオ レンダラーを作成する場合に便利な場合があります。
アプリケーションが全画面表示モードに切り替わると、フィルター グラフ マネージャーは、最も効率的に機能するビデオ レンダラーを検索します。 優先順位は次のとおりです。
- 全画面表示モードをネイティブにサポートするフィルター グラフ内のすべてのビデオ レンダラー。
- フィルター グラフ内のビデオ レンダラーで、パフォーマンスに大きなコストをかけずにビデオを全画面表示に拡張できます。
- 全画面表示レンダラー フィルター。
- IVideoWindow をサポートするフィルター グラフ内のすべてのビデオ レンダラー。
2 番目のオプションの場合、Filter Graph Manager は、グラフ内のすべてのビデオ レンダラーで IVideoWindow::GetMaxIdealImageSize と GetMinIdealImageSize を呼び出します。 ディスプレイのサイズがフィルターの報告された範囲に収まる場合は、フィルターが大幅なパフォーマンス コストなしでビデオを拡大できることを示します。
要件
サポートされている最小のクライアント | Windows 2000 Professional [デスクトップ アプリのみ] |
サポートされている最小のサーバー | Windows 2000 Server [デスクトップ アプリのみ] |
対象プラットフォーム | Windows |
ヘッダー | control.h (Dshow.h を含む) |
Library | Strmiids.lib |