ASF 파일을 작성하기 위한 필터 그래프 빌드
[이 페이지와 연결된 기능인 DirectShow는 레거시 기능입니다. MediaPlayer, IMFMediaEngine 및 Media Foundation의 오디오/비디오 캡처로 대체되었습니다. 이러한 기능은 Windows 10 및 Windows 11 최적화되었습니다. 가능한 경우 새 코드에서 DirectShow 대신 MediaPlayer, IMFMediaEngine 및 오디오/비디오 캡처를 사용하는 것이 좋습니다. 가능한 경우 레거시 API를 사용하는 기존 코드를 다시 작성하여 새 API를 사용하도록 제안합니다.]
Windows Media 기반 콘텐츠를 만들 때 애플리케이션은 일반적으로 다음 시나리오 중 하나를 사용합니다.
- 다른 형식의 콘텐츠를 Windows 미디어 형식으로 변환하거나 코드 변환합니다.
- Windows 미디어 기반(네이티브 스트림 형식)이 아닌 콘텐츠를 ASF 파일에 삽입합니다.
- 라이브 데이터를 캡처하고 Windows 미디어 형식으로 즉시 인코딩합니다.
ASF 파일 코드 변환
다양한 방법으로 WM ASF 기록기를 사용하여 파일 트랜스코딩 필터 그래프를 작성할 수 있습니다. 가장 쉬운 방법은 WM ASF 기록기를 필터 그래프에 추가한 다음 IGraphBuilder::RenderFile 메서드를 사용하여 그래프를 자동으로 빌드하는 것입니다.
다른 방법은 그래프에 각 필터를 수동으로 추가하고 핀을 연결하는 것입니다. WM ASF 기록기를 추가한 후 기본 프로필이 적합하지 않은 경우 IConfigAsfWriter 메서드를 사용하여 구성하고 WM ASF 기록기 입력 핀을 업스트림 필터의 해당 출력 핀에 연결합니다.
다음 그림에서는 일반적인 WM ASF 기록기 코드 변환 필터 그래프 구성을 보여 줍니다.
ASF 파일에 네이티브 스트림 형식 삽입
기본적으로 WM ASF 기록기 필터는 입력 핀에서 압축되지 않은 오디오 및 비디오 스트림을 예상하며 Windows 미디어 오디오 및 Windows Media 비디오 코덱을 사용하여 스트림을 압축합니다. 그러나 ASF 파일 컨테이너는 모든 형식의 데이터에 사용할 수 있습니다. 디지털 미디어 데이터를 ASF 파일 컨테이너에 배치하면 콘텐츠를 트랜스코딩하지 않고도 메타데이터 및 DRM(디지털 권한 관리)과 같은 ASF에서 제공하는 기능을 추가할 수 있습니다.
Windows 미디어 기반이 아닌 콘텐츠를 포함하는 ASF 파일을 만들려면 애플리케이션은 WM ASF 작성기의 필터 그래프 업스트림 스트림을 압축하고 다음과 같이 IConfigAsfWriter2::SetParam을 호출하여 WM ASF 작성기의 압축 메커니즘을 바이패스해야 합니다.
pConfigAsfWriter2->SetParam(AM_CONFIGASFWRITER_PARAM_DONTCOMPRESS,TRUE,0)
그런 다음 원하는 프로필을 사용하여 필터를 구성합니다. 입력 스트림의 미디어 형식이 프로필의 형식과 정확히 일치해야 합니다. 경우에 따라 입력 스트림의 형식을 검사하고 일치하는 사용자 지정 프로필을 만들어야 할 수 있습니다.
WM ASF 기록기를 업스트림 필터에 연결하는 경우 IGraphBuilder::ConnectDirect 메서드를 사용합니다. 필터의 "바이패스 압축" 모드를 사용하지 않도록 설정되므로 IGraphBuilder::Connect 또는 IGraphBuilder::RenderFile과 같은 "지능형 연결" 메서드를 사용하여 필터를 연결하지 마세요.
디바이스에서 ASF 파일로 직접 캡처
오디오 또는 비디오를 ASF 파일에 직접 캡처할 때 필터 그래프는 사용 중인 캡처 디바이스의 유형에 따라 다음과 유사하게 표시됩니다.
비디오 및 오디오 캡처 그래프를 만드는 방법에 대한 자세한 내용은 다음 topics 참조하세요.
모든 핀이 연결되어 있지 않으면 WM ASF 기록기가 실행되지 않습니다. 기본 시스템 프로필(권장되지 않음) 또는 오디오 및 비디오 스트림이 있는 프로필을 사용하여 WM ASF 기록기를 구성하는 경우 각 스트림에 대한 입력 핀을 만들고 각 핀을 연결해야 합니다. 예를 들어 오디오를 캡처하지 않으려면 오디오 핀이 만들어지지 않도록 비디오 전용 프로필로 필터를 구성해야 합니다.
관련 항목