如何确定WebRTC通话的质量

时间:2018-07-10 03:33:13

标签: android video-streaming webrtc libjingle

这是我从Android的Peerconnection叮当库获得的统计报告信息。

我希望在UI上显示一个指示器,以便在可能的情况下根据此报告向用户显示当前通话质量。

我不确定如何确定通话质量是好还是坏

发送视频统计信息

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

接收视频统计信息

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统计信息= bweforvideo

ActualEncBitrate=291163
ReceiveBandwidth=0
SendBandwidth=1654217
BucketDelay=0
RetransmitBitrate=0
TargetEncBitrate=1654217
TransmitBitrate=389383

连接统计信息= 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

1 个答案:

答案 0 :(得分:0)

我建议先向用户显示基本统计信息,例如 C:\Project\________android\src\plugin\google\maps\CordovaGoogleMaps.java:115: error: cannot access zzo int checkGooglePlayServices = GooglePlayServicesUtil.isGooglePlayServicesAvailable(activity); ^ class file for com.google.android.gms.common.zzo not found C:\Project\---------\android\src\plugin\google\maps\CordovaGoogleMaps.java:508: error: cannot access zzbck locationRequest = LocationRequest.create() Packet loss %,如果可能的话,请提供网络信号强度。每两秒钟计算一次。

参考:

Chromes Webrtc统计信息:chrome:// webrtc-internals

信号强度:How to detect internet speed in JavaScript?

数据包丢失:Math.round((totalPacketLost / totalPacketSent)* 1000);