METransformInputStreamStateChanged
METransformInputStreamStateChanged 이벤트는 입력 스트림 상태 또는 미디어 형식을 변경해야 했음을 나타냅니다.
전송되는 경우
디바이스 MFT 출력이 변경되면 관련 입력 스트림 상태도 변경해야 할 수 있습니다. 이 조건이 발생하면 디바이스 MFT는 METransformInputStreamStateChanged 이벤트를 생성합니다.
매개 변수
매개 변수 | Description |
---|---|
입력 스트림 인덱스 | 입력 스트림 인덱스 는 IMFMediaEvent의 특성 저장소에서 설정해야 합니다. |
설명
이 이벤트에 대한 응답으로 DTM(디바이스 변환 관리자)은 지정된 입력 스트림 인덱스로 디바이스 MFT에서 GetInputStreamPreferredState 를 호출합니다. 디바이스 MFT는 기본 상태 및 미디어 형식을 반환합니다.
DTM은 devproxy 출력 스트림에서 요청된 mediatype을 설정한 다음 요청된 스트리밍 상태로 전환합니다. 이 경우 DTM은 디바이스 MFT 입력 스트림에서 동일한 mediatype을 설정하고 요청된 상태로 전환합니다.
이 프로세스 중에 오류가 발생하면 SetInputStreamStatedwStatus 매개 변수에 발생한 오류가 포함됩니다. 디바이스 MFT는 오류를 DTM에 적절하게 전파해야 합니다.
이 이벤트는 지정된 스트림이 중지되거나 실행 중일 때 생성될 수 있습니다. 스트림이 중지된 상태인 경우 Device Transform Manager는 해당 디바이스 MFT 입력 스트림에 대한 기본 형식을 쿼리하고 Devproxy의 출력으로 설정합니다. 성공하면 DTM은 디바이스 MFT의 입력에서 동일한 기본 미디어 형식을 설정합니다.
스트리밍하는 동안 Device MFT가 이 이벤트를 생성하면 추가 샘플 배달이 중지되고 디바이스 MFT 입력에서 기본 설정 미디어 형식이 요청됩니다. 이 미디어 형식은 Devproxy의 출력과 디바이스 MFT의 입력에 설정됩니다. 스트림은 Devproxy 출력 스트림에서 자동으로 다시 시작되고 샘플은 디바이스 MFT 입력 스트림으로 전달됩니다. 새 샘플이 도착하면 Device MFT는 관련 출력 스트림에 샘플을 제공합니다.