RTCRtpReceiver: jitterBufferTarget 屬性

可用性有限

此特性不是基線特性,因為它在一些最廣泛使用的瀏覽器中不起作用。

RTCRtpReceiver 介面的 jitterBufferTarget 屬性是一個 DOMHighResTimeStamp,它表示應用程式希望 抖動緩衝區 在播放之前保留媒體的首選時長(以毫秒為單位)。

應用程式可以使用它來權衡播放延遲與因網路抖動而耗盡音訊或影片幀的風險。

一個 DOMHighResTimeStamp,表示當前的抖動緩衝區目標保留時間(以毫秒為單位)。

該值可以設定為不大於 4000 毫秒的正值。

異常

RangeError

如果將目標設定為負值或大於 4000 毫秒的值,則會丟擲異常。

描述

該屬性的值會影響使用者代理執行的緩衝量,進而影響重傳和丟包恢復。

請注意,該屬性“影響”使用者代理的抖動緩衝區目標,但並不直接設定它。實際的使用者代理抖動緩衝區目標將在允許的最大值和最小值之間變化,反映出使用者代理可以根據網路條件和記憶體限制提供的一個目標範圍,並且可能會隨時更改。jitterBufferTarget 返回的值不受使用者代理實際目標的影響。

平均抖動緩衝區延遲可以透過將 RTCInboundRtpStreamStats.jitterBufferTargetDelay 除以 RTCInboundRtpStreamStats.jitterBufferEmittedCount 來計算。為了觀察修改抖動緩衝區目標的效果,您可以跟蹤此平均值隨時間的變化。您還可以將其與 jitterBufferMinimumDelay(或其平均值)進行比較,以排除影響延遲的固有網路因素。

如果 RTCRtpReceiver 的音訊和影片軌道已同步,則應將兩個接收器中較大的 jitterBufferTarget 用於兩個接收器。

規範

規範
WebRTC:瀏覽器中的即時通訊
# dom-rtcrtpreceiver-jitterbuffertarget

瀏覽器相容性