IAudioInputEndpointRT::GetInputDataPointer 方法 (audioengineendpoint.h)
GetInputDataPointer 方法會取得緩衝區的指標,該緩衝區會從中讀取音訊引擎的數據。
語法
void GetInputDataPointer(
[in, out] APO_CONNECTION_PROPERTY *pConnectionProperty,
[in, out] AE_CURRENT_POSITION *pAeTimeStamp
);
參數
[in, out] pConnectionProperty
APO_CONNECTION_PROPERTY 結構的指標。
呼叫端會設定成員值,如下所示:
- pBuffer 設定為 NULL。
- u32ValidFrameCount 包含擷取的數據指標中必須有的畫面數。 端點物件不得快取此資訊。 視音訊引擎的處理需求而定,音訊引擎可以變更此數位。
- u32BufferFlags 設定為 BUFFER_INVALID。
- pBuffer 指向已讀取數據的有效記憶體。 這可能包括無聲,視 u32BufferFlags 成員中所設定的旗標而定。
- u32ValidFrameCount 未變更。
- 如果數據指標包含有效的數據,則 u32BufferFlags 會設定為 BUFFER_VALID;如果數據指標只包含無訊息數據,則設定為 BUFFER_SILENT。 緩衝區中的數據實際上不需要無聲,但 pBuffer 中指定的緩衝區必須能夠保存 u32ValidFrameCount 中包含的所有無聲畫面,以符合所需的畫面計數。
[in, out] pAeTimeStamp
AE_CURRENT_POSITION 結構的指標,其中包含在緩衝區中擷取之數據的時間戳。 這是選擇性參數。
傳回值
無
備註
這個方法會從端點傳回緩衝區 pConnectionProperty-pBuffer> 的指標,其中包含需要當做輸入傳遞至引擎的數據。 數據與緩衝區指標必須維持有效狀態,直到呼叫 IAudioInputEndpointRT::ReleaseInputDataPointer 方法為止。 端點對象必須設定所要求的資訊量,如果沒有任何有效的數據存在,則插入無回應。 端點物件所傳回的緩衝區指標 pConnectionProperty-pBuffer> 必須對齊框架。 端點不支持額外的空間,這可能可在與 pConnectionProperty 參數中傳遞的連接屬性相關聯的APO_CONNECTION_PROPERTY中使用。
在 u32ValidFrameCount 成員中傳遞零是有效的要求。 在此情況下,輸入指標必須有效,但端點不會從中讀取。 pConnectionProperty-u32ValidFrameCount> 值必須小於或等於端點所支援的最大畫面計數。 若要取得支持的畫面數,請呼叫 IAudioEndpoint::GetFramesPerPacket 方法。
這個方法可以從即時處理線程呼叫。 這個方法的實作不得封鎖、存取分頁記憶體,或呼叫任何封鎖的系統例程。
遠端桌面服務 AudioEndpoint API 適用於遠端桌面案例;它不適用於客戶端應用程式。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows 7 |
最低支援的伺服器 | Windows Server 2008 R2 |
目標平台 | Windows |
標頭 | audioengineendpoint.h |