Android Miracast 花屏问题分析

花屏问题,一般是下面的3种原因:
1.source端录屏有问题。
2.传输的Wi-Fi通道存在问题。
3.sink端解码存在问题。

可以通过以下几种case测试验证:

1.在屏蔽房或者地下室WiFi干扰小的地方测试,排除信号干扰的原因,判断到底是不是WiFi传输的问题。

2.问题复现时,sink端和source端是否在用蓝牙,蓝牙对WiFi有干扰作用,共存做的不好的话,干扰较大,测试时可以把蓝牙关闭。

3.sink端用本地视频测试,排除网络因素的干扰。

4.测试过程中是否在横竖屏不停的切换,这种场景下出现比较频繁,这种场景是否影响系统性能,从而影响录屏。

针对与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流数据分析并保存为视频

可以看到丢包率、错序数。

点击保存为原始视频数据,使用播放器进行播放。

下面介绍下WireShark如何分析空中包,查看丢包重传数据,

可以右击将该是否是重传数据添加到列进行显示,如添加后的Retry列,方便观察。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值