android camera 显示过程,Android Camera2 API显示已处理的预览图像
澄清问题后编辑;最初的答案在底部
取决于您在哪里进行处理.
如果您正在使用RenderScript,则可以将Surface从SurfaceView或TextureView连接到分配(使用setSurface),然后将处理后的输出写入该分配并使用Allocation.ioSend()将其发送出去. HDR Viewfinder demo使用这种方法.
如果您正在进行基于EGL着色器的处理,则可以使用eglCreateWindowSurface将Surface连接到EGLSurface,将Surface作为native_window参数.然后,您可以将最终输出渲染到该EGLSurface,当您调用eglSwapBuffers时,缓冲区将被发送到屏幕.
如果您正在进行本机处理,则可以使用NDK @L_404_4@写入从Java和convert传递到ANativeWindow的Surface.
如果你正在进行Java级处理,那真的很慢而且你可能不想这样做.但是可以使用新的Android M ImageWriter类,或者每帧上传一个纹理到EGL.
或者如您所说,每帧都绘制一个ImageView,但这样会很慢.
原始答案:
如果要捕获JPEG图像,只需将ByteBuffer的内容从Image.getPlanes()[0] .getBuffer()复制到byte []中,然后使用BitmapFactory.decodeByteArray将其转换为Bitmap.
如果您正在捕获YUV_420_888图像,那么您需要将自己的转换代码从3平面YCbCr 4:2:0格式写入您可以显示的内容,例如RGB []的RGB值来创建位图;遗憾的是,还没有一个方便的API.
如果您正在捕获RAW_SENSOR图像(拜耳模式未处理的传感器数据),那么您需要进行大量图像处理或只需保存DNG.
android camera 显示过程,Android Camera2 API显示已处理的预览图像相关推荐
- android自定义videoview,android-如何在播放前在videoview中设置预览图像
android-如何在播放前在videoview中设置预览图像 我在活动中创建了VideoView,下面是代码. VideoView vvVideos = (VideoView) rootView.f ...
- android surfaceview 大小_Android 使用Camera2 API采集视频数据
Android 视频数据采集系列的最后一篇出炉了,和前两篇文章想比,这篇文章从系统API层面进行一些探索,涉及到的细节更多.初次接触 Camera2 API 会觉得它的使用有些繁琐,涉及到的类有些多, ...
- android camera 工作原理,Android Camera原理之openCamera模块(一)
我们平时开发,知道怎么调度api,怎么调起camera,怎么调用camera的实例来操作camera就可以了,但是这些调度的背后都做了什么事情,我们可能不太清楚,本文打算从openCamera这个调用 ...
- android camera 显示过程,Android相机Camera基础知识
一.概述本章节主要讲述的Android相机Camera的相关知识点,主要包含三个方面,Android启动系统相机生成缩略图.Android启动系统相机生成原图以及Android自定义相机等. 二.An ...
- android camera捕捉,通过android camera2 API捕捉4:3相机图片与16:9传感器阵列相机
我想从使用Camera2 API(Android 5.0版本中添加)的Android fron-facing相机以4:3的宽高比捕捉视频.它工作正常,除非相机有16:9传感器阵列(作为三星Galaxy ...
- android camera 对焦大小,Android camera2对焦设置
在android camera2 api 开始,提供了对焦距值(非zoom值)的设置,大概步骤如下: (1)先关闭自动焦距模式 mPreviewBuilder.set(CaptureReques ...
- android camera设置分辨率,Android Camera2预览输出大小
我正在尝试使用Camera2 API通过ImageReader(YUV_420_888格式)设置相机预览.首先,我需要选择支持的预览尺寸: StreamConfigurationMap scmap = ...
- android camera 全屏,Android Camera做全屏预览之最简单方法.doc
Android Camera做全屏预览之最简单方法 M厂开发五部:刘 博 一.全屏预览与非全屏预览的区别 对于大多数人来说,我们看电影.玩游戏等都喜欢全屏,我们之所以喜欢全屏的一个主要原因就是全屏的感 ...
- android camera 拍照流程,Android -- Camera源码简析,启动流程
com.android.camera.Camera.java,主要的实现Activity,继承于ActivityBase. ActivityBase 在ActivityBase中执行流程: onCre ...
最新文章
- python sql注入漏洞 ctf_CTF-WEB 一个登录框SQL盲注
- 改进程架构,Edge优化浏览器内存问题
- 2019年程序员薪酬报告:平均年薪超70万!40岁后,这类人不“保值”了
- EXP-00011: XX.tab does not exist
- NASM汇编语言与计算机系统16-保护模式-全局描述符表GDT
- Atom 备份神器 —— Sync Settings
- 2019四川大学第二届SCUACM新生赛题解
- 独家深访陈光明:对内经营人才,对外经营信任
- Linux基础软件威胁疑云:从已知到“未知”
- 简信CRM:什么样的企业适合引入CRM管理系统?
- 近期Centos7下常用指令(1)
- Intellij idea旗舰版最新免费破解使用方法(针对在校学生)
- Oracle 的 表空间(Tablespace)、用户(User)、模式(Schema)
- 最新文本转语音的接口(免费),百度语音作废
- JAVA集合05_Collection.toMap()应用、三个重载方法、解决重复key问题
- Word2007 表格换页自动“续表”方法
- 【解决】CSS下拉菜单不会显示的问题
- 生成式对抗网络(GAN)-(Generative Adversarial Networks)算法总结(从原始GAN到....目前)
- matlab中alw,MATLAB环境下遗传算法优化工具箱的应用_刘万林
- 心态很容易受别人影响_孩子在学校受了委屈,家长该如何做?
热门文章
- Libcurl的介绍
- sublime text3安装插件 emmet
- 1102 Invert a Binary Tree(甲级)
- php5.5升级到php5.6,从php5.5.9升级到php5.6之后,相当于php5enmod?
- python分类下取得所有子类_如何找到给定名称的类的所有子类?
- linux脚本实现红绿灯,javascript 如何实现红绿灯效果呢?
- 我写的博客居然是百度搜索第一名 - 感谢国家 …
- 地图点儿莱唔点儿康的新功能 – 路况 和 短信
- php 导出txt 缩进,indent - 缩进文本
- 冯提莫在B站的受欢迎度