SoundEffect.h
上传用户:lqx1163
上传日期:2014-08-13
资源大小:9183k
文件大小:7k
源码类别:

MTK

开发平台:

C/C++

  1. /*****************************************************************************
  2. *  Copyright Statement:
  3. *  --------------------
  4. *  This software is protected by Copyright and the information contained
  5. *  herein is confidential. The software may not be copied and the information
  6. *  contained herein may not be used or disclosed except with the written
  7. *  permission of MediaTek Inc. (C) 2005
  8. *
  9. *  BY OPENING THIS FILE, BUYER HEREBY UNEQUIVOCALLY ACKNOWLEDGES AND AGREES
  10. *  THAT THE SOFTWARE/FIRMWARE AND ITS DOCUMENTATIONS ("MEDIATEK SOFTWARE")
  11. *  RECEIVED FROM MEDIATEK AND/OR ITS REPRESENTATIVES ARE PROVIDED TO BUYER ON
  12. *  AN "AS-IS" BASIS ONLY. MEDIATEK EXPRESSLY DISCLAIMS ANY AND ALL WARRANTIES,
  13. *  EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF
  14. *  MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NONINFRINGEMENT.
  15. *  NEITHER DOES MEDIATEK PROVIDE ANY WARRANTY WHATSOEVER WITH RESPECT TO THE
  16. *  SOFTWARE OF ANY THIRD PARTY WHICH MAY BE USED BY, INCORPORATED IN, OR
  17. *  SUPPLIED WITH THE MEDIATEK SOFTWARE, AND BUYER AGREES TO LOOK ONLY TO SUCH
  18. *  THIRD PARTY FOR ANY WARRANTY CLAIM RELATING THERETO. MEDIATEK SHALL ALSO
  19. *  NOT BE RESPONSIBLE FOR ANY MEDIATEK SOFTWARE RELEASES MADE TO BUYER'S
  20. *  SPECIFICATION OR TO CONFORM TO A PARTICULAR STANDARD OR OPEN FORUM.
  21. *
  22. *  BUYER'S SOLE AND EXCLUSIVE REMEDY AND MEDIATEK'S ENTIRE AND CUMULATIVE
  23. *  LIABILITY WITH RESPECT TO THE MEDIATEK SOFTWARE RELEASED HEREUNDER WILL BE,
  24. *  AT MEDIATEK'S OPTION, TO REVISE OR REPLACE THE MEDIATEK SOFTWARE AT ISSUE,
  25. *  OR REFUND ANY SOFTWARE LICENSE FEES OR SERVICE CHARGE PAID BY BUYER TO
  26. *  MEDIATEK FOR SUCH MEDIATEK SOFTWARE AT ISSUE. 
  27. *
  28. *  THE TRANSACTION CONTEMPLATED HEREUNDER SHALL BE CONSTRUED IN ACCORDANCE
  29. *  WITH THE LAWS OF THE STATE OF CALIFORNIA, USA, EXCLUDING ITS CONFLICT OF
  30. *  LAWS PRINCIPLES.  ANY DISPUTES, CONTROVERSIES OR CLAIMS ARISING THEREOF AND
  31. *  RELATED THERETO SHALL BE SETTLED BY ARBITRATION IN SAN FRANCISCO, CA, UNDER
  32. *  THE RULES OF THE INTERNATIONAL CHAMBER OF COMMERCE (ICC).
  33. *
  34. *****************************************************************************/
  35. /*****************************************************************************
  36. *
  37. * Filename:
  38. * ---------
  39. * SoundEffect.h
  40. *
  41. * Project:
  42. * --------
  43. *   MAUI
  44. *
  45. * Description:
  46. * ------------
  47. *   This file is the header file of sound effect setup.
  48. *
  49. * Author:
  50. * -------
  51. * Tim Chen
  52. *
  53. *============================================================================
  54. *             HISTORY
  55. * Below this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
  56.  *------------------------------------------------------------------------------
  57.  * $Log$
  58.  *
  59.  * removed!
  60.  * removed!
  61.  * 
  62.  *
  63.  * removed!
  64.  * removed!
  65.  * 
  66.  *
  67.  * removed!
  68.  * removed!
  69.  * 
  70.  *
  71.  * removed!
  72.  * removed!
  73.  * 
  74.  *
  75.  *------------------------------------------------------------------------------
  76. * Upper this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
  77. *============================================================================
  78. ****************************************************************************/
  79. #ifndef _SOUND_EFFECT_H_
  80. #define _SOUND_EFFECT_H_
  81. #define MAX_EQUALIZER_NUM  8    /* double check if NVRAM_EF_AUDIO_EQUALIZER_COUNT == MAX_EQUALIZER_NUM */
  82. #define NUM_OF_BARS_IN_A_SETTING  8
  83. #define UPPER_LIMIT_SOUND_LEVEL   1270
  84. #define LOWER_LIMIT_SOUND_LEVEL   -1280
  85. #define SETTING_NAME_MAX_LEN      23
  86. typedef enum
  87. {
  88.     AUDIO_MIC_IN_CALL,
  89.     AUDIO_MIC_APP,
  90.     AUDIO_MIC_SET_NUM
  91. } AUDIO_MIC_SET_ENUM;
  92. typedef struct
  93. {
  94.     S16 count;
  95.     S16 index;
  96.     signed char magnitude[MAX_EQUALIZER_NUM][NUM_OF_BARS_IN_A_SETTING];
  97.     unsigned char setting_name[MAX_EQUALIZER_NUM + 1][(SETTING_NAME_MAX_LEN + 1) *ENCODING_LENGTH];
  98. } audio_equalizer_struct;
  99. #ifdef __MMI_EDITABLE_AUDIO_EQUALIZER__
  100. typedef struct
  101. {
  102.     S16 sound_level[NUM_OF_BARS_IN_A_SETTING];
  103.     U8 active_bar;
  104. } equalizer_setting_info;
  105. #endif /* __MMI_EDITABLE_AUDIO_EQUALIZER__ */ 
  106. typedef struct
  107. {
  108.     unsigned char levels[AUDIO_MIC_SET_NUM];
  109. } audio_mic_volume_struct;
  110. extern audio_equalizer_struct g_settings_audio_equalizer;
  111. extern void InitSoundEffect(void);
  112. extern void mmi_settings_sound_effect_highlight_hdlr(void);
  113. extern void mmi_settings_entry_sound_effect_list(void);
  114. #if defined(__MMI_AUDIO_EQUALIZER__)
  115. extern void mmi_settings_read_audio_equalizer_from_nvram(audio_equalizer_struct *audio_equalizer_p);
  116. extern void mmi_settings_write_audio_equalizer_to_nvram(audio_equalizer_struct *audio_equalizer_p);
  117. extern void mmi_settings_select_audio_equalizer(S16 index);
  118. extern void mmi_settings_audio_equalizer_highlight_hdlr(void);
  119. extern void mmi_settings_audio_equalizer_hint_hdlr(U16 index);
  120. extern void mmi_settings_entry_audio_equalizer_list(void);
  121. extern void mmi_settings_audio_equalizer_list_highlight_hdlr(S32 index);
  122. extern void mmi_settings_audio_equalizer_list_LSK_hdlr(void);
  123. #endif /* defined(__MMI_AUDIO_EQUALIZER__) */ 
  124. extern void mmi_settings_read_audio_mic_volume_from_nvram(audio_mic_volume_struct *audio_mic_volume_p);
  125. extern void mmi_settings_write_audio_mic_volume_to_nvram(audio_mic_volume_struct *audio_mic_volume_p);
  126. #ifdef __MMI_EDITABLE_AUDIO_EQUALIZER__
  127. extern void mmi_settings_audio_equalizer_restore_factory_default(void);
  128. extern void mmi_settings_entry_audio_equalizer_setting_options(void);
  129. extern void mmi_settings_audio_equalizer_opt_select_highlight_hdlr(void);
  130. extern void mmi_settings_audio_equalizer_opt_edit_highlight_hdlr(void);
  131. extern void mmi_settings_audio_equalizer_opt_rename_highlight_hdlr(void);
  132. /* select functions */
  133. extern void mmi_settings_audio_equalizer_setting_select(void);
  134. /* editing functions */
  135. extern void mmi_settings_entry_audio_equalizer_setting_edit(void);
  136. extern U8 mmi_settings_audio_equalizer_delete_history_hdlr(void *in_param);
  137. extern void mmi_settings_audio_equalizer_setting_edit_RSK_hdlr(void);
  138. extern void mmi_settings_audio_equalizer_activate_previous_bar(void);
  139. extern void mmi_settings_audio_equalizer_activate_next_bar(void);
  140. extern void mmi_settings_audio_equalizer_increment_sound_level(void);
  141. extern void mmi_settings_audio_equalizer_decrement_sound_level(void);
  142. extern void mmi_settings_audio_equalizer_save_values(void);
  143. /* renaming functions */
  144. extern void mmi_settings_entry_audio_equalizer_setting_rename(void);
  145. extern void mmi_settings_entry_audio_equalizer_setting_name_edit_option(void);
  146. extern void mmi_settings_audio_equalizer_setting_name_edit_option_highlight_hdlr(S32 index);
  147. extern void mmi_settings_audio_equalizer_setting_name_edit_option_LSK(void);
  148. #ifdef __MMI_TOUCH_SCREEN__
  149. extern void mmi_settings_audio_equalizer_change_sound_level(S16 change);
  150. #endif 
  151. #endif /* __MMI_EDITABLE_AUDIO_EQUALIZER__ */ 
  152. #endif /* _SOUND_EFFECT_H_ */