다음을 통해 공유


IOverlayNotify 인터페이스(strmif.h)

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

인터페이스는 IOverlayNotify 렌더링 창에 대한 변경 알림과 함께 디코더와 같은 업스트림 필터를 제공합니다. 여기에는 색상표 변경 알림, 색 키 및 창 위치 및 표시되는 영역(클리핑) 변경 내용이 포함됩니다.

대부분의 소프트웨어 비디오 디코더를 사용하면 비디오 렌더러가 미디어 샘플을 렌더러의 입력 핀에 있는 IMemInputPin 인터페이스에 전달하여 생성하는 압축 해제된 이미지를 그릴 수 있습니다.

그러나 일부 비디오 디코딩 필터(일반적으로 하드웨어 압축 해제 보드)는 VGA 커넥터를 사용하여 이미지 자체의 그리기를 처리합니다. 이러한 필터는 IMemInputPin을 사용할 필요가 없지만 대신 렌더러 입력 핀에서 제공하는 IOverlay 인터페이스를 사용할 수 있습니다. 이 인터페이스를 통해 디코더는 창 위치 또는 크기가 변경되거나 색 키와 팔레트를 설치하고 변경하기 위해 현재 시스템 팔레트가 변경될 때 알림을 받을 수 있습니다.

자체 그리기를 수행하는 디코더는 및 IOverlayNotify2 인터페이스를 구현 IOverlayNotify 해야 합니다. 렌더러는 이 인터페이스를 사용하여 창 크기 또는 위치가 변경되거나 시스템 팔레트가 변경되거나 다른 색 키가 사용될 때마다 디코더에 알립니다. 디코더는 렌더러의 입력 핀에서 IOverlay::Advise 메서드를 호출하여 콜백을 설정해야 합니다. 콜백이 설정되면 렌더러는 적절한 이벤트가 발생할 때 디코더의 IOverlayNotify 메서드를 호출합니다. 콜백을 취소하려면 IOverlay::Unadvise 메서드를 사용합니다.

비디오 렌더러는 이 인터페이스에서 메서드를 호출하는 유일한 필터입니다. 이 작업은 기본 비디오 렌더러에 의해 자동으로 수행됩니다. 대체 비디오 렌더러를 작성하는 경우 필터가 IOverlay 를 지원하고 이 인터페이스가 IOverlay::Advise 호출에서 필터에 전달되는 경우 이 인터페이스에서 메서드를 사용해야 합니다.

상속

IOverlayNotify 인터페이스는 IUnknown 인터페이스에서 상속됩니다. IOverlayNotify 에는 다음과 같은 유형의 멤버도 있습니다.

메서드

IOverlayNotify 인터페이스에는 이러한 메서드가 있습니다.

 
IOverlayNotify::OnClipChange

OnClipChange 메서드는 창의 표시되는 영역이 변경되었다는 알림을 제공합니다. 이 메서드에서 반환하기 전에 표시되는 영역의 변경 내용을 반영하도록 오버레이 하드웨어를 업데이트해야 합니다.
IOverlayNotify::OnColorKeyChange

OnColorKeyChange 메서드는 창의 색 키가 변경되었다는 알림을 제공합니다.
IOverlayNotify::OnPaletteChange

OnPaletteChange 메서드는 창의 팔레트가 변경되었다는 알림을 제공합니다.
IOverlayNotify::OnPositionChange

OnPositionChange 메서드는 위치가 변경되었다는 알림을 제공합니다.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows 2000 Professional[데스크톱 앱만]
지원되는 최소 서버 Windows 2000 Server[데스크톱 앱만]
대상 플랫폼 Windows
헤더 strmif.h(Dshow.h 포함)