다음을 통해 공유


DirectShow를 사용하는 이유

[이 페이지와 연결된 기능인 Windows Media Format 11 SDK는 레거시 기능입니다. 원본 판독기 및 싱크 작성기에 의해 대체되었습니다. 원본 판독기 및 싱크 작성기는 Windows 10 및 Windows 11 최적화되었습니다. 가능한 경우 새 코드에서 Windows Media Format 11 SDK 대신 소스 판독기 및 싱크 작성기를 사용하는 것이 좋습니다. 가능한 경우 레거시 API를 사용하는 기존 코드를 다시 작성하여 새 API를 사용하도록 제안합니다.]

애플리케이션이 Windows Media Format SDK 대신 DirectShow를 직접 사용할 수 있는 두 가지 기본 이유가 있습니다. DirectShow 스트리밍 아키텍처의 편의를 위해 하드웨어에 액세스하기 위한 것입니다.

편리성

DirectShow 스트리밍 아키텍처를 사용하면 Windows Media Audio 또는 Windows Media Video 파일을 재생하는 데 몇 가지 메서드 호출만 필요합니다. 파일 만들기도 간소화됩니다. 필터에서 IConfigAsfWriter 인터페이스를 사용하여 프로필을 지정하기만 하면 DirectShow는 스트림을 렌더링하거나 작성하는 데 필요한 구성 요소를 자동으로 로드하고 미디어 데이터 흐름을 전송하고 동기화하는 메커니즘을 제공합니다. DirectShow는 다양한 형식의 콘텐츠를 Windows 미디어 형식으로 변환할 때 특히 유용합니다. 다양한 파일 및 압축 형식을 디코딩하는 DirectShow 필터 그래프를 만든 다음 디코딩된 스트림을 WM ASF 기록 기 필터에 공급할 수 있습니다. 이에 비해 이 SDK의 UncompAVItoWMV 샘플은 압축되지 않은 AVI 파일에서만 작동합니다. 텍스트 스트림 및 임의 데이터 스트림도 DirectShow를 통해 생성 및/또는 렌더링할 수 있지만 이러한 스트림을 처리하기 위한 사용자 지정 DirectShow 필터를 만들어야 할 수 있습니다.

하드웨어에 대한 액세스

DirectShow는 애플리케이션 코드가 1394 DV 카메라, TV 튜너 및 USB 웹캠과 같은 WDM(Windows 드라이버 모델) 기반 하드웨어 디바이스에 액세스할 수 있는 유일한 방법입니다. 애플리케이션이 WDM 기반 하드웨어 디바이스에서 직접 데이터를 캡처하여 Windows 미디어 형식으로 트랜스코딩해야 하고 Windows Media 인코더 SDK가 요구 사항에 맞지 않는 경우 DirectShow가 유일한 대안입니다. DirectShow를 사용하여 Windows용 비디오를 기반으로 레거시 디바이스에 액세스할 수도 있습니다.