IXAPO::LockForProcess 方法 (xapo.h)
由 XAudio2 呼叫,以鎖定 XAPO 的輸入和輸出組態,以便在即時執行緒上呼叫 Process 之前執行任何最終初始化。
語法
HRESULT LockForProcess(
UINT32 InputLockedParameterCount,
const XAPO_LOCKFORPROCESS_PARAMETERS *pInputLockedParameters,
UINT32 OutputLockedParameterCount,
const XAPO_LOCKFORPROCESS_PARAMETERS *pOutputLockedParameters
);
參數
InputLockedParameterCount
ppInputLockedParameters中的元素數目。 必須在 XAPO_REGISTRATION_PROPERTIES內。MinInputBufferCount 和 XAPO_REGISTRATION_PROPERTIES。傳遞至 CXAPOBase::CXAPOBase的 MaxInputBufferCount 值。
pInputLockedParameters
輸入 XAPO_LOCKFORPROCESS_BUFFER_PARAMETERS 結構的陣列。 pInputLockedParameters 如果 InputLockedParameterCount 為 0,則為 Null,否則它必須具有 InputLockedParameterCount 元素。
OutputLockedParameterCount
ppOutputLockedParameters 中的元素數目。 必須在 XAPO_REGISTRATION_PROPERTIES內。MinOutputBufferCount 和 XAPO_REGISTRATION_PROPERTIES。傳遞至 CXAPOBase::CXAPOBase的 MaxOutputBufferCount 值。 如果已在 XAPO_REGISTRATION_PROPERTIES 中指定XAPO_FLAG_BUFFERCOUNT_MUST_MATCH旗標。Flags then OutputLockedParameterCount must equal InputLockedParameterCount.
pOutputLockedParameters
輸出 XAPO_LOCKFORPROCESS_BUFFER_PARAMETERS 結構的陣列。 如果OutputLockedParameterCount為 0,pOutputLockedParameters可能是 Null,否則它必須具有OutputLockedParameterCount元素。
傳回值
如果成功,則傳回S_OK,否則傳回錯誤碼。
備註
鎖定之後,輸入和輸出組態和任何其他鎖定的參數都會維持不變,直到 呼叫 UnLockForProcess 為止。 鎖定 XAPO 之後,在呼叫UnLockForProcess函式之前,對 LockForProcess的進一步呼叫不會有任何作用。
XAPO 會透過 IsInputFormatSupported 和 IsOutputFormatSupported 方法的實作,指出它支援的特定格式。 XAPO 應該判斷提示支援輸入和輸出組態,而且已完成任何必要的效果特定初始化。 呼叫這個方法之前,必須先使用 IsInputFormatSupported、 IsOutputFormatSupported和 Initialize 方法。
因為 Process 是非封鎖方法,所以 進程 所需的所有內部記憶體緩衝區都應該配置在 LockForProcess中。
在LockForProcess成功傳回之前,永遠不會呼叫進程。
LockForProcess 是由 XAudio2 直接呼叫,不應由用戶端程式代碼呼叫。
平臺需求
Windows 10 (XAudio2.9) ;Windows 8,Windows Phone 8 (XAudio 2.8) ;DirectX SDK (XAudio 2.7)規格需求
目標平台 | Windows |
標頭 | xapo.h |