MFCreate3GPMediaSink 函数 (mfidl.h)
创建用于创作 3GP 文件的媒体接收器。
语法
HRESULT MFCreate3GPMediaSink(
[in] IMFByteStream *pIByteStream,
[in] IMFMediaType *pVideoMediaType,
[in] IMFMediaType *pAudioMediaType,
[out] IMFMediaSink **ppIMediaSink
);
参数
[in] pIByteStream
指向字节 流的 IMFByteStream 接口的指针。 媒体接收器将 3GP 文件写入此字节流。 字节流必须是可写的,并且必须寻求支持。
[in] pVideoMediaType
指向视频媒体类型的 IMFMediaType 接口的指针。 此类型指定视频流的格式。
此参数可以为 NULL,但如果 pAudioMediaType 为 NULL,则不能。
[in] pAudioMediaType
指向音频媒体类型的 IMFMediaType 接口的指针。 此类型指定音频流的格式。
此参数可以为 NULL,但如果 pVideoMediaType 为 NULL,则不能。
[out] ppIMediaSink
接收指向 3GP 媒体接收器的 IMFMediaSink 接口的指针。 调用方必须释放接口。
返回值
如果此函数成功,则返回 S_OK。 否则,将返回 HRESULT 错误代码。
注解
3GP 媒体接收器最多支持一个视频流和一个音频流。 初始流格式在 pVideoMediaType 和 pAudioMediaType 参数中 提供。 若要使用一个流创建 MP4 文件,请将另一个流类型设置为 NULL。 例如,若要创建仅限音频的文件,请将 pVideoMediaType 设置为 NULL。
创建媒体接收器时,流数是固定的。 接收器不支持 IMFMediaSink::AddStreamSink 方法。
若要创作 MP4 文件,请使用 MFCreateMPEG4MediaSink 函数。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows 7 [仅限桌面应用] |
最低受支持的服务器 | Windows Server 2008 R2 [仅限桌面应用] |
目标平台 | Windows |
标头 | mfidl.h |
Library | Mf.lib |
DLL | Mf.dll |