zoukankan      html  css  js  c++  java
  • 遇到Audio/Speech相关问题,如何抓取log

     
    [DESCRIPTION]
    遇到Audio/Speech相关问题时,经常需要抓取相关log信息,总结抓取方法如下
    [SOLUTION]
    1.    通话声音相关的问题:
    Case 1: 通话中某一方或者双方都无声音,所需Log:VM Log ;Register info ; Mobile Log ;Modem Log
    Case 2: 输出设备routing 错误:Mobile Log;Register info
    2.    音乐播放声音相关问题:
    Case 1: 某一设备没有声音输出,所需Log: Register info ; Mobile Log
    Case 2: 声音卡顿问题, 所需Log:Mobile Log ;ftrace ;PCM data
    Case 3:杂音,噪音问题,所需Log:Mobile Log;PCM data
    3.    FM声音相关问题:
    Common:需要请客户提供FM chip的型号,连接方式(Analog or I2S)
    Case 1: 某一设备没有声音输出,所需Log: Register info ; Mobile Log

    工模中没有开启mobile log选项,可使用logcat抓取mobile log:
    Ex. 
    # for the main log
    adb wait-for-device logcat -v time > dt_XXX_main_20120727.txt 2>&1
    # for the radio log
    adb wait-for-device logcat -v time -b radio > dt_XXX_radio_20120727.txt 2>&1

    VM Log 抓取方法:
    1.    插入sdcard,用来存储所谓的vm log;
    2.    进入Engineer Mode;
    3.    Enter Engineer ModeAudioSpeech Enhancementcommon parameter的parameter 0设置为6;如果是debug DMNR的话,此处需要设定为13;特别要看AEC的话,要设定成7;
    4.    Enter Engineer ModeAudioDebug InfoParameter 0设置为 3;
    5.    Enter Engineer ModeAudioSpeech Logger单击 Enable.
    6.    退出Engineer Mode.
    7.    拨打一个电话,或者接听一个电话,通话过程中复现贵司所说的问题。
    8.    挂断电话,并将/sdcard/speechlog下的*.vm文档寄过来即可。
    After MT6577 VM Log抓取办法:
    1.    插入sdcard,用来存储所谓的vm log;
    2.    进入Engineer Mode;
    3.    Enter Engineer ModeAudioSpeech Logger单击 Enable,并选择Enable EPL.
    4.    退出Engineer Mode.
    5.    拨打一个电话,或者接听一个电话,通话过程中复现贵司所说的问题。
    6.    挂断电话,并将/sdcard/VM_Log下的*.vm文档寄过来即可。

    Register info抓取方法:
    1.    复现问题
    2.    从命令行中进入adb shell mode
    3.    输入 cat proc/audio
    4.    截取register info并保存到txt中
    Tips:概率性问题,需要在正常和复现问题时各抓取一次
    After MT6577 Register info抓取办法:
    1.    打开mobile log中的kernal log
    2.    进入工模->Audio->Audio Logger,点击dump audio debug info
    3.    将kernal log发给我们即可
    Tips:概率性问题,需要在正常和复现问题时各抓取一次

    PCM data 抓取方法:
    1.    插入sdcard,用来保存PCM data
    2.    复现问题
    3.    在命令行中输入adb shell setprop streamout.pcm.dump 1
    4.    抓取结束后,在命令行输入adb shell setprop streamout.pcm.dump 0还原设定
    5.    将sdcard中生成的.pcm文件寄过来即可
    After MT6577 PCM Data Dump方法:
    1.    插入sdcard,用来保存PCM data
    2.    进入工模->Audio->Audio Logger,点选需要抓取的pcm data
    3.    复现问题,抓取data dump,再进入工模点掉刚才的选项
    5.    将sdcard中生成的.pcm文件寄过来即可
     
    Tips:针对PCM Data,我们有很多点可以抓取,对应的Property是不一样的(MT6577以后的平台,只需要点选对应的选项即可)
    如果是播放问题,我们需要stream out的pcm data,各点对应的Property如下:
    af.track.pcm;af.mixer.pcm;streamout_ori.pcm.dump;streamout.pcm.dump;a2dp.streamout.pcm
     
    如果是录音相关问题,我们需要dump stream in的pcm data,各点对应的property如下:
    I2S.streamin.pcm;streamin.pcm.dump;af.record.dump.pcm
    具体可参考AudioYusuStreamOut.cpp,AudioYusuStreamIn.cpp中对Property的定义.

    ftrace:
    1.    复现问题
    2.    运行ftrace tool下的start_ftrace_short.bat开始
    3.  运行ftrace tool下的stop_ftrace_short.bat停止
    4.  将抓取到的.vcd文件提供给我们分析
    After MT6577 Dump Ftrace方法:
    连接ADB,turn OFF and then turn ON:
    adb shell setprop dumpftrace_dbg  0
    adb shell setprop dumpftrace_dbg  1

    How to get Modem log:
    针对Audio这个模块来讲,需要设定filter为:MOD_L1SP all classes on.

    【[Catcher 3.1133.00]后的Cather来导出“catcher_filter.bin”,可以跳过第1,2两步】 
    1:在Cather里的filter設置好后,將filter導出來,生成一個“filter.ini”,這個名字可以自己命名。 
    Filter里設置好需要抓取log的filter,點“Export”按提示操作 
     
     
     
    2:用Cather工具目錄里的工具log2sdFltrGen.exe將第3步生成的ini文件轉為名稱為“catcher_filter.bin”的文件,請注意必須按這個文件名! 
    使用這個工具,“Browse DB”選擇database,“Browse INI”選擇第3步生成的ini文件, 
    點“Generate BIN”,然后按提示將生成文件命名為“catcher_filter.bin” 
     
     
    3:使用[Catcher 3.1133.00]后的Cather来导出“catcher_filter.bin” 
    You can export filter setting to catcher_filter.bin from Catcher directly without using log2sdFltrGen.exe. In Filter dialog, press “Export” button and then select “Export to *.bin” to enable this feature. 
     
    4:將“catcher_filter.bin”文件拷貝到T卡的mtklogmdlog目录下 
     
     
    5:进入工程模式->systemlog->modem log->选择存储到T卡,就會有*.dmp的log文件生成,這個文件很小,因為存的是log的簡化信息,需要用catcher和database來還原信息 
     
    6:將”*.dmp”文件從T里拷貝出來,用catcher和database來還原信息 
    Controls->Open dump file 
     
    本例中設定的MOD_BMT log,還原如下: 
     


  • 相关阅读:
    WinForm多线程+委托防止界面假死
    网页制作知识库
    HTML Agility Pack:簡單好用的快速 HTML Parser
    .NET 4.0 和 .NET 4.0 Client Profile 区别
    使用OPCNetAPI连接OPCServer
    Win7系统删除微软拼音
    Unity3D脚本18:可视化辅助设置类 Gizmos
    mysql 索引
    重启oracle方法一二三
    php7 安装扩展
  • 原文地址:https://www.cnblogs.com/james1207/p/3306520.html
Copyright © 2011-2022 走看看