VMR 렌더링리스 재생 모드(사용자 지정 할당자-발표자)

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

렌더링 없는 재생 모드에서 VMR은 렌더링을 수행하지 않습니다. 대신 애플리케이션에서 제공하는 사용자 지정 할당자-발표자를 사용합니다. 이 모드는 정교한 비디오 효과가 있는 게임 및 기타 유형의 애플리케이션에 유용합니다. 렌더링되지 않은 재생 모드를 사용하면 애플리케이션이 자체 DirectDraw 표면(VMR-7) 또는 Direct3D 표면(VMR-9)을 만들고 제어하고 프레젠테이션 시 비디오 비트에 액세스할 수 있습니다.

렌더링되지 않는 모드에서 VMR-9는 해당 믹서 구성 요소를 자동으로 로드하지 않습니다.

렌더링리스 재생 모드에서 애플리케이션은 다음 작업을 수행합니다.

  • 재생 창을 관리합니다.
  • DirectDraw 또는 Direct3D 개체와 최종 프레임 버퍼를 할당합니다.
  • 사용 중인 개체의 나머지 재생 시스템에 알 줍니다.
  • 프레임 버퍼를 올바른 시간에 표시합니다.
  • 모든 해상도 모드 변경, 모니터링 변경 및 표면 손실을 처리합니다. 이러한 이벤트의 나머지 재생 시스템에 대해 조언해야 합니다.

VMR은 다음을 수행합니다.

  • 비디오 프레임 표시와 관련된 모든 타이밍을 처리합니다.
  • 애플리케이션 및 나머지 재생 시스템에 품질 제어 정보를 제공합니다.
  • 애플리케이션이 프레임 버퍼 할당을 제공하고 렌더링을 수행하고 있다는 것을 인식하지 못하는 재생 시스템의 업스트림 구성 요소에 일관된 인터페이스를 제공합니다.
  • 렌더링 전에 필요할 수 있는 비디오 스트림의 혼합을 제공합니다.

혼합기에서 디인터레이싱을 수행하므로 할당자-발표자는 항상 디인터레이싱된 프레임을 수신합니다. 자세한 내용은 Deinterlace 기본 설정 설정을 참조하세요.

사용자 지정 할당자-발표자를 제공하는 방법에 대한 자세한 내용은 다음 topics 참조하세요.