CMediaType.ReallocFormatBuffer 方法

[与此页面关联的功能 DirectShow 是旧版功能。 它已被 MediaPlayerIMFMediaEngineMedia Foundation 中的音频/视频捕获所取代。 这些功能已针对Windows 10和Windows 11进行了优化。 Microsoft 强烈建议新代码尽可能在 Media Foundation 中使用 MediaPlayerIMFMediaEngine音频/视频捕获 ,而不是 DirectShow。 如果可能,Microsoft 建议重写使用旧 API 的现有代码以使用新 API。]

方法 ReallocFormatBuffer 将格式块重新分配为新大小。

语法

BYTE* ReallocFormatBuffer(
   ULONG length
);

参数

length

格式块所需的新大小(以字节为单位)。 必须大于零。

返回值

如果成功,则返回指向新块的指针。 否则,返回指向旧格式块的指针或 NULL

备注

此方法分配新的格式块。 它将尽可能多的现有格式块复制到新的格式块中。 如果新块小于现有块,则会截断现有格式块。 如果新块较大,则附加空间的内容未定义。 它们未显式设置为零。

方法更新AM_MEDIA_TYPE结构的 cbFormatpbFormat 成员。

要求

要求
标头
Mtype.h (包括 Streams.h)

Strmbase.lib (零售版本) ;
Strmbasd.lib (调试生成)

另请参阅

CMediaType 类