blob: 0492ea009a1b7cf0270bdc8a4e17aaf437e8372f [file] [log] [blame]
Eric Laurent135ad072010-05-21 06:05:13 -07001/*
2 * Copyright (C) 2010 The Android Open Source Project
3 *
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
7 *
8 * http://www.apache.org/licenses/LICENSE-2.0
9 *
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
15 */
16
17#ifndef ANDROID_EFFECTEQUALIZERAPI_H_
18#define ANDROID_EFFECTEQUALIZERAPI_H_
19
20#include <media/EffectApi.h>
21
Eric Laurent23e1de72010-07-23 00:19:11 -070022#ifndef OPENSL_ES_H_
23static const effect_uuid_t SL_IID_EQUALIZER_ = { 0x0bed4300, 0xddd6, 0x11db, 0x8f34, { 0x00, 0x02, 0xa5, 0xd5, 0xc5, 0x1b } };
24const effect_uuid_t * const SL_IID_EQUALIZER = &SL_IID_EQUALIZER_;
25#endif //OPENSL_ES_H_
Jean-Michel Trivi98fe12a2010-07-09 10:44:29 -070026
Eric Laurent135ad072010-05-21 06:05:13 -070027#if __cplusplus
28extern "C" {
29#endif
30
Eric Laurent135ad072010-05-21 06:05:13 -070031/* enumerated parameters for Equalizer effect */
32typedef enum
33{
34 EQ_PARAM_NUM_BANDS, // Gets the number of frequency bands that the equalizer supports.
35 EQ_PARAM_LEVEL_RANGE, // Returns the minimum and maximum band levels supported.
36 EQ_PARAM_BAND_LEVEL, // Gets/Sets the gain set for the given equalizer band.
37 EQ_PARAM_CENTER_FREQ, // Gets the center frequency of the given band.
38 EQ_PARAM_BAND_FREQ_RANGE, // Gets the frequency range of the given frequency band.
39 EQ_PARAM_GET_BAND, // Gets the band that has the most effect on the given frequency.
40 EQ_PARAM_CUR_PRESET, // Gets/Sets the current preset.
41 EQ_PARAM_GET_NUM_OF_PRESETS, // Gets the total number of presets the equalizer supports.
Eric Laurent23e1de72010-07-23 00:19:11 -070042 EQ_PARAM_GET_PRESET_NAME, // Gets the preset name based on the index.
43 EQ_PARAM_PROPERTIES // Gets/Sets all parameters at a time.
Eric Laurent135ad072010-05-21 06:05:13 -070044} t_equalizer_params;
45
Eric Laurent23e1de72010-07-23 00:19:11 -070046//t_equalizer_settings groups all current equalizer setting for backup and restore.
47typedef struct s_equalizer_settings {
48 uint16_t curPreset;
49 uint16_t numBands;
50 uint16_t bandLevels[];
51} t_equalizer_settings;
Eric Laurent135ad072010-05-21 06:05:13 -070052
53#if __cplusplus
54} // extern "C"
55#endif
56
57
58#endif /*ANDROID_EFFECTEQUALIZERAPI_H_*/