summaryrefslogtreecommitdiff
path: root/tvapi/libtv/audio/audio_android_effect.h (plain)
blob: 1173357eeade7ffd004117f3e152fa56f7aacf52
1#ifndef __TV_AUDIO_ANDROID_EFFECT_H__
2#define __TV_AUDIO_ANDROID_EFFECT_H__
3
4
5
6#include <media/AudioEffect.h>
7#include <hardware/audio_effect.h>
8#include <audio_effects/effect_srs.h>
9#include <audio_effects/effect_hpeq.h>
10#include <audio_effects/effect_equalizer.h>
11#include "tvsetting/audio_cfg.h"
12
13#define EQ_BAND_COUNT (5)
14using namespace android;
15
16class CAndroidEffect
17{
18public:
19 CAndroidEffect();
20 ~CAndroidEffect();
21 int amAndroidNewAudioEffects(void);
22 void amAndroidFreeAudioEffects(void);
23 int amAndroidGetAudioSessionId(void);
24
25 //EQ
26 int amAndroidSetEQGain(const int gain_val_buf[], int band_count);
27 int amAndroidGetEQGain(int gain_val_buf[], int band_count);
28 int amAndroidSetEQEnable(int enabled);
29 int amAndroidGetEQEnabled();
30
31 //SRS
32 int amAndroidSetSRSSurroundSwitch(int switch_val);
33 int amAndroidSetSRSSurroundGain(int gain_val);
34 int amAndroidSetSRSTrubassSwitch(int switch_val);
35 int amAndroidSetSRSTrubassGain(int gain_val);
36 int amAndroidSetSRSDialogClaritySwitch(int switch_val);
37 int amAndroidSetSRSDialogClarityGain(int gain_val);
38 int amAndroidSetSRSDefinitionGain(int gain_val);
39 int amAndroidSetSRSTrubassSpeakerSize(int tmp_val);
40
41
42private:
43 int gEqForcedGain[EQ_BAND_COUNT];
44 int gEqUserSetGain[EQ_BAND_COUNT];
45 void FreeAudioEffect(AudioEffect **pEffect);
46 void initAudioEffect(AudioEffect **pEffect, const effect_uuid_t *const pEffectType, const effect_uuid_t *const pEffectUuid, int sessionId);
47 int setSrsParameterInt(tshd_srs_param_t param, unsigned value);
48 int getSrsParameterInt(tshd_srs_param_t param, unsigned *value);
49 int setSrsParameterFloat(tshd_srs_param_t param, float value);
50 int getSrsParameterFloat(tshd_srs_param_t param, float *value);
51 int amAndroidSetSrsParameterInt(tshd_srs_param_t param, unsigned value);
52 int amAndroidGetSrsParameterInt(tshd_srs_param_t param, unsigned *value);
53 int amAndroidSetSrsParameterFloat(tshd_srs_param_t param, float value);
54 int amAndroidGetSrsParameterFloat(tshd_srs_param_t param, float *value);
55 int getEqGain(int gain_val_buf[], int band_count);
56 int setEqGain(const int gain_val_buf[], int band_count);
57 int amAndroidNewSRSAudioEffect(void);
58 int amAndroidNewEQAudioEffect(void);
59 int amAndroidForceEQGain(int band, int gain);
60
61 AudioEffect *mplpAudioEffectSrs;
62 AudioEffect *mplpAudioEffectEq;
63 int mTrackerSessionId;
64};
65
66#endif //__TV_AUDIO_ANDROID_EFFECT_H__
67