Функция MFCreateADTSMediaSink (mfidl.h)
Создает экземпляр приемника мультимедиа потока аудиоданных (ADTS).
Синтаксис
HRESULT MFCreateADTSMediaSink(
[in] IMFByteStream *pTargetByteStream,
[in] IMFMediaType *pAudioMediaType,
[out] IMFMediaSink **ppMediaSink
);
Параметры
[in] pTargetByteStream
Указатель на интерфейс IMFByteStream потока байтов. Приемник мультимедиа записывает поток ADTS в этот поток байтов. Поток байтов должен быть записываемым.
[in] pAudioMediaType
Указатель на интерфейс IMFMediaType . Этот параметр задает тип носителя для потока ADTS. Тип носителя должен содержать следующие атрибуты.
attribute | Значение |
---|---|
MF_MT_MAJOR_TYPE | MFMediaType_Audio |
MF_MT_SUBTYPE | MFAudioFormat_AAC |
MF_MT_AAC_PAYLOAD_TYPE | 0 (необработанный AAC) или 1 (ADTS) |
[out] ppMediaSink
Получает указатель на интерфейс IMFMediaSink . Вызывающий объект должен освободить интерфейс .
Возвращаемое значение
Если эта функция выполняется успешно, она возвращает S_OK. В противном случае возвращается код ошибки HRESULT .
Комментарии
Приемник мультимедиа ADTS преобразует аудиопакеты AAC в поток ADTS. Основное использование этого приемника мультимедиа — потоковая передача ADTS по сети. Выходные данные — это не звуковой файл, а поток аудиокадров с заголовками ADTS.
Приемник мультимедиа может принимать необработанные кадры AAC (MF_MT_AAC_PAYLOAD_TYPE = 0) или пакеты ADTS (MF_MT_AAC_PAYLOAD_TYPE = 1). Если входные данные являются необработаннымИ AAC, приемник мультимедиа вставляет заголовок ADTS в начале каждого звукового кадра. Если входными данными являются пакеты ADTS, приемник мультимедиа передает пакеты в поток байтов без изменений.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows 8 [только классические приложения] |
Минимальная версия сервера | Windows Server 2012 [только классические приложения] |
Целевая платформа | Windows |
Header | mfidl.h |
DLL | Mf.dll |