| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 移动开发 -> camera技术总结 -> 正文阅读 |
|
[移动开发]camera技术总结 |
1、摄像头Camera的基本操作:初始化操作和销毁操作 1》初始化操作:调用open方法直接打开摄像头,然后设置预览载体,在设置摄像头的一些参数信息,最后设置每一帧的回调接口,开始预览效果。 2》销毁操作:置空每一帧的回调接口,停止预览效果,释放摄像头 2、摄像头Camera的前置和后置效果 Android中的前置摄像头和后置摄像头切换是通过把之前的一个摄像头释放,然后在重新初始化下一个摄像头,同时用一个全局的变量来标志当前摄像头的状态即可,使用open带有参数的形式来决定打开那种摄像头。 3、摄像头Camera的数据格式处理 Android中的Camera的数据格式是可以设置的,但是摄像头只支持两种格式NV21和YV12,所以我们在后续的数据二次处理就需要做数据格式转化,一般都是把数据转化成ARGB格式或者是视频编码的YUV420格式。 4、摄像头Camera的尺寸和方向设置 1》Android中的Camera可以获取到当前所支持的尺寸大小,但是需要注意的是,因为Camera默认的方向模式是:横屏+0度旋转,所以宽度*高度尺寸是针对于横屏来说的,所以看到这些尺寸都会发现宽度比高度值大。如果设备是竖屏的话,我们需要做一次尺寸调换。同时可以支持两种方式设置尺寸大小的,一个是可以设置预览的尺寸大小,而这种大小将会同步到到每一帧原始数据的尺寸大小的,还有一个就是可以设置拍照之后的图片大小。 2》Android中的Camera的可以支持两种方向设置的,一种是预览方向设置,还有一种是拍照之后的图片方向设置,这里我们学习到了图片的exif信息处理。但是唯独没有每一帧原始数据的方向设置,所以我们后续再处理每一帧数据的时候需要手动的做一次方向旋转,旋转的时候还要区分前置摄像头和后置摄像头的旋转角度。 5、摄像头Camera对焦拍照 Android中Camera可以通过autoFocus方法设置对焦回调方法,然后在使用takePicture方法设置回调方法获取拍照之后的图片数据,可以直接保存成图片即可。无需数据格式转化。 6、摄像头Camera的原生每一帧数据采集 这个知识点是最重要的,是后续推流和编码的核心点,他能够获取到摄像头的每一帧数据,我们可以在这里做二次处理,比如把原生的NV21/YV12数据格式转化成ARGB格式,然后添加水印效果。 ? ? |
|
移动开发 最新文章 |
Vue3装载axios和element-ui |
android adb cmd |
【xcode】Xcode常用快捷键与技巧 |
Android开发中的线程池使用 |
Java 和 Android 的 Base64 |
Android 测试文字编码格式 |
微信小程序支付 |
安卓权限记录 |
知乎之自动养号 |
【Android Jetpack】DataStore |
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2025年2日历 | -2025/2/5 20:08:32- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |