Функция MFCreateMPEG4MediaSink (mfidl.h)
Создает приемник мультимедиа для создания MP4-файлов.
Синтаксис
HRESULT MFCreateMPEG4MediaSink(
[in] IMFByteStream *pIByteStream,
[in] IMFMediaType *pVideoMediaType,
[in] IMFMediaType *pAudioMediaType,
[out] IMFMediaSink **ppIMediaSink
);
Параметры
[in] pIByteStream
Указатель на интерфейс IMFByteStream потока байтов. Приемник мультимедиа записывает MP4-файл в этот поток байтов. Поток байтов должен быть записываемым и поддерживать поиск.
[in] pVideoMediaType
Указатель на интерфейс IMFMediaType типа видеосредства. Этот тип задает формат видеопотока.
Этот параметр может иметь значение NULL, но не иметь значение , если pAudioMediaType имеет значение NULL.
[in] pAudioMediaType
Указатель на интерфейс IMFMediaType звукового типа мультимедиа. Этот тип задает формат аудиопотока.
Этот параметр может иметь значение NULL, но не иметь значение , если pVideoMediaType имеет значение NULL.
[out] ppIMediaSink
Получает указатель на интерфейс IMFMediaSink приемника мультимедиа MP4. Вызывающий объект должен освободить интерфейс .
Возвращаемое значение
Если эта функция выполняется успешно, она возвращает S_OK. В противном случае возвращается код ошибки HRESULT .
Комментарии
Приемник мультимедиа MP4 поддерживает не более одного видеопотока и одного аудиопотока. Исходные форматы потока задаются в параметрах pVideoMediaType и pAudioMediaType . Чтобы создать MP4-файл с одним потоком, присвойте другому типу потока значение NULL. Например, чтобы создать файл только для звука, задайте для параметра pVideoMediaTypeзначение NULL.
Количество потоков фиксируется при создании приемника мультимедиа. Приемник не поддерживает метод IMFMediaSink::AddStreamSink .
Для создания файлов 3GP используйте функцию MFCreate3GPMediaSink .
Требования
Минимальная версия клиента | Windows 7 [только классические приложения] |
Минимальная версия сервера | Windows Server 2008 R2 [только классические приложения] |
Целевая платформа | Windows |
Header | mfidl.h |
Библиотека | Mf.lib |
DLL | Mf.dll |