自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(16)
  • 收藏
  • 关注

原创 CamX Sensor Debug指南----CamX 强制让Sensor走某个Mode

camxoverridesettings提供了debug方法,将overrideForceSensorMode设置为想要的sensor mode,这样就会跳过sensor mode的选择逻辑,直接使用设置的sensor mode。在CamX中,因调试需要有时候希望Sensor能强制进某个Sensor mode,如何设置呢?表示前置选择Senosr Mode 3。

2022-12-01 16:06:46 677 1

原创 CamX Sensor Debug指南----CamX 查看Sensor走的哪种Mode

首先确保core config的log是有打开的,logCoreCfgMask全部填成0xFFFFFFFFFFFFFFFF。在CamX中,如何知道当前Sensor选择的哪个Mode呢?上图表示选择的Sensor Mode为2。复现问题后,在log中搜索如下关键字。

2022-12-01 16:04:38 673

原创 CamX 性能Debug指南----Android 查看当前各CPU的频率

首先,手机要root才能查看,可以执行如下命令查看各CPU当前运行频率,先进入adb shell。在Android中,如何查看当前各CPU的频率呢?

2022-12-01 15:27:20 829

原创 CamX 性能Debug指南---Android 抓取Ftrace

注意:Ftrace打开后Perfetto无法正常工作,他们是互斥的。在Android中如何抓取Ftrace呢?

2022-12-01 15:24:34 405

原创 CamX 性能Debug指南---CamX从systrace查看Sensor出图帧率

在高通CamX架构中,如何从systrace查看Sensor出图帧率?注意:该方法不适用于Perfetto,只能使用Systrace。然后抓systrace, 通过notepad++打开,搜索。首先打开camera kernel trace。

2022-12-01 15:22:00 793

原创 CamX 性能Debug指南---CamX在HAL中输出帧率日志打印

将如下两行setting添加到camxoverridesettings.txt中。在高通CamX中,如何从HAL角度看输出的帧率呢?然后搜索:CalculateResultFPS。

2022-12-01 15:21:16 880

原创 CamX ISP Debug指南---CamX 判断kernel是否有发生丢帧

上面的日志表示,sensor没有及时收到用户空间送Request下来而导致Kernel丢帧。可以在dmesg中搜索skip,如果有 Skip Frame 打印则表示丢帧了。在CamX中,如何判断kernel是否有发生丢帧?

2022-11-17 17:14:30 681

原创 CamX ISP Debug指南---CamX ISP Hardware Event日志分析

要分析高通ISP Hardware Event(IRQ)的日志,首先要打开ISP Debug log。以TFE为例,每个Output port 都会有Buffer Done Event发生,定义在。Sensor送给ISP的每帧数据会有一个SOF和一个EOF与之对应。Event ID定义在。

2022-11-17 17:11:25 1543

原创 CamX Log和Trace开关----CamX中如何控制KMD的Debug Log和Trace打印

具体的模块定义在:techpack/camera/drivers/cam_utils/cam_debug_util.h。然后,通过echo命令写到/sys/module/camera/parameters/debug_mdl,首先,确定要打开哪些模块的Log,然后将这些模块的值与在一起,转换成十六进制。在CamX中,如何控制KMD的debug log和trace打印呢?

2022-11-17 17:04:47 1430 1

原创 手机中的多摄融合,全焦段的高清体验

如果我调研的没错,最早在手机上提出异种摄像头融合提升图像质量的,是以色列公司Core Photonics,这家公司在2014年时在业界第一次展示了3种不同的通过手机双摄融合提升最终图像质量的系统,这包括了能提供2倍变焦能力的HummingBird系统,能进行RGB+MONO融合的Night Owl系统,以及能进行3倍变焦的"Falcon"系统和能进行4倍变焦的"HawkEye"系统。而由于光流算法在二维上进行搜索,还需要考虑更多的问题,例如计算量,以及因为某些像素的运动过大导致的匹配困难的问题。

2022-11-17 16:29:34 977

原创 高通 Camx debug log控制

某天,在某网站上看到一句话,“log开的好,问题都能搞”。问题能不能都搞好不知道,不过log开的好,对分析问题的确有很大的帮助。高通camx的日志主要分2大模块,UMD (user mode driver) 和KMD( kerner mode driver),也就是用户层和kernel层日志。下面就来看下这2大块日志debug的时候该如何设置?一、UDM日志高通camx camera debug日志格式如下:CamX: [][] : .例子:CamX: [INFO][CORE] camxexamplefi

2022-11-17 15:53:10 1576

原创 Android Camera之createCaptureSession()中Deferred Surface

前言在前面有跳过关于Deferred surface的介绍,在这一节里单独拎出来介绍一下,在CameraDeviceClient::createStream()中,当发现上面传下来的这个OutputConfiguration有设置deferred,并且没有任何BufferProducer时,就会走进createDeferredSurfaceStreamLocked(),并直接返回,下面就简单地介绍一下子。目的:Deferred Suface即延迟创建Surface,目的是优化Camera的启动性能。因为

2022-07-21 17:30:13 282

原创 createCaptureSession()

以上完成后,APP就可以得到一个创建好的CaptureSession了,APP就可以通过这个Session和底层通话了。1、对每一路stream,都会根据这路stream的配置信息调用一次mRemoteDevice.createStream(),这个将在后面的nativeframework层具体讲述,这里需要注意的是mRemoteDevice.createStream()这个方法只是创建了一路stream(即时序图中的红框部分),所以这次有多少路要新配置的stream,就会被调用多少次。...

2022-07-21 15:04:39 1605

原创 Andriod Camera之Open Camera

Hal层必须要去实作这些Interface,这部分是由各个厂商(比如MTK、高通)的去实作的,因此不同厂商的平台在这部分是会有差异的,这里就不细讲了。这个callback参数是一个回调对象,用来接收这个CameraDevice的状态变化情况的,这个回调对象里有提供几个回调函数(onOpened()、onClosed()、onError()、onDisconnected()),APP必须要去实作这些方法,以便于底层的CameraDevice切到对应的状态后,APP能够做出对应的反应。...

2022-07-19 15:26:17 1330

原创 Android Camera抢占机制——handleEvictionsLocked()

目录背景抢占机制的位置抢占机制的原理总结:背景在Android系统中,当一个Client去open Camera时,可能会存在有其他Client也在使用camera的情况,然后由于设备之间的冲突关系或者系统带宽资源因素的限制,不得不进行一次角逐,将某些Client与其所连接的Camera断开以让出资源假如现在系统中client A正在使用Camera,而此时Client B也要去open Camera,就会走到Android的抢占处理机制,抢占机制的决策结论可能会是以下三者之一:1、Client A 与其

2022-07-14 15:30:13 1763 2

转载 Android Camera HAL3中预览preview模式下的数据流

Software:系统源码Android5.1前沿:为了更好的梳理preview下buffer数据流的操作过程,前一文中对surface下的buffer相关的操作架构进行了描述。本文主要以此为基础,重点分析再Camera2Client和Camera3Device下是如何维护并读写这些视频帧缓存的。Camera3Device::convertMetadataListToRequestLis...

2019-06-12 10:19:16 1485

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除