RTCInboundRtpStreamStats

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.

* Some parts of this feature may have varying levels of support.

Das RTCInboundRtpStreamStats Wörterbuch der WebRTC API wird verwendet, um Statistiken im Zusammenhang mit dem Empfangsende eines RTP-Streams am lokalen Ende der RTCPeerConnection zu berichten.

Die Statistiken können erhalten werden, indem der RTCStatsReport durchlaufen wird, der von RTCPeerConnection.getStats() oder RTCRtpReceiver.getStats() zurückgegeben wird, bis Sie einen Bericht mit dem type inbound-rtp finden.

Instanz-Eigenschaften

averageRtcpInterval

Ein Gleitkommawert, der das durchschnittliche RTCP-Intervall zwischen zwei aufeinanderfolgenden zusammengesetzten RTCP-Paketen angibt.

bytesReceived

Ein 64-Bit-Ganzzahl, der die Gesamtzahl der Bytes angibt, die bisher für diese Medienquelle empfangen wurden.

fecPacketsDiscarded

Ein ganzzahliger Wert, der die Anzahl der RTP-Forward Error Correction (FEC)-Pakete angibt, die für diese Quelle empfangen wurden und bei denen die Fehlerkorrektur-Nutzlast verworfen wurde.

fecPacketsReceived

Ein ganzzahliger Wert, der die Gesamtzahl der für diese Quelle empfangenen RTP-FEC-Pakete angibt. Dieser Zähler kann auch erhöht werden, wenn FEC-Pakete zusammen mit Medieninhalten In-Band ankommen; dies kann beispielsweise bei Opus der Fall sein.

framesDecoded

Ein langer Ganzzahlwert, der die Gesamtanzahl der Videoframes angibt, die bisher für diese Medienquelle korrekt decodiert wurden. Dies ist die Anzahl der Frames, die gerendert worden wären, wenn keine fallen gelassen worden wären. Nur gültig für Videostreams.

lastPacketReceivedTimestamp

Ein DOMHighResTimeStamp, der die Zeit angibt, zu der das letzte Paket für diese Quelle empfangen wurde. Die timestamp-Eigenschaft gibt hingegen die Zeit an, zu der das Statistikobjekt erzeugt wurde.

mid

Ein String, der das Paar aus Quelle und Ziel des Streams des Transceivers eindeutig identifiziert. Dies ist der Wert des entsprechenden RTCRtpTransceiver.mid, es sei denn, dieser ist null, in diesem Fall ist die Statistik-Eigenschaft nicht vorhanden.

nackCount

Ein ganzzahliger Wert, der die Gesamtanzahl der Negative Acknowledgment (NACK)-Pakete angibt, die dieser Empfänger gesendet hat.

packetsDuplicated

Ein ganzzahliger Wert, der die Gesamtzahl der Pakete angibt, die verworfen wurden, weil sie Duplikate waren. Diese Pakete werden nicht von packetsDiscarded gezählt.

packetsFailedDecryption

Eine Ganzzahl, die die Anzahl der RTP-Pakete angibt, die nicht entschlüsselt werden konnten. Diese Pakete werden nicht von packetsDiscarded gezählt.

perDscpPacketsReceived

Ein Datensatz von Schlüssel-Wert-Paaren mit Strings als Schlüsseln, die auf 32-Bit-Ganzzahlwerte abgebildet sind, wobei jeder angibt, wie viele Pakete dieser Empfänger auf diesem RTP-Stream von dieser Quelle für jeden Differentiated Services Code Point (DSCP) erhalten hat.

receiverId

Ein String, der identifiziert, welches RTCAudioReceiverStats oder RTCVideoReceiverStats-Objekt mit dem Empfänger des Streams assoziiert ist. Diese ID bleibt stabil über mehrere Aufrufe von getStats().

remoteId

Ein String, der das RTCRemoteOutboundRtpStreamStats-Objekt identifiziert, das für diesen gleichen SSRC Statistiken für den entfernten Peer bereitstellt. Diese ID bleibt stabil über mehrere Aufrufe von getStats().

sliCount

