DirectShow DirectShow 레퍼런스 인터페이스 IAMStreamControl   [목차열람] [주소복사] [슬롯비우기]
IAMStreamControl 인터페이스
 
Microsoft DirectX 9.0

IAMStreamControl 인터페이스

IAMStreamControl 인터페이스는, 필터 위에의 각각의 스트림을 제어하는 메서드를 제공한다. 몇개의 필터 위에의 핀은, 이 인터페이스를 공개하고 있다. 예를 들어,AVI Mux 필터는, 그 입력 핀으로 이 인터페이스를 지원 해,오디오 캡춰 필터WDM 비디오 캡춰 필터는, 각각의 출력 핀으로 이 인터페이스를 지원 한다.

이 인터페이스에 의해, 애플리케이션은, 지정의 시간에 스트림의 온과 오프를 바꿀 수가 있다. 예를 들어, 비디오의 프리뷰중에 오디오 스트림을 오프로 해 음성을 지울 수가 있다. 캡춰 애플리케이션의 경우는, 이 인터페이스를 사용하는 것으로, 캡춰의 정확한 시작 타임과 종료 타임을 지정하거나 캡춰 스트림과 프리뷰 스트림을 개별적으로 제어할 수 있다.

이 인터페이스를 사용하려면 ,IAMStreamControl::StartAt 메서드를 호출해 핀이 데이터 송신을 언제 시작 하는지를 지정해,IAMStreamControl::StopAt 메서드를 호출해, 데이터 송신을 언제 종료하는지를 지정한다. 그 후 필터 그래프 매니저로 IMediaControl::Run 를 호출해, 필터 그래프를 실행한다. 모든 타임은, 그래프의 실행 시작 타임에 상대적이다.

이 인터페이스를 사용하는 경우는, 다음의 제한 사항에 주의 해야 한다.

애플리케이션에 따라서는,ICaptureGraphBuilder2::ControlStream 메서드가 편리한 경우가 있다. 이것은, 이 메서드가 그래프 레벨에서의 스트림 제어를 지원 하기 위한(해), 각 필터와 핀을 열거할 필요가 없기 때문에이다.

필터 개발자의 주의점 : CBaseStreamControl base class는, 이 인터페이스를 처리 한다.

IAMStreamControl 인터페이스는,IUnknown 로부터 계승되는 메서드에 가세해 이하의 메서드를 공개한다.

메서드 설명
StartAt 스트리밍 데이터 송신의 시작 타임을 핀에 통지한다.
StopAt 핀에 대해서 처리와 데이터 송신의 종료 타임을 지정한다.
GetInfo 현재의 스트리밍의 설정에 관한 정보를 얻어온다.

참조

↑TOP