RTCInboundRtpStreamStats
Базовая Широко доступная *
Эта функция хорошо зарекомендовала себя и работает на многих устройствах и версиях браузеров. Она доступна в браузерах с января 2020 года.
* Некоторые части этой функции могут иметь различный уровень поддержки.
Словарь RTCInboundRtpStreamStats API WebRTC используется для отчета о статистике, связанной с приёмом потока RTP на локальном конце RTCPeerConnection.
Статистику можно получить, итеративно перебирая RTCStatsReport, возвращаемый RTCPeerConnection.getStats() или RTCRtpReceiver.getStats(), пока не найдётся отчёт с type inbound-rtp.
Свойства экземпляра
averageRtcpInterval-
Значение с плавающей точкой, указывающее средний интервал RTCP между двумя последовательными составными пакетами RTCP.
bytesReceived-
64-битное целое число, которое указывает общее количество байтов, полученных до настоящего момента для этого источника медиа.
fecPacketsDiscarded-
Целое значение, указывающее количество пакетов RTP Forward Error Correction (FEC), полученных для этого источника, для которых данные коррекции ошибок были отброшены.
fecPacketsReceived-
Целое значение, указывающее общее количество полученных пакетов RTP FEC для этого источника. Этот счётчик также может увеличиваться, когда пакеты FEC прибывают вместе с медиа-данными; это может происходить с Opus, например.
framesDecoded-
Длинное целое значение, указывающее общее количество правильно декодированных кадров видео до настоящего момента для этого источника медиа. Это количество кадров, которые были бы отображены, если бы ни один из них не был пропущен. Действительно только для видеопотоков.
lastPacketReceivedTimestamp-
DOMHighResTimeStamp, указывающий время получения последнего пакета для этого источника. Свойствоtimestamp, с другой стороны, указывает время генерации объекта статистики. mid-
Строка, уникально идентифицирующая пару источник-назначение потока трансивера. Это значение соответствующего
RTCRtpTransceiver.mid, если оно не равно null; в противном случае свойство статистики отсутствует. nackCount-
Целое значение, указывающее общее количество пакетов отрицательного подтверждения (NACK), отправленных этим приемником.
packetsDuplicated-
Целое значение, указывающее общее количество пакетов, которые были отброшены, потому что были дубликатами. Эти пакеты не учитываются
packetsDiscarded. packetsFailedDecryption-
Целое число, суммирующее количество пакетов RTP, которые не удалось расшифровать. Эти пакеты не учитываются
packetsDiscarded. perDscpPacketsReceived-
Запись пар ключ-значение со строками в качестве ключей, сопоставленных с целочисленными значениями 32 бит, каждое из которых указывает общее количество пакетов, полученных этим приемником по этому потоку RTP от этого источника для каждого значения DSCP (Differentiated Services Code Point).
receiverId-
Строка, идентифицирующая объект
RTCAudioReceiverStatsилиRTCVideoReceiverStats, связанный с приемником потока. Этот идентификатор стабилен при многократных вызовахgetStats(). remoteId-
Строка, идентифицирующая объект
RTCRemoteOutboundRtpStreamStats, который предоставляет статистику для удалённого узла для того же SSRC. Этот идентификатор стабилен при многократных вызовахgetStats(). sliCount-
Целое число, указывающее количество раз, когда приёмник отправлял кадр указания потери слайсов (SLI) отправителю, чтобы сообщить ему о потере или повреждении одного или нескольких последовательных (с точки зрения порядка сканирования) макроблоков видео. Доступно только для видеопотоков.
trackIdentifier-
Строка, содержащая значение
idMediaStreamTrack, связанного с входящим потоком. -
trackIdУстарело -
Строка, которая идентифицирует объект статистики, представляющий отслеживание приёма; этот объект является одним из двух типов:
RTCReceiverAudioTrackAttachmentStatsилиRTCReceiverVideoTrackAttachmentStats. Этот идентификатор стабилен при многократных вызовахgetStats().
Статистика, измеренная на приемнике RTP-потока
Эта статистика измеряется на принимающей стороне RTP-потока, независимо от того, является ли он локальным или удалённым.
packetsReceived-
Общее количество пакетов RTP, полученных для этого синхронизирующего источника, включая повторные передачи.
packetsLost-
Общее количество потерянных пакетов RTP для этого синхронизирующего источника. Обратите внимание, что это значение может быть отрицательным, если получено больше пакетов, чем отправлено.
jitter-
Джиттер пакетов для этого синхронизирующего источника, измеренный в секундах.
Измерения, доступные только локально
Эти свойства вычисляются локально и доступны только устройству, принимающему медиапоток. Их основная цель — изучить устойчивость к ошибкам соединения, так как они предоставляют информацию о потерянных пакетах, потерянных кадрах и степени сжатия данных.
nackCount-
Количество раз, когда приемник уведомил отправителя о потере одного или нескольких пакетов RTP, отправив пакет отрицательного подтверждения (NACK) отправителю. Это значение доступно только приемнику.
qpSum-
64-битное значение, содержащее сумму значений QP для каждого декодированного кадра этим RTP-приемником на сегодняшний день по видеодорожке, описанной этим объектом статистики. Вы можете приблизительно вычислить среднее значение QP на кадр, разделив это значение на
framesDecoded, помня, что кодеки часто изменяют значения квантизатора даже внутри кадров. Также учтите, что значения QP могут различаться в зависимости от кодека, поэтому это значение полезно только при сравнении с тем же кодеком. Действительно только для видеопотоков.
Общие статистические данные по RTP-потокам
codecId-
Строка, которая уникально идентифицирует объект, который был проинспектирован для создания объекта
RTCCodecStats, связанного с этим RTP-потоком. kind-
Строка, указывающая, является ли связанная с потоком
MediaStreamTrackаудио- или видеодорожкой. ssrc-
32-битное целое число, идентифицирующее источник пакетов RTP, которые предоставляет этот объект. Это значение генерируется в соответствии со спецификацией RFC 3550.
transportId-
Строка, уникально идентифицирующая объект, который был проинспектирован для создания объекта
RTCTransportStats, связанного с этим RTP-потоком.
Общие свойства экземпляра
Следующие свойства общие для всех объектов статистики WebRTC.
id-
Строка, уникально идентифицирующая объект, за которым ведётся мониторинг для получения набора статистики.
timestamp-
Объект
DOMHighResTimeStamp, указывающий время, в которое была взята выборка для данного объекта статистики. type-
Строка со значением
"inbound-rtp", указывающая тип статистики, содержащейся в объекте.
Примеры
Спецификации
Совместимость с браузерами
| Рабочие столы | Мобильные устройства | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox для Android | Opera Android | Safari на iOS | Samsung Internet | WebView Android | |
RTCInboundRtpStreamStats |
79 | 79 | 27 | 66 | 11 | 79 | 27 | 57 | 11 | 12.0 | 79 |
|---|---|---|---|---|---|---|---|---|---|---|---|
audioLevel |
86 | 86 | 106 | 72 | 14.1–16.3 | 86 | 106 | 61 | No | 14.0 | 86 |
bytesReceived |
79 | 79 | 27 | 66 | 13.1 | 79 | 27 | 57 | 13.4 | 12.0 | 79 |
codecId |
80 | 80 | 98 | 67 | 15.2–15.5 | 80 | 98 | 57 | No | 13.0 | 80 |
concealedSamples |
86 | 86 | 104 | 72 | 14.1 | 86 | 104 | 61 | 14.5 | 14.0 | 86 |
concealmentEvents |
86 | 86 | 106 | 72 | 14.1 | 86 | 106 | 61 | 14.5 | 14.0 | 86 |
fecPacketsDiscarded |
81 | 81 | 106 | 68 | 14.1 | 81 | 106 | 58 | 14.5 | 13.0 | 81 |
fecPacketsReceived |
81 | 81 | 106 | 68 | 14.1 | 81 | 106 | 58 | 14.5 | 13.0 | 81 |
frameHeight |
86 | 86 | 101 | 72 | No | 86 | 101 | 61 | No | 14.0 | 86 |
frameWidth |
86 | 86 | 101 | 72 | No | 86 | 101 | 61 | No | 14.0 | 86 |
framesDecoded |
79 | 79 | ≤73 | 66 | ≤13.1–15.1 | 79 | ≤79 | 57 | ≤13.4–15.1 | 12.0 | 79 |
framesPerSecond |
86 | 86 | 101 | 72 | No | 86 | 101 | 61 | No | 14.0 | 86 |
framesReceived |
86 | 86 | 101 | 72 | No | 86 | 101 | 61 | No | 14.0 | 86 |
headerBytesReceived |
80 | 80 | 106 | 67 | 14.1 | 80 | 106 | 57 | 14.5 | 13.0 | 80 |
id |
80 | 80 | 72 | 67 | 13.1 | 80 | 79 | 57 | 13.4 | 13.0 | 80 |
insertedSamplesForDeceleration |
86 | 86 | 106 | 72 | 14.1 | 86 | 106 | 61 | 14.5 | 14.0 | 86 |
jitter |
80 | 80 | 27 | 67 | 13.1 | 80 | 27 | 57 | 13.4 | 13.0 | 80 |
jitterBufferDelay |
86 | 86 | 104 | 72 | 14.1 | 86 | 104 | 61 | 14.5 | 14.0 | 86 |
jitterBufferEmittedCount |
86 | 86 | 104 | 72 | 14.1 | 86 | 104 | 61 | 14.5 | 14.0 | 86 |
jitterBufferMinimumDelay |
105 | 105 | No | 91 | No | 105 | No | 72 | No | 20.0 | 105 |
jitterBufferTargetDelay |
105 | 105 | No | 91 | No | 105 | No | 72 | No | 20.0 | 105 |
keyFramesDecoded |
79 | 79 | No | 66 | No | 79 | No | 57 | No | 12.0 | 79 |
kind |
80 | 80 | 63 | 67 | 14 | 80 | 63 | 57 | 14 | 13.0 | 80 |
lastPacketReceivedTimestamp |
80 | 80 | 106 | 67 | 15.2–15.5 | 80 | 106 | 57 | No | 13.0 | 80 |
mid |
105 | 105 | 135 | 91 | 17 | 105 | 135 | 72 | 17 | 20.0 | 105 |
nackCount |
80 | 80 | 55 | 67 | No | 80 | No | 57 | No | 13.0 | 80 |
packetsDiscarded |
94 | 94 | 96 | 80 | 15.4 | 94 | 96 | 66 | 15.4 | 17.0 | 94 |
|---|---|---|---|---|---|---|---|---|---|---|---|
packetsLost |
80 | 80 | 72 | 67 | 13.1 | 80 | 79 | 57 | 13.4 | 13.0 | 80 |
packetsReceived |
80 | 80 | 72 | 67 | 13.1 | 80 | 79 | 57 | 13.4 | 13.0 | 80 |
playoutId |
111 | 111 | Нет | 97 | Нет | 111 | Нет | 75 | Нет | 22.0 | 111 |
qpSum |
79 | 79 | 106 | 66 | Нет | 79 | 106 | 57 | Нет | 12.0 | 79 |
remoteId |
91 | 91 | 68 | 77 | Нет | 91 | 68 | 64 | Нет | 16.0 | 91 |
removedSamplesForAcceleration |
86 | 86 | 106 | 72 | 14.1 | 86 | 106 | 61 | 14.5 | 14.0 | 86 |
silentConcealedSamples |
86 | 86 | 104 | 72 | 14.1 | 86 | 104 | 61 | 14.5 | 14.0 | 86 |
ssrc |
80 | 80 | 27 | 67 | 11 | 80 | 27 | 57 | 11 | 13.0 | 80 |
timestamp |
80 | 80 | 72 | 67 | 13.1 | 80 | 79 | 57 | 13.4 | 13.0 | 80 |
totalAudioEnergy |
86 | 86 | 106 | 72 | 14.1 | 86 | 106 | 61 | 14.5 | 14.0 | 86 |
totalDecodeTime |
79 | 79 | 106 | 66 | Нет | 79 | 106 | 57 | Нет | 12.0 | 79 |
totalInterFrameDelay |
79 | 79 | 106 | 66 | Нет | 79 | 106 | 57 | Нет | 12.0 | 79 |
totalProcessingDelay |
103 | 103 | 106 | 89 | Нет | 103 | 106 | 71 | Нет | 20.0 | 103 |
totalSamplesDuration |
86 | 86 | 106 | 72 | 14.1 | 86 | 106 | 61 | 14.5 | 14.0 | 86 |
totalSamplesReceived |
86 | 86 | 104 | 72 | 14.1 | 86 | 104 | 61 | 14.5 | 14.0 | 86 |
totalSquaredInterFrameDelay |
79 | 79 | 106 | 66 | Нет | 79 | 106 | 57 | Нет | 12.0 | 79 |
trackIdentifier |
105 | 105 | 111 | 91 | 16.4 | 105 | 111 | 72 | 16.4 | 20.0 | 105 |
transportId |
80 | 80 | Нет | 67 | 11 | 80 | Нет | 57 | 11 | 13.0 | 80 |
type |
80 | 80 | 72 | 67 | 13.1 | 80 | 79 | 57 | 13.4 | 13.0 | 80 |
См. также
© 2005–2024 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/RTCInboundRtpStreamStats