다음을 통해 공유


EC_REPAINT

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

비디오 렌더러에는 다시 그려야 합니다.

매개 변수

lParam1

(IUnknown*) 비디오 렌더러의 입력 핀 또는 NULLIPin 인터페이스에 대한 포인터입니다.

lParam2

단계 없음.

기본 작업

lParam1 매개 변수는 비디오 렌더러의 입력 핀을 지정할 수 있습니다. 이 경우 필터 그래프 관리자는 해당 핀에 연결된 출력 핀을 찾아 IMediaEventSink 인터페이스에 대해 쿼리합니다. 출력 핀이 IMediaEventSink를 지원하는 경우 필터 그래프 관리자는 EC_REPAINT 이벤트 코드를 사용하여 IMediaEventSink::Notify 를 호출합니다. 이렇게 하면 업스트림 필터에서 마지막 샘플을 다시 보낼 수 있습니다.

lParam1NULL이거나 핀이 IMediaEventSink를 지원하지 않거나 Notify 메서드가 실패하면 필터 그래프 관리자가 EC_REPAINT 이벤트를 단독으로 처리합니다. 해당 동작은 그래프의 상태에 따라 달라집니다.

  • 실행 중: 이벤트를 무시합니다. (렌더러는 스트림에서 다음 샘플을 받게 됩니다.)
  • 일시 중지됨: 그래프를 현재 위치로 검색하여 필터를 플러시하고 데이터를 다시 큐에 추가합니다.
  • 중지됨: 그래프를 일시 중지하고 중지하여 데이터를 다시 큐에 대기합니다.

기본적으로 필터 그래프 관리자는 이 이벤트를 애플리케이션에 전달하지 않습니다.

설명

비디오 렌더러가 WM_PAINT 메시지를 받고 표시할 데이터가 없을 때 이 메시지를 보냅니다.

요구 사항

요구 사항
헤더
Dshow.h

추가 정보

이벤트 알림 코드

DirectShow의 이벤트 알림