android 视频传输 udp 丢包严重,某些Android设备上的UDP丢包严重

在某些Android设备如Turbox Rubik II平板电脑和ASUS Memo Pad HD 7上,应用程序在接收通过UDP传输的832字节视频数据包时遇到严重丢包问题。设备通过特定Wifi连接,并在17216端口接收数据,以每秒4个的频率发送。尽管其他设备正常工作,受影响设备的数据包接收呈现间歇性丢失,丢包率可能超过50%。开发者尝试了数据包嗅探器和改变硬件状态(如开启/关闭蓝牙)来诊断问题,但未找到根本解决方案。问题可能与设备硬件或代码实现有关。
摘要由CSDN通过智能技术生成

我没有结果地搜查了interwebz.我们正面临着一些Android设备遭遇严重丢包的问题.为了给出一些背景知识,应用程序连接到特定的Wifi并查找在端口17216上广播的UDP数据包.这些数据包的大小为832字节,不包括包装的标头,并以每秒四个的常规速率发送.

我们只在两台设备上遇到了问题,一台低端的Turbox Rubik II平板电脑和一台ASUS Memo Pad HD 7.我们测试过的其他设备(手机和平板电脑)都按照规定的时间间隔收集数据包.

接收数据包的功能如下:

public void run()

{

while (isUDPServerRunning)

{

try

{

socket.receive(packet);

ProcessRawPacketData();

DisplayLoggingInfo();

}

catch (IOException e)

{

Log.e("receive", e.getMessage());

e.printStackTrace();

}

}

}

这是一个部分Runnable.这样创建套接字:

byte[] buffer = new byte[1024];

DatagramSocket socket;

DatagramPacket packet = new DatagramPacket(buffer, buffer.length);

在onCreate()我们的Service扩展方法中初始化套接字:

socket = new DatagramSocket(SERVERPORT);

Wifi模

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值