다음을 통해 공유


미디어 샘플(Microsoft Media Foundation)

미디어 샘플은 0개 이상의 버퍼의 순서가 지정된 목록을 포함하는 개체입니다. 미디어 샘플은 IMFSample 인터페이스를 노출합니다. 한 샘플에 포함된 데이터의 양은 샘플을 만드는 구성 요소와 버퍼의 데이터 형식에 따라 달라집니다. 압축되지 않은 비디오의 경우 샘플은 일반적으로 단일 비디오 프레임을 보유합니다. 압축되지 않은 오디오의 경우 데이터의 양은 다를 수 있지만 일반적으로 오디오 프레임은 두 개의 샘플에 걸쳐 있지 않습니다. 압축된 데이터의 경우 이러한 지침이 적용되지 않을 수 있습니다.

단일 샘플에는 효율성상의 이유로 여러 버퍼가 포함될 수 있습니다. 예를 들어 ASF 파일에서 비디오 프레임은 종종 여러 ASF 패킷에 분산됩니다. 미디어 원본은 패킷을 여러 버퍼로 읽을 수 있습니다. 원본은 각 조각을 하나의 버퍼로 복사하는 대신 모든 버퍼를 하나의 샘플에 넣습니다. 그런 다음 다운스트림 구성 요소는 작은 버퍼를 하나의 연속 버퍼에 복사할지 여부를 결정할 수 있습니다. 일반적으로 파이프라인 구성 요소를 작성하는 경우 샘플에 둘 이상의 버퍼가 포함될 수 있다고 가정해야 합니다.

이 섹션에서는 다음 항목을 다룹니다.

항목 설명
미디어 샘플 작업 미디어 샘플의 일반적인 동작에 대해 설명합니다.
비디오 샘플 압축되지 않은 비디오 프레임을 보유하도록 설계된 IMFSample 의 특수 구현에 대해 설명합니다.

 

미디어 버퍼

미디어 파운데이션 기본 형식