Share via


acmStreamUnprepareHeader 函式 (msacm.h)

acmStreamUnprepareHeader函式會清除ACM 資料流程的 acmStreamPrepareHeader函式所執行的準備。 在 ACM 完成指定緩衝區之後,必須呼叫此函式。 應用程式必須先呼叫此函式,才能釋放來源和目的地緩衝區。

語法

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

參數

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 專業版 [僅限傳統型應用程式]
最低支援的伺服器 Windows 2000 Server [僅限傳統型應用程式]
目標平台 Windows
標頭 msacm.h
程式庫 Msacm32.lib
Dll Msacm32.dll

另請參閱

音訊壓縮函式

音訊壓縮管理員