3228是什么意思8在线翻译读音例句-雅思考试成绩查询
2023年3月30日发(作者:汽车日常保养常识)
GT_trace调试
目的:ARM端可以用TraceUtil显示一些信息,与printf功能类似。但是DSP端基本上只能靠这
个trace跟踪一些打印信息。
参考://TraceUtil
//CE_DEBUG
/link?url=ZicVLrpnsVplDEsSVqfR7YoucktWHJrlv8pA6XrL0VDWs
t_G2EevTUaH-pTEaloBIlrcc8oTH--ZBr7UHv5TbHWeH2WKqffrMJINX58XzwC
1、app端
在app端文件夹中的中进行相应的配置,以使能TraceUtilmodule。
varTraceUtil=ule(\'til\');
缺省设置使得GPP应用程序打印所有GPP侧的errors和warnings到标准输出,收集DSP侧errors和warning
到标准输出,不会使能或扑捉任何DSP/BIOSlogging。但芬的拼音 可以通过设置trace属性值
(NO_TRACING,DEFAULT_TRACING,SOCRATES_TRACING,FULL_TRACING)来修改输出内容,比如:
=ES_TRACING;//使能SOC分析器和DSP/BIOSlogging,GPP侧输出到
/tmp/,DSP侧输出到/tmp/,DSP/BIOSlogging输出到/tmp/。(但是此
处并没有找到tmp文件夹下有任何文件产生)此属性值关闭了所有tracing。如打开tracing,则:
=_TRACING;此种方法进过验证,可以得到所有的trace的信息。
在ceapp.c文件中,我们需要加入下面代码以支持TraceUtil:
先得中秋节的古诗词句
添加头文件
TraceUtil_start(engineName);
....
TraceUtil_stop();//app结束时调用
2、server端
在main.c文件中,我们定义如下:
#include
#include
/*/home/dvsdk_1_40_02_33/framework_components_2_10_02/packages/ti/sdo/utils/trace*/
/*traceinfo:modulename,mask*/
staticGT_MaskgtMask={0,0};//GT_trace类型变量定义
/*
*========main========
*/
Voidmain(Intargc,Char*argv[])
{
/*initCodecEngine*/
CERuntime_init();
/*inittrace*/
GT_init();
/*createamasktoallowatrace-printwelcomemessagebelow*/
GT_create(>Mask,\"_6467\");
/*...andinitializeallmasksinthismoduleto\"on\"*/
GT_set(\"_6467=01234567\");//将级别设置为7个级别
GT_0trace(gtMask,GT_4CLASS,\"main>WelcometoDSPserver\'smain().n\");
}
如果前面在GPP侧使用了DSP/BIOSlogging,则必须在DSPServerimage中也要使能DSP/BIOS
logging,配置脚本video_中添加:
varLogServer=ule(\'ver\');
3、codec端
在video_copy.c中加入诸如:GT_5trace(curTrace,GT_ENTER,\"VIDENCCOPY_TI_process(0x%x,
0x%x,0x%x,\"\"0x%x,0x%x)n\",h,inBufs,outBuf史记简介 s,inArgs,outArgs);这样的调试信息,我们在
中会有如下信息:
我们想把调试的log保存在一个文件中,可以用如下的命令:./|
video_copy例程编译日志见。
关于GT_*trace宏,以上我们使用GT_5trace宏来输出信息,同样的,我们还可以使用以下宏:
GT_0trace(mask,classId,format)
GT_1trace(mask,classId,format,arg1)
GT_2trace(mask,classId,format,arg1,arg2)
GT_3trace(mask,classId,format,arg1,arg2,arg3)
GT_4trace(mask,classId,format,arg1,arg2,arg3,arg4)
GT_5trace(mask,classId,format,arg1,arg2,arg3,arg4,arg5)
GT_6trace(mask,classId,format,arg1,arg2,arg3,arg4,arg5,arg6)
这些宏分别定义了输出1个、短歌行原文注音版标准 2个、……、6个参数的使用方式。
关于GT_*CLASS宏,在GT_*trace宏里,第二个参数为classId,这个参数是什么用的呢?
某些时候,我们在打印Trace信息的时候,有可能希望只打印某些级别的信息,而不打印其
他级别的信息,因此,我们指定classID。
GT_set(\"snowwaft=01234567\");
上面的代码,我们给curMask设定了名字:snowwaft,将它的级别设为0-7(有关级别,后面会描述)。
当完成以上工作后,我们就可以使用GT模块来输出信息了:
GT_0trace(curMask,GT_2CLASS,\"main>WelcometoDSPserver\'smain().n\");屏幕会输出如下结
果:
[DSP]@0000001a2:[T:0x00000000]snowwaft-main>WelcometoDSPserver’smain().
关于GT_*trace宏
以上我们使用GT_0trace宏来输出信息,同样的,我们还可以使用以下
宏:GT_0trace(mask,classId,format)
GT_1trace(mask,classId,format,arg1)
GT_2trace(mask,classId,format,arg1,arg2)
GT_3trace(mask,classId,format,arg1,arg2,arg3)
GT_4trace(mask,classId,format,arg1,arg2,arg3,arg4)GT_5trace(mask,classId,format,arg1,arg
2,arg3,arg4,arg5)
GT_6trace(mask,classId,fo清明古诗配画简笔画 rmat,arg1,arg2,arg3,arg4,arg5,arg6)
这些宏分别定义了输出1个、2个、……、6个参数的使用方式,例如,我们需要输出两个参数:
GT_2trace(curMask,GT_2CLASS,\"App->Decodeframe%d(0x%x)n\",p1,p2);
关于GT_*CLASS宏
在GT_*trace宏里,第二个参数为classId,这个参数是什么用的呢?某些时候,我们在打印Trace信息的
时候,有可能希望只打印某些级别的信息,绊的拼音 而不打印其他级别的信息,因此,我们指定classID。
在GTModule里一共定义了7中级别:
#defineGT_1CLASS((UInt8)0x02)
#defineGT_2CLASS((UInt8)0x04)
#defineGT_3CLASS((UInt8)0x08)
#defineGT_4CLASS((UInt8)0x10)
#defineGT_5CLASS((UInt8)0x20)
#defineGT_6CL撒的多音字组词 ASS((UInt8)0x40)
#defineGT_7CLASS((UInt8)0x80)
这7种级别分别表示:
GT_1CLASS:纯粹的Debug信息
GT_2CLASS:由开发人员指定,告诉使用人员这这条信息可能有用
GT_3CLASS:进入某个模块
GT_4CLASS:由开发人员指定,告诉使用人员这是比较重要的信息
GT_5CLASS:标记
GT_6CLASS:警告
GT_7CLASS:错误
Server端main.c文件中GT_set(\"_6467=01234567\");这表示,对于
_6467这个GT_Mask,我们关心的信息包括以上所有部分,而0,则表示进入、
退出某个函数的报告。
更多推荐
trace是什么意思ce在线翻译读音例句
发布评论