MFCreateMPEG4MediaSink 函数 (mfidl.h)

创建用于创作 MP4 文件的媒体接收器。

语法

HRESULT MFCreateMPEG4MediaSink(
  [in]  IMFByteStream *pIByteStream,
  [in]  IMFMediaType  *pVideoMediaType,
  [in]  IMFMediaType  *pAudioMediaType,
  [out] IMFMediaSink  **ppIMediaSink
);

parameters

[in] pIByteStream

指向字节 流的 IMFByteStream 接口的指针。 媒体接收器将 MP4 文件写入此字节流。 字节流必须是可写的,并且需要支持。

[in] pVideoMediaType

指向视频媒体类型的 IMFMediaType 接口的指针。 此类型指定视频流的格式。

此参数可以为 NULL,但如果 pAudioMediaTypeNULL,则不能。

[in] pAudioMediaType

指向音频媒体类型的 IMFMediaType 接口的指针。 此类型指定音频流的格式。

此参数可以为 NULL,但如果 pVideoMediaTypeNULL,则不能。

[out] ppIMediaSink

接收指向 MP4 媒体接收器的 IMFMediaSink 接口的指针。 调用方必须释放接口。

返回值

如果此函数成功,则返回 S_OK。 否则,将返回 HRESULT 错误代码。

注解

MP4 媒体接收器最多支持一个视频流和一个音频流。 pVideoMediaTypepAudioMediaType 参数中提供了初始流格式。 若要使用一个流创建 MP4 文件,请将另一个流类型设置为 NULL。 例如,若要创建仅音频文件,请将 pVideoMediaType 设置为 NULL

创建媒体接收器时,流数是固定的。 接收器不支持 IMFMediaSink::AddStreamSink 方法。

若要创作 3GP 文件,请使用 MFCreate3GPMediaSink 函数。

要求

   
最低受支持的客户端 Windows 7 [仅限桌面应用]
最低受支持的服务器 Windows Server 2008 R2 [仅限桌面应用]
目标平台 Windows
标头 mfidl.h
Library Mf.lib
DLL Mf.dll

另请参阅

MPEG-4 文件接收器

媒体基础函数