Reputation: 1145
Here is the stats report info that I got from the Peerconnection jingle library in Android.
I want to display an indicator on the UI to show the user the current call quality based on this report if possible.
I'm not sure how to determine if it is a good call quality or bad quality
Send video statistics
ssrc_2849248716_send
bytesSent=44487
codecImplementationName=HWEncoder
framesEncoded=30
mediaType=video
packetsLost=0
packetsSent=68
qpSum=2200
ssrc=2849248716
transportId=Channel-0-1
AdaptationChanges=0
AvgEncodeMs=0
BandwidthLimitedResolution=true
CodecName=VP8
ContentType=realtime
CpuLimitedResolution=false
EncodeUsagePercent=0
FirsReceived=0
FrameHeightInput=720
FrameHeightSent=360
FrameRateInput=30
FrameRateSent=30
FrameWidthInput=1280
FrameWidthSent=640
HasEnteredLowResolution=false
hugeFramesSent=0
NacksReceived=0
PlisReceived=0
Rtt=0
TrackId=ARDAMSv0
Receive video statistics
ssrc_1142651072_recv
bytesReceived=22760
codecImplementationName=HWDecoder
framesDecoded=21
mediaType=video
packetsLost=0
packetsReceived=31
qpSum=1684
transportId=Channel-0-1
CaptureStartNtpTimeMs=0
CodecName=VP8
ContentType=realtime
CurrentDelayMs=108
DecodeMs=14
FirsSent=0
FrameHeightReceived=360
FrameRateDecoded=34
FrameRateOutput=34
FrameRateReceived=25
FrameWidthReceived=640
InterframeDelayMax=46
JitterBufferMs=77
MaxDecodeMs=21
MinPlayoutDelayMs=0
NacksSent=0
PlisSent=0
RenderDelayMs=10
TargetDelayMs=108
TimingFrameInfo=126116936,-226,-207,-13,-13,-1,-226,-226,5772436049,5772436065,5772436217,5772436273,5772436065,0,1
TrackId=ARDAMSv0
BWE statistics = bweforvideo
ActualEncBitrate=291163
ReceiveBandwidth=0
SendBandwidth=1654217
BucketDelay=0
RetransmitBitrate=0
TargetEncBitrate=1654217
TransmitBitrate=389383
Connection statistics = Conn-0-1-0
ActiveConnection=true
bytesReceived=17759
bytesSent=31747
packetsSent=75
Readable=true
requestsSent=3
consentRequestsSent=1
responsesSent=3
requestsReceived=3
responsesReceived=3
ChannelId=Channel-0-1
localCandidateId=Cand-P/Rpk08E
LocalCandidateType=prflx
remoteCandidateId=Cand-gAVGaHs7
RemoteCandidateType=relay
Rtt=110
packetsDiscardedOnSend=0
TransportType=udp
Writable=true
onPeerConnectionStatsReady: fps = 30 target BR = 1654217 actual BR = 291163
Upvotes: 3
Views: 2660
Reputation: 21
I would recommend showing them the basic stats to the user as a first step like Packet loss %
, bandwidth (upload & download)
, if possible the network signal strength. Calculate them for every two seconds.
Ref:
Chromes Webrtc stats: chrome://webrtc-internals
Signal strength: How to detect internet speed in JavaScript?
Packet loss: Math.round((totalPacketLost / totalPacketSent) * 1000);
Upvotes: 2