您的位置:首页 > 其它

webrtc 视频通话质量的评价方法

2017-06-19 19:28 281 查看
webrtc 视频通话质量的评价方法(待完善)

评价内容:
  视频通话画面质量基本KPI包括:PSNR,时延,丢帧,抖动等

评价方法:
  step1. 发送端和接收端视频帧信息采集
     a. YUV frame dump:webrtc中,encoder之前及decoder之后,有提供专门的callback函数,用来对YUV frame做处理,这里只需将YUV保存到本地文件即可
     b. frame采样时间戳:该时间戳在encoder之前打, encoder之前可能做了降采样
     c. 系统NTP时间:用于计算帧从发送端采集到接收端显示的真实时延
     d. 发送者和接收者NTP差:每个视频接收/发送端的NTP时间与标准时间都可能有一点的误差,也就是说,计算视频帧从发送端到接收端的时间,不能直接用
        两个系统时间相减,还要考虑设备的NTP时间差。这里我们用NTP校时的原理,并结合RTCP工作机制来估计两个设备的NTP差,具体而言:
          设备间NTP差 = 设备2收到包的本地NTP时刻 - 设备1发送包的NTP时刻 - RTT/2 (RTT: round trip time)
        由于RTT随着网络在不停变化,该NTP时间差也要做相应调整,我们将其记录在视频发送端

  step2. src和dst视频帧的对齐。
      由于使用UDP在网络中传输视频,可能会出现丢帧的情况,因此要想对比src和dst的帧信息,第一步要做的视频就是让dump到文件中的视频帧对齐,具体方法:
      a. 在src YUV图像中嵌入12位序列号,可用来标识4096帧,具体操作不详细描述
      b. 利用帧时间戳配合序列号来做双重检查

  step3. 计算画面质量:
     a). PSNR, 帧对齐的基础上计算PSNR
     b). 时延:帧对齐基础上,接收NTP时刻T1-发送NTP时刻T2-设备NTP差
     c). 丢帧:查看接收端帧的序列号是否连续
     d). 抖动:查看接收端帧的显示时刻间距是否均匀
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: