acmStreamUnprepareHeader 函数 (msacm.h)

acmStreamUnprepareHeader 函数清理 acmStreamPrepareHeader 函数为 ACM 流执行的准备工作。 必须使用给定缓冲区完成 ACM 后调用此函数。 应用程序在释放源缓冲区和目标缓冲区之前必须调用此函数。

语法

MMRESULT ACMAPI acmStreamUnprepareHeader(
  HACMSTREAM        has,
  LPACMSTREAMHEADER pash,
  DWORD             fdwUnprepare
);

parameters

has

转换蒸汽的句柄。

pash

指向 ACMSTREAMHEADER 结构的指针,该结构标识要准备的源缓冲区和目标缓冲区。

fdwUnprepare

保留;必须为零。

返回值

如果成功,则返回零,否则返回错误。 可能的错误值包括以下内容。

返回代码 说明
ACMERR_BUSY
pash 中指定的流标头当前正在使用中,无法进行准备。
ACMERR_UNPREPARED
pash 中指定的流标头当前未由 acmStreamPrepareHeader 函数准备。
MMSYSERR_INVALFLAG
至少有一个标志无效。
MMSYSERR_INVALHANDLE
指定的句柄无效。
MMSYSERR_INVALPARAM
至少有一个参数无效。

注解

取消准备已未准备的流标头是一个错误。 应用程序必须分别指定在调用相应 acmStreamPrepareHeader 期间使用的) (cbSrcLengthcbDstLength 的源缓冲区长度和目标缓冲区长度。 未能重置这些成员值将导致 acmStreamUnprepareHeader 失败并出现MMSYSERR_INVALPARAM错误。

ACM 可以从某些错误中恢复。 ACM 将返回非零错误,但流标头将正确未准备。 若要确定流标头实际上是否尚未准备,应用程序可以检查ACMSTREAMHEADER_STATUSF_PREPARED标志。 如果 acmStreamUnprepareHeader 返回成功,则标头将始终处于未准备状态。

要求

   
最低受支持的客户端 Windows 2000 Professional [仅限桌面应用]
最低受支持的服务器 Windows 2000 Server [仅限桌面应用]
目标平台 Windows
标头 msacm.h
Library Msacm32.lib
DLL Msacm32.dll

另请参阅

音频压缩函数

音频压缩管理器