Android Camera Surface显示相关问题总结

1.默认创建的Preview Surface填充RGBA数据显示异常。

//界面创建的Surface format默认为4(RGB_565),而预览界面所需的格式是RGBA_8888
ANativeWindow_setBuffersGeometry(window, width, height, WINDOW_FORMAT_RGBA_8888);

2.调用ANativeWindow的dequeueBuffer出错,返回值为-19(NO_INIT),错误信息为“requestBuffer: BufferQueue has no connected producer”。

//调用window请求buffer之前需要先将buffer添加到BufferQueuenCore中
native_window_api_connect(window, NATIVE_WINDOW_API_CPU)

3.执行添加/移除/添加同一Surface界面时,出现-22(BAD_VALUE),错误信息为“connect: already connected (cur=%d req=%d)”。

//移除surface时要将window对应从BufferQueuenCore中删除
native_window_api_disconnect(window, NATIVE_WINDOW_API_CPU)

4.调用ANativeWindow的dequeueBuffer出错,返回值为-11(WOULD_BLOCK),对应可能原因是暂时无法申请到slot或者freebuffer。dequeueBuffer接口和queueBuffer接口需要配套使用,dequeueBuffer申请buffer成功后,不管中间出现什么问题,都应该调用queueBuffer送还buffer,否则会出现当前线程使用占据着buffer使用权,后续线程申请buffer无法成功的情况。

ANativeWindowBuffer* buffer;
int fd;
sp<ANativeWindow> window = surface;
//dequeueBuffer和queueBuffer配套使用
window->dequeueBuffer(window.get(), &buffer, &fd);
window->queueBuffer(window.get(), buffer, fd);

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/177987.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

系统入侵与提权

系统入侵与提权 一、信息搜集 1. 主机扫描 (1)扫描某个网段内存在的主机 (2)扫描主机开放的端口和服务 (3)扫描主机的操作系统和版本号 (4)扫描主机可能存在的已知漏洞 2. Web扫描 (1)查询域名和子域名信息 (2)查询whoid信息 (3)扫描Web应用的URL路径 (4)扫描Web应用后台管…

【实验记录】论文阅读(杂七杂八)

1.基于视觉语义路标的智能手机室内定位与建图研究_高煜昕 p19 介绍了智能终端的数据集ADVIO数据集&#xff0c;使用iPhone采集&#xff0c;针对视觉和惯导联合开发&#xff0c;具有描述真是复杂场景以及高质量真值的优点。 p20 论证了vins-mono、vins-fusion和orb-slam3等主流…

Go GORM简介

GORM&#xff08;Go Object-Relational Mapping&#xff09;是一个用于Go语言的ORM库&#xff0c;它提供了一种简单、优雅的方式来操作数据库。GORM支持多种数据库&#xff0c;包括MySQL、PostgreSQL、SQLite和SQL Server。以下是GORM的一些主要特性 全功能ORM&#xff1a;GORM…

提升企业网络安全的得力助手——EventLog Analyzer网络日志管理

在当今数字化时代&#xff0c;企业的网络安全问题变得尤为重要。为了更好地应对日益增多的威胁和安全漏洞&#xff0c;企业需要一种高效的网络日志管理工具&#xff0c;EventLog Analyzer便是其中一款卓越的解决方案。 EventLog Analyzer EventLog Analyzer是一款综合性的网络…

C#通过NPOI 读、写Excel数据;合并单元格、简单样式修改;通过读取已有的Excel模板另存为文件

