Android 调试
文章平均质量分 76
zgyhc2050
毕业于
展开
-
【Android Audio】onAudioPortListUpdate 和 onAudioPatchListUpdate回调流程
当系统的output和input发生变化、output device和input device发生变化时都会触发该函数的调用当系统的audio patch发生变化,切换、新增、删除时都会触发该函数原创 2022-07-06 16:55:28 · 1336 阅读 · 0 评论 -
【Android Audio】dumpsys audio分析【不定期更新文章】
dumpsys audio显示当前所有stream type的音量状态显示AudioDeviceBroker状态命令:dumpsys audioMessage handler (watch for unhandled messages): Handler (com.android.server.audio.AudioService$AudioHandler) {4adb93d} @ 5038924 Looper (AudioService, tid 87) {e96a532}原创 2021-07-19 16:51:53 · 3274 阅读 · 0 评论 -
【Bug-Fixes】【Audio】{断开蓝牙音箱时收不到AudioService的Routes信息} [SWPL-52581]
项目场景: Android TV,Android R 1、连接蓝牙音箱,进入LiveTv播放DVB节目,然后断开蓝牙音箱,预期TV的Speaker正常播放声音。问题描述:非ms12版本,连接蓝牙音箱,进入LiveTv播放非Dolby的DVB节目,然后断开蓝牙音箱,TV的Speaker无声。 frameworks/base/services/core/java/com/android/server/audio/AudioService.java /* 这里是TV平台所以是STR原创 2021-06-17 10:10:39 · 745 阅读 · 0 评论 -
【Bug-Fixes】【Audio】{Launcher下遥控器按mute,然后再按音量+,之后无按键音} [SWPL-26283]
项目场景: Android TV,Android Q 1、在Launcher下通过遥控器按mute,然后再按音量+,之后系统音无声音(按键音) 2、在Launcher下通过遥控器按mute,然后再按mute,之后系统音是正常有声音的问题描述:在Launcher下通过遥控器按mute,然后再按音量+,之后系统音无声音(按键音) frameworks/base/services/core/java/com/android/server/audio/AudioService.原创 2020-12-11 15:24:33 · 404 阅读 · 0 评论 -
【Android Audio】安卓音量管理
安卓音量管理1、Android音量的保存AudioService.javaAudioSystem.java1、Android音量的保存存放到数据库AudioHandler.persistVolumeprivate void persistVolume(VolumeStreamState streamState, int device) {... System.putIntForUser(mContentResolver, streamState.getSet原创 2021-06-04 16:40:19 · 3000 阅读 · 0 评论 -
【Android Audio】dumpsys media.audio_policy分析【不定期更新文章】
命令:dumpsys media.audio_policyAudioPolicyManager: 0xf1e5a000Command Thread: 0xf1ff3300Supported System Usages:AudioCommandThread 0xf1ff3300 Dump- Commands: Command Time Wait pParam Last Command 01 014581.648 0 0xf19e5440Aud.原创 2021-05-31 20:07:40 · 4411 阅读 · 6 评论 -
【Android Audio】4、音频设备管理 【基于Android Q 】
4、音频设备管理 【基于Android Q 】audio policy xml里面有2种角色:source和sink,每种角色又分为devicePorts和mixPorts。type为AUDIO_PORT_TYPE_DEVICEdevicePorts(source):为实际的硬件输入设备,对应安卓的role为AUDIO_PORT_ROLE_SOURCE ;devicePorts(sink):为实际的硬件输出设备,对应安卓的role为AUDIO_PORT_ROLE_SINK ;type为AUDI原创 2020-12-03 20:19:50 · 2461 阅读 · 0 评论 -
【Android Audio】5、EngineBase加载音量曲线和策略 【基于Android Q 】
5、音量曲线 【基于Android Q 】5.1、音量曲线加载code5.2、音量转换5.1、音量曲线加载code路径:frameworks/av/services/audiopolicy/managerdefault/engine/common/src/EngineBase.cppengineConfig::ParsingResult EngineBase::loadAudioPolicyEngineConfig(){... auto loadVolumeGroups = [](auto原创 2020-10-13 14:35:53 · 2934 阅读 · 0 评论 -
【Android Debug】Android 加堆栈打印信息
Android O/P/Q在native 层加堆栈打印信息1、步骤1.1、包含头文件 #include "utils/CallStack.h"1.2、引用动态库1.3、然后在要打印堆栈处加入android::CallStack cs("haha")2、差异原因Native C++层加堆栈打印:1、步骤1.1、包含头文件 #include “utils/CallStack.h”1.2、引用动态库Andorid P / QAndroid.mk: LOCAL_SHARED_LIBRARIES里包含li原创 2020-09-09 12:05:59 · 2873 阅读 · 2 评论 -
【Android Audio】dumpsys media.audio_flinger 分析【基于Android Q 】【不定期更新文章】
AudioFlinger dumpsys1、第一部分2、第二部分dumpsys media.audio_flinger 1、第一部分1、Output thread:表示当前线程为输出流的线程2、I/O handle:表示当前的线程handle3、Standby:no表示当前线程在运行。4、Sample rate:采样率6、HAL foramt:送给audio hal的格式13、Output device:当前线程处理的数据输出到的音频设备30、flags:标记输出流hal原创 2020-09-08 16:25:11 · 7933 阅读 · 2 评论 -
【ALSA音频】一、音频定位手段
1、音频定位手段1.1、查看音频声卡1.1.1、查看当前Soc的声卡状态1.1.2、查看当前声卡工作状态1.2、tinymix使用1.2.1、可通过该命令查看当前音频运行状态1.2.2、可通过该命令debug1.1、查看音频声卡1.1.1、查看当前Soc的声卡状态 cat /proc/asound/cards 例如,插入USB声卡之后,会新增声卡节点,USB声卡无声可优先查看该状态。1.1.2、查看当前声卡工作状态声卡分两种通道,一种是Capture、一种是Playback。Captu原创 2020-09-08 16:05:04 · 4842 阅读 · 0 评论