1# Copyright (c) 2022 Huawei Device Co., Ltd. 2# Licensed under the Apache License, Version 2.0 (the "License"); 3# you may not use this file except in compliance with the License. 4# You may obtain a copy of the License at 5# 6# http://www.apache.org/licenses/LICENSE-2.0 7# 8# Unless required by applicable law or agreed to in writing, software 9# distributed under the License is distributed on an "AS IS" BASIS, 10# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 11# See the License for the specific language governing permissions and 12# limitations under the License. 13 14domain: AUDIO 15 16DEVICE_CHANGE: 17 __BASE: {type: BEHAVIOR, level: MINOR, tag: PowerStats, desc: audio output device} 18 ISOUTPUT: {type: INT32, desc: is output device} 19 STREAMID: {type: INT32, desc: stream id} 20 STREAMTYPE: {type: INT32, desc: stream type} 21 DEVICETYPE: {type: INT32, desc: device type} 22 NETWORKID: {type: STRING, desc: network id} 23 ADDRESS: {type: STRING, desc: device address} 24 DEVICE_DETAILED_CATEGORY: {type: STRING, desc: device detailed category} 25 26VOLUME_CHANGE: 27 __BASE: {type: BEHAVIOR, level: MINOR, tag: PowerStats, desc: audio input device} 28 ISOUTPUT: {type: INT32, desc: output device} 29 STREAMID: {type: INT32, desc: stream id} 30 APP_UID: {type: INT32, desc: user id} 31 APP_PID: {type: INT32, desc: process id} 32 STREAMTYPE: {type: INT32, desc: stream type} 33 VOLUME: {type: FLOAT, desc: audio volume} 34 SYSVOLUME: {type: FLOAT, desc: sys volume} 35 VOLUMEFACTOR: {type: FLOAT, desc: stream volume factor} 36 POWERVOLUMEFACTOR: {type: FLOAT, desc: power volume factor} 37 38STREAM_CHANGE: 39 __BASE: {type: BEHAVIOR, level: MINOR, tag: PowerStats, desc: capturer state change} 40 ISOUTPUT: {type: INT32, desc: output device} 41 STREAMID: {type: INT32, desc: stream id} 42 UID: {type: INT32, desc: user id} 43 PID: {type: INT32, desc: process id} 44 TRANSACTIONID: {type: UINT64, desc: transaction id} 45 STREAMTYPE: {type: INT32, desc: stream type} 46 STATE: {type: INT32, desc: audio state} 47 DEVICETYPE: {type: INT32, desc: device type} 48 NETWORKID: {type: STRING, desc: network id} 49 50STREAM_STANDBY: 51 __BASE: {type: BEHAVIOR, level: MINOR, tag: PowerStats, desc: render stream standby state change} 52 STREAMID: {type: INT32, desc: stream id} 53 STANDBY: {type: INT32, desc: standby state} 54 55HEADSET_CHANGE: 56 __BASE: {type: BEHAVIOR, level: MINOR, tag: PowerStats, desc: headset connection state} 57 ISCONNECT: {type: INT32, desc: is plugged in} 58 HASMIC: {type: INT32, desc: mic available} 59 DEVICETYPE: {type: INT32, desc: device type} 60 61BACKGROUND_SILENT_PLAYBACK: 62 __BASE: {type: STATISTIC, level: MINOR, tag: PowerStats, desc: application play silently background} 63 APP_NAME: {type: STRING, desc: application name} 64 APP_VERSION_CODE: {type: UINT32, desc: application version code} 65 TIMES: {type: UINT32, desc: how many times when this event happens} 66 67BG_SILENT_PLAYBACK: 68 __BASE: {type: BEHAVIOR, level: MINOR, tag: PowerStats, desc: report the behavior of silent background playback concerned by power consumption detection } 69 APP_NAME: {type: STRING, desc: application name} 70 APP_VERSION_CODE: {type: UINT32, desc: application version code} 71 72LOAD_CONFIG_ERROR: 73 __BASE: {type: FAULT, level: CRITICAL, desc: load configuration failed on audio policy service startup} 74 CATEGORY: {type: UINT16, desc: category of audio policy configuration in uint16} 75 76LOAD_EFFECT_ENGINE_ERROR: 77 __BASE: {type: FAULT, level: CRITICAL, desc: load effect engine failed on audio service startup} 78 ENGINE_TYPE: {type: UINT16, desc: type of audio effect engine in uint16} 79 80AUDIO_SERVICE_STARTUP_ERROR: 81 __BASE: {type: FAULT, level: CRITICAL, desc: audio service start up failed} 82 SERVICE_ID: {type: UINT8, desc: audio service id} 83 ERROR_CODE: {type: INT32, desc: error code} 84 85AUDIO_STREAM_EXHAUSTED_STATS: 86 __BASE: {type: STATISTIC, level: MINOR, desc: audio stream for playback is exhausted} 87 DUBIOUS_APP: {type: STRING, desc: dubious application name which used most resources when this error happens} 88 TIMES: {type: UINT32, desc: how many times when this error happens} 89 90AUDIO_STREAM_CREATE_ERROR_STATS: 91 __BASE: {type: STATISTIC, level: MINOR, desc: audio stream create error} 92 APP_NAME: {type: STRING, desc: application name who created audio stream error} 93 IS_PLAYBACK: {type: BOOL, desc: created stream is used for playback or capture} 94 STREAM_TYPE: {type: UINT8, desc: stream type which can be either StreamUsage in playback or SourceType in capture} 95 ERROR_CODE: {type: INT32, desc: error code} 96 TIMES: {type: UINT32, desc: how many times when this error happen} 97 98STREAM_PROPERTY_STATS: 99 __BASE: {type: STATISTIC, level: MINOR, desc: audio stream property statistic} 100 IS_PLAYBACK: {type: BOOL, desc: created stream is used for playback or capture} 101 STREAM_TYPE: {type: UINT8, desc: stream type which can be either StreamUsage in playback or SourceType in capture} 102 APP_NAME: {type: STRING, desc: Application name which is using this stream} 103 ENCODING_TYPE: {type: UINT8, desc: encoding type of this stream} 104 CHANNEL_LAYOUT: {type: UINT64, desc: channel layout of this stream} 105 DURATION: {type: UINT32, desc: duration of this stream} 106 107STREAM_UTILIZATION_STATS: 108 __BASE: {type: STATISTIC, level: MINOR, desc: audio stream utilization statistic} 109 IS_PLAYBACK: {type: BOOL, desc: created stream is used for playback or capture} 110 STREAM_TYPE: {type: UINT8, desc: stream type which can be either StreamUsage in playback or SourceType in capture} 111 PIPE_TYPE: {type: UINT8, desc: pipe type e.g. normal/lowlatency/offload/multichannel e.t.c.} 112 APP_NAME: {type: STRING, desc: Application name which is using this stream} 113 SAMPLE_RATE: {type: UINT32, desc: sample rate of this stream} 114 EFFECT_CHAIN: {type: UINT8, desc: effect chain of this stream} 115 DURATION: {type: UINT32, desc: duration of this stream} 116 117AUDIO_DEVICE_UTILIZATION_STATS: 118 __BASE: {type: STATISTIC, level: MINOR, desc: audio device utilization statistic} 119 DEVICE_TYPE: {type: UINT8, desc: audio device type} 120 IS_PLAYBACK: {type: BOOL, desc: this stream is used for playback or capture} 121 STREAM_TYPE: {type: UINT8, desc: stream type which can be either StreamUsage in playback or SourceType in capture} 122 DURATION: {type: UINT32, desc: duration of using this devices} 123 124BT_UTILIZATION_STATS: 125 __BASE: {type: STATISTIC, level: MINOR, desc: blue tooth device utilization statistic} 126 BT_TYPE: {type: UINT8, desc: blue tooth type} 127 IS_PLAYBACK: {type: BOOL, desc: this stream is used for playback or capture} 128 STREAM_TYPE: {type: UINT8, desc: stream type which can be either StreamUsage in playback or SourceType in capture} 129 DURATION: {type: UINT32, desc: duration of using this devices} 130 131PERFORMANCE_UNDER_OVERRUN_STATS: 132 __BASE: {type: STATISTIC, level: MINOR, desc: underrun or overrun statistic} 133 APP_NAME: {type: STRING, desc: Application name whose audio stream has underrun or overrun} 134 STREAM_TYPE: {type: UINT8, desc: stream type which can be either StreamUsage in playback or SourceType in capture} 135 PIPE_TYPE: {type: UINT8, desc: pipe type e.g. normal/lowlatency/offload/multichannel e.t.c.} 136 IS_PLAYBACK: {type: BOOL, desc: this stream is used for playback or capture} 137 TIMES: {type: UINT32, desc: how many times when this event happend} 138 139PLAYBACK_VOLUME_STATS: 140 __BASE: {type: STATISTIC, level: MINOR, desc: playback volume statistic} 141 STREAM_TYPE: {type: UINT8, desc: StreamUsage of playback stream} 142 LEVEL: {type: INT32, desc: volume level} 143 DEVICE_TYPE: {type: UINT8, desc: audio device type} 144 DURATION: {type: UINT32, desc: duration of this volume level} 145 146MUTED_CAPTURE_STATS: 147 __BASE: {type: STATISTIC, level: MINOR, desc: muted audio capture statistic} 148 STREAM_TYPE: {type: UINT8, desc: SourceType of audio capture stream} 149 DEVICE_TYPE: {type: UINT8, desc: audio device type} 150 DURATION: {type: UINT32, desc: duration of muted capture} 151 152AUDIO_ROUTE_CHANGE: 153 __BASE: {type: BEHAVIOR, level: MINOR, desc: audio route change} 154 TIMESTAMP: {type: UINT64, desc: when does this change happens} 155 REASON: {type: UINT8, desc: route change reason} 156 DEVICE_TYPE_BEFORE_CHANGE: {type: UINT8, desc: audio device type before change} 157 DEVICE_TYPE_AFTER_CHANGE: {type: UINT8, desc: audio device type after change} 158 PRE_AUDIO_SCENE: {type: INT8, desc: previous audio scene} 159 CUR_AUDIO_SCENE: {type: INT8, desc: current audio scene} 160 DEVICE_LIST: {type: STRING, desc: current device list} 161 ROUTER_TYPE: {type: UINT8, desc: device selection routing policy} 162 163DB_ACCESS_EXCEPTION: 164 __BASE: {type: FAULT, level: CRITICAL, desc: database access exception} 165 DB_TYPE: {type: STRING, desc: database access type} 166 ERROR_CASE: {type: UINT32, desc: error case} 167 ERROR_MSG: {type: INT32, desc: error message} 168 ERROR_DESCRIPTION: {type: STRING, desc: error description} 169 170AUDIO_PIPE_CHANGE: 171 __BASE: {type: BEHAVIOR, level: MINOR, desc: audio pipe change} 172 APP_NAME: {type: STRING, desc: application name} 173 STREAM_TYPE: {type: UINT8, desc: stream type which can be either StreamUsage in playback or SourceType in capture} 174 IS_PLAYBACK: {type: BOOL, desc: this stream is used for playback or capture} 175 PIPE_TYPE_BEFORE_CHANGE: {type: UINT8, desc: pipe type e.g. normal/lowlatency/offload/multichannel e.t.c.} 176 PIPE_TYPE_AFTER_CHANGE: {type: UINT8, desc: pipe type e.g. normal/lowlatency/offload/multichannel e.t.c.} 177 REASON: {type: UINT8, desc: audio pipe change reason} 178 179AUDIO_FOCUS_MIGRATE: 180 __BASE: {type: BEHAVIOR, level: MINOR, desc: audio force migrate between loacal device and remote device} 181 DEVICE_DESC: {type: STRING, desc: device desc} 182 APP_NAME: {type: STRING, desc: application whose focus is migrated} 183 MIGRATE_DIRECTION: {type: UINT8, desc: migrate direction} 184 185SET_FORCE_USE_AUDIO_DEVICE: 186 __BASE: {type: BEHAVIOR, level: MINOR, desc: Forcibly select an audio playback device} 187 APP_NAME: {type: STRING, desc: application name who has forcibly select an audio playback device} 188 DEVICE_TYPE: {type: UINT8, desc: audio device type which is set force used} 189 IS_PLAYBACK: {type: BOOL, desc: this stream is used for playback or capture} 190 STREAM_TYPE: {type: UINT8, desc: stream type which can be either StreamUsage in playback or SourceType in capture} 191 192AI_VOICE_NOISE_SUPPRESSION: 193 __BASE: {type: BEHAVIOR, level: MINOR, desc: AI voice noise suppression change} 194 CURRENT_VALUE: {type: INT32, desc: current value after operation triggered} 195 196VOLUME_SUBSCRIBE: 197 __BASE: {type: BEHAVIOR, level: MINOR, desc: Subscribe to volume key events} 198 SUBSCRIBE_KEY: {type: STRING, desc: Subscribed events} 199 SUBSCRIBE_RESULT: {type: UINT32, desc: Subscribed event results} 200 201HDI_EXCEPTION: 202 __BASE: {type: FAULT, level: CRITICAL, desc: hdi exception} 203 HDI_TYPE: {type: UINT8, desc: hdi type} 204 ERROR_CASE: {type: UINT32, desc: error case} 205 ERROR_MSG: {type: INT32, desc: error msg} 206 ERROR_DESCRIPTION: {type: STRING, desc: error description} 207 208APP_WRITE_MUTE: 209 __BASE: {type: STATISTIC, level: CRITICAL, desc: APP write mute data} 210 APP_BUNDLE_NAME: {type: STRING, desc: the app bundle name} 211 STREAM_TYPE: {type: UINT8, desc: stream type} 212 SESSION_ID: {type: UINT32, desc: the audio stream id like 100001} 213 STREAM_VOLUME: {type: FLOAT, desc: the volume of the steam} 214 MUTE_STATE: {type: UINT8, desc: mute state of the stream} 215 APP_BACKGROUND_STATE: {type: UINT8, desc: background state} 216 MUTE_PLAY_START_TIME: {type: INT64, desc: the time when app starts writing mute data} 217 MUTE_PLAY_DURATION: {type: UINT32, desc: the duration of mute play} 218 219JANK_PLAYBACK: 220 __BASE: {type: FAULT, level: CRITICAL, desc: audio playback jank event} 221 REASON: {type: UINT8, desc: report jank reason} 222 PERIOD_MS: {type: UINT32, desc: jank duration time} 223 PIPE_TYPE: {type: UINT8, desc: pipe type} 224 HDI_ADAPTER: {type: UINT8, desc: hdi adapter} 225 POSITION: {type: UINT8, desc: jank position} 226 APP_NAME: {type: STRING, desc: application name} 227 JANK_START_TIME: {type: INT64, desc: jank start time} 228 229STREAM_FREEZEN: 230 __BASE: {type: FAULT, level: CRITICAL, desc: audio stream freezen event} 231 APP_NAME: {type: STRING, desc: application name} 232 TIME_INTERVAL: {type: INT64, desc: check time interval} 233 234EXCLUDE_OUTPUT_DEVICE: 235 __BASE: {type: BEHAVIOR, level: MINOR, desc: Exclude/Unexclude an audio output device} 236 APP_NAME: {type: STRING, desc: application name who has excluded/unexcluded an audio output device} 237 EXCLUSION_STATUS: {type: UINT8, desc: audio device exclusion status} 238 AUDIO_DEVICE_USAGE: {type: UINT8, desc: audio device usage} 239 DEVICE_TYPE: {type: UINT8, desc: audio device type which is excluded} 240 241PLAY_AUDIO_STATS: 242 __BASE: {type: STATISTIC, level: CRITICAL, desc: Audio stream statistics} 243 APP_NAME: {type: STRING, desc: application name} 244 APP_VERSION: {type: STRING, desc: application version} 245 INTERRUPT_ACTION: {type: UINT32, desc: audio renderer stream usage } 246 INTERRUPT_TIMESTAMP: {type: UINT64, desc: interrupt timestamp } 247 INTERRUPT_INFO: {type: UINT32, desc: interrupt info } 248 INTERRUPT_EFFECT: {type: STRING, desc: interrupted application info } 249 RENDERER_ACTION: {type: UINT32, desc: audio renderer state } 250 RENDERER_TIMESTAMP: {type: UINT64, desc: audio renderer timestamp } 251 RENDERER_INFO: {type: UINT32, desc: audio renderer info } 252 RENDERER_STATS: {type: STRING, desc: audio renderer end statistics } 253 RECORDER_ACTION: {type: UINT32, desc: audio capturer state } 254 RECORDER_TIMESTAMP: {type: UINT64, desc: audio capturer timestamp } 255 RECORDER_INFO: {type: UINT32, desc: audio capturer info } 256 RECORDER_STATS: {type: STRING, desc: audio capturer end statistics } 257 APP_STATE: {type: UINT8, desc: app is background or foreground } 258 APP_STATE_TIMESTAMP: {type: UINT64, desc: app state change timestamp } 259 SUMMARY: {type: UINT64, desc: summary } 260 261HDF_AUDIO_ERROR_EVENT: 262 __BASE: {type: FAULT, level: CRITICAL, tag: HdfAudio, desc: HdfAudioErrorEvent} 263 ERROR_DESC: {type: STRING, desc: error descriptor} 264 ERROR_CODE: {type: INT32, desc: error code} 265 OVER_TIME: {type: INT32, desc: over time} 266 267SYSTEM_TONE_PLAYBACK: 268 __BASE: {type: BEHAVIOR, level: CRITICAL, desc: System sound plays event} 269 SYSTEM_SOUND_TYPE: {type: INT32, arrsize: 100, desc: configed sound type} 270 CLIENT_UID: {type: INT32, arrsize: 100, desc: client uid} 271 DEVICE_TYPE: {type: INT32, arrsize: 100, desc: device type} 272 ERROR_CODE: {type: INT32, arrsize: 100, desc: error code} 273 ERROR_REASON: {type: STRING, arrsize: 100, desc: error reason} 274 MUTE_STATE: {type: BOOL, arrsize: 100, desc: mute state} 275 MUTE_HAPTICS: {type: BOOL, arrsize: 100, desc: mute haptics state} 276 RING_MODE: {type: UINT8, arrsize: 100, desc: ring mode} 277 STREAM_TYPE: {type: INT32, arrsize: 100, desc: stream type} 278 VIBRATION_STATE: {type: BOOL, arrsize: 100, desc: vibration state} 279 VOLUME_LEVEL: {type: UINT8, arrsize: 100, desc: volume level} 280 TIME_STAMP: {type: INT64, arrsize: 100, desc: the time stamp} 281 282RECORD_ERROR: 283 __BASE: {type: FAULT, level: CRITICAL, tag: AudioRecord, desc: AudioRecordErrorEvent} 284 INCOMING_SOURCE: {type: UINT8, desc: source of incoming record} 285 INCOMING_PID: {type: INT32, desc: pid of incoming record} 286 INCOMING_PKG: {type: STRING, desc: pkg of incoming record} 287 ACTIVE_SOURCE: {type: UINT8, desc: source of active record} 288 ACTIVE_PID: {type: INT32, desc: pid of active record} 289 ACTIVE_PKG: {type: STRING, desc: pkg of active record} 290 REASON: {type: INT32, desc: reason} 291 292STREAM_OCCUPANCY: 293 __BASE: {type: STATISTIC, level: MINOR, desc: stream occupancy event} 294 IS_PLAYBACK: {type: BOOL, desc: is playback or record} 295 SESSIONID: {type: INT32, desc: sessionid} 296 UID: {type: INT32, desc: uid of app} 297 PKGNAME: {type: STRING, desc: pkgname of app} 298 STREAM_OR_SOURCE_TYPE: {type: INT32, desc: streamusage or sourcetype} 299 START_TIME: {type: INT64, desc: time of start} 300 UPLOAD_TIME: {type: INT64, desc: time of upload} 301 302ADD_REMOVE_CUSTOMIZED_TONE: 303 __BASE: {type: STATISTIC, level: CRITICAL, desc: add or remove customized tone} 304 ADD_REMOVE_OPERATION: {type: BOOL, arrsize: 100, desc: add or remove operation} 305 APP_NAME: {type: STRING, arrsize: 100, desc: application name} 306 FILE_SIZE: {type: UINT32, arrsize: 100, desc: file size} 307 RINGTONE_CATEGORY: {type: INT32, arrsize: 100, desc: ringtone category} 308 MEDIA_TYPE: {type: INT8, arrsize: 100, desc: media type} 309 MIME_TYPE: {type: STRING, arrsize: 100, desc: mime type} 310 TIMESTAMP: {type: UINT64, arrsize: 100, desc: time stamp} 311 RESULT: {type: INT8, arrsize: 100, desc: result} 312 313DEVICE_CHANGE_EXCEPTION: 314 __BASE: {type: FAULT, level: CRITICAL, desc: device change exception event} 315 CHANGE_REASON: {type: UINT8, desc: reason for triggering device changes} 316 DEVICE_TYPE: {type: INT32, desc: device type} 317 ERROR_CASE: {type: UINT32, desc: error case} 318 ERROR_MSG: {type: INT32, desc: error message} 319 ERROR_DESCRIPTION: {type: STRING, desc: error description}