Интерфейс IMFSample (mfobjects.h)
Представляет образец носителя, который является объектом контейнера для данных мультимедиа. Для видео пример обычно содержит один видеокадр. Для звуковых данных пример обычно содержит несколько примеров звука, а не один образец звука.
Пример носителя содержит ноль или больше буферов. Каждый буфер управляет блоком памяти и представлен интерфейсом 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.
При вызове CopyAllItems, наследуемого от интерфейса IMFAttributes , в imfSample время выборки, длительность и флаги не копируются в целевой пример. Эти значения необходимо скопировать в новый пример вручную.
- Windows XP с пакетом обновления 2 (SP2) и более поздних версий.
- Windows XP Media Center Edition 2005 с установленным KB900325 (Windows XP Media Center Edition 2005) и KB925766 (накопительный пакет обновления для Windows XP Media Center Edition за октябрь 2006 г.).
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows Vista [классические приложения | Приложения UWP] |
Минимальная версия сервера | Windows Server 2008 [классические приложения | Приложения UWP] |
Целевая платформа | Windows |
Header | mfobjects.h (включая Mfidl.h) |