다음을 통해 공유


IMFSample 인터페이스(mfobjects.h)

미디어 데이터의 컨테이너 개체인 미디어 샘플을 나타냅니다. 비디오의 경우 샘플에는 일반적으로 하나의 비디오 프레임이 포함됩니다. 오디오 데이터의 경우 샘플에는 일반적으로 단일 오디오 샘플이 아닌 여러 오디오 샘플이 포함됩니다.

미디어 샘플에는 버퍼가 0개 이상 포함되어 있습니다. 각 버퍼는 메모리 블록을 관리하며 IMFMediaBuffer 인터페이스로 표시됩니다. 샘플에는 여러 버퍼가 있을 수 있습니다. 버퍼는 순서가 지정된 목록에 유지되고 인덱스 값으로 액세스됩니다. 버퍼가 없는 빈 샘플을 갖는 것도 유효합니다.

상속

IMFSample 인터페이스는 IMFAttributes에서 상속됩니다. IMFSample 에는 다음과 같은 유형의 멤버도 있습니다.

메서드

IMFSample 인터페이스에는 이러한 메서드가 있습니다.

 
IMFSample::AddBuffer

샘플의 버퍼 목록 끝에 버퍼를 추가합니다.
IMFSample::ConvertToContiguousBuffer

여러 버퍼가 있는 샘플을 단일 버퍼가 있는 샘플로 변환합니다.
IMFSample::CopyToBuffer

샘플 데이터를 버퍼에 복사합니다. 이 메서드는 샘플의 모든 버퍼에서 유효한 데이터를 순서대로 연결합니다.
IMFSample::GetBufferByIndex

인덱스별로 샘플에서 버퍼를 가져옵니다.
IMFSample::GetBufferCount

샘플의 버퍼 수를 검색합니다.
IMFSample::GetSampleDuration

샘플의 기간을 검색합니다.
IMFSample::GetSampleFlags

샘플과 연결된 플래그를 검색합니다. 현재는 플래그가 정의되어 있지 않습니다.
IMFSample::GetSampleTime

샘플의 프레젠테이션 시간을 검색합니다.
IMFSample::GetTotalLength

샘플의 모든 버퍼에서 유효한 데이터의 총 길이를 검색합니다. 길이는 IMFMediaBuffer::GetCurrentLength 메서드에서 검색한 값의 합계로 계산됩니다.
IMFSample::RemoveAllBuffers

샘플에서 모든 버퍼를 제거합니다.
IMFSample::RemoveBufferByIndex

샘플에서 지정된 인덱스의 버퍼를 제거합니다.
IMFSample::SetSampleDuration

샘플의 기간을 설정합니다.
IMFSample::SetSampleFlags

샘플과 연결된 플래그를 설정합니다. 현재는 플래그가 정의되어 있지 않습니다.
IMFSample::SetSampleTime

샘플의 프레젠테이션 시간을 설정합니다.

설명

새 미디어 샘플을 만들려면 MFCreateSample을 호출합니다.

참고  

IMFSample에서 IMFAttributes 인터페이스에서 상속된 CopyAllItems를 호출하면 샘플 시간, 기간 및 플래그가 대상 샘플에 복사되지 않습니다. 이러한 값을 새 샘플에 수동으로 복사해야 합니다.

 
이 인터페이스는 Windows Media Format 11 SDK 재배포 가능 구성 요소가 설치된 경우 다음 플랫폼에서 사용할 수 있습니다.
  • WINDOWS XP SP2(서비스 팩 2) 이상
  • KB900325(Windows XP Media Center Edition 2005) 및 KB925766(Windows XP Media Center Edition용 2006년 10월 업데이트 롤업)이 설치된 Windows XP Media Center Edition 2005.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows Vista [데스크톱 앱 | UWP 앱]
지원되는 최소 서버 Windows Server 2008 [데스크톱 앱 | UWP 앱]
대상 플랫폼 Windows
헤더 mfobjects.h(Mfidl.h 포함)

추가 정보

IMFAttributes

미디어 파운데이션 인터페이스

미디어 샘플

샘플 특성