1/**************************************************************************** 2 **************************************************************************** 3 *** 4 *** This header was automatically generated from a Linux kernel header 5 *** of the same name, to make information necessary for userspace to 6 *** call into the kernel available to libc. It contains only constants, 7 *** structures, and macros generated from the original header, and thus, 8 *** contains no copyrightable information. 9 *** 10 *** To edit the content of this header, modify the corresponding 11 *** source file (e.g. under external/kernel-headers/original/) then 12 *** run bionic/libc/kernel/tools/update_all.py 13 *** 14 *** Any manual change here will be lost the next time this script will 15 *** be run. You've been warned! 16 *** 17 **************************************************************************** 18 ****************************************************************************/ 19#ifndef _AUDIO_EFFECTS_H 20#define _AUDIO_EFFECTS_H 21#define CONFIG_CACHE 0 22#define CONFIG_SET 1 23/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 24#define CONFIG_GET 2 25#define VIRTUALIZER_MODULE 0x00001000 26#define VIRTUALIZER_ENABLE 0x00001001 27#define VIRTUALIZER_STRENGTH 0x00001002 28/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 29#define VIRTUALIZER_OUT_TYPE 0x00001003 30#define VIRTUALIZER_GAIN_ADJUST 0x00001004 31#define VIRTUALIZER_ENABLE_PARAM_LEN 1 32#define VIRTUALIZER_STRENGTH_PARAM_LEN 1 33/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 34#define VIRTUALIZER_OUT_TYPE_PARAM_LEN 1 35#define VIRTUALIZER_GAIN_ADJUST_PARAM_LEN 1 36#define REVERB_MODULE 0x00002000 37#define REVERB_ENABLE 0x00002001 38/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 39#define REVERB_MODE 0x00002002 40#define REVERB_PRESET 0x00002003 41#define REVERB_WET_MIX 0x00002004 42#define REVERB_GAIN_ADJUST 0x00002005 43/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 44#define REVERB_ROOM_LEVEL 0x00002006 45#define REVERB_ROOM_HF_LEVEL 0x00002007 46#define REVERB_DECAY_TIME 0x00002008 47#define REVERB_DECAY_HF_RATIO 0x00002009 48/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 49#define REVERB_REFLECTIONS_LEVEL 0x0000200a 50#define REVERB_REFLECTIONS_DELAY 0x0000200b 51#define REVERB_LEVEL 0x0000200c 52#define REVERB_DELAY 0x0000200d 53/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 54#define REVERB_DIFFUSION 0x0000200e 55#define REVERB_DENSITY 0x0000200f 56#define REVERB_ENABLE_PARAM_LEN 1 57#define REVERB_MODE_PARAM_LEN 1 58/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 59#define REVERB_PRESET_PARAM_LEN 1 60#define REVERB_WET_MIX_PARAM_LEN 1 61#define REVERB_GAIN_ADJUST_PARAM_LEN 1 62#define REVERB_ROOM_LEVEL_PARAM_LEN 1 63/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 64#define REVERB_ROOM_HF_LEVEL_PARAM_LEN 1 65#define REVERB_DECAY_TIME_PARAM_LEN 1 66#define REVERB_DECAY_HF_RATIO_PARAM_LEN 1 67#define REVERB_REFLECTIONS_LEVEL_PARAM_LEN 1 68/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 69#define REVERB_REFLECTIONS_DELAY_PARAM_LEN 1 70#define REVERB_LEVEL_PARAM_LEN 1 71#define REVERB_DELAY_PARAM_LEN 1 72#define REVERB_DIFFUSION_PARAM_LEN 1 73/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 74#define REVERB_DENSITY_PARAM_LEN 1 75#define BASS_BOOST_MODULE 0x00003000 76#define BASS_BOOST_ENABLE 0x00003001 77#define BASS_BOOST_MODE 0x00003002 78/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 79#define BASS_BOOST_STRENGTH 0x00003003 80#define BASS_BOOST_ENABLE_PARAM_LEN 1 81#define BASS_BOOST_MODE_PARAM_LEN 1 82#define BASS_BOOST_STRENGTH_PARAM_LEN 1 83/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 84#define EQ_MODULE 0x00004000 85#define EQ_ENABLE 0x00004001 86#define EQ_CONFIG 0x00004002 87#define EQ_NUM_BANDS 0x00004003 88/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 89#define EQ_BAND_LEVELS 0x00004004 90#define EQ_BAND_LEVEL_RANGE 0x00004005 91#define EQ_BAND_FREQS 0x00004006 92#define EQ_SINGLE_BAND_FREQ_RANGE 0x00004007 93/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 94#define EQ_SINGLE_BAND_FREQ 0x00004008 95#define EQ_BAND_INDEX 0x00004009 96#define EQ_PRESET_ID 0x0000400a 97#define EQ_NUM_PRESETS 0x0000400b 98/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 99#define EQ_PRESET_NAME 0x0000400c 100#define EQ_ENABLE_PARAM_LEN 1 101#define EQ_CONFIG_PARAM_LEN 3 102#define EQ_CONFIG_PER_BAND_PARAM_LEN 5 103/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 104#define EQ_NUM_BANDS_PARAM_LEN 1 105#define EQ_BAND_LEVELS_PARAM_LEN 13 106#define EQ_BAND_LEVEL_RANGE_PARAM_LEN 2 107#define EQ_BAND_FREQS_PARAM_LEN 13 108/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 109#define EQ_SINGLE_BAND_FREQ_RANGE_PARAM_LEN 2 110#define EQ_SINGLE_BAND_FREQ_PARAM_LEN 1 111#define EQ_BAND_INDEX_PARAM_LEN 1 112#define EQ_PRESET_ID_PARAM_LEN 1 113/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 114#define EQ_NUM_PRESETS_PARAM_LEN 1 115#define EQ_PRESET_NAME_PARAM_LEN 32 116#define EQ_TYPE_NONE 0 117#define EQ_BASS_BOOST 1 118/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 119#define EQ_BASS_CUT 2 120#define EQ_TREBLE_BOOST 3 121#define EQ_TREBLE_CUT 4 122#define EQ_BAND_BOOST 5 123/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 124#define EQ_BAND_CUT 6 125#define COMMAND_PAYLOAD_LEN 3 126#define COMMAND_PAYLOAD_SZ (COMMAND_PAYLOAD_LEN * sizeof(uint32_t)) 127#define MAX_INBAND_PARAM_SZ 4096 128/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 129#define Q27_UNITY (1 << 27) 130#define Q8_UNITY (1 << 8) 131#define CUSTOM_OPENSL_PRESET 18 132#define VIRTUALIZER_ENABLE_PARAM_SZ (VIRTUALIZER_ENABLE_PARAM_LEN*sizeof(uint32_t)) 133/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 134#define VIRTUALIZER_STRENGTH_PARAM_SZ (VIRTUALIZER_STRENGTH_PARAM_LEN*sizeof(uint32_t)) 135#define VIRTUALIZER_OUT_TYPE_PARAM_SZ (VIRTUALIZER_OUT_TYPE_PARAM_LEN*sizeof(uint32_t)) 136#define VIRTUALIZER_GAIN_ADJUST_PARAM_SZ (VIRTUALIZER_GAIN_ADJUST_PARAM_LEN*sizeof(uint32_t)) 137struct virtualizer_params { 138/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 139 uint32_t device; 140 uint32_t enable_flag; 141 uint32_t strength; 142 uint32_t out_type; 143/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 144 int32_t gain_adjust; 145}; 146#define NUM_OSL_REVERB_PRESETS_SUPPORTED 6 147#define REVERB_ENABLE_PARAM_SZ (REVERB_ENABLE_PARAM_LEN*sizeof(uint32_t)) 148/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 149#define REVERB_MODE_PARAM_SZ (REVERB_MODE_PARAM_LEN*sizeof(uint32_t)) 150#define REVERB_PRESET_PARAM_SZ (REVERB_PRESET_PARAM_LEN*sizeof(uint32_t)) 151#define REVERB_WET_MIX_PARAM_SZ (REVERB_WET_MIX_PARAM_LEN*sizeof(uint32_t)) 152#define REVERB_GAIN_ADJUST_PARAM_SZ (REVERB_GAIN_ADJUST_PARAM_LEN*sizeof(uint32_t)) 153/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 154#define REVERB_ROOM_LEVEL_PARAM_SZ (REVERB_ROOM_LEVEL_PARAM_LEN*sizeof(uint32_t)) 155#define REVERB_ROOM_HF_LEVEL_PARAM_SZ (REVERB_ROOM_HF_LEVEL_PARAM_LEN*sizeof(uint32_t)) 156#define REVERB_DECAY_TIME_PARAM_SZ (REVERB_DECAY_TIME_PARAM_LEN*sizeof(uint32_t)) 157#define REVERB_DECAY_HF_RATIO_PARAM_SZ (REVERB_DECAY_HF_RATIO_PARAM_LEN*sizeof(uint32_t)) 158/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 159#define REVERB_REFLECTIONS_LEVEL_PARAM_SZ (REVERB_REFLECTIONS_LEVEL_PARAM_LEN*sizeof(uint32_t)) 160#define REVERB_REFLECTIONS_DELAY_PARAM_SZ (REVERB_REFLECTIONS_DELAY_PARAM_LEN*sizeof(uint32_t)) 161#define REVERB_LEVEL_PARAM_SZ (REVERB_LEVEL_PARAM_LEN*sizeof(uint32_t)) 162#define REVERB_DELAY_PARAM_SZ (REVERB_DELAY_PARAM_LEN*sizeof(uint32_t)) 163/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 164#define REVERB_DIFFUSION_PARAM_SZ (REVERB_DIFFUSION_PARAM_LEN*sizeof(uint32_t)) 165#define REVERB_DENSITY_PARAM_SZ (REVERB_DENSITY_PARAM_LEN*sizeof(uint32_t)) 166struct reverb_params { 167 uint32_t device; 168/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 169 uint32_t enable_flag; 170 uint32_t mode; 171 uint32_t preset; 172 uint32_t wet_mix; 173/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 174 int32_t gain_adjust; 175 int32_t room_level; 176 int32_t room_hf_level; 177 uint32_t decay_time; 178/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 179 uint32_t decay_hf_ratio; 180 int32_t reflections_level; 181 uint32_t reflections_delay; 182 int32_t level; 183/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 184 uint32_t delay; 185 uint32_t diffusion; 186 uint32_t density; 187}; 188/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 189#define BASS_BOOST_ENABLE_PARAM_SZ (BASS_BOOST_ENABLE_PARAM_LEN*sizeof(uint32_t)) 190#define BASS_BOOST_MODE_PARAM_SZ (BASS_BOOST_MODE_PARAM_LEN*sizeof(uint32_t)) 191#define BASS_BOOST_STRENGTH_PARAM_SZ (BASS_BOOST_STRENGTH_PARAM_LEN*sizeof(uint32_t)) 192struct bass_boost_params { 193/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 194 uint32_t device; 195 uint32_t enable_flag; 196 uint32_t mode; 197 uint32_t strength; 198/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 199}; 200#define MAX_EQ_BANDS 12 201#define MAX_OSL_EQ_BANDS 5 202#define EQ_ENABLE_PARAM_SZ (EQ_ENABLE_PARAM_LEN*sizeof(uint32_t)) 203/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 204#define EQ_CONFIG_PARAM_SZ (EQ_CONFIG_PARAM_LEN*sizeof(uint32_t)) 205#define EQ_CONFIG_PER_BAND_PARAM_SZ (EQ_CONFIG_PER_BAND_PARAM_LEN*sizeof(uint32_t)) 206#define EQ_CONFIG_PARAM_MAX_LEN (EQ_CONFIG_PARAM_LEN+ MAX_EQ_BANDS*EQ_CONFIG_PER_BAND_PARAM_LEN) 207#define EQ_CONFIG_PARAM_MAX_SZ (EQ_CONFIG_PARAM_MAX_LEN*sizeof(uint32_t)) 208/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 209#define EQ_NUM_BANDS_PARAM_SZ (EQ_NUM_BANDS_PARAM_LEN*sizeof(uint32_t)) 210#define EQ_BAND_LEVELS_PARAM_SZ (EQ_BAND_LEVELS_PARAM_LEN*sizeof(uint32_t)) 211#define EQ_BAND_LEVEL_RANGE_PARAM_SZ (EQ_BAND_LEVEL_RANGE_PARAM_LEN*sizeof(uint32_t)) 212#define EQ_BAND_FREQS_PARAM_SZ (EQ_BAND_FREQS_PARAM_LEN*sizeof(uint32_t)) 213/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 214#define EQ_SINGLE_BAND_FREQ_RANGE_PARAM_SZ (EQ_SINGLE_BAND_FREQ_RANGE_PARAM_LEN*sizeof(uint32_t)) 215#define EQ_SINGLE_BAND_FREQ_PARAM_SZ (EQ_SINGLE_BAND_FREQ_PARAM_LEN*sizeof(uint32_t)) 216#define EQ_BAND_INDEX_PARAM_SZ (EQ_BAND_INDEX_PARAM_LEN*sizeof(uint32_t)) 217#define EQ_PRESET_ID_PARAM_SZ (EQ_PRESET_ID_PARAM_LEN*sizeof(uint32_t)) 218/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 219#define EQ_NUM_PRESETS_PARAM_SZ (EQ_NUM_PRESETS_PARAM_LEN*sizeof(uint8_t)) 220struct eq_config_t { 221 int32_t eq_pregain; 222 int32_t preset_id; 223/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 224 uint32_t num_bands; 225}; 226struct eq_per_band_config_t { 227 int32_t band_idx; 228/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 229 uint32_t filter_type; 230 uint32_t freq_millihertz; 231 int32_t gain_millibels; 232 uint32_t quality_factor; 233/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 234}; 235struct eq_per_band_freq_range_t { 236 uint32_t band_index; 237 uint32_t min_freq_millihertz; 238/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 239 uint32_t max_freq_millihertz; 240}; 241struct eq_params { 242 uint32_t device; 243/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 244 uint32_t enable_flag; 245 struct eq_config_t config; 246 struct eq_per_band_config_t per_band_cfg[MAX_EQ_BANDS]; 247 struct eq_per_band_freq_range_t per_band_freq_range[MAX_EQ_BANDS]; 248/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 249 uint32_t band_index; 250 uint32_t freq_millihertz; 251}; 252#endif 253/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 254 255