针对与source端录屏有问题,可以按照如下进行确认,
1.抓取source端的tcpdump数据,解码为RTP流,解析为视频,播放查看是否已经花屏,同时观察是否存在丢包和错序。
2.如果无法抓取source端的tcpdump数据,建议使用source与支持投频的电视或者各种盒子进行对比测试,观察现象。
针对传输的Wi-Fi通道存在问题。
1.在屏蔽房或者地下室WiFi干扰小的地方测试,排除信号干扰的原因,判断到底是不是WiFi传输的问题。
2.通过抓取空中包,分析空中包的丢包重传率,判断是否是WiFi传输出现的问题。
3.如果传输过程出现严重丢包问题,建议通过iperf,在miracast建立连接的情况下,测试下两个设备件的吞吐率,看下是否是性能不达标导致。
针对sink端解码存在问题,可以按照如下进行确认,
1.sink端用本地视频测试,排除网络因素的干扰。
2.抓取sink端的tcpdump数据,解码为RTP流,解析为视频,播放查看是否已经花屏,同时观察是否存在丢包和错序。
下面介绍下WireShark如何过滤tcpdump RTP数据流并解析为视频,
1.抓取tcpdump数据
adb shell tcpdump -i any -s 0 -w /data/tcpdump.pcap
2.筛选dup数据
3.解码为RTP流
4.RTP流数据分析并保存为视频
可以看到丢包率、错序数。
点击保存为原始视频数据,使用播放器进行播放。