本讲是Android Camera性能分析专题的第10讲,我们介绍在Camera App或Java Framework添加trace,包括如下内容:
资源 | 描述 |
---|---|
在线课程 | 极客笔记在线课程 |
知识星球 | 星球名称:深入浅出Android Camera 星球ID: 17296815 |
极客笔记圈 |
C/C++ Trace类说明
头文件
/system/core/libcutils/include/cutils/trace.h
/system/core/libutils/include/utils/Trace.h
#include <utils/Trace.h>
依赖的库
libcutils.so
libutils.so
API说明
cutils/trace.h | 描述 |
---|---|
ATRACE_BEGIN(name) | 在一个函数中打印Trace开始标记,会显示在某个线程中 |
ATRACE_END() | 在一个函数中打印Trace结束标记,会显示在某个线程中 |
ATRACE_ASYNC_BEGIN(name, cookie) | 打印异步Trace开始标记,cookie用来区分相同name不同的异步Trace,会独立成一行Trace显示 |
ATRACE_ASYNC_END(name, cookie) | 打印异步Trace结束标记,cookie用来区分相同name不同的异步Trace,会独立成一行Trace显示 |
ATRACE_INT(name, value) | 以给定计数器的值打印Trace |
ATRACE_INT64(name, value) | 以给定计数器的值打印Trace |
ATRACE_ENABLED() | 判断是否Trace打开了 |
utils/Trace.h | 描述 |
---|---|
ATRACE_NAME(name) | ATRACE_BEGIN(name) 和 ATRACE_END() 简写形式 |
ATRACE_CALL() | ATRACE_BEGIN(name) 和 ATRACE_END() 简写形式,name固定为方法名 |
实战:在CameraServer的Trace中显示每路stream的帧率
录像过程中两路Stream的FPS