IMFSampleOutputStream 인터페이스(mfobjects.h)
미디어 샘플을 바이트 스트림에 씁니다.
상속
IMFSampleOutputStream 인터페이스는 IUnknown 인터페이스에서 상속됩니다. IMFSampleOutputStream 에는 다음과 같은 유형의 멤버도 있습니다.
메서드
IMFSampleOutputStream 인터페이스에는 이러한 메서드가 있습니다.
IMFSampleOutputStream::BeginWriteSample 스트림에 미디어 샘플을 쓰는 비동기 요청을 시작합니다. |
IMFSampleOutputStream::EndWriteSample 스트림에 미디어 샘플을 쓰는 비동기 요청을 완료합니다. |
설명
쓰기 가능한 바이트 스트림은 필요에 따라 이 인터페이스를 구현할 수 있습니다.
이 인터페이스를 사용하면 호출자가 IMFByteStream::BeginWrite 메서드를 사용하여 형식화되지 않은 데이터의 Blob을 쓰는 대신 쓰기 위해 미디어 샘플을 바이트 스트림으로 보낼 수 있습니다. 바이트 스트림은 미디어 샘플에 포함된 정보를 사용하여 데이터를 작성하는 방법을 최적화할 수 있습니다. 예를 들어 네트워크를 통해 미디어 데이터를 보내는 바이트 스트림은 타임스탬프를 기반으로 최적화할 수 있습니다.
이 인터페이스에 대한 포인터를 얻으려면 바이트 스트림 개체에서 QueryInterface 를 호출합니다.
IMFSampleOutputStream을 인터페이스로 노출하는 IMFByteStream의 구현은 다음 요구 사항을 준수해야 합니다.
- 두 인터페이스의 모든 쓰기는 항상 정확히 동일한 바이트 스트림 개체로 이동합니다.
- IMFSampleOutputStream과 IMFByteStream 모두에 대한 현재 위치는 항상 동일해야 합니다. 예를 들어 IMFSampleOutputStream 에 쓰면 IMFByteStream의 현재 위치도 업데이트됩니다.
- BeginWriteSample 및 EndWriteSample을 사용하여 샘플을 작성하려면 샘플의 모든 버퍼에서 버퍼가 샘플에 저장되는 순서대로 데이터를 작성하여 샘플을 직렬화해야 합니다. ( IMFSample::GetBufferByIndex 를 사용하여 인덱스 값으로 개별 버퍼를 가져옵니다.) 복사된 총 바이트는 모든 버퍼에서 작성된 바이트 수여야 합니다.
요구 사항
지원되는 최소 클라이언트 | Windows 8 [데스크톱 앱 | UWP 앱] |
지원되는 최소 서버 | Windows Server 2012 [데스크톱 앱 | UWP 앱] |
대상 플랫폼 | Windows |
헤더 | mfobjects.h(Mfidl.h 포함) |