다음을 통해 공유


스트림 제어

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

VMR의 입력 핀에서 IVMRVideoStreamControl 인터페이스를 사용하면 애플리케이션 및 업스트림 필터가 Z 순서 및 VMR 입력 스트림의 활성 상태를 포함하여 믹서 구성 요소의 동작을 제어할 수 있습니다. 이 인터페이스는 핀에 노출되지만 VMR의 믹서 구성 요소에서 작동하므로 믹서가 로드될 때만 사용할 수 있으며, 이는 VMR이 여러 입력 스트림을 처리할 때입니다. 업스트림 필터는 SetColorKeyGetColorKey 메서드를 사용하여 소스 색 키를 제어합니다. 이러한 메서드를 사용하면 비디오를 통해 애니메이션 오버레이와 같은 효과를 사용할 수 있습니다. 색 키를 애니메이션 스트림의 배경색으로 설정하기만 하면 VMR이 해당 스트림을 다른 비디오 스트림과 혼합합니다. 애플리케이션은 색 키를 디코더와 같은 업스트림 필터에서 사용하는 값과 다른 값으로 변경하지 않도록 주의해야 합니다.

필터는 GetStreamActiveStateSetStreamActiveState 메서드를 사용하여 믹서에게 지정된 핀에서 입력 데이터를 예상할지 여부를 알려줍니다. 예를 들어 Line21 디코더는 이러한 메서드를 사용하여 해당 데이터가 스트림에 있는 경우에만 Line21 데이터에 대한 VMR의 입력 핀을 활성화합니다. 핀을 비활성 상태로 설정하면 믹서가 이미지를 작성하기 전에 지정된 핀의 데이터를 기다리지 않도록 지시합니다.