RTCRemoteInboundRtpStreamStats
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since January 2020.
Das RTCRemoteInboundRtpStreamStats
-Wörterbuch der WebRTC API wird verwendet, um Statistiken vom entfernten Endpunkt über einen bestimmten eingehenden RTP-Stream zu melden. Diese entsprechen einem ausgehenden RTP-Stream am lokalen Ende der RTCPeerConnection
.
Die Statistiken können abgerufen werden, indem man durch den RTCStatsReport
iteriert, der von RTCPeerConnection.getStats()
oder RTCRtpReceiver.getStats()
zurückgegeben wird, bis Sie einen Bericht mit dem type
von remote-inbound-rtp
finden.
Instanzeigenschaften
Spezifische Statistiken für eingehende Remote-Daten
fractionLost
Optional-
Eine Zahl, die den Anteil der für diesen SSRC verlorenen Pakete seit dem letzten Sender- oder Empfängerbericht angibt.
localId
Optional-
Ein String, der verwendet wird, um das lokale
RTCOutboundRtpStreamStats
-Objekt zu finden, das die gleiche Synchronisierungsquelle (SSRC) teilt. roundTripTime
Optional-
Eine Zahl, die die geschätzte Round-Trip-Zeit (RTT) für diesen SSRC in Sekunden angibt. Diese Eigenschaft existiert nicht, bis gültige RTT-Daten empfangen wurden.
roundTripTimeMeasurements
Optional-
Eine positive Ganzzahl, die die Gesamtzahl der gültigen Messungen der Round-Trip-Zeit anzeigt, die für diese Synchronisierungsquelle (SSRC) empfangen wurden.
totalRoundTripTime
Optional-
Eine Zahl, die die kumulative Summe aller Round-Trip-Zeit-Messungen seit Beginn der Sitzung in Sekunden angibt. Die durchschnittliche Round-Trip-Zeit kann berechnet werden, indem
totalRoundTripTime
durchroundTripTimeMeasurements
geteilt wird.
Statistiken des empfangenen RTP-Streams
jitter
Optional-
Eine Zahl, die die Paket-Jitter für diese Synchronisierungsquelle in Sekunden angibt.
packetsLost
Optional-
Eine Ganzzahl, die die Gesamtzahl der verlorenen RTP-Pakete für diesen SSRC angibt, gemessen am entfernten Endpunkt. Dieser Wert kann negativ sein, wenn doppelte Pakete empfangen wurden.
packetsReceived
Optional Experimentell-
Eine positive Ganzzahl, die die Gesamtzahl der empfangenen RTP-Pakete für diesen SSRC anzeigt, einschließlich erneuter Übertragungen.
Allgemeine RTP-Stream-Statistiken
codecId
Optional-
Ein String, der das Objekt eindeutig identifiziert, das untersucht wurde, um das
RTCCodecStats
-Objekt zu erstellen, das mit diesem RTP-Stream verknüpft ist. kind
-
Ein String, der angibt, ob der mit dem Stream verbundene
MediaStreamTrack
ein Audio- oder Videotrack ist. ssrc
-
Eine positive Ganzzahl, die den SSRC der RTP-Pakete in diesem Stream identifiziert.
transportId
Optional-
Ein String, der das Objekt eindeutig identifiziert, das untersucht wurde, um das
RTCTransportStats
-Objekt zu erstellen, das mit diesem RTP-Stream verknüpft ist.
Allgemeine Instanzeigenschaften
Die folgenden Eigenschaften sind allen WebRTC-Statistikobjekten gemeinsam.
id
-
Ein String, der das Objekt eindeutig identifiziert, das überwacht wird, um diese Satz von Statistiken zu erstellen.
timestamp
-
Ein
DOMHighResTimeStamp
-Objekt, das die Zeit angibt, zu der die Stichprobe für dieses Statistikobjekt genommen wurde. type
-
Ein String mit dem Wert
"inbound-rtp"
, der den Typ der Statistiken angibt, die das Objekt enthält.
Beispiele
Gegeben sei eine Variable peerConnection
, die eine Instanz einer RTCPeerConnection
ist. Der folgende Code verwendet await
, um auf den Statistikbericht zu warten, und durchläuft ihn dann mit RTCStatsReport.forEach()
. Er filtert die Wörterbücher nach nur jenen Berichten, deren Typ remote-inbound-rtp
ist, und protokolliert das Ergebnis.
const stats = await myPeerConnection.getStats();
stats.forEach((report) => {
if (report.type === "remote-inbound-rtp") {
console.log("Remote Inbound RTP Stream Stats:");
console.log(`id: ${report.id}`);
console.log(`timestamp: ${report.timestamp}`);
console.log(`transportId: ${report.transportId}`);
console.log(`ssrc: ${report.ssrc}`);
console.log(`kind: ${report.kind}`);
console.log(`codecId: ${report.codecId}`);
console.log(`packetsReceived: ${report.packetsReceived}`);
console.log(`packetsLost: ${report.packetsLost}`);
console.log(`jitter: ${report.jitter}`);
console.log(`totalRoundTripTime: ${report.totalRoundTripTime}`);
console.log(
`roundTripTimeMeasurements: ${report.roundTripTimeMeasurements}`,
);
console.log(`roundTripTime: ${report.roundTripTime}`);
console.log(`localId: ${report.localId}`);
console.log(`fractionLost: ${report.fractionLost}`);
}
});
Spezifikationen
Specification |
---|
Identifiers for WebRTC's Statistics API # dom-rtcstatstype-remote-inbound-rtp |
Browser-Kompatibilität
BCD tables only load in the browser