camera trace分析

在实际的camera app测试中,发现vsync-app信号出现异常,导致200多毫秒才发送一次,远高于正常17毫秒的间隔。这种延迟引发了6-7帧的卡顿,影响了用户体验。正确时序应保持稳定,避免帧率波动。
摘要由CSDN通过智能技术生成

实际项目中,camera app 实时帧率测试,我仔细研究了一下trace,发现这个vsync-app 信号是有问题的,按道理17ms发一次,比较均匀,但是从trace看要200多ms发一次。

所以,这个案例的200+ms 会导致6-7帧的卡顿。

通常,正确的时序大致如下:

 

要在Linux启动时启用trace,您可以按照以下步骤操作: 1. 首先,您需要在grub配置设置默认内核版本为带有trace功能的内核版本。您可以使用命令`grub2-set-default 'CentOS Linux (替换成自己的内核版本) 7 (Core)'`来设置默认内核版本。 2. 接下来,您可以调用trace事件来查看内核日志。首先,在终端执行以下命令以创建一个目录并将debugfs文件系统挂载到该目录: ``` mount mkdir data/debugfs mount -t debugfs debugfs /data/debugfs ``` 3. 然后,选择您想要追踪的tracer。您可以通过查看`current_tracer`和`available_tracers`文件来查看可用的tracer,并使用以下命令将所选的tracer设置为当前tracer: ``` cat current_tracer cat available_tracers echo blk > current_tracer ``` 4. 您可以打开或关闭您要追踪的日志。使用以下命令打开或关闭跟踪: ``` echo 1 > tracing_on // 打开跟踪 echo 0 > tracing_on // 关闭跟踪 ``` 如果您想在打开跟踪后执行某个操作并在关闭跟踪前进行跟踪,您可以使用以下命令: ``` echo 1 > tracing_on run_test echo 0 > tracing_on ``` 另外,如果您想要找到您感兴趣的trace event目录并打开或关闭它,您可以使用以下命令: ``` echo 1 > enable // 打开trace event目录 echo 0 > enable // 关闭trace event目录 ``` 5. 最后,您可以查看您关注的tracer的输出信息。根据您的需求,可以通过以下方式之一来查看trace的内容: - 使用`cat trace`命令直接阅读`trace`文件的内容。 - 使用`cat latency_trace`命令阅读`latency_trace`文件的内容,该文件保存了与`trace`相同的信息,但组织方式略有不同,主要用于方便分析系统与延迟相关的信息。 - 使用`cat trace_pipe | grep XXX`命令查找包含特定关键字XXX的内容。 例如,如果您希望查看相机(trace event)的输出信息,您可以执行以下命令: ``` adb root adb shell "echo 1 > /d/tracing/events/camera/enable" adb shell "echo 1 > /d/tracing/tracing_on" adb shell cat /d/tracing/trace_pipe | grep "CameraKeyWords" ``` 综上所述,这些是启用trace的步骤和方法。请根据您的需求选择适合您的方法并执行相应的命令。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值