OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 5236|回复: 7

阿波罗网络摄像头图传上位机APP

[复制链接]

37

主题

477

帖子

2

精华

金牌会员

Rank: 6Rank: 6

积分
2285
金钱
2285
注册时间
2017-8-24
在线时间
375 小时
发表于 2018-6-26 16:38:04 | 显示全部楼层 |阅读模式
本帖最后由 xcc521 于 2018-6-26 16:59 编辑

鉴于开发板图传程序附带的上位机只有PC端的,所以做了一个手机端的APP,功能也是接收开发板发送来的图像(视频)
还没做图片保存

public void readImage(Socket socket)
        {
            try
            {
                InputStream in = socket.getInputStream();
                BufferedInputStream bis = new BufferedInputStream(in);
                Bitmap bitmap = BitmapFactory.decodeStream(bis);//这个好像是android里的
     
                File f = new File(mfilePath);
                File bmpFile = new File(mfilePath, "screen.png");
                if (!f.exists()) {
                    f.mkdirs();
                }
                if (bmpFile.exists()) {
                    bmpFile.delete();
                }
                FileOutputStream out = new FileOutputStream(bmpFile);
                bitmap.compress(Bitmap.CompressFormat.PNG, 100,out);
                bis.close();
                in.close();

            }
            catch(Exception ex)
            {
                Log.v(TAG, ex.getMessage());

            }
            finally
            {
                Message msg = new Message();
                msg.what = 1;  //说明有图片更新
                mHandler.sendMessage(msg);
                Log.v(TAG, "接收到图片,准备handler消息更新界面");
            }
        }

原理大概这样子


Screenshot_2018-06-26-14-07-55-084_xdtech.netcame.png

Screenshot_2018-06-26-14-08-13-720_xdtech.netcame.png

Screenshot_2018-06-26-14-20-41-303_xdtech.netcame.png
新增端口号及IP合法性检测
Screenshot_2018-06-26-14-46-39-757_xdtech.netcame.png
新增虚拟摇杆和坐标显示(暂时没有发送)
Screenshot_2018-06-26-15-15-57-242_xdtech.netcame.png

Screenshot_2018-06-26-15-16-21-747_xdtech.netcame.png
图传APP_V3.0.1.zip (1.08 MB, 下载次数: 103)
天然懒,天然呆
能吃会睡,未来可期
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

88

主题

7377

帖子

5

精华

资深版主

Rank: 8Rank: 8

积分
14980
金钱
14980
注册时间
2013-11-13
在线时间
1823 小时
发表于 2018-6-26 17:29:01 | 显示全部楼层
回复 支持 反对

使用道具 举报

37

主题

477

帖子

2

精华

金牌会员

Rank: 6Rank: 6

积分
2285
金钱
2285
注册时间
2017-8-24
在线时间
375 小时
 楼主| 发表于 2018-6-29 09:20:30 | 显示全部楼层
实测了一下发现传输效果不好,基本上一张图片过去就不动了,调试了下发现BMP和PNG格式图片基本上100%成功传输,而对于jpg压缩图片则得约3次发送才可以成功显示一次,AndroidStdio控制台显示调试信息:06-26 20:02:34.120 21757-22111/xdtech.netcamera D/skia: --- SkImageDecoder::Factory returned null
网上说的因为inputstream第一次使用之后需要reset一下,按照上述做法尝试了一下之后,
06-26 19:54:55.740 15491-15491/xdtech.netcamera D/Configuration: o.defaultFontName:null
06-26 19:55:15.900 15491-15918/xdtech.netcamera I/System.out: Start Connect
06-26 19:55:15.940 15491-15918/xdtech.netcamera I/System.out: Connect OK!
06-26 19:55:46.020 15491-15919/xdtech.netcamera W/System.err: java.io.IOException
06-26 19:55:46.020 15491-15919/xdtech.netcamera W/System.err:     at java.io.InputStream.reset(InputStream.java:208)
06-26 19:55:46.020 15491-15919/xdtech.netcamera W/System.err:     at xdtech.netcamera.Socket_Camera$1.run(Socket_Camera.java:98)
06-26 19:55:46.020 15491-15919/xdtech.netcamera W/System.err:     at java.lang.Thread.run(Thread.java:818)
06-26 19:55:46.020 15491-15919/xdtech.netcamera D/skia: --- SkImageDecoder::Factory returned null
而且还异常了,最后自己又在接收之前加了个清空,不过还是有时候接收到的图像显示不出来
分析了一下,首先OV5640不能输出PNG,RGB565又太大了,不方便传输,还是要保持jepg
安卓端怎么能安全稳定的解析inputstream,因为压缩图片又是在流中,所以一是比较吃内存,另外连续快速接收和解码也有点困难,可能还有其他方法吧,还是要再尝试一下
还有可能底层把图片文件的0x00间隔也发过来导致为空,底层也需要在看一下,后面测试一下再更新吧
天然懒,天然呆
能吃会睡,未来可期
回复 支持 反对

使用道具 举报

1

主题

7

帖子

0

精华

新手上路

积分
40
金钱
40
注册时间
2020-1-1
在线时间
14 小时
发表于 2020-4-9 16:37:27 | 显示全部楼层
你好,我是学电子的学生,我毕业设计需要制作一个类似的apk,想问一下有什么制作apk的资料或者书呢,实在是有点无从下手
回复 支持 反对

使用道具 举报

1

主题

7

帖子

0

精华

新手上路

积分
40
金钱
40
注册时间
2020-1-1
在线时间
14 小时
发表于 2020-4-15 19:25:36 | 显示全部楼层
大佬,我用socket连接,然后按你的程序,再用setImageBitmap把图片显示出来,编译没问题,但是在手机测试显不出图片,大佬能把apk源码发我一下吗
回复 支持 反对

使用道具 举报

28

主题

92

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
462
金钱
462
注册时间
2019-3-30
在线时间
86 小时
发表于 2020-4-16 13:52:37 | 显示全部楼层
谢谢,谢谢分享,最近学东西,刚好想用一下,,,牛牛
回复 支持 反对

使用道具 举报

37

主题

477

帖子

2

精华

金牌会员

Rank: 6Rank: 6

积分
2285
金钱
2285
注册时间
2017-8-24
在线时间
375 小时
 楼主| 发表于 2020-4-17 08:41:53 | 显示全部楼层
回复 支持 反对

使用道具 举报

37

主题

477

帖子

2

精华

金牌会员

Rank: 6Rank: 6

积分
2285
金钱
2285
注册时间
2017-8-24
在线时间
375 小时
 楼主| 发表于 2020-4-17 08:44:05 | 显示全部楼层
天然懒,天然呆
能吃会睡,未来可期
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-5-25 11:08

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表