AudioData
注意:此功能在 專用 Web Workers 中可用。
AudioData 介面是 WebCodecs API 的一部分,表示一個音訊樣本。
AudioData 是一個 可轉移物件。
描述
音訊軌道由一系列音訊樣本組成,每個樣本代表一個捕獲的聲音瞬間。AudioData 物件就是對這樣一個樣本的表示。透過與 Insertable Streams API 的介面協同工作,您可以使用 MediaStreamTrackProcessor 將流分解為單個 AudioData 物件,或者使用 MediaStreamTrackGenerator 從幀流構建音訊軌道。
注意: 有關 Web 上的音訊,請參閱 數字音訊概念。
媒體資源
AudioData 物件包含一個對已連線的媒體資源的引用。此媒體資源包含物件所描述的實際音訊樣本資料。在 AudioData 物件不再引用媒體資源之前,使用者代理會維護該媒體資源,例如當呼叫 AudioData.close() 時。
聲道和音訊格式
要獲取 AudioData 的樣本格式,請使用 AudioData.format 屬性。格式可以是交錯式或平面式。在交錯式格式中,來自不同聲道的音訊樣本位於單個緩衝區中,該緩衝區被稱為一個聲道。此聲道包含的元素數量等於 AudioData.numberOfFrames * AudioData.numberOfChannels。
在平面式格式中,聲道的數量等於 AudioData.numberOfChannels,每個聲道都是一個緩衝區,包含的元素數量等於 AudioData.numberOfFrames。
建構函式
AudioData()-
建立一個新的
AudioData物件。
例項屬性
AudioData.format只讀-
返回音訊的樣本格式。
AudioData.sampleRate只讀-
返回音訊的取樣率(單位:Hz)。
AudioData.numberOfFrames只讀-
返回幀數。
AudioData.numberOfChannels只讀-
返回音訊的聲道數。
AudioData.duration只讀-
返回音訊的時長(單位:微秒)。
AudioData.timestamp只讀-
返回音訊的時間戳(單位:微秒)。
例項方法
AudioData.allocationSize()-
返回容納樣本所需的位元組數,這些樣本經過方法中傳遞的選項過濾。
AudioData.copyTo()-
將
AudioData物件指定聲道中的樣本複製到目標。 AudioData.clone()-
建立一個新的
AudioData物件,該物件引用與原始物件相同的媒體資源。 AudioData.close()-
清除所有狀態並釋放對媒體資源的引用。
規範
| 規範 |
|---|
| WebCodecs # audiodata-interface |
瀏覽器相容性
載入中…