Eine Ganzzahl, die angibt, wie oft der Empfänger einen Slice Loss Indication (SLI)-Frame an den Sender gesendet hat, um ihm mitzuteilen, dass ein oder mehrere aufeinander folgende (in Scan-Reihenfolge) Videomakroblöcke verloren gegangen oder beschädigt sind. Verfügbar nur für Videostreams.

trackIdentifier

Ein String, der den id-Wert des MediaStreamTrack enthält, der mit dem eingehenden Stream verknüpft ist.

trackId Veraltet

Ein String, der das Statistikobjekt identifiziert, das den Empfangstrack darstellt; dieses Objekt ist von einem der beiden Typen: RTCReceiverAudioTrackAttachmentStats oder RTCReceiverVideoTrackAttachmentStats. Diese ID bleibt stabil über mehrere Aufrufe von getStats().

Statistiken, die am Empfänger eines RTP-Streams gemessen werden

Diese Statistiken werden am Empfangsende eines RTP-Streams gemessen, unabhängig davon, ob es sich um ein lokales oder ein entferntes Ende handelt.

packetsReceived

Die Gesamtanzahl der für diese Synchronisationsquelle empfangenen RTP-Pakete, einschließlich Neusendungen.

packetsLost

Die Gesamtanzahl der für diese Synchronisationsquelle verlorenen RTP-Pakete. Beachten Sie, dass dies negativ sein kann, wenn mehr Pakete empfangen als gesendet werden.

jitter

Paket-Jitter für diese Synchronisationsquelle, gemessen in Sekunden.

Nur lokal berechnete Messungen

Diese Eigenschaften werden lokal berechnet und sind nur für das Gerät verfügbar, das den Medienstream empfängt. Ihr Hauptzweck ist es, die Fehlerresilienz der Verbindung zu untersuchen, da sie Informationen über verloren gegangene Pakete, verloren gegangene Frames und den Komprimierungsgrad der Daten liefern.

nackCount

Die Anzahl der Male, die der Empfänger dem Sender mitgeteilt hat, dass ein oder mehrere RTP-Pakete verloren gegangen sind, indem ein Negative ACKnowledgement (NACK, auch "Generic NACK" genannt) Paket an den Sender gesendet wurde. Dieser Wert ist nur für den Empfänger verfügbar.

qpSum

Ein 64-Bit-Wert, der die Summe der QP-Werte für jeden bisher von diesem RTP-Empfänger dekomprimierten Frame auf dem von diesem Statistikobjekt beschriebenen Videotrack enthält. Sie können den durchschnittlichen QP pro Frame ermitteln, indem Sie diesen Wert durch framesDecoded teilen, wobei Sie beachten sollten, dass Codecs oft die Quantisierungswerte sogar innerhalb von Frames variieren. Beachten Sie auch, dass die QP-Werte von Codec zu Codec variieren können, daher ist dieser Wert nur potenziell nützlich, wenn er gegen denselben Codec verglichen wird. Gültig nur für Videostreams.

Gemeinsame RTP-Stream-Statistiken

codecId

Ein String, der das Objekt eindeutig identifiziert, das untersucht wurde, um das RTCCodecStats-Objekt zu erstellen, das mit diesem RTP-Stream assoziiert ist.

kind

Ein String, der angibt, ob der MediaStreamTrack, der mit dem Stream verbunden ist, ein Audio- oder ein Videotrack ist.

ssrc

Der 32-Bit-Ganzzahlwert, der die Quelle der RTP-Pakete identifiziert, die dieses Objekt bereitstellt. Dieser Wert wird gemäß der RFC 3550-Spezifikation generiert.

transportId

Ein String, der das Objekt eindeutig identifiziert, das untersucht wurde, um das RTCTransportStats-Objekt zu erstellen, das mit diesem RTP-Stream assoziiert ist.

Gemeinsame Instanz-Eigenschaften

Die folgenden Eigenschaften sind allen WebRTC-Statistikobjekten gemeinsam.

id

Ein String, der das Objekt, das überwacht wird, um diesen Satz von Statistiken zu erzeugen, eindeutig identifiziert.

timestamp

Ein DOMHighResTimeStamp-Objekt, das die Zeit angibt, zu der die Probe 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.

Spezifikationen

Specification
Identifiers for WebRTC's Statistics API
# dom-rtcstatstype-inbound-rtp

Browser-Kompatibilität

Siehe auch