다음을 통해 공유


IVideoWindow::p ut_FullScreenMode 메서드(control.h)

[이 페이지와 연결된 기능인 DirectShow는 레거시 기능입니다. MediaPlayer, IMFMediaEngine 및 Media Foundation의 오디오/비디오 캡처로 대체되었습니다. 이러한 기능은 Windows 10 및 Windows 11 최적화되었습니다. 가능한 경우 새 코드가 DirectShow 대신 Media Foundation에서 MediaPlayer, IMFMediaEngine오디오/비디오 캡처를 사용하는 것이 좋습니다. 가능한 경우 레거시 API를 사용하는 기존 코드를 다시 작성하여 새 API를 사용하도록 제안합니다.]

메서드는 put_FullScreenMode 전체 화면 비디오 렌더링을 사용하거나 사용하지 않도록 설정합니다.

구문

HRESULT put_FullScreenMode(
  [in] long FullScreenMode
);

매개 변수

[in] FullScreenMode

전체 화면 모드를 사용하거나 사용하지 않도록 설정할지 여부를 지정하는 부울 값입니다. 다음 값 중 하나여야 합니다.

설명
오트루 전체 화면 모드로 전환합니다.
OAFALSE 전체 화면 모드를 사용하지 않도록 설정합니다. 이 속성의 기본값입니다.

반환 값

가능한 반환 값은 다음과 같습니다.

반환 코드 설명
E_NOTIMPL
필터는 전체 화면 모드를 지원하지 않습니다.
S_FALSE
이미 요청된 모드에 있습니다.
S_OK
성공.
VFW_E_NO_FULLSCREEN
전체 화면 모드를 지원하는 필터를 찾을 수 없습니다.

설명

비디오 렌더러에 따라 애플리케이션이 그래프를 실행하거나 일시 중지할 때까지 전체 화면 모드로 전환이 표시되지 않을 수 있습니다. 전체 화면 모드에서 사용자가 애플리케이션에서 전환하는 경우(예: ALT + TAB 사용) Filter Graph Manager는 EC_FULLSCREEN_LOST 이벤트를 보냅니다.

다음 설명에서는 Filter Graph Manager가 전체 화면 모드를 구현하는 방법을 설명합니다. 애플리케이션 개발자는 이 정보를 무시할 수 있지만 사용자 지정 비디오 렌더러를 작성하는 경우 유용할 수 있습니다.

애플리케이션이 전체 화면 모드로 전환되면 Filter Graph Manager는 가장 효율적으로 작동하는 비디오 렌더러를 검색합니다. 기본 설정 순서로 다음과 같습니다.

  1. 기본적으로 전체 화면 모드를 지원하는 필터 그래프의 모든 비디오 렌더러입니다.
  2. 상당한 성능 비용 없이 비디오를 전체 화면으로 확장할 수 있는 필터 그래프의 모든 비디오 렌더러입니다.
  3. 전체 화면 렌더러 필터입니다.
  4. IVideoWindow를 지원하는 필터 그래프의 모든 비디오 렌더러입니다.
첫 번째 옵션의 경우 Filter Graph Manager는 그래프의 모든 비디오 렌더러에서 IVideoWindow::get_FullScreenMode 호출합니다. 대부분의 렌더러가 E_NOTIMPL 반환하며, 이는 필터가 기본적으로 전체 화면 모드를 지원하지 않음을 나타냅니다. 렌더러가 E_NOTIMPL 같지 않은 값을 반환하는 경우 Filter Graph Manager에서 해당 값을 사용합니다.

두 번째 옵션의 경우 Filter Graph Manager는 그래프의 모든 비디오 렌더러에서 IVideoWindow::GetMaxIdealImageSizeGetMinIdealImageSize 를 호출합니다. 디스플레이 크기가 필터의 보고된 범위 내에 있으면 필터가 상당한 성능 비용 없이 비디오를 확장할 수 있음을 나타냅니다.

참고 그래프가 중지되면 Filter Graph Manager는 이러한 메서드를 호출하기 전에 각 렌더러를 일시 중지합니다. 이렇게 하면 많은 렌더러가 중지되는 동안 이러한 값을 확인할 수 없으므로 필요한 리소스를 초기화할 수 있습니다.
 
이전 하드웨어를 제외하고 두 번째 옵션은 일반적으로 성공합니다. 세 번째 옵션은 전체 화면 렌더러 필터를 사용하여 필요한 경우 그래프에 추가하는 것입니다. 네 번째 옵션은 단순히 그래프에서 IVideoWindow를 지원하는 첫 번째 렌더러를 찾고 성능에 관계없이 비디오를 늘이는 것입니다.

요구 사항

   
지원되는 최소 클라이언트 Windows 2000 Professional[데스크톱 앱만]
지원되는 최소 서버 Windows 2000 Server[데스크톱 앱만]
대상 플랫폼 Windows
헤더 control.h(Dshow.h 포함)
라이브러리 Strmiids.lib

추가 정보

오류 및 성공 코드

IVideoWindow 인터페이스

IVideoWindow::get_FullScreenMode