文章目录 1 需要引用的DLL2 调用示例3 工具类 1 需要引用的DLL 2 调用示例 public static void WriteExcel() {string templateFile "F:\12312\excel.xlsx"; // 文件必须存在string outFile "F:\12312\" DateTime.Now.ToString("yyyyMMddHHmmssff…

逆向 tg 发送图片

开发工具 工具名称工具类型说明AndroidStuduo编辑工具开发工具jadxjava工具将apk解成java项目xposed插件工具插件tg版本9.7.5 分析源码的点&#xff1a; 发送图片的点 获取sendMessageParams 获取TLRPC$TL_photo 回调 实现 public void sendImg(String path, String…

NI自动化测试系统用电必备攻略,电源规划大揭秘

就像使用电脑之前需接通电源一样&#xff0c;自动化测试系统的电源选择也是首当其冲的问题&#xff0c;只不是这个问题更复杂。 比如&#xff0c;应考虑地理位置因素&#xff0c;因为不同国家或地区的公共电网所提供的线路功率有所不同。在电源布局和设备选型方面&#xff0c;有…

商城系统通过Kafka消息队列,实现订单的处理和状态更新

以下是一个简单的Spring Boot应用程序示例&#xff0c;演示如何使用Kafka实现订单的处理和状态更新。 首先&#xff0c;我们创建一个名为“order”的topic&#xff0c;在application.yaml配置文件中添加Kafka的配置&#xff1a; spring:kafka:bootstrap-servers: localhost:9…

每日一题(LeetCode)----哈希表--两个数组的交集

每日一题(LeetCode)----哈希表–两个数组的交集 1.题目&#xff08;[349. 两个数组的交集](https://leetcode.cn/problems/valid-anagram/)&#xff09; 给定两个数组 nums1 和 nums2 &#xff0c;返回 它们的交集 。输出结果中的每个元素一定是 唯一 的。我们可以 不考虑输出…

《深入理解计算机系统》学习笔记 - 第三课 - 位,字节和整型

Lecture 03 Bits,Bytes, and Integer count 位&#xff0c;字节&#xff0c;整型 文章目录 Lecture 03 Bits,Bytes, and Integer count 位&#xff0c;字节&#xff0c;整型运算&#xff1a;加&#xff0c;减&#xff0c;乘&#xff0c;除加法乘法取值范围乘法结果 使用无符号注…

Python Web包就业服务

还在等什么&#xff0c;加入我们&#xff0c;包就业

几何教学工具 Sketchpad几何画板 mac软件特色

Sketchpad几何画板 for Mac是一款适用于macOS系统的几何教学工具&#xff0c;用户可以在其画板上进行各种几何图形的绘制、演示&#xff0c;帮助教师了解学生的思路和对概念的掌握程度。此外&#xff0c;Sketchpad更深层次的功能则是可以用来进行几何交流、研究和讨论&#xff…

js手写面试题【附带注释】

文章目录 前言数组方法手写pushpopshiftunshiftcancatslicespliceforEachmapreducefind 手写订阅发布手写单例模式后言 前言 hello world欢迎来到前端的新世界 &#x1f61c;当前文章系列专栏&#xff1a;javaScript &#x1f431;‍&#x1f453;博主在前端领域还有很多知识和…

代码安全-exe的代码签名和代码混淆加密

信息安全相关 - 建设篇 第四章 代码安全-exe的代码签名和代码混淆加密 信息安全相关 - 建设篇系列文章回顾代码安全-exe的代码签名和代码混淆加密前言实施步骤C#程序的程序集引用使用强命名(可选)Windows Server AD CA 制作自定义的证书模板,用于代码签名生成拥有自签名CA的代…

Java并发编程CAS

目录 CAS是什么 CAS存在问题 ABA问题 CPU开销大 不能保证代码块的原子性 CAS实例 CAS是什么 CAS(Compare and Swap,比较并交换)是一种并发编程中的原子操作,用于实现多线程环境下的无锁同步。它是一种乐观锁策略,通过比较内存中的值与期望值是否相等来决定是否更…

机柜浪涌保护器行业应用解决方案

机柜浪涌保护器是一种用于保护机柜内电子设备免受雷电或其他瞬时过电压影响的装置&#xff0c;它可以有效地限制或引导电涌电流&#xff0c;避免设备损坏或数据丢失。机柜浪涌保护器广泛应用于通信、电力、工业控制、医疗、安防等领域&#xff0c;是保障机柜系统安全稳定运行的…

龟兔赛跑python小游戏

# turtle控制游戏角色&#xff0c;Screen控制画布 from turtle import Turtle,Screen import time# 创建画布 screen Screen()# 改变画布大小 screen.setup(1200,600)# 设置背景图&#xff08;必须是gif格式&#xff09; screen.bgpic(背景图.gif)# 设置乌龟的角色 screen.reg…

centos服务器扩容

centos服务器扩容 我的情况是&#xff0c;原服务器是一个80g磁盘&#xff0c;管理员又追加了120G到这块磁盘上&#xff0c;需要把这120G重新追加使用。 请确认你遇到的情况是否和我初始截图一致&#xff0c;再往下看&#xff0c;免得浪费时间与精力 服务器中有120G尚未使用&…

JavaEE(SpringMVC)期末复习(选择+填空+解答)

文章目录 JavaEE期末复习一、单选题&#xff1a;二、多选题三、填空题四、解答 JavaEE期末复习 一、单选题&#xff1a; 1.Spring的核⼼技术是&#xff08; A &#xff09;&#xff1f; A依赖注入 B.JdbcTmplate C.声明式事务 D.资源访问 Spring的核心技术包括依赖注入&#x…

NOI / 1.8编程基础之多维数组 提问24:蛇形填充数组 c语言

描述 用数字1,2,3,4,...,n*n这n2个数蛇形填充规模为n*n的方阵。 蛇形填充方法为&#xff1a; 对于每一条左下-右上的斜线&#xff0c;从左上到右下依次编号1,2,...,2n-1&#xff1b;按编号从小到大的顺序&#xff0c;将数字从小到大填入各条斜线&#xff0c;其中编号为奇数的…