AOA_send_camer_data

2023-12-17 20:35:22

Host端

Host 端获取到Camera 数据流经过Mediacodec编码后为H264流发送到另一个设备上面进行显示预览; /**1.建立AOA通信
*2.获取Camera预览数据流
*3.对Camera进行编码为H264
*4.发送数据到device端,AOA数据发送最大量为16K(分包处理)
*5.接收到数据后Mediacodec进行解码显示;
*/

调试过程出现的问题: 直接接收到host端发送过来的数据,进行解码会出现卡顿丢帧问题; 原因:发送过来后,直接解码,是耗时操作,第一帧解码完成后,已经是第N帧的数据了,又开始解码第
N帧的数据;所以中间会丢失几帧数据,所以表现出来的就是卡顿;

解决:接收到host端数据后,进行缓存到,使用ArrayBlockingQueue(阻塞队列)即可解决数据丢失问题;

MainActivity.java


import android.Manifest;
import android.app.PendingIntent;
import android.content.Context;
import android.content.Intent;
import android.content.IntentFilter;
import android.content.pm.PackageManager;
import android.graphics.ImageFormat;
import android.graphics.SurfaceTexture;
import android.hardware.Camera;
import android.hardware.usb.UsbConstants

文章来源:https://blog.csdn.net/weixin_38148680/article/details/128455506
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。