Revert "[Feature][T106_eSDK]update from T106-V2.01.01.02P56U06.AP.15.11_CAP.15.11.01 to T106-V2.01.01.02P56U06.AP.16.08_CAP.16.08.01 -- Uboot"
This reverts commit 189d139ed3d8193da1f1c4abfe60b5da374e5435.
Reason for revert: revert 16.08_patch
Change-Id: I732b60e758f02a9b28ae216d456e4ad1bccf4fcd
diff --git a/Uboot/boot/common/src/uboot/arch/arm/lib/Makefile b/Uboot/boot/common/src/uboot/arch/arm/lib/Makefile
index 688bea1..b5625a6 100755
--- a/Uboot/boot/common/src/uboot/arch/arm/lib/Makefile
+++ b/Uboot/boot/common/src/uboot/arch/arm/lib/Makefile
@@ -49,9 +49,9 @@
SOBJS-$(CONFIG_USE_ARCH_MEMCPY) += memcpy.o
endif
#xf.li@2023.04.14 modify for ZXW-25 start
-LYNQ_CONFIG_VERSION = "T106-V2.01.01.02P56U06.AP.16.08_CAP.16.08.01"
+LYNQ_CONFIG_VERSION = "T106-W-V2.01.01.02P56U06.AP.15.05_CAP.15.05"
CFLAGS += -DLYNQ_VERSION=\"$(LYNQ_CONFIG_VERSION)\"
-LYNQ_CONFIG_COMMITID = "179d1bff319d3731925c0eb4f425f156604a0a62"
+LYNQ_CONFIG_COMMITID = "c33b177c8b861ee957b6c8b0dea003278a3671d6"
CFLAGS += -DLYNQ_COMMITID=\"$(LYNQ_CONFIG_COMMITID)\"
#xf.li@2023.04.14 modify for ZXW-25 end
SRCS := $(GLSOBJS:.o=.S) $(GLCOBJS:.o=.c) \
diff --git a/Uboot/boot/common/src/uboot/downloader/cmd_compat_write.c b/Uboot/boot/common/src/uboot/downloader/cmd_compat_write.c
index 4d6ae9d..4d5e339 100755
--- a/Uboot/boot/common/src/uboot/downloader/cmd_compat_write.c
+++ b/Uboot/boot/common/src/uboot/downloader/cmd_compat_write.c
@@ -34,10 +34,9 @@
/****************************************************************************
* Global Function Prototypes
****************************************************************************/
-//T_IMG_SIZE img_size[IMG_NUM] = {{"uboot",0,0},{"imagefs",0,0},{"rootfs",0,0},{"caprootfs",0,0},{"oem",0,0}};
-T_IMG_SIZE img_size[IMG_NUM_MAX];
-int img_num = 0;
+T_IMG_SIZE img_size[IMG_NUM] = {{"uboot",0,0},{"imagefs",0,0},{"rootfs",0,0},{"caprootfs",0,0},{"oem",0,0}};
int flags_partiton_write = 0;
+
extern int g_iftype;
extern partition_table_t * g_partition_table_dl;
/*******************************************************************************
@@ -57,14 +56,11 @@
{
partition_entry_t *part = NULL;
char *par = NULL;
- char *par_tmp = NULL;
char ack[64]={0};
unsigned int offset = 0;
unsigned int size = 0;
unsigned int ret = 0;
unsigned int i = 0;
- unsigned int len = 0;
- unsigned int found = 0;
flags_partiton_write = 1;
if(argc<4)
@@ -84,55 +80,23 @@
}
/*record image size*/
- len = strlen(par);
-/* Started by AICoder, pid:q5743g3f62rd9291419e086de0327502c5d710ce */
- par_tmp = (char *)malloc(len + 1);
- if (par[len - 1] == '2') {
- strncpy(par_tmp, par, len - 1);
- par_tmp[len - 1] = '\0';
- } else {
- strcpy(par_tmp, par);
- }
-/* Ended by AICoder, pid:q5743g3f62rd9291419e086de0327502c5d710ce */
-
-/* Started by AICoder, pid:ye4dcm700en8c6e14cdf0ac390813e36dc075765 */
- for(i=0; i<img_num; i++)
+ for(i=0; i<IMG_NUM; i++)
{
- if(strcmp((char *)img_size[i].name, par_tmp) == 0 && strlen((char *)img_size[i].name) == strlen(par_tmp))
- {
- found = 1;
- if(strcmp(par_tmp,par) == 0)
- {
- img_size[i].size_a = size;
- printf("partition is %s,size_a is 0x%x.\n",par,size);
- }
- else
- {
- img_size[i].size_b = size;
- printf("partition is %s,size_b is 0x%x.\n",par,size);
- }
-
- break;
- }
+ if(memcmp((char *)img_size[i].name , par, strlen(img_size[i].name)) == 0){
+ if(!memcmp(par,"oemdata",7))
+ break;
+ if(strlen(img_size[i].name) == strlen(par))
+ {
+ img_size[i].size_a = size;
+ printf("partition is %s,size_a is 0x%x.\n",par,size);
+ }
+ else
+ {
+ img_size[i].size_b = size;
+ printf("partition is %s,size_b is 0x%x.\n",par,size);
+ }
+ }
}
- if (!found)
- {
- strcpy(img_size[img_num].name,par_tmp);
- if(strcmp(par_tmp,par) == 0)
- {
- img_size[img_num].size_a = size;
- printf("partition is %s,size_a is 0x%x.\n",par,size);
- }
- else
- {
- img_size[img_num].size_b = size;
- printf("partition is %s,size_b is 0x%x.\n",par,size);
- }
-
- img_num += 1;
- }
- free(par_tmp);
-/* Ended by AICoder, pid:ye4dcm700en8c6e14cdf0ac390813e36dc075765 */
#if defined (CONFIG_ZX297520V3E_VEHICLE_DC) || defined (CONFIG_ZX297520V3E_VEHICLE_DC_REF)
if(g_nor_flag == 1)
diff --git a/Uboot/boot/common/src/uboot/include/partition_table.h b/Uboot/boot/common/src/uboot/include/partition_table.h
index febd365..306a64c 100755
--- a/Uboot/boot/common/src/uboot/include/partition_table.h
+++ b/Uboot/boot/common/src/uboot/include/partition_table.h
@@ -211,7 +211,7 @@
#define PARTITION_CRC 0x12345678
#define PARTITION_SIZE 0X1000 /* ·ÖÇø±íµÄ´óС */
-#define IMG_NUM 15
+#define IMG_NUM 5
typedef struct partition_entry {
unsigned char part_name[16];
diff --git a/Uboot/cp/ps/driver/inc/misc/drvs_voiceprocess.h b/Uboot/cp/ps/driver/inc/misc/drvs_voiceprocess.h
index acceb20..67cc84d 100755
--- a/Uboot/cp/ps/driver/inc/misc/drvs_voiceprocess.h
+++ b/Uboot/cp/ps/driver/inc/misc/drvs_voiceprocess.h
@@ -283,10 +283,6 @@
BOOL firstRegZCATFlag; //25
T_Hal_EcallData ecallData;//26
UINT8 voice_nv_update;//27
- UINT8 useVoiceBuffer; // 0 not use,1 use
- UINT8 voiceBufferType; //0 single core, 1 dual core
-
-
} T_zDrvVoice_GbVar; //T_zDrvVoice_GbVar
typedef struct
diff --git a/Uboot/cp/ps/driver/src/chipsets/src/audio_base/audio_config/audioRef_cfg.c b/Uboot/cp/ps/driver/src/chipsets/src/audio_base/audio_config/audioRef_cfg.c
index 20c1ddc..7489d52 100755
--- a/Uboot/cp/ps/driver/src/chipsets/src/audio_base/audio_config/audioRef_cfg.c
+++ b/Uboot/cp/ps/driver/src/chipsets/src/audio_base/audio_config/audioRef_cfg.c
@@ -25,7 +25,6 @@
#include "drvs_general.h"
#include "drvs_i2s.h"
#include "drvs_voiceprocess.h"
-#include "hal_voiceprocess.h"
#include "drvs_voice_config.h"
#include "drvs_i2c.h"
#include "NvParam_drv.h"
@@ -133,7 +132,7 @@
//#define AUDIO_USE_FIXED_ADDRESS
-//#define VP_INOUT_BAK_BUFFER_SIZE 0x30000 // 0x60000
+#define VP_INOUT_BAK_BUFFER_SIZE 0x30000 // 0x60000
#define VP_INOUT_NOBAK_BUFSIZE 640
/**************************************************************************
@@ -596,8 +595,7 @@
//ret = zDrvNand_Read(OS_FLASH_VOICE_DRV_RW_NONFAC_BASE_ADDR, sizeof(audionvflag), ((UINT8 *)(&audionvflag)));
ret = zOss_NvItemRead(OS_FLASH_VOICE_DRV_RW_NONFAC_BASE_ADDR, ((UINT8 *)(&audionvflag)), sizeof(audionvflag));
-
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, " zDrvVoiceConfig_Init zOss_NvItemRead isVpParamInNv=%d,isUseSlicCodec=%d,isUseVoiceProc=%d,isUseTdm=%d,isUseEcall=%d!\n", audionvflag.isVpParamInNv, audionvflag.isUseSlicCodec,audionvflag.isUseVoiceProc,audionvflag.isUseTdm,audionvflag.isUseEcall);
+ zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, " zDrvVoiceConfig_Init zOss_NvItemRead isVpParamInNv=%d,isUseSlicCodec=%d!\n", audionvflag.isVpParamInNv, audionvflag.isUseSlicCodec);
//hal_TestTopI2sConfig();
if (ret != DRV_SUCCESS)
diff --git a/Uboot/cp/ps/driver/src/chipsets/src/audio_base/audio_lib/amr/lib/armv7-a/GCC/amr.a b/Uboot/cp/ps/driver/src/chipsets/src/audio_base/audio_lib/amr/lib/armv7-a/GCC/amr.a
index 82a1fc3..01399c1 100755
--- a/Uboot/cp/ps/driver/src/chipsets/src/audio_base/audio_lib/amr/lib/armv7-a/GCC/amr.a
+++ b/Uboot/cp/ps/driver/src/chipsets/src/audio_base/audio_lib/amr/lib/armv7-a/GCC/amr.a
Binary files differ
diff --git a/Uboot/cp/ps/driver/src/chipsets/src/audio_base/audiointf/hal_audextintf.c b/Uboot/cp/ps/driver/src/chipsets/src/audio_base/audiointf/hal_audextintf.c
index db57346..dff7364 100755
--- a/Uboot/cp/ps/driver/src/chipsets/src/audio_base/audiointf/hal_audextintf.c
+++ b/Uboot/cp/ps/driver/src/chipsets/src/audio_base/audiointf/hal_audextintf.c
@@ -193,40 +193,6 @@
{
return g_voiceVar.muteEn;
}
-
-int zDrvVp_SetVoiceProc_Wrap(int val)
-{
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "%s: val=%d !\n",__func__,val);
-
- g_voiceVar.audio_ctrlFlag.isUseVoiceProc = val;
- return DRV_SUCCESS;
-}
-
-int zDrvVp_GetVoiceProc_Wrap(void)
-{
- return g_voiceVar.audio_ctrlFlag.isUseVoiceProc;
-}
-
-int zDrvVp_SetVoiceBuffer_Wrap(int en,int type)
-{
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "%s: en=%d,type=%d !\n",__func__,en,type);
-
- g_voiceVar.useVoiceBuffer = en;
- g_voiceVar.voiceBufferType = type;
- return DRV_SUCCESS;
-}
-
-void zDrvVp_GetVoiceBuffer_Wrap(int *en,int *type)
-{
- if((en!=NULL)&&(type!=NULL)){
- *en = g_voiceVar.useVoiceBuffer;
- *type = g_voiceVar.voiceBufferType;
-
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "%s: en=%d,type=%d !\n",__func__,*type,*en);
- }
-}
-
-
SINT32 zDrvVp_SetRxMute_Wrap(int enable)
{
return zDrvVp_SetRxMute(enable, VOICE_DOWNLINK);
diff --git a/Uboot/cp/ps/driver/src/chipsets/src/audio_base/audiointf/voice_procintf.c b/Uboot/cp/ps/driver/src/chipsets/src/audio_base/audiointf/voice_procintf.c
index 5146753..2f0e803 100755
--- a/Uboot/cp/ps/driver/src/chipsets/src/audio_base/audiointf/voice_procintf.c
+++ b/Uboot/cp/ps/driver/src/chipsets/src/audio_base/audiointf/voice_procintf.c
@@ -15,10 +15,6 @@
* Include files
****************************************************************************/
#include "drvs_general.h"
-
-#include "drvs_volte.h"
-#include "drvs_voiceprocess.h"
-
#include "drvs_ramlog.h"
#include <oss_clib.h>
#include <oss_kernel.h>
@@ -77,12 +73,8 @@
g_voiceVar.isUseSlicCodec = g_voiceVar.audio_ctrlFlag.isUseSlicCodec;
g_voiceVar.g_isUseTdm = g_voiceVar.audio_ctrlFlag.isUseTdm;
-
- g_voiceVar.useVoiceBuffer = g_voiceVar.audio_ctrlFlag.isUseVoiceBuffer; // 0 not use,1 use
- g_voiceVar.voiceBufferType = g_voiceVar.audio_ctrlFlag.selVoiceBufferType;//0 single core, 1 dual core
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, " VoiceProc_InitNvParam isUseVoiceProc=%d,isUseSlicCodec=%d,isUseTdm=%d,useVoiceBuffer=%d,voiceBufferType=%d!\n", g_voiceVar.audio_ctrlFlag.isUseVoiceProc, \
- g_voiceVar.isUseSlicCodec, g_voiceVar.audio_ctrlFlag.isUseTdm,g_voiceVar.useVoiceBuffer,g_voiceVar.voiceBufferType);
+ zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, " VoiceProc_InitNvParam isUseVoiceProc=%d,isUseSlicCodec=%d,isUseTdm=%d!\n", g_voiceVar.audio_ctrlFlag.isUseVoiceProc, g_voiceVar.isUseSlicCodec, g_voiceVar.audio_ctrlFlag.isUseTdm);
if (g_voiceVar.audio_ctrlFlag.isUseVoiceProc == 1)
{
#ifdef _USE_NXP_AUD
diff --git a/Uboot/cp/ps/driver/src/chipsets/src/audio_base/i2s/hal_i2s.c b/Uboot/cp/ps/driver/src/chipsets/src/audio_base/i2s/hal_i2s.c
index 5ea7c1d..983a92a 100755
--- a/Uboot/cp/ps/driver/src/chipsets/src/audio_base/i2s/hal_i2s.c
+++ b/Uboot/cp/ps/driver/src/chipsets/src/audio_base/i2s/hal_i2s.c
@@ -4322,37 +4322,6 @@
*/
VOID vp_SetTopI2sConfig(VOID)
{
-
-
-UINT32 AmrRegBit = 0;
-
-if (g_voiceVar.useVoiceBuffer == 1){
-
-
-
- /* inter loop */
- AmrRegBit = ARM_I2S_LOOP_CFG;
-
- AmrRegBit &= 0xfffffe07;
- AmrRegBit |= 0x000000a8; /* 0x000000a8 loop dsp afe(loop i2s1)--arm i2s2(loop i2s2) 0x00000150 loop dsp arm(loop i2s1)--afe i2s2(loop i2s2)*/
-
- ARM_I2S_LOOP_CFG = AmrRegBit;
-
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "vp_SetTopI2sConfig ARM_I2S_LOOP_CFG=0x%x\n", ARM_I2S_LOOP_CFG);
-}
-#ifdef CONFIG_VOICE_BUFFER_DRV
- /* inter loop */
- AmrRegBit = ARM_I2S_LOOP_CFG;
-
- AmrRegBit &= 0xfffffe07;
- AmrRegBit |= 0x000000a8; /* 0x000000a8 loop dsp afe(loop i2s1)--arm i2s2(loop i2s2) 0x00000150 loop dsp arm(loop i2s1)--afe i2s2(loop i2s2)*/
-
- ARM_I2S_LOOP_CFG = AmrRegBit;
-
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "vp_SetTopI2sConfig ARM_I2S_LOOP_CFG=0x%x\n", ARM_I2S_LOOP_CFG);
-
-#endif
-
#if 0
UINT32 AmrRegBit = 0;
int ret;
diff --git a/Uboot/cp/ps/driver/src/chipsets/src/audio_base/include/hal_voicebuffer.h b/Uboot/cp/ps/driver/src/chipsets/src/audio_base/include/hal_voicebuffer.h
deleted file mode 100755
index a9fbd34..0000000
--- a/Uboot/cp/ps/driver/src/chipsets/src/audio_base/include/hal_voicebuffer.h
+++ /dev/null
@@ -1,107 +0,0 @@
-/*******************************************************************************
- * Copyright (C) 2007, ZTE Corporation.
- *
- * File Name: hal_voicebuffer.h
- * File Mark:
-* Description: Provide voicebuffer hal function prototype declaration and type declaration.
- * Others:
- * Version: V0.5
- * Author: xxq
- * Date: 2024-07-11
- * History 1:
- * Date:
- * Version:
- * Author:
- * Modification: add mute/read/write/loopback.
- * History 2:
- ********************************************************************************/
-
-#ifndef _HAL_VOICEBUFFER_H
-#define _HAL_VOICEBUFFER_H
-
-
-/****************************************************************************
-* Include files
-****************************************************************************/
-
-
-/****************************************************************************
-* Macros
-****************************************************************************/
-#define VP_BUF_LENGTH 0x7FF80 //0xFFD80 //0x7FE40 //0x4df80// (0.5M 0x80000)
-#define VP_FRAME_BUFFER_SIZE 320 //20ms 800KHZ
-#define VP_I2S_BUFFER_SIZE 320
-#define VOICE_SYNC_TIMEOUT_TIME 100
-
- //#define VP_INOUT_BAK_BUFFER_SIZE 0x30000 // 0x60000
-#define VP_INOUT_NOBAK_BUFSIZE 640
-#define VB_MAX_INT 0x7fffffff
-#define VB_MIN_INT 0 //(0-2<<31)//0x80000000
-
-#define VB_INT_OVERFLOW(x) if((x < VB_MIN_INT)||(x > VB_MAX_INT)) x = 0;
-
-#define RPMSG_CAP_ID 1
-
-#define MAX_BUF_SIZE 640
-#define MAX_BUF_NUM 3
-
-/****************************************************************************
-* Types
-****************************************************************************/
-
-
-
-enum{
- UP_LINK,
- DOWN_LINK
-};
-
-struct voice_ring_buffer {
- volatile uint read_pos;
- volatile uint write_pos;
- volatile char data[];
-
-};
-
-
-/****************************************************************************
-* Constants
-****************************************************************************/
-
-/****************************************************************************
-* Global Variables
-****************************************************************************/
-
-/****************************************************************************
-* Function Prototypes
-****************************************************************************/
-
-SINT32 vp_Open_Vbuffer(void);
-
-SINT32 vp_Close_Vbuffer(void);
-
-SINT32 vp_VoiceI2sStart_Vbuffer(VOID);
-
-VOID vp_VoiceI2sStop_Vbuffer(VOID);
-
-SINT32 zDrvVp_VoiceWorkStop_Vbuffer(VOID);
-
-SINT32 vp_VolteReadStart_Vbuffer(VOID);
-//whole replace
-SINT32 vp_VolteReadStop_Vbuffer(VOID);
-
-SINT32 vp_VolteWriteStart_Vbuffer(VOID);
-//whole replace
-SINT32 vp_VolteWriteStop_Vbuffer(VOID);
-
-SINT32 vp_WriteDataToCodec_Vbuffer(UINT8 *pBuf, UINT32 count);
-
-SINT32 vp_ReadDataFromCodec_Vbuffer(UINT8 *pBuf, UINT32 count);
-
-SINT32 vp_CreateThreadSemaph_Vbuffer(VOID);
-
-
-
-
-#endif/*_HAL_VOICEBUFFER_H*/
-
diff --git a/Uboot/cp/ps/driver/src/chipsets/src/audio_base/include/hal_voiceprocess.h b/Uboot/cp/ps/driver/src/chipsets/src/audio_base/include/hal_voiceprocess.h
index 810e12c..371297d 100755
--- a/Uboot/cp/ps/driver/src/chipsets/src/audio_base/include/hal_voiceprocess.h
+++ b/Uboot/cp/ps/driver/src/chipsets/src/audio_base/include/hal_voiceprocess.h
@@ -23,42 +23,14 @@
* Include files *
**************************************************************************/
-
-/****************************************************************************
-* Local Types
-****************************************************************************/
-
-typedef enum
-{
- VBUF_SEM = 0,//voice buffer
- ECALL_SEM,
- SEM_MAX
-} T_Sem_Owner;
-
-typedef enum
-{
- DIR_RX,
- DIR_TX,
- DIR_ALL,
- DIR_MAX
-} T_Data_Dir_Type;
-
-
/**************************************************************************
* Macro *
**************************************************************************/
-#define VP_INOUT_BAK_BUFFER_SIZE 0x30000 // 0x60000
-
-//#define TEST_WHITE_NOISE
-
-//#define VB_DATA_LOSS_TEST
-
-
#if 0
#define VOICE_TONE_MIXER_FUNCTION
//#define TEST_WHITE_NOISE
-#endif
+
/****************************************************************************
* Global Constants *
@@ -75,7 +47,6 @@
/****************************************************************************
* Function Prototypes *
****************************************************************************/
-#if 0
typedef enum
{
VP_I2S_IDLE = 0,
@@ -89,13 +60,6 @@
/**************************************************************************
* Function Prototypes *
**************************************************************************/
-#ifdef ECALL_SUPPORT
-
-
-SINT32 update_ecall_state(T_Data_Dir_Type dir);
-
-
-#endif
diff --git a/Uboot/cp/ps/driver/src/chipsets/src/audio_base/nxp/hal_nxp.c b/Uboot/cp/ps/driver/src/chipsets/src/audio_base/nxp/hal_nxp.c
deleted file mode 100755
index 3dfed2e..0000000
--- a/Uboot/cp/ps/driver/src/chipsets/src/audio_base/nxp/hal_nxp.c
+++ /dev/null
@@ -1,1099 +0,0 @@
-/*******************************************************************************
- * Copyright (C) 2007, ZTE Corporation.
- *
- * File Name:
- * File Mark:
- * Description:
- * Others:
- * Version:
- * Author: lvwenhua
- * Date: 2011-8-24
- * History 1:
- * Date: 2016-2-16
- * Version:
- * Author:xuxinqiang
- * Modification: edit for union version
- * History 2:
- ********************************************************************************/
-
-/****************************************************************************
-* Include files
-****************************************************************************/
-#include "drvs_general.h"
-#include "NvParam_drv.h"
-
-#ifdef _OS_TOS
-#include "./tos/LVVE.h"
-#include "./tos/PARAM_Default.h"
-#include "./tos/nxp_DrvNvData.h"
-
-#elif defined _OS_LINUX
-#include "./uclinux/LVVE.h"
-#include "./uclinux/PARAM_Default.h"
-#include "./uclinux/nxp_DrvNvData.h"
-
-#else
-#include "LVVE.h"
-#include "PARAM_Default.h"
-#include "nxp_DrvNvData.h"
-#endif
-
-#include "drvs_voiceprocess.h"
-#include "drvs_ramlog.h"
-
-#include "hal_audiointf.h"
-#include "RWNvConfig.h"
-
-/****************************************************************************
-* Local Macros
-****************************************************************************/
-#define MAX_BLK_SIZE 400 /* Maximum possible block size */
-#define LVVE_NUM_OF_SAMPLES 160
-#define VP_PARAM_IS_IN_NV 1
-
-/****************************************************************************
-* Global Constants
-****************************************************************************/
-//extern BOOL g_vpMuteEn;
-//extern UINT8 g_voiceInGsmTdMode;
-//extern UINT8 g_voiceInVolteMode;
-//extern UINT8 g_volteIsWb;
-//extern UINT8 g_isUseSlicCodec;
-extern T_zDrvVoice_GbVar g_voiceVar;
-static BOOL g_nxpIsOpen = FALSE;
-
-
-/****************************************************************************
-* Global Variables
-****************************************************************************/
-LVM_INT32 InBuffer16_Tx_FE[MAX_BLK_SIZE]; /* Stereo, 16-bit aligned input buffer */
-LVM_INT16 pNoiseData[4];
-
-LVM_MemoryTable_st MemoryTable_Tx = {0}; /* Module memory table */
-LVM_MemoryTable_st MemoryTable_Rx = {0}; /* Module memory table */
-LVVE_Tx_Handle_t hInstance_Tx = LVM_NULL; /* Module instance handle */
-LVVE_Rx_Handle_t hInstance_Rx = LVM_NULL; /* Module instance handle */
-
-#define NUM_VOL_RX (5) /* Number of Rx volumes */
-
-//LVM_CHAR LVVE_Tx_Preset_Buffer[LVVE_TX_PRESET_LENGTH]; /* Byte buffer */
-LVVE_Tx_Preset_t LVVE_Tx_Preset ; /* Preset buffer */
-//LVM_CHAR LVVE_Rx_Preset_Buffer[NUM_VOL_RX*LVVE_RX_PRESET_LENGTH]; /* Byte buffer */
-LVVE_Rx_Preset_t LVVE_Rx_Preset ; /* Preset buffer */
-//LVM_CHAR LVVE_Tx_Preset_Buffer_Volte[LVVE_TX_PRESET_LENGTH]; /* Byte buffer */
-//LVM_CHAR LVVE_Rx_Preset_Buffer_Volte[NUM_VOL_RX*LVVE_RX_PRESET_LENGTH]; /* Byte buffer */
-
-T_Audio_NvParam g_audioNvParam = {0};
-
-static LVM_UINT32 NumBytesReadRx; /* Number of bytes in the preset file RX*/
-static LVM_UINT32 NumBytesReadTx; /* Number of bytes in the preset file TX*/
-
-static BOOL isFirstTxProcessErr = TRUE;
-static BOOL isFirstRxProcessErr = TRUE;
-/****************************************************************************
-* Global Function Prototypes
-****************************************************************************/
-//T_ZDrv_VoiceOutputPath s_vpPathout;
-//T_ZDrvVoice_OutputVolLevel s_vpVolout;
-
-UINT32 zOss_NvItemRead(UINT32 NvItemID, UINT8 *NvItemData, UINT32 NvItemLen);
-UINT32 zOss_NvItemWrite(UINT32 NvItemID, UINT8 *NvItemData, UINT32 NvItemLen);
-
-/****************************************************************************
-* Function Definitions
-****************************************************************************/
-SINT32 Vp_NxpInitNvParam(VOID)
-{
- SINT32 ret = DRV_SUCCESS;
- SINT32 i = 0;
-
- LVVE_VersionInfo pVersion; /* version information */
- LVVE_GetVersionInfo(&pVersion);
-
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "nxp Version %s\n", pVersion.VersionNumber);
-#if 0
- ret = zOss_NvItemRead(OS_FLASH_VOICE_DRV_RW_NONFAC_BASE_ADDR, ((UINT8 *)(&g_audioNvParam.audio_ctrlFlag)), sizeof(g_audioNvParam.audio_ctrlFlag));
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "Vp_NxpInitNvParam voice flag baseAdd=0x%x, ret =%d ,isVpParamInNv= %d \n", (OS_FLASH_VOICE_DRV_RW_NONFAC_BASE_ADDR), \
- ret, g_audioNvParam.audio_ctrlFlag.isVpParamInNv);
-
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "Vp_NxpInitNvParam voiceflag isVpParamInNv=%d,isUseSlicCodec=%d,isUseVoiceProc=%d,isUseCodecDsp=%d,isUseNvWrite=%d \n", \
- g_audioNvParam.audio_ctrlFlag.isVpParamInNv, g_audioNvParam.audio_ctrlFlag.isUseSlicCodec, g_audioNvParam.audio_ctrlFlag.isUseVoiceProc, \
- g_audioNvParam.audio_ctrlFlag.isUseCodecDsp, g_audioNvParam.audio_ctrlFlag.isUseNvWrite);
-
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "Vp_NxpInitNvParam the g_audioNvParam size=%d,audio_ctrlFlag size=%d\n", \
- sizeof(g_audioNvParam), sizeof(g_audioNvParam.audio_ctrlFlag));
-
- g_voiceVar.audio_ctrlFlag = g_audioNvParam.audio_ctrlFlag;
- g_voiceVar.isUseSlicCodec = g_audioNvParam.audio_ctrlFlag.isUseSlicCodec;
- g_voiceVar.g_isUseTdm = g_audioNvParam.audio_ctrlFlag.isUseTdm;
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, " Vp_NxpInitNvParam g_voiceVar.isUseSlicCodec=%d, g_voiceVar.g_isUseTdm=%d!\n", g_voiceVar.isUseSlicCodec, g_voiceVar.g_isUseTdm);
-#endif
-
- g_audioNvParam.audio_ctrlFlag = g_voiceVar.audio_ctrlFlag;
-#if 0
- if (g_audioNvParam.audio_ctrlFlag.isVpParamInNv == 1)
- {
- ret = zOss_NvItemRead(OS_FLASH_VOICE_RW_NONFAC_BASE_ADDR, ((UINT8 *)(&g_audioNvParam.vpNxpParamFile)), sizeof(g_audioNvParam.vpNxpParamFile));
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "Vp_NxpInitNvParam Read audio nv param base add=0x%x,vpNxpParamFile size=%d \n", \
- (OS_FLASH_VOICE_RW_NONFAC_BASE_ADDR), sizeof(g_audioNvParam.vpNxpParamFile));
-
- }
- else
- {
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "Vp_NxpInitNvParam Set all path to the default param, txbuffer size=%d, rxbuffer size=%d \n", sizeof(LVVE_Tx_Preset_Buffer_Voice_Tool), sizeof(LVVE_Rx_Preset_Buffer_Voice_Tool));
- // Vp_Nxp_Param_File.LVVE_Tx_File_Buffer=LVVE_Tx_Preset_Buffer_Voice_Tool;
- //Vp_Nxp_Param_File.LVVE_Rx_File_Buffer=LVVE_Rx_Preset_Buffer_Voice_Tool;
- for (i = 0; i < AUDIO_MAX_VP_PATH; i++)
- {
- zOss_Memcpy(g_audioNvParam.vpNxpParamFile.vpNxpPathParam[i].nxpTxFileBuffer, LVVE_Tx_Preset_Buffer_Voice_Tool, sizeof(LVVE_Tx_Preset_Buffer_Voice_Tool));
- zOss_Memcpy(g_audioNvParam.vpNxpParamFile.vpNxpPathParam[i].nxpRxFileBuffer, LVVE_Rx_Preset_Buffer_Voice_Tool, sizeof(LVVE_Rx_Preset_Buffer_Voice_Tool));
- }
- zOss_Memcpy(g_audioNvParam.vpNxpParamFile.nxpTxNbMuteBuffer, LVVE_Tx_Mute_File_Buffer, sizeof(LVVE_Tx_Mute_File_Buffer));
- zOss_Memcpy(g_audioNvParam.vpNxpParamFile.nxpTxWbMuteBuffer, LVVE_Tx_Wb_Mute_File_Buffer, sizeof(LVVE_Tx_Wb_Mute_File_Buffer));
- }
-#endif
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "Vp_NxpInitNvParam is over \n");
-
- return ret;
-}
-
-SINT32 Vp_NxpOpen(UINT32 fs)
-{
-
- LVVE_Tx_InstanceParams_st InstanceParams_Tx; /* Instance parameters */
- LVVE_Rx_InstanceParams_st InstanceParams_Rx; /* Instance parameters */
- LVVE_ReturnStatus_en LVVE_Status; /* Module status return */
- LVM_INT32 i, ret = 0; /* Index variable */
-
- if (g_nxpIsOpen == TRUE)
- {
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "nxp already opened! \n");
- return DRV_SUCCESS;
- }
-
- if (fs == 8000)
- {
-
- InstanceParams_Rx.SampleRate = LVM_FS_8000;
- InstanceParams_Rx.EQ_InstParams.EQ_MaxLength = LVVE_MAX_EQ_LENGTH_NB;
- InstanceParams_Tx.SampleRate = LVM_FS_8000;
- InstanceParams_Tx.MaxBulkDelay = LVVE_MAX_BULK_DELAY;
- InstanceParams_Tx.EQ_InstParams.EQ_MaxLength = LVVE_MAX_EQ_LENGTH_NB;
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "Vp_NxpOpen confg NB param! \n", fs);
- }
- else if (fs == 16000)
- {
- InstanceParams_Rx.SampleRate = LVM_FS_16000;
- InstanceParams_Rx.EQ_InstParams.EQ_MaxLength = LVVE_MAX_EQ_LENGTH_WB;
- InstanceParams_Tx.SampleRate = LVM_FS_16000;
- InstanceParams_Tx.MaxBulkDelay = LVVE_MAX_BULK_DELAY;
- InstanceParams_Tx.EQ_InstParams.EQ_MaxLength = LVVE_MAX_EQ_LENGTH_WB;
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "Vp_NxpOpen confg WB param ! \n", fs);
- }
- else
- {
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "Vp_NxpOpen nxp the fs=%d not support! \n", fs);
- return DRV_ERROR;
- }
-
- /******************************************************************************
- Allocate memory
- *******************************************************************************/
- /*
- * Get the memory requirements for the Tx Module
- */
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "before LVVE_Tx_GetMemoryTable\n");
-
- LVVE_Status = LVVE_Tx_GetMemoryTable(LVM_NULL,
- &MemoryTable_Tx,
- &InstanceParams_Tx);
-
- if (LVVE_Status == LVVE_NULLADDRESS)
- {
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "Parameter error - null pointer error returned by LVVE_Tx_GetMemoryTable\n");
- return DRV_ERROR;
- }
- if (LVVE_Status == LVVE_OUTOFRANGE)
- {
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "Parameter error - out of range error returned by LVVE_Tx_GetMemoryTable\n");
- return DRV_ERROR;
- }
-
- /*
- * Allocate the memory for the Tx module
- */
- for (i = 0; i < LVM_NR_MEMORY_REGIONS; i++)
- {
- if (MemoryTable_Tx.Region[i].Size != 0)
- {
- MemoryTable_Tx.Region[i].pBaseAddress = zOss_Malloc(MemoryTable_Tx.Region[i].Size);
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "Nxp tx malloc size = %d", MemoryTable_Tx.Region[i].Size);
-
- if (MemoryTable_Tx.Region[i].pBaseAddress == LVM_NULL)
- {
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "Failed to allocate %d bytes for region %d\n", (LVM_INT16)MemoryTable_Tx.Region[i].Size, (LVM_INT16)i);
- }
- }
-
- }
-
- /*
- * Get the memory requirements for the Rx Module
- */
-
- LVVE_Status = LVVE_Rx_GetMemoryTable(LVM_NULL,
- &MemoryTable_Rx,
- &InstanceParams_Rx);
- if (LVVE_Status == LVVE_NULLADDRESS)
- {
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "Parameter error - null pointer error returned by LVVE_Rx_GetMemoryTable\n");
- return DRV_ERROR;
- }
- if (LVVE_Status == LVVE_OUTOFRANGE)
- {
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "Parameter error - out of range error returned by LVVE_Rx_GetMemoryTable\n");
- return DRV_ERROR;
- }
-
- /*
- * Allocate the memory for the Rx module
- */
- for (i = 0; i < LVM_NR_MEMORY_REGIONS; i++)
- {
- if (MemoryTable_Rx.Region[i].Size != 0)
- {
- MemoryTable_Rx.Region[i].pBaseAddress = zOss_Malloc(MemoryTable_Rx.Region[i].Size);
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "Nxp rx malloc size = %d\n", MemoryTable_Rx.Region[i].Size);
-
- if (MemoryTable_Rx.Region[i].pBaseAddress == LVM_NULL)
- {
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "Failed to allocate %d bytes for region %d\n", (LVM_INT16)MemoryTable_Rx.Region[i].Size, (LVM_INT16)i);
- }
- }
- }
-
- /*
- * Allocate the memory for the noise data buffer (2*LVVE_NUM_OF_SAMPLES)
- */
-
- hInstance_Tx = LVM_NULL; /* Initialise to NULL */
- LVVE_Status = LVVE_Tx_GetInstanceHandle(&hInstance_Tx, /* Init sets the instance handle */
- &MemoryTable_Tx,
- &InstanceParams_Tx);
-
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "LVVE_Tx_GetInstanceHandle LVVE_Status=%d\n", LVVE_Status);
- if (LVVE_Status == LVVE_NULLADDRESS)
- {
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "Parameter error - null pointer error returned by LVVE_Tx_GetInstanceHandle\n");
- return DRV_ERROR;
- }
- if (LVVE_Status == LVVE_OUTOFRANGE)
- {
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "Parameter error - out of range error returned by LVVE_Tx_GetInstanceHandle\n");
- return DRV_ERROR;
- }
-
- hInstance_Rx = LVM_NULL; /* Initialise to NULL */
- LVVE_Status = LVVE_Rx_GetInstanceHandle(&hInstance_Rx, /* Init sets the instance handle */
- &MemoryTable_Rx,
- &InstanceParams_Rx);
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "LVVE_Rx_GetInstanceHandle LVVE_Status=%d\n", LVVE_Status);
- if (LVVE_Status == LVVE_NULLADDRESS)
- {
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "Parameter error - null pointer error returned by LVVE_Rx_GetInstanceHandle\n");
- return DRV_ERROR;
- }
- if (LVVE_Status == LVVE_OUTOFRANGE)
- {
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "Parameter error - out of range error returned by LVVE_Rx_GetInstanceHandle\n");
- return DRV_ERROR;
- }
- LVM_UINT32 nxpParamSize = 0, nxpParamOffset = 0;
-
- nxpParamSize = 4 * (LVWM_TX_FILE_SIZE + LVWM_RX_FILE_SIZE);
-
- g_audioNvParam.s_nxpPathParam = zOss_Malloc(nxpParamSize);
- if (g_audioNvParam.s_nxpPathParam == NULL)
- {
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "Failed to allocate g_audioNvParam.s_nxpPathParam\n");
- return DRV_ERROR;
- }
-
- g_audioNvParam.s_nxpTxNbMuteParam = zOss_Malloc(2 * LVWM_TX_FILE_SIZE);
- if (g_audioNvParam.s_nxpTxNbMuteParam == NULL)
- {
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "Failed to allocate g_audioNvParam.s_nxpTxNbMuteParam\n");
- return DRV_ERROR;
- }
- g_audioNvParam.s_nxpTxWbMuteParam = g_audioNvParam.s_nxpTxNbMuteParam + LVWM_TX_FILE_SIZE;
-
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "Vp_NxpOpen s_nxpPathParam=%p,s_nxpTxNbMuteParam=%p\n", g_audioNvParam.s_nxpPathParam, g_audioNvParam.s_nxpTxNbMuteParam);
- if (g_audioNvParam.audio_ctrlFlag.isVpParamInNv == 1)
- {
- if (g_voiceVar.voiceMode == VOICE_GSM_MODE)
- {
- nxpParamOffset = 0;
- }
- else if ((g_voiceVar.voiceMode == VOICE_WCDMA_MODE) || (g_voiceVar.voiceMode == VOICE_TD_MODE))
- {
- if (g_voiceVar.volteIsWb != 1)
- {
- nxpParamOffset = nxpParamSize;
- }
- else
- {
- nxpParamOffset = 2 * nxpParamSize;
- }
- }
- else if (g_voiceVar.voiceMode == VOICE_LTE_MODE)
- {
- if (g_voiceVar.volteIsWb != 1)
- {
- nxpParamOffset = 3 * nxpParamSize;
- }
- else
- {
- nxpParamOffset = 4 * nxpParamSize;
- }
- }
-
- ret = zOss_NvItemRead(OS_FLASH_VOICE_RW_NONFAC_BASE_ADDR + nxpParamOffset, g_audioNvParam.s_nxpPathParam, nxpParamSize);
-
- nxpParamOffset = 5 * nxpParamSize;
- ret = zOss_NvItemRead(OS_FLASH_VOICE_RW_NONFAC_BASE_ADDR + nxpParamOffset, g_audioNvParam.s_nxpTxNbMuteParam, 2 * LVWM_TX_FILE_SIZE);
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "Vp_NxpInitNvParam Read audio nv param base add=0x%x,vpNxpParamFile size=%d \n", \
- (OS_FLASH_VOICE_RW_NONFAC_BASE_ADDR + nxpParamOffset), nxpParamSize);
-
- }
- else
- {
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "Vp_NxpInitNvParam Set all path to the default param, txbuffer size=%d, rxbuffer size=%d \n", sizeof(LVVE_Tx_Preset_Buffer_Voice_Tool), sizeof(LVVE_Rx_Preset_Buffer_Voice_Tool));
- // Vp_Nxp_Param_File.LVVE_Tx_File_Buffer=LVVE_Tx_Preset_Buffer_Voice_Tool;
- //Vp_Nxp_Param_File.LVVE_Rx_File_Buffer=LVVE_Rx_Preset_Buffer_Voice_Tool;
- for (i = 0; i < 4; i++)
- {
- zOss_Memcpy(g_audioNvParam.s_nxpPathParam + i * (LVWM_TX_FILE_SIZE + LVWM_RX_FILE_SIZE), LVVE_Tx_Preset_Buffer_Voice_Tool, sizeof(LVVE_Tx_Preset_Buffer_Voice_Tool));
- zOss_Memcpy(g_audioNvParam.s_nxpPathParam + LVWM_TX_FILE_SIZE + i * (LVWM_TX_FILE_SIZE + LVWM_RX_FILE_SIZE), LVVE_Rx_Preset_Buffer_Voice_Tool, sizeof(LVVE_Rx_Preset_Buffer_Voice_Tool));
- }
- zOss_Memcpy(g_audioNvParam.s_nxpTxNbMuteParam, LVVE_Tx_Mute_File_Buffer, sizeof(LVVE_Tx_Mute_File_Buffer));
- zOss_Memcpy(g_audioNvParam.s_nxpTxWbMuteParam, LVVE_Tx_Wb_Mute_File_Buffer, sizeof(LVVE_Tx_Wb_Mute_File_Buffer));
- }
- isFirstTxProcessErr = TRUE;
- isFirstRxProcessErr = TRUE;
- g_nxpIsOpen = TRUE;
-
- return DRV_SUCCESS;
-}
-
-SINT32 Vp_NxpClose(VOID)
-{
-
- LVVE_ReturnStatus_en LVVE_Status; /* Module status return */
- LVM_INT32 i; /* Index variable */
-
- LVVE_Status = LVVE_Tx_GetMemoryTable(hInstance_Tx,
- &MemoryTable_Tx,
- LVM_NULL);
-
- if (LVVE_Status == LVVE_NULLADDRESS)
- {
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "Vp_NxpClose Parameter error - null pointer error returned by LVVE_Tx_GetMemoryTable\n");
- return DRV_ERROR;
- }
- if (LVVE_Status == LVVE_OUTOFRANGE)
- {
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "Vp_NxpClose Parameter error - out of range error returned by LVVE_Tx_GetMemoryTable\n");
- return DRV_ERROR;
- }
-
- /* For each region */
- for (i = 0; i < LVM_NR_MEMORY_REGIONS; i++)
- {
- if ((MemoryTable_Tx.Region[i].Size != 0) && (MemoryTable_Tx.Region[i].pBaseAddress != LVM_NULL))
- {
- zOss_Free(MemoryTable_Tx.Region[i].pBaseAddress);
- MemoryTable_Tx.Region[i].pBaseAddress = LVM_NULL;
- }
- }
-
- LVVE_Status = LVVE_Rx_GetMemoryTable(hInstance_Rx,
- &MemoryTable_Rx,
- LVM_NULL);
-
- if (LVVE_Status == LVVE_NULLADDRESS)
- {
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "Vp_NxpClose Parameter error - null pointer error returned by LVVE_Rx_GetMemoryTable\n");
- return DRV_ERROR;
- }
-
- if (LVVE_Status == LVVE_OUTOFRANGE)
- {
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "Vp_NxpClose Parameter error - out of range error returned by LVVE_Rx_GetMemoryTable\n");
- return DRV_ERROR;
- }
-
- /* For each region */
- for (i = 0; i < LVM_NR_MEMORY_REGIONS; i++)
- {
- if ((MemoryTable_Rx.Region[i].Size != 0) && (MemoryTable_Rx.Region[i].pBaseAddress != LVM_NULL))
- {
- zOss_Free(MemoryTable_Rx.Region[i].pBaseAddress);
- MemoryTable_Rx.Region[i].pBaseAddress = LVM_NULL;
- }
- }
-
- if (g_audioNvParam.s_nxpPathParam != NULL)
- {
- zOss_Free(g_audioNvParam.s_nxpPathParam);
- g_audioNvParam.s_nxpPathParam = NULL;
- }
- if (g_audioNvParam.s_nxpTxNbMuteParam != NULL)
- {
- zOss_Free(g_audioNvParam.s_nxpTxNbMuteParam);
- g_audioNvParam.s_nxpTxNbMuteParam = NULL;
- }
-
- hInstance_Tx = LVM_NULL;
- hInstance_Rx = LVM_NULL;
- g_nxpIsOpen = FALSE;
-
- //zOss_Free(pNoiseData);
-
-// zOss_Printf(SUBMDL_HAL, PRINT_LEVEL_NORMAL,"Vp_NxpClose success\n");
- return DRV_SUCCESS;
-}
-
-SINT32 Vp_NxpGetParam(T_ZDrvVoice_MODE voiceMode, T_ZDrv_VpPath path)
-{
- //add by zhanglixia
- //UINT32 ret;//xiu gai chu
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "Vp_NxpGetParam ######get NXP parameter start####### voiceMode=%d,path=%d \n", voiceMode, path);
- UINT32 pathTxOffset, pathRxOffset;
- /************************************************************************************/
- /* Set the Voice Engine Parameter values */
- /************************************************************************************/
- /*
- * Read the Rx preset file and send the bytes to the Rx Module
- */
-
- if (g_nxpIsOpen == FALSE)
- {
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "Vp_NxpGetParam, nxp has not been opened yet!\n");
- return DRV_ERR_NOT_OPENED;
- }
-
- /*klocwork 3 INVARIANT_CONDITION.UNREACH MAX_VP_PATH¸ÄΪVP_PATH_BLUETOOTH ºÍɾ³ý (path<0)*/
- if (path > VP_PATH_BLUETOOTH)
- {
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "Vp_NxpGetParam the path error\n");
- return DRV_ERROR;
- }
-
- if (g_audioNvParam.audio_ctrlFlag.isUseVoiceProc != 1)
- {
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "Vp_NxpGetParam error g_audioNvParam.audio_ctrlFlag.isUseVoiceProc != 1 \n");
- return DRV_ERROR;
- }
-
- pathTxOffset = path * (LVWM_TX_FILE_SIZE + LVWM_RX_FILE_SIZE);
- pathRxOffset = path * (LVWM_TX_FILE_SIZE + LVWM_RX_FILE_SIZE) + LVWM_TX_FILE_SIZE;
-
- if (g_audioNvParam.audio_ctrlFlag.isVpParamInNv == 1)
- {
- LVVE_Tx_Preset = (LVM_CHAR*)g_audioNvParam.s_nxpPathParam + pathTxOffset ;
- LVVE_Rx_Preset = (LVM_CHAR*)g_audioNvParam.s_nxpPathParam + pathRxOffset ;
-
- NumBytesReadTx = LVWM_TX_FILE_SIZE;
- NumBytesReadRx = LVWM_RX_FILE_SIZE;
- }
- else
- {
- LVVE_Rx_Preset = LVVE_Rx_Preset_Buffer_Voice_Tool;
- LVVE_Tx_Preset = LVVE_Tx_Preset_Buffer_Voice_Tool;
-
- NumBytesReadTx = sizeof(LVVE_Tx_Preset_Buffer_Voice_Tool);
- NumBytesReadRx = sizeof(LVVE_Rx_Preset_Buffer_Voice_Tool);
-
- }
-
- if (g_voiceVar.muteEn == TRUE)
- {
- if (g_audioNvParam.audio_ctrlFlag.isVpParamInNv == 1)
- {
- if (g_voiceVar.volteIsWb != 1)
- {
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "Vp_NxpGetParam set nb mute config !\r\n");
- LVVE_Tx_Preset = g_audioNvParam.s_nxpTxNbMuteParam;//xiu gai chu tong shang
- NumBytesReadTx = LVWM_TX_FILE_SIZE;
- }
- else
- {
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "Vp_NxpGetParam set wb mute config !\r\n");
- LVVE_Tx_Preset = g_audioNvParam.s_nxpTxWbMuteParam;//xiu gai chu tong shang
- NumBytesReadTx = LVWM_TX_FILE_SIZE;
- }
- }
- else
- {
- if (g_voiceVar.volteIsWb != 1)
- {
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "Vp_NxpGetParam set nb mute config !\r\n");
- LVVE_Tx_Preset = LVVE_Tx_Mute_File_Buffer;
- NumBytesReadTx = sizeof(LVVE_Tx_Mute_File_Buffer);
- }
- else
- {
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "Vp_NxpGetParam set wb mute config !\r\n");
- LVVE_Tx_Preset = LVVE_Tx_Wb_Mute_File_Buffer;
- NumBytesReadTx = sizeof(LVVE_Tx_Wb_Mute_File_Buffer);
-
- }
- }
- }
-
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "Vp_NxpGetParam NumBytesReadRx=%d NumBytesReadTx= %d\n ", NumBytesReadRx , NumBytesReadTx);
- /*klocwork 3 INVARIANT_CONDITION.UNREACH delete if*/
- /*
- if ((NumBytesReadRx == LVM_NULL) || (NumBytesReadTx == LVM_NULL))
- {
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "Vp_NxpSetParam NXP read para is null !\r\n");
- return DRV_ERROR;
- }*/
- return DRV_SUCCESS;
-
-}
-
-SINT32 Vp_NxpSetParam(T_ZDrv_VpPath path, T_ZDrv_VpVol volume, BOOL isLoop)
-{
- LVVE_ReturnStatus_en LVVE_Status; /* Module status return */
- LVM_UINT16 VolumeIndex;
-
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "Vp_NxpSetParam ######set NXP parameter start#######");
- /************************************************************************************/
- /* Set the Voice Engine Parameter values */
- /************************************************************************************/
- if (g_nxpIsOpen == FALSE)
- {
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "Vp_NxpSetParam, nxp has not been opened yet!\n");
- return DRV_ERR_NOT_OPENED;
- }
-
- /*klocwork 3 INVARIANT_CONDITION.UNREACH MAX_VP_PATH¸ÄΪVP_PATH_BLUETOOTH ºÍɾ³ý (path<0)*/
- if (path > VP_PATH_BLUETOOTH)
- {
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "Vp_NxpSetParam the path error\n");
- return DRV_ERROR;
- }
- VolumeIndex = volume; /* Max Rx volume */
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "Vp_NxpSetParam VolumeIndex is %d\n", VolumeIndex);
-
- if ((hInstance_Rx == NULL) || (LVVE_Rx_Preset == NULL) || (hInstance_Tx == NULL) || (LVVE_Tx_Preset == NULL))
- {
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "Vp_NxpSetParam, the input parameter is NULL\n");
- return DRV_ERR_INVALID_PARAM;
- }
-
- LVVE_Status = LVVE_Rx_SetPreset(hInstance_Rx, LVVE_Rx_Preset, NumBytesReadRx, VolumeIndex);
- if (LVVE_Status != LVVE_SUCCESS)
- {
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "Vp_NxpSetParam Error returned by LVVE_Rx_SetPreset: Error_code = %d\n", LVVE_Status);
- return DRV_ERROR;
- }
-
- LVVE_Status = LVVE_Tx_SetPreset(hInstance_Tx, LVVE_Tx_Preset, NumBytesReadTx, 0);
- if (LVVE_Status != LVVE_SUCCESS)
- {
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "Vp_NxpSetParam Error returned by LVVE_Tx_SetPreset: Error_code = %d\n", LVVE_Status);
- return DRV_ERROR;
- }
-
- return DRV_SUCCESS;
-}
-
-SINT32 Vp_NxpSetParamTool(T_ZDrv_VpPath path, T_ZDrv_VpVol volume,
- zDrvVp_NxpParamsTool *NxpParamsTool, BOOL isLoop, BOOL isVolte)
-{
- LVVE_ReturnStatus_en LVVE_Status; /* Module status return */
- //LVM_UINT32 ret;//xiu gai chu
- LVM_UINT16 VolumeIndex; /* Volume index variable */
- UINT32 nvAddrTxOffset = 0;
- UINT32 nvAddrRxOffset = 0;
-
- UINT32 pathTxOffset, pathRxOffset;
-
- UINT32 ret = DRV_SUCCESS;
- /************************************************************************************/
- /* Set the Voice Engine Parameter values */
- /************************************************************************************/
- VolumeIndex = volume; /* Max Rx volume */
- if (g_nxpIsOpen == FALSE)
- {
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "Vp_NxpSetParamTool,nxp has not been opened yet!\n");
- return DRV_ERR_NOT_OPENED;
- }
-
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "######set NXP parameter start#######");
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "Vp_NxpSetParamTool path = %d, volume = %d\n", path, volume);
- if ((NxpParamsTool->PresetLengthTx > LVWM_TX_FILE_SIZE) || (NxpParamsTool->PresetLengthRx > LVWM_RX_FILE_SIZE))
- {
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "The length is wrong!PresetLengthRx=%d,PresetLengthTx=%d", NxpParamsTool->PresetLengthRx, NxpParamsTool->PresetLengthTx);
- return DRV_ERROR;
- }
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "PresetLengthRx=%d NumBytesReadRx= %d volume= %d", NxpParamsTool->PresetLengthRx, NumBytesReadRx, volume);
-
- LVVE_Status = LVVE_Rx_SetPreset(hInstance_Rx, (const LVVE_Rx_Preset_t)NxpParamsTool->pPresetRx, NxpParamsTool->PresetLengthRx, VolumeIndex);
-
- if (LVVE_Status != LVVE_SUCCESS)
- {
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "Error returned by LVVE_Rx_SetPreset: Error_code = %d\n", LVVE_Status);
- return DRV_ERROR;
- }
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "PresetLengthTx=%d NumBytesReadTx= %d", NxpParamsTool->PresetLengthTx, NumBytesReadTx);
- LVVE_Status = LVVE_Tx_SetPreset(hInstance_Tx, (const LVVE_Tx_Preset_t)NxpParamsTool->pPresetTx, NxpParamsTool->PresetLengthTx, 0);
-
- if (LVVE_Status != LVVE_SUCCESS)
- {
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "Error returned by LVVE_Tx_SetPreset: Error_code = %d\n", LVVE_Status);
- return DRV_ERROR;
- }
-
- if (g_audioNvParam.audio_ctrlFlag.isVpParamInNv == 1)
- {
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "Vp_NxpSetParamTool set voice param isVpParamInNv \n");
-
- if (g_voiceVar.muteEn == TRUE)
- {
- if (g_voiceVar.volteIsWb == 1)
- {
- zOss_Memcpy(g_audioNvParam.s_nxpTxWbMuteParam, NxpParamsTool->pPresetTx, NxpParamsTool->PresetLengthTx);
- }
- else
- {
- zOss_Memcpy(g_audioNvParam.s_nxpTxNbMuteParam, NxpParamsTool->pPresetTx, NxpParamsTool->PresetLengthTx);
- }
- }
- else
- {
- pathTxOffset = path * (LVWM_TX_FILE_SIZE + LVWM_RX_FILE_SIZE);
- pathRxOffset = path * (LVWM_TX_FILE_SIZE + LVWM_RX_FILE_SIZE) + LVWM_TX_FILE_SIZE;
-
- zOss_Memcpy(g_audioNvParam.s_nxpPathParam + pathTxOffset, NxpParamsTool->pPresetTx, NxpParamsTool->PresetLengthTx);
- zOss_Memcpy(g_audioNvParam.s_nxpPathParam + pathRxOffset, NxpParamsTool->pPresetRx, NxpParamsTool->PresetLengthRx);
- }
-
- if (g_audioNvParam.audio_ctrlFlag.isUseNvWrite == 1)
- {
- if (g_voiceVar.voiceMode == VOICE_GSM_MODE)
- {
- if (path == VP_PATH_HANDSET)
- {
- nvAddrTxOffset = 0;
- nvAddrRxOffset = nvAddrTxOffset + LVWM_TX_FILE_SIZE;
-
-
- }
- else if (path == VP_PATH_SPEAKER)
- {
- nvAddrTxOffset = LVWM_TX_FILE_SIZE + LVWM_RX_FILE_SIZE;
- nvAddrRxOffset = nvAddrTxOffset + LVWM_TX_FILE_SIZE;
- }
- else if (path == VP_PATH_HEADSET)
- {
- nvAddrTxOffset = 2 * (LVWM_TX_FILE_SIZE + LVWM_RX_FILE_SIZE);
- nvAddrRxOffset = nvAddrTxOffset + LVWM_TX_FILE_SIZE;
-
- }
- else if (path == VP_PATH_BLUETOOTH)
- {
-
- nvAddrTxOffset = 3 * (LVWM_TX_FILE_SIZE + LVWM_RX_FILE_SIZE);
- nvAddrRxOffset = nvAddrTxOffset + LVWM_TX_FILE_SIZE;
- }
-
- }
- else if ((g_voiceVar.voiceMode == VOICE_WCDMA_MODE) || (g_voiceVar.voiceMode == VOICE_TD_MODE))
- {
- if (g_voiceVar.volteIsWb != 1)
- {
- if (path == VP_PATH_HANDSET)
- {
- nvAddrTxOffset = 4 * (LVWM_TX_FILE_SIZE + LVWM_RX_FILE_SIZE);
- nvAddrRxOffset = nvAddrTxOffset + LVWM_TX_FILE_SIZE;
- }
- else if (path == VP_PATH_SPEAKER)
- {
- nvAddrTxOffset = 5 * (LVWM_TX_FILE_SIZE + LVWM_RX_FILE_SIZE);
- nvAddrRxOffset = nvAddrTxOffset + LVWM_TX_FILE_SIZE;
- }
- else if (path == VP_PATH_HEADSET)
- {
- nvAddrTxOffset = 6 * (LVWM_TX_FILE_SIZE + LVWM_RX_FILE_SIZE);
- nvAddrRxOffset = nvAddrTxOffset + LVWM_TX_FILE_SIZE;
- }
- else if (path == VP_PATH_BLUETOOTH)
- {
- nvAddrTxOffset = 7 * (LVWM_TX_FILE_SIZE + LVWM_RX_FILE_SIZE);
- nvAddrRxOffset = nvAddrTxOffset + LVWM_TX_FILE_SIZE;
- }
- }
- else
- {
- if (path == VP_PATH_HANDSET)
- {
- nvAddrTxOffset = 8 * (LVWM_TX_FILE_SIZE + LVWM_RX_FILE_SIZE);
- nvAddrRxOffset = nvAddrTxOffset + LVWM_TX_FILE_SIZE;
- }
- else if (path == VP_PATH_SPEAKER)
- {
- nvAddrTxOffset = 9 * (LVWM_TX_FILE_SIZE + LVWM_RX_FILE_SIZE);
- nvAddrRxOffset = nvAddrTxOffset + LVWM_TX_FILE_SIZE;
- }
- else if (path == VP_PATH_HEADSET)
- {
- nvAddrTxOffset = 10 * (LVWM_TX_FILE_SIZE + LVWM_RX_FILE_SIZE);
- nvAddrRxOffset = nvAddrTxOffset + LVWM_TX_FILE_SIZE;
- }
- else if (path == VP_PATH_BLUETOOTH)
- {
- nvAddrTxOffset = 11 * (LVWM_TX_FILE_SIZE + LVWM_RX_FILE_SIZE);
- nvAddrRxOffset = nvAddrTxOffset + LVWM_TX_FILE_SIZE;
- }
- }
- }
- else if (g_voiceVar.voiceMode == VOICE_LTE_MODE)
- {
- if (g_voiceVar.volteIsWb != 1)
- {
- if (path == VP_PATH_HANDSET)
- {
- nvAddrTxOffset = 12 * (LVWM_TX_FILE_SIZE + LVWM_RX_FILE_SIZE);
- nvAddrRxOffset = nvAddrTxOffset + LVWM_TX_FILE_SIZE;
- }
- else if (path == VP_PATH_SPEAKER)
- {
- nvAddrTxOffset = 13 * (LVWM_TX_FILE_SIZE + LVWM_RX_FILE_SIZE);
- nvAddrRxOffset = nvAddrTxOffset + LVWM_TX_FILE_SIZE;
- }
- else if (path == VP_PATH_HEADSET)
- {
- nvAddrTxOffset = 14 * (LVWM_TX_FILE_SIZE + LVWM_RX_FILE_SIZE);
- nvAddrRxOffset = nvAddrTxOffset + LVWM_TX_FILE_SIZE;
- }
- else if (path == VP_PATH_BLUETOOTH)
- {
- nvAddrTxOffset = 15 * (LVWM_TX_FILE_SIZE + LVWM_RX_FILE_SIZE);
- nvAddrRxOffset = nvAddrTxOffset + LVWM_TX_FILE_SIZE;
- }
- }
- else
- {
- if (path == VP_PATH_HANDSET)
- {
- nvAddrTxOffset = 16 * (LVWM_TX_FILE_SIZE + LVWM_RX_FILE_SIZE);
- nvAddrRxOffset = nvAddrTxOffset + LVWM_TX_FILE_SIZE;
- }
- else if (path == VP_PATH_SPEAKER)
- {
- nvAddrTxOffset = 17 * (LVWM_TX_FILE_SIZE + LVWM_RX_FILE_SIZE);
- nvAddrRxOffset = nvAddrTxOffset + LVWM_TX_FILE_SIZE;
- }
- else if (path == VP_PATH_HEADSET)
- {
- nvAddrTxOffset = 18 * (LVWM_TX_FILE_SIZE + LVWM_RX_FILE_SIZE);
- nvAddrRxOffset = nvAddrTxOffset + LVWM_TX_FILE_SIZE;
- }
- else if (path == VP_PATH_BLUETOOTH)
- {
- nvAddrTxOffset = 19 * (LVWM_TX_FILE_SIZE + LVWM_RX_FILE_SIZE);
- nvAddrRxOffset = nvAddrTxOffset + LVWM_TX_FILE_SIZE;
- }
- }
- }
-
- if (g_voiceVar.muteEn != TRUE)
- {
- ret = zOss_NvItemWrite(OS_FLASH_VOICE_RW_NONFAC_BASE_ADDR + nvAddrTxOffset, (UINT8*)NxpParamsTool->pPresetTx, NxpParamsTool->PresetLengthTx);
- if (ZOSS_SUCCESS == ret)
- {
- ret = Nvram_Flush();
- }
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "Vp_NxpSetParamTool set tx config to nv ,path=%d,add=0x%x !\r\n", path, OS_FLASH_VOICE_RW_NONFAC_BASE_ADDR + nvAddrTxOffset);
- }
- ret = zOss_NvItemWrite(OS_FLASH_VOICE_RW_NONFAC_BASE_ADDR + nvAddrRxOffset, (UINT8*)NxpParamsTool->pPresetRx, NxpParamsTool->PresetLengthRx);
- if (ZOSS_SUCCESS == ret)
- {
- ret = Nvram_Flush();
- }
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "Vp_NxpSetParamTool set rx config to nv ,path=%d,add=0x%x !\r\n", path, OS_FLASH_VOICE_RW_NONFAC_BASE_ADDR + nvAddrTxOffset);
- if (g_voiceVar.muteEn == TRUE)
- {
- if (g_voiceVar.volteIsWb != 1)
- {
- nvAddrTxOffset = 20 * (LVWM_TX_FILE_SIZE + LVWM_RX_FILE_SIZE);
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "Vp_NxpSetParamTool set nb mute config to nv ,path=%d,add=0x%x !\r\n", path, OS_FLASH_VOICE_RW_NONFAC_BASE_ADDR + nvAddrTxOffset);
- }
- else
- {
- nvAddrTxOffset = 20 * (LVWM_TX_FILE_SIZE + LVWM_RX_FILE_SIZE) + LVWM_TX_FILE_SIZE;
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "Vp_NxpSetParamTool set wb mute config to nv ,path=%d,add=0x%x !\r\n", path, OS_FLASH_VOICE_RW_NONFAC_BASE_ADDR + nvAddrTxOffset);
- }
- ret = zOss_NvItemWrite(OS_FLASH_VOICE_RW_NONFAC_BASE_ADDR + nvAddrTxOffset, (UINT8*)NxpParamsTool->pPresetTx, NxpParamsTool->PresetLengthTx);
- if (ZOSS_SUCCESS == ret)
- {
- ret = Nvram_Flush();
- }
- }
-
- }
-
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "Vp_NxpSetParamTool get voice mode param \n");
- }
- else
- {
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "Vp_NxpSetParamTool set voice param not isVpParamInNv \n");
- if (NxpParamsTool->PresetLengthTx <= sizeof(LVVE_Tx_Preset_Buffer_Voice_Tool))
- zOss_Memcpy(LVVE_Tx_Preset_Buffer_Voice_Tool, NxpParamsTool->pPresetTx, NxpParamsTool->PresetLengthTx);
- if (NxpParamsTool->PresetLengthRx <= sizeof(LVVE_Rx_Preset_Buffer_Voice_Tool))
- zOss_Memcpy(LVVE_Rx_Preset_Buffer_Voice_Tool, NxpParamsTool->pPresetRx, NxpParamsTool->PresetLengthRx);
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "Vp_NxpsetParamTool set param to default param array !\r\n");
- }
-
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "Vp_NxpSetParamTool PresetLengthRx = %d ,PresetLengthTx= %d!\n", NxpParamsTool->PresetLengthRx, NxpParamsTool->PresetLengthTx);
-
- return DRV_SUCCESS;
-}
-
-SINT32 Vp_NxpGetParamTool(T_ZDrv_VpPath path, T_ZDrv_VpVol volume,
- zDrvVp_NxpParamsTool *NxpParamsTool, BOOL isLoop, BOOL isVolte)
-{
- UINT32 pathTxOffset, pathRxOffset;
-
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "######get NXP parameter start#######");
- //LVM_UINT32 NumBytesRead; /* Number of bytes in the preset file */
- /************************************************************************************/
- /* Set the Voice Engine Parameter values */
- /************************************************************************************/
- if (g_nxpIsOpen == FALSE)
- {
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "Vp_NxpGetParamTool,nxp has not been opened yet!\n");
- return DRV_ERR_NOT_OPENED;
- }
-
- if (g_audioNvParam.audio_ctrlFlag.isVpParamInNv == 1)
- {
-
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "Vp_NxpGetParamTool get para isVpParamInNv !\r\n");
- pathTxOffset = path * (LVWM_TX_FILE_SIZE + LVWM_RX_FILE_SIZE);
- pathRxOffset = path * (LVWM_TX_FILE_SIZE + LVWM_RX_FILE_SIZE) + LVWM_TX_FILE_SIZE;
-
- NxpParamsTool->pPresetTx = (char*)g_audioNvParam.s_nxpPathParam + pathTxOffset;
- NxpParamsTool->pPresetRx = (char*)g_audioNvParam.s_nxpPathParam + pathRxOffset;
-
- NxpParamsTool->PresetLengthTx = LVWM_TX_FILE_SIZE;
- NxpParamsTool->PresetLengthRx = LVWM_RX_FILE_SIZE;
- }
- else
- {
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "Vp_NxpGetParamTool get para not isVpParamInNv !\r\n");
-
- NxpParamsTool->pPresetTx = LVVE_Tx_Preset_Buffer_Voice_Tool;
- NxpParamsTool->pPresetRx = LVVE_Rx_Preset_Buffer_Voice_Tool;
- NxpParamsTool->PresetLengthTx = sizeof(LVVE_Tx_Preset_Buffer_Voice_Tool);
- NxpParamsTool->PresetLengthRx = sizeof(LVVE_Rx_Preset_Buffer_Voice_Tool);
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "Vp_NxpGetParamTool get default param !\r\n");
- }
-
- if (g_voiceVar.muteEn == TRUE)
- {
- if (g_audioNvParam.audio_ctrlFlag.isVpParamInNv == 1)
- {
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "Vp_NxpGetParamTool get mute isVpParamInNv !\r\n");
- if (g_voiceVar.volteIsWb != 1)
- {
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "Vp_NxpGetParamTool get nb mute config !\r\n");
- NxpParamsTool->pPresetTx = (char*)g_audioNvParam.s_nxpTxNbMuteParam; //xiu gai chu
- NxpParamsTool->PresetLengthTx = LVWM_TX_FILE_SIZE;
- }
- else
- {
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "Vp_NxpGetParamTool get wb mute config !\r\n");
- NxpParamsTool->pPresetTx = (char*)g_audioNvParam.s_nxpTxWbMuteParam; //xiu gai chu
- NxpParamsTool->PresetLengthTx = LVWM_TX_FILE_SIZE;
- }
- }
- else
- {
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "Vp_NxpGetParamTool get mute not isVpParamInNv !\r\n");
- if (g_voiceVar.volteIsWb != 1)
- {
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "Vp_NxpGetParamTool get nb mute config !\r\n");
- NxpParamsTool->pPresetTx = LVVE_Tx_Mute_File_Buffer;
- NxpParamsTool->PresetLengthTx = sizeof(LVVE_Tx_Mute_File_Buffer);
- }
- else
- {
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "Vp_NxpGetParamTool get wb mute config !\r\n");
- NxpParamsTool->pPresetTx = LVVE_Tx_Wb_Mute_File_Buffer;
- NxpParamsTool->PresetLengthTx = sizeof(LVVE_Tx_Wb_Mute_File_Buffer);
- }
- }
- }
-
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "Vp_NxpGetParamTool PresetLengthRx=%d PresetLengthTx= %d ", NxpParamsTool->PresetLengthRx, NxpParamsTool->PresetLengthTx);
- /*klocwork 3 INVARIANT_CONDITION.UNREACH delete if*/
- /*
- if ((NxpParamsTool->PresetLengthRx == LVM_NULL) || (NxpParamsTool->PresetLengthTx == LVM_NULL))
- {
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "Vp_NxpGetParamTool NXP read para is null !\r\n");
- return DRV_ERROR;
- }*/
- return DRV_SUCCESS;
-}
-#if 0
-SINT32 Vp_NxpSetGain(SINT32 gain, UINT32 channel, T_ZDrv_VpPath path)
-{
- //LVVE_ReturnStatus_en LVVE_Status=LVVE_SUCCESS;//xiu gai chu
- //LVM_INT16 tempGain=0;//xiu gai chu
- if (g_nxpIsOpen == FALSE)
- {
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "Vp_NxpSetGain,nxp has not been opened yet!\n");
- return DRV_ERR_NOT_OPENED;
- }
-
- return DRV_SUCCESS;
-}
-#endif
-SINT32 Vp_NxpRxProcess(UINT8 **pPReadBuffer, UINT8 **pPWriteBuffer, UINT16 sampleNums)
-{
- LVM_INT16 *pWriteBuffer;
- LVM_INT16 *pReadBuffer;
- LVM_INT16 *pReadBuffer_FE;
- LVVE_ReturnStatus_en LVVE_Status; /* Module status return */
-
- SINT32 ret = DRV_SUCCESS;
- if (g_nxpIsOpen == FALSE)
- {
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "Vp_NxpRxProcess,nxp has not been opened yet!\n");
- return DRV_ERR_NOT_OPENED;
- }
-
- /*************************/
- /* PROCESS THE RX MODULE */
- /*************************/
-
- pReadBuffer = (LVM_INT16 *)(*pPReadBuffer);
- pWriteBuffer = (LVM_INT16 *)(*pPWriteBuffer);
- pReadBuffer_FE = (LVM_INT16 *)&InBuffer16_Tx_FE[0];
-
- LVVE_Status = LVVE_Rx_Process(hInstance_Rx, /* Instance handle */
- pReadBuffer, /* Input buffer */
- pNoiseData, /* Noise data */
- pWriteBuffer, /* Output buffer */
- sampleNums); /* Number of samples pairs to process */
-
- if (LVVE_Status == LVVE_NULLADDRESS)
- {
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "Vp_NxpRxProcess Parameter error - null pointer returned from LVVE_Rx_Process\n");
- ret = DRV_ERROR;
- }
- if (LVVE_Status == LVVE_INVALIDNUMSAMPLES)
- {
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "Vp_NxpRxProcess Invalid number of samples, check value or range returned from LVVE_Rx_Process\n");
- ret = DRV_ERROR;
- }
- if (LVVE_Status == LVVE_ALIGNMENTERROR)
- {
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "Vp_NxpRxProcess Alignment error, check input and/or output buffer alignment returned from LVVE_Rx_Process\n");
- ret = DRV_ERROR;
- }
-
- if (LVVE_Status != LVVE_SUCCESS)
- {
- if (isFirstRxProcessErr == TRUE)
- {
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "Vp_NxpRxProcess Error while processing returned from LVVE_Rx_Process: %d\n", (LVM_INT16)LVVE_Status);
- isFirstRxProcessErr = FALSE;
- }
- ret = DRV_ERROR;
- }
-
- zOss_Memcpy((VOID*)pReadBuffer_FE, (VOID*)pWriteBuffer, sampleNums * sizeof(LVM_INT16));
-//zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "Vp_NxpRxProcess\n");
- ret = DRV_SUCCESS;//xiu waring:unused ret
- return ret;
-}
-
-SINT32 Vp_NxpTxProcess(UINT8 **pPReadBuffer_NE_MAIN, UINT8 **pPReadBuffer_NE_AUX, UINT8 **pPWriteBuffer, UINT16 sampleNums)
-{
- SINT32 ret = DRV_SUCCESS;
-
- LVM_INT16 *pWriteBuffer;
- LVVE_ReturnStatus_en LVVE_Status; /* Module status return */
-
- LVM_INT16 *pReadBuffer_NE0;
- LVM_INT16 *pReadBuffer_NE1;
- LVM_INT16 *pReadBuffer_FE;
-
- if (g_nxpIsOpen == FALSE)
- {
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "Vp_NxpTxProcess,nxp has not been opened yet!\n");
- return DRV_ERR_NOT_OPENED;
- }
-
- /*************************/
- /* PROCESS THE TX MODULE */
- /*************************/
-
- pReadBuffer_NE0 = (LVM_INT16 *)(*pPReadBuffer_NE_MAIN);
- if (pPReadBuffer_NE_AUX == NULL)
- {
- pReadBuffer_NE1 = NULL;
- }
- else
- {
- pReadBuffer_NE1 = (LVM_INT16 *)(*pPReadBuffer_NE_AUX);
- }
- pWriteBuffer = (LVM_INT16 *)(*pPWriteBuffer);
- pReadBuffer_FE = (LVM_INT16 *)&InBuffer16_Tx_FE[0];
-
- LVVE_Status = LVVE_Tx_Process(hInstance_Tx, /* Instance handle */
- pReadBuffer_NE0, /* Input buffer primary Mic */
- pReadBuffer_NE1, /* Input buffer secondary Mic */
- pReadBuffer_FE, /* Input buffer */
- pNoiseData, /* Noise data */
- pWriteBuffer, /* Output buffer */
- sampleNums); /* Number of samples pairs to process */
-
- /*
- * Check for error and stop if needed
- */
- if (LVVE_Status == LVVE_NULLADDRESS)
- {
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "Vp_NxpTxProcess Parameter error - null pointer returned from LVVE_Tx_Process\n");
- ret = DRV_ERROR;
- }
- if (LVVE_Status == LVVE_INVALIDNUMSAMPLES)
- {
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "Vp_NxpTxProcess Invalid number of samples, check value or range returned from LVVE_Tx_Process\n");
- ret = DRV_ERROR;
- }
- if (LVVE_Status == LVVE_ALIGNMENTERROR)
- {
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "Vp_NxpTxProcess Alignment error, check input and/or output buffer alignment returned from LVVE_Tx_Process\n");
- ret = DRV_ERROR;
- }
- if (LVVE_Status != LVVE_SUCCESS)
- {
-
- if (isFirstTxProcessErr == TRUE)
- {
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "Vp_NxpTxProcess Error while processing returned from LVVE_Tx_Process: %d\n", (LVM_INT16)LVVE_Status);
- isFirstTxProcessErr = FALSE;
- }
- ret = DRV_ERROR;
- }
- ret = DRV_SUCCESS;//xiu warning:unused ret
- //zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "Vp_NxpTxProcess\n");
- return ret;//xiu
-}
-
diff --git a/Uboot/cp/ps/driver/src/chipsets/src/audio_base/nxp/hal_nxp.h b/Uboot/cp/ps/driver/src/chipsets/src/audio_base/nxp/hal_nxp.h
deleted file mode 100755
index 9547823..0000000
--- a/Uboot/cp/ps/driver/src/chipsets/src/audio_base/nxp/hal_nxp.h
+++ /dev/null
@@ -1,32 +0,0 @@
-/*******************************************************************************
- * Copyright (C) 2007, ZTE Corporation.
- *
- * File Name: hal_nxp.h
- * File Mark:
- * Description: Provide the interface of nxp processing
- * Others:
- * Version: V0.5
- * Author: lvwenhua
- * Date: 2012-06-13
- * History 1:
- * Date:
- * Version:
- * Author:
- * Modification:
- * History 2:
- ********************************************************************************/
-#ifndef _HAL_NXP_H
-#define _HAL_NXP_H
-// added by zhanglixia
-//#include "LVVE.h"
-extern SINT32 Vp_NxpInitNvParam(VOID);
-extern SINT32 Vp_NxpOpen(UINT32 fs);
-extern SINT32 Vp_NxpClose(VOID);
-extern SINT32 Vp_NxpGetParam(T_ZDrvVoice_MODE voiceMode, T_ZDrv_VpPath path);
-extern SINT32 Vp_NxpSetParam(T_ZDrv_VpPath path, T_ZDrv_VpVol volume, BOOL isLoop);
-//end added by zhanglixia
-extern SINT32 Vp_NxpSetParamTool(T_ZDrv_VpPath path, T_ZDrv_VpVol volume, zDrvVp_NxpParamsTool *NxpParamsTool,BOOL isLoop,BOOL isVolte);
-extern SINT32 Vp_NxpGetParamTool(T_ZDrv_VpPath path, T_ZDrv_VpVol volume, zDrvVp_NxpParamsTool *NxpParamsTool,BOOL isLoop,BOOL isVolte);
-extern SINT32 Vp_NxpRxProcess(UINT8 **pPReadBuffer, UINT8 **pPWriteBuffer,UINT16 sampleNums);
-extern SINT32 Vp_NxpTxProcess(UINT8 **pPReadBuffer_NE_MAIN, UINT8 **pPReadBuffer_NE_AUX, UINT8 **pPWriteBuffer,UINT16 sampleNums);
-#endif
diff --git a/Uboot/cp/ps/driver/src/chipsets/src/audio_base/nxp/makefile b/Uboot/cp/ps/driver/src/chipsets/src/audio_base/nxp/makefile
deleted file mode 100755
index b4f481e..0000000
--- a/Uboot/cp/ps/driver/src/chipsets/src/audio_base/nxp/makefile
+++ /dev/null
@@ -1,53 +0,0 @@
-#***********************************************************************
-# °æÈ¨ËùÓÐ (C)2001,ÖÐÐËͨѶ¹É·ÝÓÐÏÞ¹«Ë¾¡£
-#
-# ÎļþÃû³Æ£º makefile
-# Îļþ±êʶ£º ±àÒënxpÄ£¿é
-# ÄÚÈÝÕªÒª£º
-#
-# ÐÞ¸ÄÈÕÆÚ °æ±¾ºÅ Ð޸ıê¼Ç ÐÞ¸ÄÈË ÐÞ¸ÄÄÚÈÝ
-# ---------------------------------------------------------------------
-# 2015/08/17 V1.0 zhuoyongsheng create
-#***********************************************************************/
-include $(PRJ_PATH)/config/project.mk
-include $(DRV_PATH)/ws/drv_cfg.mk
-
-
-#===============================================
-# ·¾¶ÉèÖÃ
-#===============================================
-_MDL_NAME = nxp
-
-_MDL_SRC_PATH = $(CHIP_SRC_PATH)/audio_base/$(_MDL_NAME)
-_MDL_INC_PATH = $(CHIP_INC_PATH)
-_MDL_OBJ_PATH = $(CHIP_OBJ_PATH)/audio_base/$(_MDL_NAME)
-
-
-
-
-#============================================
-#¸÷Ä£¿éÒÀÀµ¹«¹²Í·ÎļþÉèÖÃ
-#============================================
- INCLUDE += $(_EXTERNAL_INC_PATH) \
- -I$(CHIP_SRC_PATH)/audio_base/include \
- -I$(_MDL_INC_PATH)
-#============================================
-#×ÓϵͳÀ©Õ¹¶¨Òå
-#============================================
-DEFINE +=
-
-#============================================
-#Ä£¿éÎļþÐÅÏ¢
-#============================================
-_C_SOURCE = $(wildcard $(_MDL_SRC_PATH)/*.c)
-
-_s_SOURCE =
-
-_S_SOURCE =
-
-#============================================
-# ±àÒë¹æÔò
-#============================================
-
-include $(FRAME_PATH)/rules/mdl_rules.mk
-
diff --git a/Uboot/cp/ps/driver/src/chipsets/src/audio_base/nxp/testnxp_rxin2rxout.c b/Uboot/cp/ps/driver/src/chipsets/src/audio_base/nxp/testnxp_rxin2rxout.c
deleted file mode 100755
index 6a10dbc..0000000
--- a/Uboot/cp/ps/driver/src/chipsets/src/audio_base/nxp/testnxp_rxin2rxout.c
+++ /dev/null
@@ -1,211 +0,0 @@
-#include "drvs_general.h"
-#include "drvs_voiceprocess.h"
-#include "drvs_ramlog.h"
-#include "hal_nxp.h"
-
-#include <linux/module.h>
-#include <linux/kernel.h>
-#include <linux/init.h>
-#include <linux/fs.h>
-#include <linux/miscdevice.h>
-#include <asm/uaccess.h>
-#include <linux/slab.h>
-#include <linux/init.h>
-
-typedef struct testnxp{
- int fs;
- int voicemode;
- int vp_path;
- int vp_vol;
- int framecount;
-}T_TestNxp;
-
-#define TESTNXP_IOCTL_RXIN_TO_RXOUT_START _IOW('N', 1, T_TestNxp)
-#define TESTNXP_IOCTL_RXIN_TO_RXOUT_STOP _IO('N', 2)
-
-#define MAX_NXP_BUF 640
-
-
-static const char testnxp_shortname[] = "testnxp_dev";
-static unsigned char *rxin_buf = NULL;
-static unsigned char *rxout_buf = NULL;
-static int framecount;
-static int testnxp_open(struct inode * ip,struct file * fp);
-static int testnxp_release(struct inode *ip, struct file *fp);
-static ssize_t testnxp_read(struct file *fp, char __user *buf,size_t count, loff_t *pos);
-static ssize_t testnxp_write(struct file *fp, const char __user *buf,size_t count, loff_t *pos);
-static long testnxp_ioctl(struct file *fp, unsigned int cmd, unsigned long arg);
-
-
-
-
-/* file operations for testnxp device /dev/testnxp_device */
-static const struct file_operations testnxp_fops = {
- .owner = THIS_MODULE,
- .read = testnxp_read,
- .write = testnxp_write,
- .unlocked_ioctl = testnxp_ioctl,
- .open = testnxp_open,
- .release = testnxp_release,
-};
-
-static struct miscdevice testnxp_device = {
- .minor = MISC_DYNAMIC_MINOR,
- .name = testnxp_shortname,
- .fops = &testnxp_fops,
-};
-
-
-
-static ssize_t testnxp_read(struct file *fp, char __user *buf,size_t count, loff_t *pos)
-{
-
- if(buf == NULL)
- {
- pr_info("testnxp_read buffer null \n");
- return -EINVAL;
- }
-
- if ((count>0) &&(count<=MAX_NXP_BUF)) {
- if (copy_to_user(buf, rxout_buf, count)) {
- pr_info("testnxp_read copy_to_user error \n");
- return -EFAULT;
- }
- }else{
- pr_info("testnxp_read count error \n");
- return -EINVAL;
- }
- return count;
-}
-
-static ssize_t testnxp_write(struct file *fp, const char __user *buf,size_t count, loff_t *pos)
-{
- int ret;
-
- if(buf == NULL)
- {
- pr_info("testnxp_write buffer null \n");
- return -EINVAL;
- }
-
- if ((count > 0) && (count <= MAX_NXP_BUF)) {
- if (copy_from_user(rxin_buf, buf, count)) {
- pr_info("testnxp_write copy_from_user error \n");
- return -EFAULT;
- }
-
- Vp_NxpRxProcess(&rxin_buf, &rxout_buf, count/2);
-
- }else{
- pr_info("testnxp_write count error \n");
- return -EINVAL;
- }
-
- return count;
-}
-
-
-static long testnxp_ioctl(struct file *fp, unsigned int cmd, unsigned long arg)
-{
- T_TestNxp *param = (T_TestNxp *)arg;
- T_TestNxp testnxp_param = {0};
- int ret = 0;
- printk("testnxp_ioctl\n");
-
- switch(cmd)
- {
- case TESTNXP_IOCTL_RXIN_TO_RXOUT_START:
- {
- if (copy_from_user((void*)&testnxp_param, (void*)param, sizeof(struct testnxp)))
- {
- return DRV_ERR_INVALID_PARAM;
- }
- framecount = testnxp_param.framecount;
- ret = Vp_NxpOpen(testnxp_param.fs);
- if (ret == 0)
- {
- ret = Vp_NxpGetParam(testnxp_param.voicemode, testnxp_param.vp_path);
- if (ret == 0)
- {
- ret = Vp_NxpSetParam(testnxp_param.vp_path, testnxp_param.vp_vol, FALSE);
- if (ret != 0 )
- Vp_NxpClose();
- }
- else
- {
- Vp_NxpClose();
- }
- }
- break;
- }
- case TESTNXP_IOCTL_RXIN_TO_RXOUT_STOP:
- {
- Vp_NxpClose();
- }
- default:
- {
- break;
- }
- }
- return ret;
-}
-
-
-
-static int testnxp_open(struct inode *ip, struct file *fp)
-{
- printk("testnxp_open\n");
-
- if(rxin_buf == NULL)
- {
- rxin_buf = kzalloc(2 * MAX_NXP_BUF, GFP_KERNEL);
- if (!rxin_buf)
- {
- pr_info("testnxp_init malloc error\n");
- return -ENOMEM;
- }
-
- rxout_buf = rxin_buf + MAX_NXP_BUF;
- }
-
- return 0;
-}
-
-static int testnxp_release(struct inode *ip, struct file *fp)
-{
- printk("testnxp_release\n");
-
- if(rxin_buf)
- {
- kfree(rxin_buf);
- rxin_buf = NULL;
- }
-
- return 0;
-}
-
-
-// int __init testnxp_init(void)
-int testnxp_init(void)
-{
- int ret;
- printk("testnxp driver initialize\n");
-
- ret = misc_register(&testnxp_device);
- if (ret){
- printk(KERN_ERR "testnxp driver failed to initialize\n");
- return -EFAULT;
- }
-
- return 0;
-}
-
-
- void __exit testnxp_exit(void)
-{
- misc_deregister(&testnxp_device);
-}
-
-//late_initcall(testnxp_init);
-//module_exit(testnxp_exit);
-
diff --git a/Uboot/cp/ps/driver/src/chipsets/src/audio_base/nxp/tos/LVC_Types.h b/Uboot/cp/ps/driver/src/chipsets/src/audio_base/nxp/tos/LVC_Types.h
deleted file mode 100755
index 14efe8c..0000000
--- a/Uboot/cp/ps/driver/src/chipsets/src/audio_base/nxp/tos/LVC_Types.h
+++ /dev/null
@@ -1,383 +0,0 @@
-/************************************************************************/
-/* Copyright (c) 2004-2014 NXP Software. All rights are reserved. */
-/* Reproduction in whole or in part is prohibited without the prior */
-/* written consent of the copyright owner. */
-/* */
-/* This software and any compilation or derivative thereof is and */
-/* shall remain the proprietary information of NXP Software and is */
-/* highly confidential in nature. Any and all use hereof is restricted */
-/* and is subject to the terms and conditions set forth in the */
-/* software license agreement concluded with NXP Software. */
-/* */
-/* Under no circumstances is this software or any derivative thereof */
-/* to be combined with any Open Source Software in any way or */
-/* licensed under any Open License Terms without the express prior */
-/* written permission of NXP Software. */
-/* */
-/* For the purpose of this clause, the term Open Source Software means */
-/* any software that is licensed under Open License Terms. Open */
-/* License Terms means terms in any license that require as a */
-/* condition of use, modification and/or distribution of a work */
-/* */
-/* 1. the making available of source code or other materials */
-/* preferred for modification, or */
-/* */
-/* 2. the granting of permission for creating derivative */
-/* works, or */
-/* */
-/* 3. the reproduction of certain notices or license terms */
-/* in derivative works or accompanying documentation, or */
-/* */
-/* 4. the granting of a royalty-free license to any party */
-/* under Intellectual Property Rights */
-/* */
-/* regarding the work and/or any work that contains, is combined with, */
-/* requires or otherwise is based on the work. */
-/* */
-/* This software is provided for ease of recompilation only. */
-/* Modification and reverse engineering of this software are strictly */
-/* prohibited. */
-/* */
-/************************************************************************/
-
-/****************************************************************************************
-
- $Author: beq07720 $
- $Revision: 55357 $
- $Date: 2014-03-05 22:16:13 +0530 (Wed, 05 Mar 2014) $
-
-*****************************************************************************************/
-
-/** @file
- * Header file defining the standard LifeVibes types for use in the application layer
- * interface of all LifeVibes modules
- */
-
-#ifndef LVM_TYPES_H
-#define LVM_TYPES_H
-
-#ifdef __cplusplus
-extern "C" {
-#endif /* __cplusplus */
-
-/****************************************************************************************/
-/* */
-/* definitions */
-/* */
-/****************************************************************************************/
-
-#define LVM_NULL 0 ///< NULL pointer
-
-#define LVM_TRUE 1 ///< Boolean True
-#define LVM_FALSE 0 ///< Boolean False
-
-#define LVM_MAXINT_8 127 ///< Maximum positive integer size
-#define LVM_MAXINT_16 32767 ///< Maximum signed int 16 bits number
-#define LVM_MAXINT_32 2147483647 ///< Maximum signed int 32 bits number
-#define LVM_MAXUINT_32 4294967295U ///< Maximum un-signed int 32 bits number
-
-#if ( defined(VARIANT_24BIT) )
-#define LVM_MAXENUM 8388607L ///< Maximum value for enumerator
-#else
-#define LVM_MAXENUM 2147483647 ///< Maximum value for enumerator
-#endif
-
-#define LVM_MODULEID_MASK 0xFF00 ///< Mask to extract the calling module ID from callbackId
-#define LVM_EVENTID_MASK 0x00FF ///< Mask to extract the callback event from callbackId
-
-/* Memory table*/
-#define LVM_MEMREGION_PERSISTENT_SLOW_DATA 0 ///< Offset to the instance memory region
-#define LVM_MEMREGION_PERSISTENT_FAST_DATA 1 ///< Offset to the persistent data memory region
-#define LVM_MEMREGION_PERSISTENT_FAST_COEF 2 ///< Offset to the persistent coefficient memory region
-#define LVM_MEMREGION_TEMPORARY_FAST 3 ///< Offset to temporary memory region
-
-#define LVM_NR_MEMORY_REGIONS 4 ///< Number of memory regions
-
-#define LVM_MODE_LVWIREFORMAT_LENGTH (4) ///< Number of bytes to encode @ref LVM_Mode_en in LVWireFormat
-#define LVM_CONFIG_LVWIREFORMAT_LENGTH (4) ///< Number of bytes to encode @ref LVM_Config_en in LVWireFormat
-#define LVM_FS_LVWIREFORMAT_LENGTH (4) ///< Number of bytes to encode @ref LVM_Fs_en sample Rate in LVWireFormat
-
-#define LVM_CHAR_LVWIREFORMAT_LENGTH (1)
-#define LVM_INT8_LVWIREFORMAT_LENGTH (1)
-#define LVM_UINT8_LVWIREFORMAT_LENGTH (1)
-
-#define LVM_INT16_LVWIREFORMAT_LENGTH (2)
-#define LVM_UINT16_LVWIREFORMAT_LENGTH (2)
-
-#define LVM_INT32_LVWIREFORMAT_LENGTH (4)
-#define LVM_UINT32_LVWIREFORMAT_LENGTH (4)
-
-
-/****************************************************************************************/
-/* */
-/* Basic types */
-/* */
-/****************************************************************************************/
-
-#if defined(CORE_TIC64)
-typedef char LVM_CHAR; ///< ASCII character
-
-typedef char LVM_INT8; ///< Signed 8-bit word
-typedef unsigned char LVM_UINT8; ///< Unsigned 8-bit word
-
-typedef short LVM_INT16; ///< Signed 16-bit word
-typedef unsigned short LVM_UINT16; ///< Unsigned 16-bit word
-
-typedef int LVM_INT32; ///< Signed 32-bit word
-typedef unsigned int LVM_UINT32; ///< Unsigned 32-bit word
-#else
-
-#if ( defined(VARIANT_FRAC16) || defined (VARIANT_REFREAL16) )
-typedef long DATATYPE; ///< long data type
-
-typedef char LVM_CHAR; ///< ASCII character
-
-typedef char LVM_INT8; ///< Signed 8-bit word
-typedef unsigned char LVM_UINT8; ///< Unsigned 8-bit word
-
-typedef long LVM_INT16; ///< Signed 16-bit word
-typedef long LVM_UINT16; ///< Unsigned 16-bit word
-
-typedef long LVM_INT32; ///< Signed 32-bit word
-typedef long LVM_UINT32; ///< Unsigned 32-bit word
-
-#else
-typedef char LVM_CHAR; ///< ASCII character
-
-typedef char LVM_INT8; ///< Signed 8-bit word
-typedef unsigned char LVM_UINT8; ///< Unsigned 8-bit word
-
-typedef short LVM_INT16; ///< Signed 16-bit word
-typedef unsigned short LVM_UINT16; ///< Unsigned 16-bit word
-
-typedef long LVM_INT32; ///< Signed 32-bit word
-typedef unsigned long LVM_UINT32; ///< Unsigned 32-bit word
-#if ( defined(VARIANT_24BIT) )
-
-#define LVM_MAXINT_24 8388607L ///< 24 bit max int
-#define LVM_MININT_24 -8388608L ///< 24bit min int
-
-#define LVM_MAXINT_48 140737488355327LL ///< 48bit max int
-#define LVM_MININT_48 -140737488355328LL ///< 48bit min int
-
-#endif // VARIANT_24BIT
-
-#endif // VARIANT_FRAC16
-
-#endif // CORE_TIC64
-
-/****************************************************************************************/
-/* */
-/* Standard Enumerated types */
-/* */
-/****************************************************************************************/
-
-/**
-The @ref LVM_Mode_en enumerated type is used to set the operating mode of a particular feature inside the LifeVibes modules.
-The feature can be separately set to enable the feature processing (i.e., ON) or to disable all feature processing
-modules (i.e., OFF).
-*/
-typedef enum
-{
- LVM_MODE_OFF = 0, ///< LVM module disabled
- LVM_MODE_ON = 1, ///< LVM module enabled
- LVM_MODE_DUMMY = LVM_MAXENUM
-} LVM_Mode_en;
-
-/**
-Sets stream Format
-*/
-typedef enum
-{
- LVM_STEREO = 0, ///<Stereo stream
- LVM_MONOINSTEREO = 1, ///<Mono in stereo stream
- LVM_MONO = 2, ///<Mono stream
- LVM_5DOT1 = 3, ///<stream 5.1 formatted
- LVM_7DOT1 = 4, ///<stream 7.1 formatted
- LVM_SOURCE_DUMMY = LVM_MAXENUM
-} LVM_Format_en;
-
-/**
-Sets Speaker type
-*/
-typedef enum
-{
- LVM_SPEAKER_MONO = 0, ///< Mono type speaker
- LVM_SPEAKER_STEREO = 1, ///< Stereo type speaker
- LVM_SPEAKER_DUMMY = LVM_MAXENUM
-} LVM_SpeakerType_en;
-
-/**
-Sets Word length
-*/
-typedef enum
-{
- LVM_16_BIT = 0, ///< 16 bit word length
- LVM_32_BIT = 1, ///< 32 bit word length
- LVM_WORDLENGTH_DUMMY = LVM_MAXENUM
-} LVM_WordLength_en;
-
-/**
-The LVM product supports the sample rates specified in @ref LVM_Fs_en. The input and output sample rates are always the same.
-*/
-typedef enum
-{
- LVM_FS_8000 = 0, ///< 8k sampling rate
- LVM_FS_11025 = 1, ///< 11.025k sampling rate
- LVM_FS_12000 = 2, ///< 12k sampling rate
- LVM_FS_16000 = 3, ///< 16k sampling rate
- LVM_FS_22050 = 4, ///< 22.050k sampling rate
- LVM_FS_24000 = 5, ///< 24k sampling rate
- LVM_FS_32000 = 6, ///< 32k sampling rate
- LVM_FS_44100 = 7, ///< 44.1k sampling rate
- LVM_FS_48000 = 8, ///< 48k sampling rate
- LVM_FS_COUNT = 9, ///< Max sampling rate count
- LVM_FS_INVALID = LVM_MAXENUM-1,
- LVM_FS_DUMMY = LVM_MAXENUM
-} LVM_Fs_en;
-
-/**
-The enumerated type is used to select the reset mode for the module.
-@ref LVM_RESET_SOFT is used to select a soft reset (or partial reset) and @ref LVM_RESET_HARD is
-used to select a hard reset (full re-initialization).
-*/
-typedef enum
-{
-/**
-<table border>
- <tr>
- <td><b>Name</b></td>
- <td><b>MODE</b></td>
- </tr>
- <tr>
- <td>ResetType</td>
- <td>@ref LVM_RESET_SOFT</td>
- </tr>
- <tr>
- <td></td>
- <td>@ref LVM_RESET_HARD</td>
- </tr>
-</table>
-*/
- LVM_RESET_SOFT = 0, ///< Reset type for LVM where a partial reset of the module should be performed
- LVM_RESET_HARD = 1, ///< Reset type for LVM where a full reset of the module should be performed
- LVM_RESET_DUMMY = LVM_MAXENUM
-} LVM_ResetType_en;
-
-/**
-The @ref LVM_MemoryTypes_en enumerated type identifies the memory region types so that they can be correctly placed in memory
-by the calling application.
-The module initially has no permanent memory storage and makes no use of persistent memory allocation internally.
-The calling application must allocate memory for the module to use.
-
-Four memory regions are required:
-@li @ref LVM_MEMREGION_PERSISTENT_SLOW_DATA : this type of memory is used to store all the control data that needs to be saved between two consecutive calls to the process function.
-@li @ref LVM_MEMREGION_PERSISTENT_FAST_DATA : this type of memory is used to store data such as filter history
-@li @ref LVM_MEMREGION_PERSISTENT_FAST_COEF : this type of memory is used to store filter coefficients.
-@li @ref LVM_MEMREGION_TEMPORARY_FAST (scratch): this type of memory is used to store temporary data. This memory can be reused by the application in between calls to the process function.
-
-This collection of memory regions forms the module instance.
-
-Typically the memory is allocated by the application dynamically; however, it can be allocated statically if required.
-The sizes of the memory regions can be found by running the GetMemoryTable functions on a simulator and noting
-the returned values. Alternatively contact NXP who can provide the figures.
-It is possible that these memory sizes will change between release versions of the library and hence the dynamic memory allocation method is preferred where possible.
-On some target platforms the placement of memory regions is critical for achieving optimal performance of the module.
-*/
-typedef enum
-{
- LVM_PERSISTENT_SLOW_DATA = LVM_MEMREGION_PERSISTENT_SLOW_DATA, ///< Persistent slow memory region
- LVM_PERSISTENT_FAST_DATA = LVM_MEMREGION_PERSISTENT_FAST_DATA, ///< Persistent fast memory region
- LVM_PERSISTENT_FAST_COEF = LVM_MEMREGION_PERSISTENT_FAST_COEF, ///< Persisten fast memory for coefficient storage
- LVM_TEMPORARY_FAST = LVM_MEMREGION_TEMPORARY_FAST, ///< Temporary fast memory region
- LVM_MEMORYTYPE_DUMMY = LVM_MAXENUM
-} LVM_MemoryTypes_en;
-
-/**
-Sets mod of Configuration
-*/
-typedef enum
-{
- LVM_CONFIG_HANDSET = 0, ///< Handset configuration
- LVM_CONFIG_SPEAKERPHONE = 1, ///< Speaker mod configuration
- LVM_CONFIG_EARPIECE = 2, ///< Earpiece configuration
- LVM_CONFIG_DUMMY = LVM_MAXENUM
-} LVM_Config_en;
-
-/**
-The @ref LVM_MemoryRegion_st type defines a memory region by specifying its size in bytes, its region type and its base pointer.
-@see LVM_MemoryTypes_en
-*/
-#if ( defined(VARIANT_24BIT) )
-typedef struct
-{
- LVM_INT24 Size; ///< The size of the memory region in bytes
- LVM_MemoryTypes_en Type; ///< Type of memory region
- void *pBaseAddress; ///< Pointer to the memory region base address
-} LVM_MemoryRegion_st;
-#else
-typedef struct
-{
- LVM_UINT32 Size; ///< The size of the memory region in bytes
- LVM_MemoryTypes_en Type; ///< Type of memory region
- void *pBaseAddress; ///< Pointer to the memory region base address
-} LVM_MemoryRegion_st;
-#endif
-
-/**
-The LVM_MemoryTable_st type defines the memory requirements of the module as an array of region definitions.
-The number of required memory regions is given by the constant @ref LVM_NR_MEMORY_REGIONS
-@see LVM_MemoryRegion_st
-*/
-typedef struct
-{
- LVM_MemoryRegion_st Region[LVM_NR_MEMORY_REGIONS]; ///< One definition of all memory regions
-} LVM_MemoryTable_st;
-
-/**
-Beats Per Minute Structure
-*/
-typedef struct
-{
- LVM_INT16 ShortTermMinimum; ///< Beats per minute in Q9.6 format
- LVM_INT16 ShortTermAverage; ///< Beats per minute in Q9.6 format
- LVM_INT16 ShortTermMaximum; ///< Beats per minute in Q9.6 format
-
- LVM_INT16 Confidence; ///< Beat confidence level: 0 = no confidence, 32767 = maximum confidence
- LVM_INT16 Strength; ///< Beat strength level: 0 = no beat, 32767 = maximum strength beat
- LVM_INT16 LongTermMinimum; ///< Beats per minute in Q9.6 format
- LVM_INT16 LongTermAverage; ///< Beats per minute in Q9.6 format
- LVM_INT16 LongTermMaximum; ///< Beats per minute in Q9.6 format
-
-} LVM_BPMModuleStats_st;
-
-
-/****************************************************************************************/
-/* */
-/* Standard Function Prototypes */
-/* */
-/****************************************************************************************/
-/**
-@brief General purpose callback function
-
-@param pCallbackData Pointer to the callback data structure
-@param pGeneralPurpose General purpose pointer (e.g. to a data structure needed in the callback)
-@param PresetLength General purpose variable (e.g. to be used as callback ID)
-@return \ref LVM_INT32
-*/
-typedef LVM_INT32 (*LVM_Callback)(void *pCallbackData,
- void *pGeneralPurpose,
- LVM_INT16 GeneralPurpose );
-
-
-/****************************************************************************************/
-/* */
-/* End of file */
-/* */
-/****************************************************************************************/
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#endif /* LVM_TYPES_H */
diff --git a/Uboot/cp/ps/driver/src/chipsets/src/audio_base/nxp/tos/LVVE.h b/Uboot/cp/ps/driver/src/chipsets/src/audio_base/nxp/tos/LVVE.h
deleted file mode 100755
index 9c48d8e..0000000
--- a/Uboot/cp/ps/driver/src/chipsets/src/audio_base/nxp/tos/LVVE.h
+++ /dev/null
@@ -1,1371 +0,0 @@
-/****************************************************************************************/
-/* Copyright (c) 2004-2014 NXP Software. All rights are reserved. */
-/* Reproduction in whole or in part is prohibited without the prior */
-/* written consent of the copyright owner. */
-/* */
-/* This software and any compilation or derivative thereof is and */
-/* shall remain the proprietary information of NXP Software and is */
-/* highly confidential in nature. Any and all use hereof is restricted */
-/* and is subject to the terms and conditions set forth in the */
-/* software license agreement concluded with NXP Software. */
-/* */
-/* Under no circumstances is this software or any derivative thereof */
-/* to be combined with any Open Source Software in any way or */
-/* licensed under any Open License Terms without the express prior */
-/* written permission of NXP Software. */
-/* */
-/* For the purpose of this clause, the term Open Source Software means */
-/* any software that is licensed under Open License Terms. Open */
-/* License Terms means terms in any license that require as a */
-/* condition of use, modification and/or distribution of a work */
-/* */
-/* 1. the making available of source code or other materials */
-/* preferred for modification, or */
-/* */
-/* 2. the granting of permission for creating derivative */
-/* works, or */
-/* */
-/* 3. the reproduction of certain notices or license terms */
-/* in derivative works or accompanying documentation, or */
-/* */
-/* 4. the granting of a royalty-free license to any party */
-/* under Intellectual Property Rights */
-/* */
-/* regarding the work and/or any work that contains, is combined with, */
-/* requires or otherwise is based on the work. */
-/* */
-/* This software is provided for ease of recompilation only. */
-/* Modification and reverse engineering of this software are strictly */
-/* prohibited. */
-/* */
-/****************************************************************************************/
-
-/****************************************************************************************/
-/* */
-/* $Author: nxp65285 $*/
-/* $Revision: 56908 $*/
-/* $Date: 2014-04-10 17:30:02 +0530 (Thu, 10 Apr 2014) $*/
-/* */
-/****************************************************************************************/
-
-/**
-@file
-Header file for the application layer interface of the LVVE module.
-This files includes all definitions, types, structures and function prototypes
-required by the calling layer. All other types, structures and functions are
-private.
-*/
-
-#ifndef __LVVE_H__
-#define __LVVE_H__
-
-#ifdef __cplusplus
-extern "C" {
-#endif /* __cplusplus */
-
-/****************************************************************************************/
-/* */
-/* Includes */
-/* */
-/****************************************************************************************/
-
-#include "LVVE_VID.h"
-
-/****************************************************************************************/
-/* */
-/* Definitions */
-/* */
-/****************************************************************************************/
-/* Below include logic is designed to reduce checks to 1 or 2 conditions due to limitations in the backend stripping code */
-
-
-
-
-
-#define LVVE_MAX_PCM_FRAME_SIZE 160 ///< LVVE maximum processing frame size
-
-
-#define LVVE_NOISESAMPLES_PER_FRAME 2 ///< Number of samples required for noise estimation per frame
-/**
-@def LVVE_RX_PRESET_LENGTH
-Length of the LVVE_Rx preset buffer (number of bytes).
-@see LVVE_Rx_SetPreset
-@ingroup LVVE_Rx
-*/
-#define LVVE_RX_PRESET_LENGTH (LVVIDHEADER_CONTROLPARAMS_LVWIREFORMAT_LENGTH + LVVE_RX_CONTROLPARAMS_LVWIREFORMAT_LENGTH) ///< RX preset Buffer length
-
-/**
-@def LVVE_TX_PRESET_LENGTH
-Length of the LVVE_Tx preset buffer (number of bytes).
-@see LVVE_Tx_SetPreset
-@ingroup LVVE_Tx
-*/
-#define LVVE_TX_PRESET_LENGTH (LVVIDHEADER_CONTROLPARAMS_LVWIREFORMAT_LENGTH + LVVE_TX_CONTROLPARAMS_LVWIREFORMAT_LENGTH) ///< TX preset buffer length
-
-
-/* Deprecated Definitions */
-
-#define LVVE_MAX_BULK_DELAY LVVE_TX_BULKDELAY_MAX
-#define LVVE_RX_MODE_DUMMY LVVE_RX_MODE_EN_DUMMY
-#define LVVE_TX_MODE_DUMMY LVVE_TX_MODE_EN_DUMMY
-
-#define LVVE_MAX_VOL_GAIN_DB LVVE_TX_VOL_GAIN_MAX
-#define LVVE_MIN_VOL_GAIN_DB LVVE_TX_VOL_GAIN_MIN
-
-#define LVVE_MAX_HPF_CORNER_HZ LVVE_TX_MIC_HPF_CORNERFREQ_MAX
-#define LVVE_MIN_HPF_CORNER_HZ LVVE_TX_MIC_HPF_CORNERFREQ_MIN
-
-#define LVVE_MAX_HPF_RX_CORNER_HZ LVVE_RX_HPF_CORNERFREQ_MAX
-
-#define LVVE_MAX_NLPP_LIMIT_DB LVNLPP_NLPP_LIMIT_MAX
-#define LVVE_MIN_NLPP_LIMIT_DB LVNLPP_NLPP_LIMIT_MIN
-
-
-#define LVVE_MAX_DRC_LEVEL LVDRC_COMPRESSORCURVEINPUTLEVELS_MAX
-#define LVVE_MIN_DRC_LEVEL LVDRC_COMPRESSORCURVEINPUTLEVELS_MIN
-#define LVVE_MIN_DRC_NUMKNEES LVDRC_NUMKNEES_MIN
-#define LVVE_MAX_DRC_NUMKNEES LVDRC_NUMKNEES_MAX
-#define LVVE_MIN_DRC_ATTACKTIME LVDRC_ATTACKTIME_MIN
-#define LVVE_MAX_DRC_ATTACKTIME LVDRC_ATTACKTIME_MAX
-#define LVVE_MIN_DRC_RELEASETIME LVDRC_RELEASETIME_MIN
-#define LVVE_MAX_DRC_RELEASETIME LVDRC_RELEASETIME_MAX
-
-
-/* End deprecated defines*/
-/****************************************************************************************/
-/* */
-/* Types */
-/* */
-/****************************************************************************************/
-
-/**
-LVVE_Tx Instance Handle
-This handle is used by most of the LVVE APIs
-@see LVVE_Tx_GetInstanceHandle
-@ingroup LVVE_Tx
-*/
-typedef void *LVVE_Tx_Handle_t; ///< LVVE Tx handle
-/**
-This handle is used by most of the LVVE APIs
-@see LVVE_Rx_GetInstanceHandle
-@ingroup LVVE_Rx
-*/
-typedef void *LVVE_Rx_Handle_t; ///< LVVE Rx handle
-
-/**
-This enum type specifies the different error codes returned by the API functions
-For the exact meaning see the individual function descriptions
-*/
-typedef enum
-{
- LVVE_SUCCESS = 0, ///< Successful return from a routine
- LVVE_ALIGNMENTERROR = 1, ///< Memory alignment error
- LVVE_NULLADDRESS = 2, ///< NULL allocation address
- LVVE_OUTOFRANGE = 3, ///< Out of range parameter
- LVVE_INVALIDNUMSAMPLES = 4, ///< Invalid number of samples
- LVVE_INVALID_ALGORITHM_CONFIGURATION = 5, ///< Mutually exclusive algorithms configured ON
- LVVE_INVALID_STATE_CONFIGURATION = 6, ///< Invalid state of the algorithm
- LVVE_PRESET_INVALID_BUFFER_LENGTH = 7, ///< Incorrect length of buffer used in SetPreset
- LVVE_PRESET_INVALID_VOLUME_INDEX = 8, ///< The volume index exceeds the buffer content in SetPreset
- LVVE_PRESET_INVALID_BUFFER_VERSION = 9, ///< The version of the preset buffer does not match this library
- LVVE_PRESET_INVALID_BASELINE_VERSION = 10, ///< Invalid LVVE Baseline Version in preset buffer
- LVVE_PRESET_INVALID_MASK = 11, ///< Invalid algorithm mask in preset buffer
- LVVE_PRESET_INVALID_SAMPLE_RATE = 12, ///< Invalid sample rate @ref LVM_Fs_en in preset buffer
- LVVE_PRESET_INVALID_LVWIREFORMAT_MESSAGEID = 13, ///< Invalid @ref LVVIDHeader_MessageID_en wire format message id in preset buffer
-
- LVVE_RETURNSTATUS_DUMMY = LVM_MAXENUM
-} LVVE_ReturnStatus_en;
-
-/**
-Byte array containing encoded LVVE_Rx_ControlParams for one or multiple volumes.
-The length of this array should be a multiple of @ref LVVE_RX_PRESET_LENGTH.
-@see LVVE_Rx_SetPreset
-@ingroup LVVE_Rx
-*/
-typedef LVM_CHAR* LVVE_Rx_Preset_t; ///< LVVE Rx preset buffer
-
-/**
-Byte array containing encoded LVVE_Tx_ControlParams for one or multiple volumes.
-The length of this array should be a multiple of @ref LVVE_TX_PRESET_LENGTH.
-@see LVVE_Tx_SetPreset
-@ingroup LVVE_Tx
-*/
-typedef LVM_CHAR* LVVE_Tx_Preset_t; ///< LVVE Tx preset buffer
-
-
-/****************************************************************************************/
-/* */
-/* Structures */
-/* */
-/****************************************************************************************/
-
-/**
-The instance parameters define certain important operating limits required by the calling application.
-These instance parameters affect how much memory is required by the LVVE and hence must be provided
-when the instance is created.
-@see LVVE_Rx_GetMemoryTable
-@see LVVE_Rx_GetInstanceHandle
-@see LVVE_Tx_GetMemoryTable
-@see LVVE_Tx_GetInstanceHandle
-*/
-/**
-EQ Module Instance Parameters Structure.
-@see LVEQ_InstanceParams_st
-*/
-typedef struct
-{
-/**
-Max Size of Equalizer
-Sets the maximum length of the equalizer impulse response that can be used.
-It must be a multiple of 8.
-<table border>
-<caption>EQ Max Length Table</caption>
- <tr>
- <td><b>Unit</b></td>
- <td><b>Q format</b></td>
- <td><b>Data Range</b></td>
- <td><b>Default Values</b></td>
- </tr>
- <tr>
- <td><b>Integer Length in Samples</b></td>
- <td><b>Q16.0</b></td>
- <td>[8,\ref LVEQ_EQ_LENGTH_MAX]</td>
- <td>\ref LVEQ_EQ_LENGTH_DEFAULT</td>
- </tr>
-</table>
-*/
- LVM_UINT16 EQ_MaxLength; ///< EQ Max Length
-} LVEQ_InstanceParams_st;
-
-/**
-Tx Instance Parameter Structure
-These parameters are set at initialization time and may not be changed during processing
-@ref LVVE_Tx_GetInstanceHandle
-@ingroup LVVE_Tx
-*/
-typedef struct
-{
- LVM_Fs_en SampleRate; ///< Sample rate
-/**
-Sets the maximum length of the bulk delay between Rx and Tx expressed in samples.
-The unit of MaxBulkDelay is [number of samples] at the respective sampling rate.
-<table border>
-<caption>Max Bulk Delay Table</caption>
- <tr>
- <td><b>Type</b></td>
- <td><b>Unit</b></td>
- <td><b>Q format</b></td>
- <td><b>Data Range</b></td>
- <td><b>Default Values</b></td>
- </tr>
- <tr>
- <td><b>LVM_UINT16</b></td>
- <td><b>Integer Length in Samples</b></td>
- <td><b>Q16.0</b></td>
- <td>[0,6400]</td>
- <td>None</td>
- </tr>
-</table>
-*/
- LVM_UINT16 MaxBulkDelay; ///< Max bulk delay
-
- LVEQ_InstanceParams_st EQ_InstParams; ///< EQ instance
-} LVVE_Tx_InstanceParams_st;
-
-/**
-Rx Instance Parameter Structure
-These parameters are set at initialization time and may not be changed during processing.
-@ref LVVE_Rx_GetInstanceHandle
-@ingroup LVVE_Rx
-*/
-typedef struct
-{
- LVM_Fs_en SampleRate; ///< LVVE sample rate
- LVEQ_InstanceParams_st EQ_InstParams;///< EQ instance
-
-} LVVE_Rx_InstanceParams_st;
-
-/**
-The version information structure contains one character field to store LVVE version number.
-A call to the @ref LVVE_GetVersionInfo function is needed to retrieve this information.
-*/
-typedef struct
-{
- LVM_CHAR VersionNumber[64]; ///< Version number of the LifeVibes™ VoiceExperience library
-} LVVE_VersionInfo;
-
-/**
-Used to reset LVVE_Rx module any time.
-@ref LVM_ResetType_en parameter determine the type of reset required
-@ingroup LVVE_Rx
-*/
-typedef struct
-{
- LVM_ResetType_en ResetType; ///< RX Reset Type
-} LVVE_Rx_ResetParams_st;
-
-/**
-Used to reset LVVE_Tx module any time.
-LVM_ResetType_en parameter determine the type of reset required
-@ingroup LVVE_Tx
-*/
-typedef struct
-{
- LVM_ResetType_en ResetType; ///< TX Reset Type
-} LVVE_Tx_ResetParams_st;
-
-/**
-@brief Retrieve the memory requirements of the LVVE_Tx module.
-
-This function returns a table of memory records that describe size, type and memory space of all buffers
-required by the instance. The number of initialized memory records is defined by LVVE_NR_MEMORY_REGIONS.
-This function is used for two purposes and is called in two different ways:
-
-@li Memory Allocation: When the LVVE_GetMemoryTable functions are called with a NULL instance handle (hInstance = LVM_NULL)
- the function returns the memory requirements. The base address pointers in the memory table are set to NULL.
- All elements of the instance parameters structure (pointed to by pInstParams) must contain valid values as the memory
- requirements are affected by these settings.
-
-@li Memory Free: When called with a non-NULL instance handle (hInstance = a valid instance handle)
- the function returns the memory table used when the instance was created.
- The base address pointers returned will be those supplied by the calling application when the memory
- was allocated and can now be used for freeing memory. The instance parameters (pointed to by pInstParams)
- are ignored and the pInstParams parameter may be set to NULL.
-@li In case of memory allocation, all elements of the parameter initialization structure defined by pInstParams
- must contain valid values as the memory requirements are affected by these settings.
- In some releases of the bundle library one or more memory regions may have a zero size.
-
-@pre The number of memory records in the array defined by pMemoryTable is equal to @ref LVM_NR_MEMORY_REGIONS.
-@pre Exactly @ref LVM_NR_MEMORY_REGIONS memory records of pMemoryTable are initialized.
-
-@post When this function is called with hInstance = NULL the memory base address pointers
-will be NULL on return.
-@post When the function is called for freeing memory, hInstance = Instance Handle the
-memory table returns the allocated memory and base addresses used during
-initialisation.
-
-@return LVVE_SUCCESS when the function call succeeds and the memory table is filled correctly
-@return LVVE_NULLADDRESS when pMemoryTable was NULL
-@return LVVE_NULLADDRESS when pInstParams was NULL and the call was for memory allocation
- is NULL.
-@return LVVE_OUTOFRANGE when pInstParams contains parameters out of the excepted range
-
-@note This function may be interrupted by the LVVE_Tx_Process function.
-
-@ingroup LVVE_Tx
-
-LVVE_Tx_GetMemoryTable: Memory Allocation Example:
-
-The following example shows how to get the memory requirements for the LVVE_Tx instance.
-\code
- InstParams_Tx.SampleRate = LVM_FS_8000;
- // Include the other instance params here
-
- LVVE_Status = LVVE_Tx_GetMemoryTable ( LVM_NULL,
- &MemTab_Tx,
- &InstParams_Tx );
-
- if( LVVE_Status != LVVE_SUCCESS )
- {
- // Handle Errors
- }
-
- for( c1 = 0; c1 < LVVE_NR_MEMORY_REGIONS; c1++ )
- {
- if( MemTab_Tx.Region[c1].Size != 0 )
- {
- MemTab_Tx.Region[c1].pBaseAddress =
- malloc(MemTab_Tx.Region[c1].Size);
- }
- }
-\endcode
-
-LVVE_Tx_GetMemoryTable: Freeing Memory Example:
-
-The following example shows how to free the memory from the LVVE_Tx instance.
-
-\code
- LVVE_Status = LVVE_Tx_GetMemoryTable( hInstance,
- &MemTab_Tx,
- LVM_NULL);
-
- if (LVVE_Status != LVVE_SUCCESS)
- {
- // Handle errors
- }
-
- for( c1 = 0; c1 < LVVE_NR_MEMORY_REGIONS; c1++)
- {
- if (MemTab_Tx.Region[c1].Size != 0)
- {
- free(MemTab_Tx.Region[c1].pBaseAddress);
- }
- }
-\endcode
-
-*/
-
-LVVE_ReturnStatus_en LVVE_Tx_GetMemoryTable(LVVE_Tx_Handle_t hInstance,
- LVM_MemoryTable_st *pMemoryTable,
- LVVE_Tx_InstanceParams_st *pInstanceParams);
-
-/**
-@brief Retrieve the memory requirements of the LVVE_Rx module.
-
-This function returns a table of memory records that describe size, type and memory space of all buffers
-required by the instance. The number of initialized memory records is defined by LVVE_NR_MEMORY_REGIONS.
-This function is used for two purposes and is called in two different ways:
-
-@li Memory Allocation: When the LVVE_GetMemoryTable functions are called with a NULL instance handle (hInstance = LVM_NULL)
- the function returns the memory requirements. The base address pointers in the memory table are set to NULL.
- All elements of the instance parameters structure (pointed to by pInstParams) must contain valid values as the memory
- requirements are affected by these settings.
-
-@li Memory Free: When called with a non-NULL instance handle (hInstance = a valid instance handle)
- the function returns the memory table used when the instance was created.
- The base address pointers returned will be those supplied by the calling application when the memory
- was allocated and can now be used for freeing memory. The instance parameters (pointed to by pInstParams)
- are ignored and the pInstParams parameter may be set to NULL.
-@li In case of memory allocation, all elements of the parameter initialization structure defined by pInstParams
- must contain valid values as the memory requirements are affected by these settings.
- In some releases of the bundle library one or more memory regions may have a zero size.
-
-@pre The number of memory records in the array defined by pMemoryTable is equal to @ref LVM_NR_MEMORY_REGIONS.
-@pre Exactly @ref LVM_NR_MEMORY_REGIONS memory records of pMemoryTable are initialized.
-
-@post When this function is called with hInstance = NULL the memory base address pointers
-will be NULL on return.
-@post When the function is called for freeing memory, hInstance = Instance Handle the
-memory table returns the allocated memory and base addresses used during
-initialisation.
-
-@return LVVE_SUCCESS when the function call succeeds and the memory table is filled correctly
-@return LVVE_NULLADDRESS when pMemoryTable was NULL
-@return LVVE_NULLADDRESS when pInstParams was NULL and the call was for memory allocation
- is NULL.
-@return LVVE_OUTOFRANGE when pInstParams contains parameters out of the excepted range
-
-@note This function may be interrupted by the LVVE_Rx_Process function.
-
-@ingroup LVVE_Rx
-
-LVVE_Rx_GetMemoryTable: Memory Allocation Example:
-
-The following example shows how to get the memory requirements for the LVVE_Rx instance.
-
-\code
- InstParams_Rx.SampleRate = LVM_FS_8000;
- // Include the other instance params here
-
- LVVE_Status = LVVE_Rx_GetMemoryTable ( LVM_NULL,
- &MemTab_Rx,
- &InstParams_Rx );
-
- if( LVVE_Status != LVVE_SUCCESS )
- {
- // Handle Errors
- }
-
- for( c1 = 0; c1 < LVVE_NR_MEMORY_REGIONS; c1++ )
- {
- if( MemTab_Rx.Region[c1].Size != 0 )
- {
- MemTab_Rx.Region[c1].pBaseAddress =
- malloc(MemTab_Rx.Region[c1].Size);
- }
- }
-\endcode
-
-LVVE_Rx_GetMemoryTable: Freeing Memory Example:
-
-The following example shows how to free the memory from the LVVE_Rx instance.
-
-\code
- LVVE_Status = LVVE_Rx_GetMemoryTable( hInstance,
- &MemTab_Rx,
- LVM_NULL);
-
- if (LVVE_Status != LVVE_SUCCESS)
- {
- // Handle errors
- }
-
- for( c1 = 0; c1 < LVVE_NR_MEMORY_REGIONS; c1++)
- {
- if (MemTab_Rx.Region[c1].Size != 0)
- {
- free(MemTab_Rx.Region[c1].pBaseAddress);
- }
- }
-\endcode
-*/
-
-LVVE_ReturnStatus_en LVVE_Rx_GetMemoryTable(LVVE_Rx_Handle_t hInstance,
- LVM_MemoryTable_st *pMemoryTable,
- LVVE_Rx_InstanceParams_st *pInstanceParams);
-
-
-/**
-@brief Created handle to the instance of the LVVE_Tx module
-
-This function is used to create the LVVE_Tx instance. All control parameters are set to invalid values.
-The memory table pointed to by pMemoryTable must be created. If the memory table is not correct then an error will be returned.
-The memory requirements of the Rx and Tx unit are dependent on the instance parameters supplied and so the
-instance parameters provided in this function call must be the same as those used in the @ref LVVE_Tx_GetMemoryTable function calls
-used for memory allocation.
-
-@pre The memory records tables defined by pMemoryTable contains pointers to non-overlapping buffers
-with the size as requested via the prior calls to the LVVE_Tx_GetMemoryTable functions.
-@pre The initialization parameter structure defined by pInstParams is identical to the structure passed
-to prior call to @ref LVVE_Tx_GetMemoryTable functions.
-
-
-@param phInstance Pointer to the instance handle.
-@param pMemoryTable Pointer to the memory definition table.
-@param pInstanceParams Pointer to the instance parameters.
-
-@return LVVE_SUCCESS when creation was successful
-@return LVVE_NULLADDRESS When phInstance or pMemoryTable or pInstanceParams is NULL.
-@return LVVE_NULLADDRESS when one or more of the memory regions with a non-zero size has been
- given a NULL base address pointer.
-@return LVVE_OUTOFRANGE when pInstParams contains parameters out of the excepted range
-
-@ingroup LVVE_Tx
-
- LVVE_Tx_GetInstanceHandle Example:
-
-The following example shows how to initialize LVVE_Tx_GetInstanceHandle.
-
-\code
- hInstance_Tx = LVM_NULL;
- LVVE_Status = LVVE_Tx_GetInstanceHandle( &hInstance_Tx,
- &MemTab_Tx,
- &InstParams_Tx );
- if( LVVE_Status != LVVE_SUCCESS )
- {
- // Handle Errors
- }
-\endcode
-
-*/
-
-LVVE_ReturnStatus_en LVVE_Tx_GetInstanceHandle(LVVE_Tx_Handle_t *phInstance,
- LVM_MemoryTable_st *pMemoryTable,
- LVVE_Tx_InstanceParams_st *pInstanceParams);
-
-/**
-@brief Created handle to the instance of the LVVE_Rx module
-
-This functions is used to create LVVE_Rx instance. All control parameters are set to invalid values.
-The memory table pointed to by pMemoryTable must be created. If the memory table is not correct then an error will be returned.
-The memory requirements of the Rx and Rx unit are dependent on the instance parameters supplied and so the
-instance parameters provided in this function call must be the same as those used in the @ref LVVE_Rx_GetMemoryTable function calls
-used for memory allocation.
-
-@pre The memory records tables defined by pMemoryTable contains pointers to non-overlapping buffers
-with the size as requested via the prior calls to the LVVE_Rx_GetMemoryTable functions.
-@pre The initialization parameter structure defined by pInstParams is identical to the structure passed
-to prior call to @ref LVVE_Rx_GetMemoryTable functions.
-
-
-@param phInstance Pointer to the instance handle.
-@param pMemoryTable Pointer to the memory definition table.
-@param pInstanceParams Pointer to the instance parameters.
-
-@return LVVE_SUCCESS when creation was successful
-@return LVVE_NULLADDRESS When phInstance or pMemoryTable or pInstanceParams is NULL.
-@return LVVE_NULLADDRESS when one or more of the memory regions with a non-zero size has been
- given a NULL base address pointer.
-@return LVVE_OUTOFRANGE when pInstParams contains parameters out of the excepted range
-
-@ingroup LVVE_Rx
-
- LVVE_Rx_GetInstanceHandle Example:
-
-The following example shows how to initialize LVVE_Rx_GetInstanceHandle.
-
-\code
- hInstance_Rx = LVM_NULL;
- LVVE_Status = LVVE_Rx_GetInstanceHandle( &hInstance_Rx,
- &MemTab_Rx,
- &InstParams_Rx );
- if( LVVE_Status != LVVE_SUCCESS )
- {
- // Handle Errors
- }
-\endcode
-
-*/
-
-LVVE_ReturnStatus_en LVVE_Rx_GetInstanceHandle(LVVE_Rx_Handle_t *phInstance,
- LVM_MemoryTable_st *pMemoryTable,
- LVVE_Rx_InstanceParams_st *pInstanceParams);
-
-/**
-@brief Retrieve the current LVVE_Tx control parameters.
-
-This function copies the control parameters from the LVVE_Tx into the supplied
-parameter structure, pControlParams. The values returned are the values given in the last successful
-call to the LVVE_Tx_SetControlParameters function.
-
-@param hInstance Instance handle
-@param pControlParams Pointer to the control parameters
-
-@pre hInstance should be valid handle.
-@pre pControlParams should be allocated by caller.
-@post pControlParams will be filled with the values given in the last successful call to
- the LVVE_Tx_SetControlParameters function. They are not necessarily the values
- used in the last call to the LVVE_Tx_Process function, this will be the case if
- LVVE_Tx_SetControlParameters has been called since the last call to LVVE_Tx_Process.
-
-@return LVVE_SUCCESS Succeeded
-@return LVVE_NULLADDRESS When hInstance or pControlParams is NULL
-
-@note The LVVE_Tx_GetControlParameters function can be called at any time during processing.
-
-@ingroup LVVE_Tx
-
-LVVE_Tx_GetControlParameters Example:
-
-The following example shows how to get different control parameters for the LVVE_Tx instance.
-
-\code
- LVVE_Status = LVVE_Tx_GetControlParameters( &hInstance_Tx,
- &ControlParams_Tx );
-
- if( LVVE_Status != LVVE_SUCCESS )
- {
- // Handle Errors
- }
-\endcode
-
-*/
-
-LVVE_ReturnStatus_en LVVE_Tx_GetControlParameters( LVVE_Tx_Handle_t hInstance,
- LVVE_Tx_ControlParams_st *pControlParams);
-
-/**
-@brief Retrieve the current LVVE_Rx control parameters.
-
-This function copies the control parameters from the LVVE_Tx into the supplied
-parameter structure, pControlParams. The values returned are the values given in the last successful
-call to the LVVE_Rx_SetControlParameters function.
-
-@param hInstance Instance handle
-@param pControlParams Pointer to the control parameters
-
-@pre hInstance should be valid handle.
-@pre pControlParams should be allocated by caller.
-@post pControlParams will be filled with the values given in the last successful call to
- the LVVE_Rx_SetControlParameters function. They are not necessarily the values
- used in the last call to the LVVE_Rx_Process function, this will be the case if
- LVVE_Tx_SetControlParameters has been called since the last call to LVVE_Tx_Process.
-
-@return LVVE_SUCCESS Succeeded
-@return LVVE_NULLADDRESS When hInstance or pControlParams is NULL
-
-@note The LVVE_Rx_GetControlParameters function can be called at any time during processing.
-
-@ingroup LVVE_Rx
-
-LVVE_Rx_GetControlParameters Example:
-
-The following example shows how to get different control parameters for the LVVE_Rx instance.
-
-\code
- LVVE_Status = LVVE_Rx_GetControlParameters( &hInstance_Rx,
- &ControlParams_Rx );
-
- if( LVVE_Status != LVVE_SUCCESS )
- {
- // Handle Errors
- }
-\endcode
-
-*/
-
-LVVE_ReturnStatus_en LVVE_Rx_GetControlParameters( LVVE_Rx_Handle_t hInstance,
- LVVE_Rx_ControlParams_st *pControlParams);
-
-/**
-@brief Sets or changes the LVVE_Tx module parameters using C-strcuture.
-
-This function takes the new set of parameters and makes a local copy within
-LVVE_Tx but the parameters are only applied on the next call of the LVVE_Tx_Process
-function. When a parameter is unchanged no action is taken. This function can
-be called at any time during the processing, even when the LVVE_Tx_Process function
-is running. LifeVibes™ VoiceExperience control parameters can be set using two methods.
-Control Parameters can be populated in a \"C\" style structure (as explained in example) and then sent to the library.
-Another method is to populate control parameters in a byte array called Preset Buffer, see @ref LVVE_Tx_SetPreset for example usage.
-
-@param hInstance Instance Handle
-@param pNewParams Pointer to a parameter structure
-
-@pre hInstance should be valid handle.
-
-@return LVVE_SUCCESS Succeeded
-@return LVVE_NULLADDRESS When hInstance or pNewParams is NULL
-@return LVVE_OUTOFRANGE When pNewParams contains parameters of activated modules that are out of the excepted range
-@return LVVE_INVALID_ALGORITHM_CONFIGURATION When two mutual exclusive algorithms are both configured ON at run-time
- (e.g., NoiseVoid and HandsFree)
-
-
-@note This function may be interrupted by the LVVE_Tx_Process function
-
-@ingroup LVVE_Tx
-
-LVVE_Tx_GetControlParameters: Setting Control Parameters using C-Style structure Example:
-
-The following example shows how to set different control parameters for the LVVE_Tx instance.
-
-\code
- LVVE_Status = LVVE_Tx_GetControlParameters( &hInstance_Tx,
- &ControlParams_Tx );
-
- if( LVVE_Status != LVVE_SUCCESS )
- {
- // Handle Errors
- }
-
- Change Parameters as required
- ControlParams_Tx.VOL_Gain = VOL_TABLE[i];
- ControlParams_Tx.VC_ControlParams = VC_TABLE[i];
-
- // Update instance with new parameters
- LVVE_Status = LVVE_Tx_SetControlParameters( &hInstance_Tx,
- &ControlParams_Tx );
-
- if( LVVE_Status != LVVE_SUCCESS )
- {
- // Handle Errors
- }
-\endcode
-
-*/
-
-LVVE_ReturnStatus_en LVVE_Tx_SetControlParameters( LVVE_Tx_Handle_t hInstance,
- const LVVE_Tx_ControlParams_st * const pNewParams);
-
-/**
-@brief Sets or changes the LVVE_Rx module parameters using C-structure.
-
-This function takes the new set of parameters and makes a local copy within
-LVVE_Rx but the parameters are only applied on the next call of the LVVE_Rx_Process
-function. When a parameter is unchanged no action is taken. This function can
-be called at any time during the processing, even when the LVVE_Rx_Process function
-is running. LifeVibes™ VoiceExperience control parameters can be set using two methods.
-Control Parameters can be populated in a \"C\" style structure (as explained in example) and then sent to the library.
-Another method is to populate control parameters in a byte array called Preset Buffer, see @ref LVVE_Rx_SetPreset for example usage.
-
-@param hInstance Instance Handle
-@param pNewParams Pointer to a parameter structure
-
-@pre hInstance should be valid handle.
-
-@return LVVE_SUCCESS Succeeded
-@return LVVE_NULLADDRESS When hInstance or pNewParams is NULL
-@return LVVE_OUTOFRANGE When pNewParams contains parameters of activated modules that are out of the excepted range
-@return LVVE_INVALID_ALGORITHM_CONFIGURATION When two mutual exclusive algorithms are both configured ON at run-time
- (e.g., NoiseVoid and HandsFree)
-
-
-@note This function may be interrupted by the LVVE_Rx_Process function
-
-@ingroup LVVE_Rx
-
-LVVE_Rx_GetControlParameters: Setting Control Parameters using C-Style structure Example:
-
-The following example shows how to set different control parameters for the LVVE_Rx instance.
-
-\code
- LVVE_Status = LVVE_Rx_GetControlParameters( &hInstance_Rx,
- &ControlParams_Rx );
-
- if( LVVE_Status != LVVE_SUCCESS )
- {
- // Handle Errors
- }
-
- Change Parameters as required
- ControlParams_Rx.VOL_Gain = VOL_TABLE[i];
- ControlParams_Rx.VC_ControlParams = VC_TABLE[i];
-
- // Update instance with new parameters
- LVVE_Status = LVVE_Rx_SetControlParameters( &hInstance_Rx,
- &ControlParams_Rx );
-
- if( LVVE_Status != LVVE_SUCCESS )
- {
- // Handle Errors
- }
-\endcode
-
-*/
-LVVE_ReturnStatus_en LVVE_Rx_SetControlParameters( LVVE_Rx_Handle_t hInstance,
- const LVVE_Rx_ControlParams_st * const pNewParams);
-
-/**
-@brief Retrieve the current LVVE_Tx status parameters.
-
-This function copies internal status variables into the supplied status
-parameter structures.
-
-@param hInstance Instance handle
-@param pStatusParams Pointer to the status parameters
-
-@pre hInstance should be valid handle.
-@pre pStatusParams should be allocated by caller.
-@post pStatusParams will be filled with the latest status values of LVVE_Tx.
-
-@return LVVE_SUCCESS Succeeded
-@return LVVE_NULLADDRESS When hInstance or pStatusParams is NULL
-
-@note The LVVE_Tx_GetStatusParameters function can be called at any time during processing.
-This function can run in different threads than the process functions.
-
-
-@ingroup LVVE_Tx
-
-LVVE_Tx_GetStatusParameters: Get Internal Algorithm Status Attributes Example:
-The following example shows how to use LVVE_Tx_GetStatusParameters function call.
-
-\code
- LVVE_Tx_StatusParams_st Tx_Monitor;
- Status=LVVE_Tx_GetStatusParameters(hInstance_Tx,&Tx_Monitor);
- if (Status != LVVE_SUCCESS )
- {
- // Error Handling
- }
-\endcode
-
-*/
-
-LVVE_ReturnStatus_en LVVE_Tx_GetStatusParameters( LVVE_Tx_Handle_t hInstance,
- LVVE_Tx_StatusParams_st *pStatusParams);
-
-/**
-@brief Retrieve the current LVVE_Rx status parameters.
-
-This function copies internal status variables into the supplied status
-parameter structures.
-
-@param hInstance Instance handle
-@param pStatusParams Pointer to the status parameters
-
-@pre hInstance should be valid handle.
-@pre pStatusParams should be allocated by caller.
-@post pStatusParams will be filled with the latest status values of LVVE_Rx.
-
-@return LVVE_SUCCESS Succeeded
-@return LVVE_NULLADDRESS When hInstance or pStatusParams is NULL
-
-@note The LVVE_Rx_GetStatusParameters function can be called at any time during processing.
-This function can run in different threads than the process functions.
-
-@ingroup LVVE_Rx
-
-LVVE_Rx_GetStatusParameters: Get Internal Algorithm Status Attributes Example:
-The following example shows how to use LVVE_Rx_GetStatusParameters function call.
-
-\code
- LVVE_Rx_StatusParams_st Rx_Monitor;
- Status=LVVE_Rx_GetStatusParameters(hInstance_Rx,&Rx_Monitor);
- if (Status != LVVE_SUCCESS )
- {
- // Error Handling
- }
-\endcode
-
-*/
-
-LVVE_ReturnStatus_en LVVE_Rx_GetStatusParameters( LVVE_Rx_Handle_t hInstance,
- LVVE_Rx_StatusParams_st *pStatusParams);
-
-/**
-@brief Resets the LVVE_Tx module.
-
-The LVVE_Tx module instance memory contains data which depend on the input
-samples that have been processed previously. These data are buffers
-used for filter tabs and delay lines and also adaptive coefficients of the
-algorithm. The LVVE_Tx_ResetInstance function resets this input dependent data.
-
-The LVVE_Tx_ResetInstance function should be called whenever there is a
-discontinuity in the input audio stream. A discontinuity means that the
-current block of samples is not contiguous with the previous block of samples.
-Examples are
-@li Calling the LVVE_Tx_Process function after a period of inactivity
-@li Buffer underrun or overflow in the audio driver
-The LVVE_ResetInstance function of the Tx and/or Tx Unit should only be called when absolutely necessary as re-adaptation
-of internal algorithms will occur.
-The LVVE_ResetInstance functions can be called at any time, even when LVVE_Process is running. The reset will be
-applied at the start of the next call of the LVVE_Tx_Process function.
-
-
-@param hInstance Instance Handle
-@param pResetParams Reset Type
-
-@pre hInstance should be valid handle.
-
-@post Depending on the ResetType value, the LVVE_Tx_ResetInstance function can
-perform:
-@li Soft reset: partial reset of internal buffers and adaptive behavior. To be used for very short
-interruption or discontinuity, e.g., buffer under-run or overflow in the audio driver influencing the echo path delay.
-@li Hard reset: full reset of all internal buffers and adaptive behavior. To be used for long
-interruption or discontinuity, e.g., before calling the LVVE_Tx_Process function after a long period of inactivity
-in between calls in case instance was not freed.
-
-@return LVVE_SUCCESS Succeeded
-@return LVVE_NULLADDRESS When hInstance or pResetParams is NULL
-@return LVVE_OUTOFRANGE When content of pResetParams is invalid
-
-@note This function may be interrupted by the LVVE_Tx_Process function
-
-@ingroup LVVE_Tx
-
-LVVE_Tx_ResetInstance Example:
-
-The following example shows how to use LVVE_Tx_ResetInstance.
-\code
- LVVE_Status = LVVE_Tx_ResetInstance(hInstance, pResetParams);
-
- if (LVVE_Status != LVVE_SUCCESS)
- {
- // Handle LVVE_Tx_ResetInstance errors
- }
-\endcode
-
-*/
-LVVE_ReturnStatus_en LVVE_Tx_ResetInstance( LVVE_Tx_Handle_t hInstance,
- LVVE_Tx_ResetParams_st *pResetParams );
-
-/**
-@brief Resets the LVVE_Rx module.
-
-The LVVE_Rx module instance memory contains data which depend on the input
-samples that have been processed previously. These data are buffers
-used for filter tabs and delay lines and also adaptive coefficients of the
-algorithm. The LVVE_Rx_ResetInstance function resets this input dependent data.
-
-The LVVE_Rx_ResetInstance function should be called whenever there is a
-discontinuity in the input audio stream. A discontinuity means that the
-current block of samples is not contiguous with the previous block of samples.
-Examples are
-@li Calling the LVVE_Rx_Process function after a period of inactivity
-@li Buffer underrun or overflow in the audio driver
-The LVVE_ResetInstance function of the Rx and/or Tx Unit should only be called when absolutely necessary as re-adaptation
-of internal algorithms will occur.
-The LVVE_ResetInstance functions can be called at any time, even when LVVE_Process is running. The reset will be
-applied at the start of the next call of the LVVE_Rx_Process function.
-
-
-@param hInstance Instance Handle
-@param pResetParams Reset Type
-
-@pre hInstance should be valid handle.
-
-@post Depending on the ResetType value, the LVVE_Rx_ResetInstance function can
-perform:
-@li Soft reset: partial reset of internal buffers and adaptive behavior. To be used for very short
-interruption or discontinuity, e.g., buffer under-run or overflow in the audio driver influencing the echo path delay.
-@li Hard reset: full reset of all internal buffers and adaptive behavior. To be used for long
-interruption or discontinuity, e.g., before calling the LVVE_Rx_Process function after a long period of inactivity
-in between calls in case instance was not freed.
-
-@return LVVE_SUCCESS Succeeded
-@return LVVE_NULLADDRESS When hInstance or pResetParams is NULL
-@return LVVE_OUTOFRANGE When content of pResetParams is invalid
-
-@note This function may be interrupted by the LVVE_Rx_Process function
-
-@ingroup LVVE_Rx
-
-LVVE_Rx_ResetInstance Example:
-
-The following example shows how to use LVVE_Rx_ResetInstance.
-\code
- LVVE_Status = LVVE_Rx_ResetInstance(hInstance, pResetParams);
-
- if (LVVE_Status != LVVE_SUCCESS)
- {
- // Handle LVVE_Rx_ResetInstance errors
- }
-\endcode
-
-*/
-LVVE_ReturnStatus_en LVVE_Rx_ResetInstance( LVVE_Rx_Handle_t hInstance,
- LVVE_Rx_ResetParams_st *pResetParams );
-
-/**
-@brief Processes a block of samples by the LVVE_Tx module.
-
-This function processes the block of samples as configured with the current
-parameter settings. If new parameters have been given since the last call to
-LVVE_Tx_Process then these will be applied at the beginning of this process call.
-
-@param hInstance Instance Handle
-@param pInDataMic0 Pointer to the input speech sample buffer (pimary microphone).
-@param pInDataMic1 Pointer to the input speech sample buffer (secondary microphone).
-@param pRefData Pointer to the input farend reference buffer.
-@param pNoiseData Pointer to the output noise reference buffer.
-@param pOutData Pointer to the output sample buffer.
-@param NumSamples The number of samples to process should be integer multiple(n) of values in table.
- It is a frquency dependant paramter.
-<table border>
- <tr>
- <td><b>Unit</b></td>
- <td><b>Q format</b></td>
- <td><b>Data Range</b></td>
- <td><b>Default Values</b></td>
- </tr>
- <tr>
- <td><b>Samples</b></td>
- <td><b>Q16.0</b></td>
- <td>nx80 for 8kHz</td>
- <td>80 for 8kHz</td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td>nx160 for 16kHz</td>
- <td>160 for 16kHz</td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td>nx240 for 24kHz</td>
- <td>240 for 24kHz</td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td>nx320 for 32kHz</td>
- <td>320 for 32kHz</td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td>nx480 for 48kHz</td>
- <td>480 for 48kHz</td>
- </tr>
-</table>
-
-@pre hInstance should be valid handle.
-@pre LVVE_Tx_SetControlParameters should be called successfully once before.
-the first call to LVVE_Tx_Process
-@pre pInData is filled with the input samples to process.
-
-@post pOutData contains the processed samples.
-
-@return LVVE_SUCCESS Succeeded
-@return LVVE_NULLADDRESS When hInstance, pInData or pOutData is NULL
-@return LVVE_INVALIDNUMSAMPLES When the NumSamples is outside the allowed
-range
-@return LVVE_INVALID_STATE_CONFIGURATION When invalid state of the algorithm found
-
-@ingroup LVVE_Tx
-
-LVVE_Tx_Process Example:
-
-The following example shows how to use LVVE_Tx_Process function call
-
-\code
- // Tx Processing
- LVVE_STATUS = LVVE_Tx_Process( hInstance_Tx,
- pInData_Tx0,
- pInData_Tx1,
- pInData_Ref,
- pNoiseData,
- pOutData_Tx,
- NumSamples );
- if (LVVE_STATUS != LVVE_SUCCESS )
- {
- // Error Handling
- }
-\endcode
-
-*/
-LVVE_ReturnStatus_en LVVE_Tx_Process( LVVE_Tx_Handle_t hInstance,
- const LVM_INT16 *pInDataMic0,
- const LVM_INT16 *pInDataMic1,
- const LVM_INT16 *pRefData,
- LVM_INT16 *pNoiseData,
- LVM_INT16 *pOutData,
- const LVM_UINT16 NumSamples);
-
-/**
-@brief Processes a block of samples by the LVVE_Rx module.
-
-This function processes the block of samples as configured with the current
-parameter settings. If new parameters have been given since the last call to
-LVVE_Rx_Process then these will be applied at the beginning of this process call.
-
-@param hInstance Instance Handle
-@param pInData Pointer to the input sample buffer
-@param pNoiseData Pointer to the input noise buffer (for LVVC only). Pointer to the input noise reference buffer.
- The size of this buffer depends on the number of samples to process: NoiseDataBufferSize = 2 (size of the input buffer in ms) / 10ms
- i.e. for 20 ms input buffer, the NoiseData buffer size should be 4.
-
-@param pOutData Pointer to the output sample buffer
-@param NumSamples The number of samples to process should be integer multiple(n) of values in table.
- It is a frquency dependant paramter.
-<table border>
- <tr>
- <td><b>Unit</b></td>
- <td><b>Q format</b></td>
- <td><b>Data Range</b></td>
- <td><b>Default Values</b></td>
- </tr>
- <tr>
- <td><b>Samples</b></td>
- <td><b>Q16.0</b></td>
- <td>nx80 for 8kHz</td>
- <td>80 for 8kHz</td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td>nx160 for 16kHz</td>
- <td>160 for 16kHz</td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td>nx240 for 24kHz</td>
- <td>240 for 24kHz</td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td>nx320 for 32kHz</td>
- <td>320 for 32kHz</td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td>nx480 for 48kHz</td>
- <td>480 for 48kHz</td>
- </tr>
-</table>
-
-@pre hInstance should be valid handle.
-@pre LVVE_Rx_SetControlParameters should be called successfully once before.
-the first call to LVVE_Rx_Process
-@pre pInData is filled with the input samples to process.
-
-@post pOutData contains the processed samples.
-
-@return LVVE_SUCCESS Succeeded
-@return LVVE_NULLADDRESS When hInstance, pInData or pOutData is NULL
-@return LVVE_INVALIDNUMSAMPLES When the NumSamples is outside the allowed
-range
-@return LVVE_INVALID_STATE_CONFIGURATION When invalid state of the algorithm found
-
-@ingroup LVVE_Rx
-
-LVVE_Rx_Process Example:
-The following example shows how to use LVVE_Rx_Process function call.
-
-\code
- // Rx Processing
- LVVE_STATUS = LVVE_Rx_Process( hInstance_Rx,
- pInData_Rx,
- pNoiseData,
- pOutData_Rx,
- NumSamples );
-
- if (LVVE_STATUS != LVVE_SUCCESS )
- {
- // Error Handling
- }
-\endcode
-
-*/
-
-LVVE_ReturnStatus_en LVVE_Rx_Process( LVVE_Rx_Handle_t hInstance,
- const LVM_INT16 *pInData,
- const LVM_INT16 *pNoiseData,
- LVM_INT16 *pOutData,
- const LVM_UINT16 NumSamples);
-
-
-/**
-\brief get the version number of current of LVVE library.
-
-This function returns, to host, current version of the LVVE library
-@param pVersion version info
-
-@return LVVE_SUCCESS Succeeded
-@return LVVE_NULLADDRESS When one of hInstance, pInData or pOutData is NULL
-
-LVVE_GetVersionInfot Example:
-
-\code
- //Get the version information
- LVVE_VersionInfo VersionInfo;
- LVVE_GetVersionInfo(&VersionInfo);
-\endcode
-
-*/
-LVVE_ReturnStatus_en LVVE_GetVersionInfo( LVVE_VersionInfo *pVersion );
-
-/**
-@brief Sets or changes the LVVE_Tx module parameters through a Preset Buffer.
-
-Sets or changes the LVVE_Tx module parameters through a Preset Buffer. To set parameters using \"C\" structure see
-@ref LVVE_Tx_SetControlParameters
-This function takes the new set of parameters and makes a local copy within the
-LVVE_Tx module but the parameters are only applied on the next call of the LVVE_Tx_Process
-function. When no parameters are changed, no action is taken. This function can
-be called at any time during the processing, even when the LVVE_Tx_Process function
-is running.
-The new parameters are supplied in the form a @ref LVVE_Tx_Preset_t (Byte array).
-The length of the byte array shall be a multiple of @ref LVVE_TX_PRESET_LENGTH.
-
-@param hInstance Instance Handle
-@param pPreset Pointer to a Preset buffer
-@param PresetLength Length in bytes of the Preset buffer
-@param VolumeIndex Volume index to be selected from the Preset buffer
-
-@pre hInstance should be valid handle.
-
-@return @ref LVVE_SUCCESS Succeeded
-@return @ref LVVE_NULLADDRESS When hInstance or pPreset is NULL
-@return @ref LVVE_OUTOFRANGE When PresetLength or any of the new parameters is out of range
-@return @ref LVVE_INVALID_ALGORITHM_CONFIGURATION When mutually exclusive algorithms are enabled in the parameters at the same time
-@return @ref LVVE_PRESET_INVALID_BUFFER_LENGTH When the length of the input buffer is smaller than LVVE_TX_PRESET_LENGTH
-@return @ref LVVE_PRESET_INVALID_VOLUME_INDEX When the volume index exceeds the buffer content
-@return @ref LVVE_PRESET_INVALID_BUFFER_VERSION When the version of the format of the preset buffer does not match the version of the library
-@return @ref LVVE_PRESET_INVALID_BASELINE_VERSION When the baseline version of the provided preset buffer and the baseline version of the library do not match. Is the preset generated for this library ?
-@return @ref LVVE_PRESET_INVALID_MASK When the algorithm mask of the provided preset buffer and the algorithm mask of the library do not match. Is the preset generated for this library ?
-@return @ref LVVE_PRESET_INVALID_SAMPLE_RATE When the sample rate @ref LVM_Fs_en of the preset does not match the sample rate of the hInstance
-@return @ref LVVE_PRESET_INVALID_LVWIREFORMAT_MESSAGEID When the LVWireformat message id @ref LVVIDHeader_MessageID_en of the preset is not valid
-
-@note This function may be interrupted by the LVVE_Tx_Process function
-
-@ingroup LVVE_Tx
-LVVE_Tx_SetPreset: Setting Control Parameters using Preset Buffer Example:
-
-The following example shows how to set different control parameters for the LVVE_Tx instance using Preset Buffer.
-
-\code
- LVM_CHAR LVVE_Tx_Preset_Buffer[LVVE_TX_PRESET_LENGTH];
- LVVE_Tx_Preset_t const LVVE_Tx_Preset = LVVE_Tx_Preset_Buffer;
-
- FILE *PRESETFILE_Tx;
- LVM_INT32 ReadBytes = 0;
-
- PRESETFILE_Tx=fopen(filename, "rb" );
-
- // Read the preset buffer
- ReadBytes = fread( LVVE_Tx_Preset_Buffer,
- sizeof(LVM_CHAR),
- (LVM_UINT32)LVVE_TX_PRESET_LENGTH,
- PRESETFILE_Tx );
-
- fclose(PRESETFILE_Tx);
-
- // Update instance with new preset buffer
- LVVE_Status = LVVE_Tx_SetPreset( hInstance_Tx,
- LVVE_Tx_Preset,
- ReadBytes,
- 0);
-
- if ( LVVE_Status != LVVE_SUCCESS )
- {
- // Handle Errors
- }
-\endcode
-
-
-
-*/
-LVVE_ReturnStatus_en LVVE_Tx_SetPreset(LVVE_Tx_Handle_t hInstance,
- const LVVE_Tx_Preset_t pPreset,
- LVM_UINT32 PresetLength,
- LVM_UINT16 VolumeIndex);
-
-/**
-@brief Sets or changes the LVVE_Rx module parameters through a Preset Buffer
-
-Sets or changes the LVVE_Rx module parameters through a Preset Buffer. To set parameters using \"C\" structure see
-@ref LVVE_Rx_SetControlParameters
-This function takes the new set of parameters and makes a local copy within the
-LVVE_Rx module but the parameters are only applied on the next call of the LVVE_Rx_Process
-function. When no parameters are changed, no action is taken. This function can
-be called at any time during the processing, even when the LVVE_Rx_Process function
-is running.
-The new parameters are supplied in the form a @ref LVVE_Rx_Preset_t (Byte array).
-The length of the byte array shall be a multiple of @ref LVVE_RX_PRESET_LENGTH.
-
-@param hInstance Instance Handle
-@param pPreset Pointer to a Preset buffer
-@param PresetLength Length in bytes of the Preset buffer
-@param VolumeIndex Volume index to be selected from the Preset buffer
-
-@pre hInstance should be valid handle.
-
-@return @ref LVVE_SUCCESS Succeeded
-@return @ref LVVE_NULLADDRESS When hInstance or pPreset is NULL
-@return @ref LVVE_OUTOFRANGE When PresetLength or any of the new parameters is out of range
-@return @ref LVVE_INVALID_ALGORITHM_CONFIGURATION When mutually exclusive algorithms are enabled in the parameters at the same time
-@return @ref LVVE_PRESET_INVALID_BUFFER_LENGTH When the length of the input buffer is smaller than LVVE_RX_PRESET_LENGTH
-@return @ref LVVE_PRESET_INVALID_VOLUME_INDEX When the volume index exceeds the buffer content
-@return @ref LVVE_PRESET_INVALID_BUFFER_VERSION When the version of the format of the preset buffer does not match the version of the library
-@return @ref LVVE_PRESET_INVALID_BASELINE_VERSION When the baseline version of the provided preset buffer and the baseline version of the library do not match. Is the preset generated for this library ?
-@return @ref LVVE_PRESET_INVALID_MASK When the algorithm mask of the provided preset buffer and the algorithm mask of the library do not match. Is the preset generated for this library ?
-@return @ref LVVE_PRESET_INVALID_SAMPLE_RATE When the sample rate @ref LVM_Fs_en of the preset does not match the sample rate of the hInstance
-@return @ref LVVE_PRESET_INVALID_LVWIREFORMAT_MESSAGEID When the LVWireformat message id @ref LVVIDHeader_MessageID_en of the preset is not valid
-
-@note This function may be interrupted by the LVVE_Rx_Process function
-
-@ingroup LVVE_Rx
-
-LVVE_Rx_SetPreset: Setting Control Parameters using Preset Buffer Example:
-
-The following example shows how to set different control parameters for the LVVE_Rx instance using Preset Buffer.
-
-\code
- #define NUM_VOLUMES (5)
- LVM_CHAR LVVE_Rx_Preset_Buffer[NUM_VOLUMES*LVVE_RX_PRESET_LENGTH];
- LVVE_Rx_Preset_t const LVVE_Rx_Preset = LVVE_Rx_Preset_Buffer;
-
- FILE *PRESETFILE_Rx;
- LVM_INT32 ReadBytes = 0;
- LVM_UINT16 VolumeIndex = 3;
-
- PRESETFILE_Rx=fopen(filename, "rb" );
-
- // Read the preset buffer
- ReadBytes = fread( LVVE_Rx_Preset_Buffer,
- sizeof(LVM_CHAR),
- (LVM_UINT32)(NUM_VOLUMES*LVVE_RX_PRESET_LENGTH),
- PRESETFILE_Rx );
-
- fclose(PRESETFILE_Rx);
-
- // Update instance with new preset buffer
- LVVE_Status = LVVE_Rx_SetPreset( hInstance_Rx,
- LVVE_Rx_Preset,
- ReadBytes,
- VolumeIndex);
-
- if ( LVVE_Status != LVVE_SUCCESS )
- {
- // Handle Errors
- }
-\endcode
-
-*/
-LVVE_ReturnStatus_en LVVE_Rx_SetPreset(LVVE_Rx_Handle_t hInstance,
- const LVVE_Rx_Preset_t pPreset,
- LVM_UINT32 PresetLength,
- LVM_UINT16 VolumeIndex);
-
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#endif /* __LVVE_H__ */
-
-/* End of file */
diff --git a/Uboot/cp/ps/driver/src/chipsets/src/audio_base/nxp/tos/LVVE_VID.h b/Uboot/cp/ps/driver/src/chipsets/src/audio_base/nxp/tos/LVVE_VID.h
deleted file mode 100755
index 98a1461..0000000
--- a/Uboot/cp/ps/driver/src/chipsets/src/audio_base/nxp/tos/LVVE_VID.h
+++ /dev/null
@@ -1,8452 +0,0 @@
-/****************************************************************************************/
-/* Copyright (c) 2004-2015 NXP Software. All rights are reserved. */
-/* Reproduction in whole or in part is prohibited without the prior */
-/* written consent of the copyright owner. */
-/* */
-/* This software and any compilation or derivative thereof is and */
-/* shall remain the proprietary information of NXP Software and is */
-/* highly confidential in nature. Any and all use hereof is restricted */
-/* and is subject to the terms and conditions set forth in the */
-/* software license agreement concluded with NXP Software. */
-/* */
-/* Under no circumstances is this software or any derivative thereof */
-/* to be combined with any Open Source Software in any way or */
-/* licensed under any Open License Terms without the express prior */
-/* written permission of NXP Software. */
-/* */
-/* For the purpose of this clause, the term Open Source Software means */
-/* any software that is licensed under Open License Terms. Open */
-/* License Terms means terms in any license that require as a */
-/* condition of use, modification and/or distribution of a work */
-/* */
-/* 1. the making available of source code or other materials */
-/* preferred for modification, or */
-/* */
-/* 2. the granting of permission for creating derivative */
-/* works, or */
-/* */
-/* 3. the reproduction of certain notices or license terms */
-/* in derivative works or accompanying documentation, or */
-/* */
-/* 4. the granting of a royalty-free license to any party */
-/* under Intellectual Property Rights */
-/* */
-/* regarding the work and/or any work that contains, is combined with, */
-/* requires or otherwise is based on the work. */
-/* */
-/* This software is provided for ease of recompilation only. */
-/* Modification and reverse engineering of this software are strictly */
-/* prohibited. */
-/* */
-/****************************************************************************************/
-
-/****************************************************************************************/
-/* */
-/* $Author: nxp65285 $*/
-/* $Revision: 49390 $*/
-/* $Date: 2013-10-16 18:34:35 +0530 (Wed, 16 Oct 2013) $*/
-/* */
-/****************************************************************************************/
-
-/** @file
- * Header file for the application layer interface of the REL_LVVE_HF_NV1_VC_AGC_RX_DRC_RX_WB module
- *
- * The suffix VID in header file stands for Voice Interface Definition
- * This files includes all definitions, types, and structures required by the calling
- * layer. Public functions are defined in the protoypes header files.
- * All other types, structures and functions are private.
- */
-
-#ifndef __REL_LVVE_HF_NV1_VC_AGC_RX_DRC_RX_WB_VIDPP_H__
-#define __REL_LVVE_HF_NV1_VC_AGC_RX_DRC_RX_WB_VIDPP_H__
-
-#ifdef __cplusplus
-extern "C" {
-#endif /* __cplusplus */
-
-/****************************************************************************************/
-/* */
-/* Includes */
-/* */
-/****************************************************************************************/
-#include "LVC_Types.h"
-
-/****************************************************************************************/
-/* */
-/* Definitions */
-/* */
-/****************************************************************************************/
-/**
-<table border>
- <tr>
- <td><b>Name</b></td>
- <td><b>Value</b></td>
- <td><b>Description</b></td>
- </tr>
- <tr>
- <td>@ref LVVIDHEADER_LVVE_RX_LVFENS_MASK1</td>
- <td>1</td>
- <td>Far End Noise Suppression is present in the LVVE_Rx</td>
- </tr>
- <tr>
- <td>@ref LVVIDHEADER_LVVE_RX_HPF_MASK1</td>
- <td>4</td>
- <td>High Pass Filter is present in the LVVE_Rx</td>
- </tr>
- <tr>
- <td>@ref LVVIDHEADER_LVVE_RX_LVNG_MASK1</td>
- <td>16</td>
- <td>Noise Gate is present in the LVVE_Rx</td>
- </tr>
- <tr>
- <td>@ref LVVIDHEADER_LVVE_RX_EQ_MASK1</td>
- <td>64</td>
- <td>Equalizer is present in the LVVE_Rx</td>
- </tr>
- <tr>
- <td>@ref LVVIDHEADER_LVVE_RX_AGC_MASK1</td>
- <td>128</td>
- <td>Automatic Gain Control is present in the LVVE_Rx</td>
- </tr>
- <tr>
- <td>@ref LVVIDHEADER_LVVE_RX_DRC_MASK1</td>
- <td>256</td>
- <td>Dynamic Range Control is present in the LVVE_Rx</td>
- </tr>
- <tr>
- <td>@ref LVVIDHEADER_LVVE_RX_VOL_MASK1</td>
- <td>512</td>
- <td>Volume Control is present in the LVVE_Rx</td>
- </tr>
- <tr>
- <td>@ref LVVIDHEADER_LVVE_RX_LVVC_MASK1</td>
- <td>1024</td>
- <td>VoiceClarity is present in the LVVE_Rx</td>
- </tr>
-</table> */
-typedef LVM_UINT16 LVVIDHeader_LVVE_Rx_Mask1_bm;
-/**
-* @def LVVIDHeader_LVVE_Rx_LVFENS_MASK1
-* Far End Noise Suppression is present in the LVVE_Rx
-* @see LVVIDHeader_LVVE_Rx_Mask1_bm
-*/
-#define LVVIDHEADER_LVVE_RX_LVFENS_MASK1 ((LVVIDHeader_LVVE_Rx_Mask1_bm)1)
-/**
-* @def LVVIDHeader_LVVE_Rx_HPF_MASK1
-* High Pass Filter is present in the LVVE_Rx
-* @see LVVIDHeader_LVVE_Rx_Mask1_bm
-*/
-#define LVVIDHEADER_LVVE_RX_HPF_MASK1 ((LVVIDHeader_LVVE_Rx_Mask1_bm)4)
-/**
-* @def LVVIDHeader_LVVE_Rx_LVNG_MASK1
-* Noise Gate is present in the LVVE_Rx
-* @see LVVIDHeader_LVVE_Rx_Mask1_bm
-*/
-#define LVVIDHEADER_LVVE_RX_LVNG_MASK1 ((LVVIDHeader_LVVE_Rx_Mask1_bm)16)
-/**
-* @def LVVIDHeader_LVVE_Rx_EQ_MASK1
-* Equalizer is present in the LVVE_Rx
-* @see LVVIDHeader_LVVE_Rx_Mask1_bm
-*/
-#define LVVIDHEADER_LVVE_RX_EQ_MASK1 ((LVVIDHeader_LVVE_Rx_Mask1_bm)64)
-/**
-* @def LVVIDHeader_LVVE_Rx_AGC_MASK1
-* Automatic Gain Control is present in the LVVE_Rx
-* @see LVVIDHeader_LVVE_Rx_Mask1_bm
-*/
-#define LVVIDHEADER_LVVE_RX_AGC_MASK1 ((LVVIDHeader_LVVE_Rx_Mask1_bm)128)
-/**
-* @def LVVIDHeader_LVVE_Rx_DRC_MASK1
-* Dynamic Range Control is present in the LVVE_Rx
-* @see LVVIDHeader_LVVE_Rx_Mask1_bm
-*/
-#define LVVIDHEADER_LVVE_RX_DRC_MASK1 ((LVVIDHeader_LVVE_Rx_Mask1_bm)256)
-/**
-* @def LVVIDHeader_LVVE_Rx_VOL_MASK1
-* Volume Control is present in the LVVE_Rx
-* @see LVVIDHeader_LVVE_Rx_Mask1_bm
-*/
-#define LVVIDHEADER_LVVE_RX_VOL_MASK1 ((LVVIDHeader_LVVE_Rx_Mask1_bm)512)
-/**
-* @def LVVIDHeader_LVVE_Rx_LVVC_MASK1
-* VoiceClarity is present in the LVVE_Rx
-* @see LVVIDHeader_LVVE_Rx_Mask1_bm
-*/
-#define LVVIDHEADER_LVVE_RX_LVVC_MASK1 ((LVVIDHeader_LVVE_Rx_Mask1_bm)1024)
-/**
-* @def LVVIDHEADER_LVVE_RX_MASK1_BM_MIN
-* Minimal value for LVVIDHeader_LVVE_Rx_Mask1_bm
-* @see LVVIDHeader_LVVE_Rx_Mask1_bm
-*/
-#define LVVIDHEADER_LVVE_RX_MASK1_BM_MIN ((LVVIDHeader_LVVE_Rx_Mask1_bm)0)
-/**
-* @def LVVIDHEADER_LVVE_RX_MASK1_BM_MAX
-* Maximal value for LVVIDHeader_LVVE_Rx_Mask1_bm
-* @see LVVIDHeader_LVVE_Rx_Mask1_bm
-*/
-#define LVVIDHEADER_LVVE_RX_LVFENS_MASK1_FORMAX ((LVVIDHeader_LVVE_Rx_Mask1_bm)1)
-#define LVVIDHEADER_LVVE_RX_HPF_MASK1_FORMAX ((LVVIDHeader_LVVE_Rx_Mask1_bm)4)
-#define LVVIDHEADER_LVVE_RX_LVNG_MASK1_FORMAX ((LVVIDHeader_LVVE_Rx_Mask1_bm)16)
-#define LVVIDHEADER_LVVE_RX_EQ_MASK1_FORMAX ((LVVIDHeader_LVVE_Rx_Mask1_bm)64)
-#define LVVIDHEADER_LVVE_RX_AGC_MASK1_FORMAX ((LVVIDHeader_LVVE_Rx_Mask1_bm)128)
-#define LVVIDHEADER_LVVE_RX_DRC_MASK1_FORMAX ((LVVIDHeader_LVVE_Rx_Mask1_bm)256)
-#define LVVIDHEADER_LVVE_RX_VOL_MASK1_FORMAX ((LVVIDHeader_LVVE_Rx_Mask1_bm)512)
-#define LVVIDHEADER_LVVE_RX_LVVC_MASK1_FORMAX ((LVVIDHeader_LVVE_Rx_Mask1_bm)1024)
-#define LVVIDHEADER_LVVE_RX_MASK1_BM_MAX (LVVIDHEADER_LVVE_RX_LVFENS_MASK1_FORMAX | LVVIDHEADER_LVVE_RX_HPF_MASK1_FORMAX | LVVIDHEADER_LVVE_RX_LVNG_MASK1_FORMAX | LVVIDHEADER_LVVE_RX_EQ_MASK1_FORMAX | LVVIDHEADER_LVVE_RX_AGC_MASK1_FORMAX | LVVIDHEADER_LVVE_RX_DRC_MASK1_FORMAX | LVVIDHEADER_LVVE_RX_VOL_MASK1_FORMAX | LVVIDHEADER_LVVE_RX_LVVC_MASK1_FORMAX | ((LVVIDHeader_LVVE_Rx_Mask1_bm)0))
-/**
-<table border>
- <tr>
- <td><b>Name</b></td>
- <td><b>Value</b></td>
- <td><b>Description</b></td>
- </tr>
-</table> */
-typedef LVM_UINT16 LVVIDHeader_LVVE_Rx_Mask2_bm;
-/**
-* @def LVVIDHEADER_LVVE_RX_MASK2_BM_MIN
-* Minimal value for LVVIDHeader_LVVE_Rx_Mask2_bm
-* @see LVVIDHeader_LVVE_Rx_Mask2_bm
-*/
-#define LVVIDHEADER_LVVE_RX_MASK2_BM_MIN ((LVVIDHeader_LVVE_Rx_Mask2_bm)0)
-/**
-* @def LVVIDHEADER_LVVE_RX_MASK2_BM_MAX
-* Maximal value for LVVIDHeader_LVVE_Rx_Mask2_bm
-* @see LVVIDHeader_LVVE_Rx_Mask2_bm
-*/
-#define LVVIDHEADER_LVVE_RX_MASK2_BM_MAX (((LVVIDHeader_LVVE_Rx_Mask2_bm)0))
-/**
-<table border>
- <tr>
- <td><b>Name</b></td>
- <td><b>Value</b></td>
- <td><b>Description</b></td>
- </tr>
- <tr>
- <td>@ref LVVIDHEADER_LVVE_TX_LVHF_MASK1</td>
- <td>1</td>
- <td>HandsFree is present in the LVVE_Tx</td>
- </tr>
- <tr>
- <td>@ref LVVIDHEADER_LVVE_TX_EQ_MASK1</td>
- <td>4</td>
- <td>Equalizer is present in the LVVE_Tx</td>
- </tr>
- <tr>
- <td>@ref LVVIDHEADER_LVVE_TX_LVWM_MASK1</td>
- <td>8</td>
- <td>WhisperMode is present in the LVVE_Tx</td>
- </tr>
- <tr>
- <td>@ref LVVIDHEADER_LVVE_TX_DRC_MASK1</td>
- <td>16</td>
- <td>Dynamic Range Control is present in the LVVE_Tx</td>
- </tr>
- <tr>
- <td>@ref LVVIDHEADER_LVVE_TX_VOL_MASK1</td>
- <td>32</td>
- <td>Volume Control is present in the LVVE_Tx</td>
- </tr>
- <tr>
- <td>@ref LVVIDHEADER_LVVE_TX_HPF_MASK1</td>
- <td>128</td>
- <td>HPF is present in the LVVE_Tx</td>
- </tr>
- <tr>
- <td>@ref LVVIDHEADER_LVVE_TX_LVNV_01_MASK1</td>
- <td>512</td>
- <td>NoiseVoid is present in the LVVE_Tx</td>
- </tr>
-</table> */
-typedef LVM_UINT16 LVVIDHeader_LVVE_Tx_Mask1_bm;
-/**
-* @def LVVIDHeader_LVVE_Tx_LVHF_MASK1
-* HandsFree is present in the LVVE_Tx
-* @see LVVIDHeader_LVVE_Tx_Mask1_bm
-*/
-#define LVVIDHEADER_LVVE_TX_LVHF_MASK1 ((LVVIDHeader_LVVE_Tx_Mask1_bm)1)
-/**
-* @def LVVIDHeader_LVVE_Tx_EQ_MASK1
-* Equalizer is present in the LVVE_Tx
-* @see LVVIDHeader_LVVE_Tx_Mask1_bm
-*/
-#define LVVIDHEADER_LVVE_TX_EQ_MASK1 ((LVVIDHeader_LVVE_Tx_Mask1_bm)4)
-/**
-* @def LVVIDHeader_LVVE_Tx_LVWM_MASK1
-* WhisperMode is present in the LVVE_Tx
-* @see LVVIDHeader_LVVE_Tx_Mask1_bm
-*/
-#define LVVIDHEADER_LVVE_TX_LVWM_MASK1 ((LVVIDHeader_LVVE_Tx_Mask1_bm)8)
-/**
-* @def LVVIDHeader_LVVE_Tx_DRC_MASK1
-* Dynamic Range Control is present in the LVVE_Tx
-* @see LVVIDHeader_LVVE_Tx_Mask1_bm
-*/
-#define LVVIDHEADER_LVVE_TX_DRC_MASK1 ((LVVIDHeader_LVVE_Tx_Mask1_bm)16)
-/**
-* @def LVVIDHeader_LVVE_Tx_VOL_MASK1
-* Volume Control is present in the LVVE_Tx
-* @see LVVIDHeader_LVVE_Tx_Mask1_bm
-*/
-#define LVVIDHEADER_LVVE_TX_VOL_MASK1 ((LVVIDHeader_LVVE_Tx_Mask1_bm)32)
-/**
-* @def LVVIDHeader_LVVE_Tx_HPF_MASK1
-* HPF is present in the LVVE_Tx
-* @see LVVIDHeader_LVVE_Tx_Mask1_bm
-*/
-#define LVVIDHEADER_LVVE_TX_HPF_MASK1 ((LVVIDHeader_LVVE_Tx_Mask1_bm)128)
-/**
-* @def LVVIDHeader_LVVE_Tx_LVNV_01_MASK1
-* NoiseVoid is present in the LVVE_Tx
-* @see LVVIDHeader_LVVE_Tx_Mask1_bm
-*/
-#define LVVIDHEADER_LVVE_TX_LVNV_01_MASK1 ((LVVIDHeader_LVVE_Tx_Mask1_bm)512)
-/**
-* @def LVVIDHEADER_LVVE_TX_MASK1_BM_MIN
-* Minimal value for LVVIDHeader_LVVE_Tx_Mask1_bm
-* @see LVVIDHeader_LVVE_Tx_Mask1_bm
-*/
-#define LVVIDHEADER_LVVE_TX_MASK1_BM_MIN ((LVVIDHeader_LVVE_Tx_Mask1_bm)0)
-/**
-* @def LVVIDHEADER_LVVE_TX_MASK1_BM_MAX
-* Maximal value for LVVIDHeader_LVVE_Tx_Mask1_bm
-* @see LVVIDHeader_LVVE_Tx_Mask1_bm
-*/
-#define LVVIDHEADER_LVVE_TX_LVHF_MASK1_FORMAX ((LVVIDHeader_LVVE_Tx_Mask1_bm)1)
-#define LVVIDHEADER_LVVE_TX_EQ_MASK1_FORMAX ((LVVIDHeader_LVVE_Tx_Mask1_bm)4)
-#define LVVIDHEADER_LVVE_TX_LVWM_MASK1_FORMAX ((LVVIDHeader_LVVE_Tx_Mask1_bm)8)
-#define LVVIDHEADER_LVVE_TX_DRC_MASK1_FORMAX ((LVVIDHeader_LVVE_Tx_Mask1_bm)16)
-#define LVVIDHEADER_LVVE_TX_VOL_MASK1_FORMAX ((LVVIDHeader_LVVE_Tx_Mask1_bm)32)
-#define LVVIDHEADER_LVVE_TX_HPF_MASK1_FORMAX ((LVVIDHeader_LVVE_Tx_Mask1_bm)128)
-#define LVVIDHEADER_LVVE_TX_LVNV_01_MASK1_FORMAX ((LVVIDHeader_LVVE_Tx_Mask1_bm)512)
-#define LVVIDHEADER_LVVE_TX_MASK1_BM_MAX (LVVIDHEADER_LVVE_TX_LVHF_MASK1_FORMAX | LVVIDHEADER_LVVE_TX_EQ_MASK1_FORMAX | LVVIDHEADER_LVVE_TX_LVWM_MASK1_FORMAX | LVVIDHEADER_LVVE_TX_DRC_MASK1_FORMAX | LVVIDHEADER_LVVE_TX_VOL_MASK1_FORMAX | LVVIDHEADER_LVVE_TX_HPF_MASK1_FORMAX | LVVIDHEADER_LVVE_TX_LVNV_01_MASK1_FORMAX | ((LVVIDHeader_LVVE_Tx_Mask1_bm)0))
-/**
-<table border>
- <tr>
- <td><b>Name</b></td>
- <td><b>Value</b></td>
- <td><b>Description</b></td>
- </tr>
-</table> */
-typedef LVM_UINT16 LVVIDHeader_LVVE_Tx_Mask2_bm;
-/**
-* @def LVVIDHEADER_LVVE_TX_MASK2_BM_MIN
-* Minimal value for LVVIDHeader_LVVE_Tx_Mask2_bm
-* @see LVVIDHeader_LVVE_Tx_Mask2_bm
-*/
-#define LVVIDHEADER_LVVE_TX_MASK2_BM_MIN ((LVVIDHeader_LVVE_Tx_Mask2_bm)0)
-/**
-* @def LVVIDHEADER_LVVE_TX_MASK2_BM_MAX
-* Maximal value for LVVIDHeader_LVVE_Tx_Mask2_bm
-* @see LVVIDHeader_LVVE_Tx_Mask2_bm
-*/
-#define LVVIDHEADER_LVVE_TX_MASK2_BM_MAX (((LVVIDHeader_LVVE_Tx_Mask2_bm)0))
-/**
-<table border>
- <tr>
- <td><b>Name</b></td>
- <td><b>Value</b></td>
- <td><b>Description</b></td>
- </tr>
- <tr>
- <td>@ref LVVIDHEADER_CONFIGURATIONS_WIDEBAND_MASK1</td>
- <td>2</td>
- <td>WideBand configuration is present in the LVVE</td>
- </tr>
-</table> */
-typedef LVM_UINT16 LVVIDHeader_Configurations_Mask1_bm;
-/**
-* @def LVVIDHEADER_CONFIGURATIONS_WIDEBAND_MASK1
-* WideBand configuration is present in the LVVE
-* @see LVVIDHeader_Configurations_Mask1_bm
-*/
-#define LVVIDHEADER_CONFIGURATIONS_WIDEBAND_MASK1 ((LVVIDHeader_Configurations_Mask1_bm)2)
-/**
-* @def LVVIDHEADER_CONFIGURATIONS_MASK1_BM_MIN
-* Minimal value for LVVIDHeader_Configurations_Mask1_bm
-* @see LVVIDHeader_Configurations_Mask1_bm
-*/
-#define LVVIDHEADER_CONFIGURATIONS_MASK1_BM_MIN ((LVVIDHeader_Configurations_Mask1_bm)0)
-/**
-* @def LVVIDHEADER_CONFIGURATIONS_MASK1_BM_MAX
-* Maximal value for LVVIDHeader_Configurations_Mask1_bm
-* @see LVVIDHeader_Configurations_Mask1_bm
-*/
-#define LVVIDHEADER_CONFIGURATIONS_WIDEBAND_MASK1_FORMAX ((LVVIDHeader_Configurations_Mask1_bm)2)
-#define LVVIDHEADER_CONFIGURATIONS_MASK1_BM_MAX (LVVIDHEADER_CONFIGURATIONS_WIDEBAND_MASK1_FORMAX | ((LVVIDHeader_Configurations_Mask1_bm)0))
-/**
-<table border>
- <tr>
- <td><b>Name</b></td>
- <td><b>Value</b></td>
- <td><b>Description</b></td>
- </tr>
-</table> */
-typedef LVM_UINT16 LVVIDHeader_Configurations_Mask2_bm;
-/**
-* @def LVVIDHEADER_CONFIGURATIONS_MASK2_BM_MIN
-* Minimal value for LVVIDHeader_Configurations_Mask2_bm
-* @see LVVIDHeader_Configurations_Mask2_bm
-*/
-#define LVVIDHEADER_CONFIGURATIONS_MASK2_BM_MIN ((LVVIDHeader_Configurations_Mask2_bm)0)
-/**
-* @def LVVIDHEADER_CONFIGURATIONS_MASK2_BM_MAX
-* Maximal value for LVVIDHeader_Configurations_Mask2_bm
-* @see LVVIDHeader_Configurations_Mask2_bm
-*/
-#define LVVIDHEADER_CONFIGURATIONS_MASK2_BM_MAX (((LVVIDHeader_Configurations_Mask2_bm)0))
-/**
-<table border>
- <tr>
- <td><b>Name</b></td>
- <td><b>Value</b></td>
- <td><b>Description</b></td>
- </tr>
- <tr>
- <td>@ref LVVC_MODE_AVL</td>
- <td>2</td>
- <td>Turns on or off the AGC. If off both AGC and Limiter are bypassed.</td>
- </tr>
- <tr>
- <td>@ref LVVC_MODE_AVL_ADAPT</td>
- <td>4</td>
- <td>Allows turning off the dependency of the AGC upon the nearend noise level. When turned off, the AGC uses the default parameters.</td>
- </tr>
- <tr>
- <td>@ref LVVC_MODE_AVL_SPDETECT</td>
- <td>8</td>
- <td>Allows disabling speech detection in the AGC. When turned off, the AGC adapts its gain all the time.</td>
- </tr>
- <tr>
- <td>@ref LVVC_MODE_LIMITER</td>
- <td>16</td>
- <td>Turns on or off the limiter.</td>
- </tr>
- <tr>
- <td>@ref LVVC_MODE_LPF</td>
- <td>32</td>
- <td>Turns on or off the low-pass filter.</td>
- </tr>
- <tr>
- <td>@ref LVVC_MODE_HPF</td>
- <td>64</td>
- <td>Turns on or off the high-pass filter.</td>
- </tr>
- <tr>
- <td>@ref LVVC_MODE_VC</td>
- <td>128</td>
- <td>Turns on or off the VoiceClarity gain.</td>
- </tr>
-</table> */
-typedef LVM_UINT16 LVVC_ModeWord_bm;
-/**
-* @def LVVC_MODE_AVL
-* Turns on or off the AGC. If off both AGC and Limiter are bypassed.
-* @see LVVC_ModeWord_bm
-*/
-#define LVVC_MODE_AVL ((LVVC_ModeWord_bm)2)
-/**
-* @def LVVC_MODE_AVL_ADAPT
-* Allows turning off the dependency of the AGC upon the nearend noise level. When turned off, the AGC uses the default parameters.
-* @see LVVC_ModeWord_bm
-*/
-#define LVVC_MODE_AVL_ADAPT ((LVVC_ModeWord_bm)4)
-/**
-* @def LVVC_MODE_AVL_SPDETECT
-* Allows disabling speech detection in the AGC. When turned off, the AGC adapts its gain all the time.
-* @see LVVC_ModeWord_bm
-*/
-#define LVVC_MODE_AVL_SPDETECT ((LVVC_ModeWord_bm)8)
-/**
-* @def LVVC_MODE_LIMITER
-* Turns on or off the limiter.
-* @see LVVC_ModeWord_bm
-*/
-#define LVVC_MODE_LIMITER ((LVVC_ModeWord_bm)16)
-/**
-* @def LVVC_MODE_LPF
-* Turns on or off the low-pass filter.
-* @see LVVC_ModeWord_bm
-*/
-#define LVVC_MODE_LPF ((LVVC_ModeWord_bm)32)
-/**
-* @def LVVC_MODE_HPF
-* Turns on or off the high-pass filter.
-* @see LVVC_ModeWord_bm
-*/
-#define LVVC_MODE_HPF ((LVVC_ModeWord_bm)64)
-/**
-* @def LVVC_MODE_VC
-* Turns on or off the VoiceClarity gain.
-* @see LVVC_ModeWord_bm
-*/
-#define LVVC_MODE_VC ((LVVC_ModeWord_bm)128)
-/**
-* @def LVVC_MODEWORD_BM_MIN
-* Minimal value for LVVC_ModeWord_bm
-* @see LVVC_ModeWord_bm
-*/
-#define LVVC_MODEWORD_BM_MIN ((LVVC_ModeWord_bm)0)
-/**
-* @def LVVC_MODEWORD_BM_MAX
-* Maximal value for LVVC_ModeWord_bm
-* @see LVVC_ModeWord_bm
-*/
-#define LVVC_MODE_AVL_FORMAX ((LVVC_ModeWord_bm)2)
-#define LVVC_MODE_AVL_ADAPT_FORMAX ((LVVC_ModeWord_bm)4)
-#define LVVC_MODE_AVL_SPDETECT_FORMAX ((LVVC_ModeWord_bm)8)
-#define LVVC_MODE_LIMITER_FORMAX ((LVVC_ModeWord_bm)16)
-#define LVVC_MODE_LPF_FORMAX ((LVVC_ModeWord_bm)32)
-#define LVVC_MODE_HPF_FORMAX ((LVVC_ModeWord_bm)64)
-#define LVVC_MODE_VC_FORMAX ((LVVC_ModeWord_bm)128)
-#define LVVC_MODEWORD_BM_MAX (LVVC_MODE_AVL_FORMAX | LVVC_MODE_AVL_ADAPT_FORMAX | LVVC_MODE_AVL_SPDETECT_FORMAX | LVVC_MODE_LIMITER_FORMAX | LVVC_MODE_LPF_FORMAX | LVVC_MODE_HPF_FORMAX | LVVC_MODE_VC_FORMAX | ((LVVC_ModeWord_bm)0))
-/**
-<table border>
- <tr>
- <td><b>Name</b></td>
- <td><b>Value</b></td>
- <td><b>Description</b></td>
- </tr>
- <tr>
- <td>@ref LVFENS_MODE_HS</td>
- <td>1</td>
- <td>Switch ON and OFF Horn Suppressor. Currently Horn Suppressor is not supported.</td>
- </tr>
-</table> */
-typedef LVM_UINT16 LVFENS_ModeWord_bm;
-/**
-* @def LVFENS_MODE_HS
-* Switch ON and OFF Horn Suppressor. Currently Horn Suppressor is not supported.
-* @see LVFENS_ModeWord_bm
-*/
-#define LVFENS_MODE_HS ((LVFENS_ModeWord_bm)1)
-/**
-* @def LVFENS_MODEWORD_BM_MIN
-* Minimal value for LVFENS_ModeWord_bm
-* @see LVFENS_ModeWord_bm
-*/
-#define LVFENS_MODEWORD_BM_MIN ((LVFENS_ModeWord_bm)0)
-/**
-* @def LVFENS_MODEWORD_BM_MAX
-* Maximal value for LVFENS_ModeWord_bm
-* @see LVFENS_ModeWord_bm
-*/
-#define LVFENS_MODE_HS_FORMAX ((LVFENS_ModeWord_bm)1)
-#define LVFENS_MODEWORD_BM_MAX (LVFENS_MODE_HS_FORMAX | ((LVFENS_ModeWord_bm)0))
-/**
-<table border>
- <tr>
- <td><b>Name</b></td>
- <td><b>Value</b></td>
- <td><b>Description</b></td>
- </tr>
- <tr>
- <td>@ref LVWM_MODE_AVL</td>
- <td>1</td>
- <td>Turns on or off the AVL. If off, both AGC and Limiter are bypassed</td>
- </tr>
- <tr>
- <td>@ref LVWM_MODE_SPDETECT</td>
- <td>2</td>
- <td>Allows disabling speech detection in the AVL. When turned off, the AGC adapts its gain all the time.</td>
- </tr>
- <tr>
- <td>@ref LVWM_MODE_LIMITER</td>
- <td>4</td>
- <td>Turns on or off the limiter.</td>
- </tr>
- <tr>
- <td>@ref LVWM_MODE_EXT_SPDETECT</td>
- <td>8</td>
- <td>Used to tell the WhisperMode module if an external speech detection is available (If 0, there is no external speech detector).</td>
- </tr>
-</table> */
-typedef LVM_UINT16 LVWM_ModeWord_bm;
-/**
-* @def LVWM_MODE_AVL
-* Turns on or off the AVL. If off, both AGC and Limiter are bypassed
-* @see LVWM_ModeWord_bm
-*/
-#define LVWM_MODE_AVL ((LVWM_ModeWord_bm)1)
-/**
-* @def LVWM_MODE_SPDETECT
-* Allows disabling speech detection in the AVL. When turned off, the AGC adapts its gain all the time.
-* @see LVWM_ModeWord_bm
-*/
-#define LVWM_MODE_SPDETECT ((LVWM_ModeWord_bm)2)
-/**
-* @def LVWM_MODE_LIMITER
-* Turns on or off the limiter.
-* @see LVWM_ModeWord_bm
-*/
-#define LVWM_MODE_LIMITER ((LVWM_ModeWord_bm)4)
-/**
-* @def LVWM_MODE_EXT_SPDETECT
-* Used to tell the WhisperMode module if an external speech detection is available (If 0, there is no external speech detector).
-* @see LVWM_ModeWord_bm
-*/
-#define LVWM_MODE_EXT_SPDETECT ((LVWM_ModeWord_bm)8)
-/**
-* @def LVWM_MODEWORD_BM_MIN
-* Minimal value for LVWM_ModeWord_bm
-* @see LVWM_ModeWord_bm
-*/
-#define LVWM_MODEWORD_BM_MIN ((LVWM_ModeWord_bm)0)
-/**
-* @def LVWM_MODEWORD_BM_MAX
-* Maximal value for LVWM_ModeWord_bm
-* @see LVWM_ModeWord_bm
-*/
-#define LVWM_MODE_AVL_FORMAX ((LVWM_ModeWord_bm)1)
-#define LVWM_MODE_SPDETECT_FORMAX ((LVWM_ModeWord_bm)2)
-#define LVWM_MODE_LIMITER_FORMAX ((LVWM_ModeWord_bm)4)
-#define LVWM_MODE_EXT_SPDETECT_FORMAX ((LVWM_ModeWord_bm)8)
-#define LVWM_MODEWORD_BM_MAX (LVWM_MODE_AVL_FORMAX | LVWM_MODE_SPDETECT_FORMAX | LVWM_MODE_LIMITER_FORMAX | LVWM_MODE_EXT_SPDETECT_FORMAX | ((LVWM_ModeWord_bm)0))
-/**
-<table border>
- <tr>
- <td><b>Name</b></td>
- <td><b>Value</b></td>
- <td><b>Description</b></td>
- </tr>
- <tr>
- <td>@ref MODE_NLMS0</td>
- <td>1</td>
- <td>NLMS0 functionality</td>
- </tr>
- <tr>
- <td>@ref MODE_NLMS1</td>
- <td>2</td>
- <td>NLMS1 functionality</td>
- </tr>
- <tr>
- <td>@ref MODE_BEAMFORMER</td>
- <td>4</td>
- <td>Fiter-and-Sum Beamformer functionality</td>
- </tr>
- <tr>
- <td>@ref MODE_PCD</td>
- <td>8</td>
- <td>Switch between PCD (Path change detector) and BSD (Broadside detector)</td>
- </tr>
- <tr>
- <td>@ref MODE_GSC</td>
- <td>16</td>
- <td>Generalized Sidelobe Canceller functionality</td>
- </tr>
- <tr>
- <td>@ref MODE_DNNS</td>
- <td>32</td>
- <td>Dynamic Non-stationary Noise Suppression functionality</td>
- </tr>
- <tr>
- <td>@ref MODE_DES</td>
- <td>64</td>
- <td>Dynamic Echo Suppression functionality</td>
- </tr>
- <tr>
- <td>@ref MODE_NS</td>
- <td>128</td>
- <td>Stationary Noise Suppression functionality</td>
- </tr>
- <tr>
- <td>@ref MODE_NS_N</td>
- <td>256</td>
- <td>Non-stationary Noise Suppression functionality</td>
- </tr>
- <tr>
- <td>@ref MODE_CAL</td>
- <td>2048</td>
- <td>Switch between initial or continuous calibration</td>
- </tr>
- <tr>
- <td>@ref MODE_HB</td>
- <td>16384</td>
- <td>High Band mute/activated</td>
- </tr>
- <tr>
- <td>@ref MODE_HS</td>
- <td>32768</td>
- <td>Horn Suppressor functionality (if available)</td>
- </tr>
-</table> */
-typedef LVM_UINT16 LVNV_ModeWord_bm;
-/**
-* @def MODE_NLMS0
-* NLMS0 functionality
-* @see LVNV_ModeWord_bm
-*/
-#define MODE_NLMS0 ((LVNV_ModeWord_bm)1)
-/**
-* @def MODE_NLMS1
-* NLMS1 functionality
-* @see LVNV_ModeWord_bm
-*/
-#define MODE_NLMS1 ((LVNV_ModeWord_bm)2)
-/**
-* @def MODE_BEAMFORMER
-* Fiter-and-Sum Beamformer functionality
-* @see LVNV_ModeWord_bm
-*/
-#define MODE_BEAMFORMER ((LVNV_ModeWord_bm)4)
-/**
-* @def MODE_PCD
-* Switch between PCD (Path change detector) and BSD (Broadside detector)
-* @see LVNV_ModeWord_bm
-*/
-#define MODE_PCD ((LVNV_ModeWord_bm)8)
-/**
-* @def MODE_GSC
-* Generalized Sidelobe Canceller functionality
-* @see LVNV_ModeWord_bm
-*/
-#define MODE_GSC ((LVNV_ModeWord_bm)16)
-/**
-* @def MODE_DNNS
-* Dynamic Non-stationary Noise Suppression functionality
-* @see LVNV_ModeWord_bm
-*/
-#define MODE_DNNS ((LVNV_ModeWord_bm)32)
-/**
-* @def MODE_DES
-* Dynamic Echo Suppression functionality
-* @see LVNV_ModeWord_bm
-*/
-#define MODE_DES ((LVNV_ModeWord_bm)64)
-/**
-* @def MODE_NS
-* Stationary Noise Suppression functionality
-* @see LVNV_ModeWord_bm
-*/
-#define MODE_NS ((LVNV_ModeWord_bm)128)
-/**
-* @def MODE_NS_N
-* Non-stationary Noise Suppression functionality
-* @see LVNV_ModeWord_bm
-*/
-#define MODE_NS_N ((LVNV_ModeWord_bm)256)
-/**
-* @def MODE_CAL
-* Switch between initial or continuous calibration
-* @see LVNV_ModeWord_bm
-*/
-#define MODE_CAL ((LVNV_ModeWord_bm)2048)
-/**
-* @def MODE_HB
-* High Band mute/activated
-* @see LVNV_ModeWord_bm
-*/
-#define MODE_HB ((LVNV_ModeWord_bm)16384)
-/**
-* @def MODE_HS
-* Horn Suppressor functionality (if available)
-* @see LVNV_ModeWord_bm
-*/
-#define MODE_HS ((LVNV_ModeWord_bm)32768)
-/**
-* @def LVNV_MODEWORD_BM_MIN
-* Minimal value for LVNV_ModeWord_bm
-* @see LVNV_ModeWord_bm
-*/
-#define LVNV_MODEWORD_BM_MIN ((LVNV_ModeWord_bm)0)
-/**
-* @def LVNV_MODEWORD_BM_MAX
-* Maximal value for LVNV_ModeWord_bm
-* @see LVNV_ModeWord_bm
-*/
-#define MODE_NLMS0_FORMAX ((LVNV_ModeWord_bm)1)
-#define MODE_NLMS1_FORMAX ((LVNV_ModeWord_bm)2)
-#define MODE_BEAMFORMER_FORMAX ((LVNV_ModeWord_bm)4)
-#define MODE_PCD_FORMAX ((LVNV_ModeWord_bm)8)
-#define MODE_GSC_FORMAX ((LVNV_ModeWord_bm)16)
-#define MODE_DNNS_FORMAX ((LVNV_ModeWord_bm)32)
-#define MODE_DES_FORMAX ((LVNV_ModeWord_bm)64)
-#define MODE_NS_FORMAX ((LVNV_ModeWord_bm)128)
-#define MODE_NS_N_FORMAX ((LVNV_ModeWord_bm)256)
-#define MODE_CAL_FORMAX ((LVNV_ModeWord_bm)2048)
-#define MODE_HB_FORMAX ((LVNV_ModeWord_bm)16384)
-#define MODE_HS_FORMAX ((LVNV_ModeWord_bm)32768)
-#define LVNV_MODEWORD_BM_MAX (MODE_NLMS0_FORMAX | MODE_NLMS1_FORMAX | MODE_BEAMFORMER_FORMAX | MODE_PCD_FORMAX | MODE_GSC_FORMAX | MODE_DNNS_FORMAX | MODE_DES_FORMAX | MODE_NS_FORMAX | MODE_NS_N_FORMAX | MODE_CAL_FORMAX | MODE_HB_FORMAX | MODE_HS_FORMAX | ((LVNV_ModeWord_bm)0))
-/**
-<table border>
- <tr>
- <td><b>Name</b></td>
- <td><b>Value</b></td>
- <td><b>Description</b></td>
- </tr>
- <tr>
- <td>@ref MODE2_FSB_CARDIOID</td>
- <td>1</td>
- <td>FSB update based on speech detection in cardioid</td>
- </tr>
- <tr>
- <td>@ref MODE2_FSB_WITHINBEAM</td>
- <td>2</td>
- <td>FSB update based on withinbeam detection</td>
- </tr>
- <tr>
- <td>@ref MODE2_CAL_UPDATE</td>
- <td>4</td>
- <td>Switch for calibration functionality between updated or not-updated</td>
- </tr>
- <tr>
- <td>@ref MODE2_BEAMDAMAGE</td>
- <td>8</td>
- <td>Microphone coverage protection</td>
- </tr>
-</table> */
-typedef LVM_UINT16 LVNV_Mode2Word_bm;
-/**
-* @def MODE2_FSB_CARDIOID
-* FSB update based on speech detection in cardioid
-* @see LVNV_Mode2Word_bm
-*/
-#define MODE2_FSB_CARDIOID ((LVNV_Mode2Word_bm)1)
-/**
-* @def MODE2_FSB_WITHINBEAM
-* FSB update based on withinbeam detection
-* @see LVNV_Mode2Word_bm
-*/
-#define MODE2_FSB_WITHINBEAM ((LVNV_Mode2Word_bm)2)
-/**
-* @def MODE2_CAL_UPDATE
-* Switch for calibration functionality between updated or not-updated
-* @see LVNV_Mode2Word_bm
-*/
-#define MODE2_CAL_UPDATE ((LVNV_Mode2Word_bm)4)
-/**
-* @def MODE2_BEAMDAMAGE
-* Microphone coverage protection
-* @see LVNV_Mode2Word_bm
-*/
-#define MODE2_BEAMDAMAGE ((LVNV_Mode2Word_bm)8)
-/**
-* @def LVNV_MODE2WORD_BM_MIN
-* Minimal value for LVNV_Mode2Word_bm
-* @see LVNV_Mode2Word_bm
-*/
-#define LVNV_MODE2WORD_BM_MIN ((LVNV_Mode2Word_bm)0)
-/**
-* @def LVNV_MODE2WORD_BM_MAX
-* Maximal value for LVNV_Mode2Word_bm
-* @see LVNV_Mode2Word_bm
-*/
-#define MODE2_FSB_CARDIOID_FORMAX ((LVNV_Mode2Word_bm)1)
-#define MODE2_FSB_WITHINBEAM_FORMAX ((LVNV_Mode2Word_bm)2)
-#define MODE2_CAL_UPDATE_FORMAX ((LVNV_Mode2Word_bm)4)
-#define MODE2_BEAMDAMAGE_FORMAX ((LVNV_Mode2Word_bm)8)
-#define LVNV_MODE2WORD_BM_MAX (MODE2_FSB_CARDIOID_FORMAX | MODE2_FSB_WITHINBEAM_FORMAX | MODE2_CAL_UPDATE_FORMAX | MODE2_BEAMDAMAGE_FORMAX | ((LVNV_Mode2Word_bm)0))
-/**
-<table border>
- <tr>
- <td><b>Name</b></td>
- <td><b>Value</b></td>
- <td><b>Description</b></td>
- </tr>
- <tr>
- <td>@ref TUNING_MODE_NLMS1</td>
- <td>1</td>
- <td>NLMS1 output</td>
- </tr>
- <tr>
- <td>@ref TUNING_MODE_FSB</td>
- <td>2</td>
- <td>FSB noise reference output</td>
- </tr>
- <tr>
- <td>@ref TUNING_MODE_WITHINBEAM</td>
- <td>8</td>
- <td>Tuning beep when Withinbeam=1</td>
- </tr>
- <tr>
- <td>@ref TUNING_MODE_UPDATEONOFF</td>
- <td>16</td>
- <td>Tuning beep when FSB is updated</td>
- </tr>
- <tr>
- <td>@ref TUNING_MODE_CAL_MICPOW</td>
- <td>64</td>
- <td>Tuning beep when MicPow is lower than Cal_micPowFloorMin</td>
- </tr>
- <tr>
- <td>@ref TUNING_MODE_BROADSIDE</td>
- <td>128</td>
- <td>Tuning beep when broadside is detected</td>
- </tr>
-</table> */
-typedef LVM_UINT16 LVNV_TuningModeWord_bm;
-/**
-* @def TUNING_MODE_NLMS1
-* NLMS1 output
-* @see LVNV_TuningModeWord_bm
-*/
-#define TUNING_MODE_NLMS1 ((LVNV_TuningModeWord_bm)1)
-/**
-* @def TUNING_MODE_FSB
-* FSB noise reference output
-* @see LVNV_TuningModeWord_bm
-*/
-#define TUNING_MODE_FSB ((LVNV_TuningModeWord_bm)2)
-/**
-* @def TUNING_MODE_WITHINBEAM
-* Tuning beep when Withinbeam=1
-* @see LVNV_TuningModeWord_bm
-*/
-#define TUNING_MODE_WITHINBEAM ((LVNV_TuningModeWord_bm)8)
-/**
-* @def TUNING_MODE_UPDATEONOFF
-* Tuning beep when FSB is updated
-* @see LVNV_TuningModeWord_bm
-*/
-#define TUNING_MODE_UPDATEONOFF ((LVNV_TuningModeWord_bm)16)
-/**
-* @def TUNING_MODE_CAL_MICPOW
-* Tuning beep when MicPow is lower than Cal_micPowFloorMin
-* @see LVNV_TuningModeWord_bm
-*/
-#define TUNING_MODE_CAL_MICPOW ((LVNV_TuningModeWord_bm)64)
-/**
-* @def TUNING_MODE_BROADSIDE
-* Tuning beep when broadside is detected
-* @see LVNV_TuningModeWord_bm
-*/
-#define TUNING_MODE_BROADSIDE ((LVNV_TuningModeWord_bm)128)
-/**
-* @def LVNV_TUNINGMODEWORD_BM_MIN
-* Minimal value for LVNV_TuningModeWord_bm
-* @see LVNV_TuningModeWord_bm
-*/
-#define LVNV_TUNINGMODEWORD_BM_MIN ((LVNV_TuningModeWord_bm)0)
-/**
-* @def LVNV_TUNINGMODEWORD_BM_MAX
-* Maximal value for LVNV_TuningModeWord_bm
-* @see LVNV_TuningModeWord_bm
-*/
-#define TUNING_MODE_NLMS1_FORMAX ((LVNV_TuningModeWord_bm)1)
-#define TUNING_MODE_FSB_FORMAX ((LVNV_TuningModeWord_bm)2)
-#define TUNING_MODE_WITHINBEAM_FORMAX ((LVNV_TuningModeWord_bm)8)
-#define TUNING_MODE_UPDATEONOFF_FORMAX ((LVNV_TuningModeWord_bm)16)
-#define TUNING_MODE_CAL_MICPOW_FORMAX ((LVNV_TuningModeWord_bm)64)
-#define TUNING_MODE_BROADSIDE_FORMAX ((LVNV_TuningModeWord_bm)128)
-#define LVNV_TUNINGMODEWORD_BM_MAX (TUNING_MODE_NLMS1_FORMAX | TUNING_MODE_FSB_FORMAX | TUNING_MODE_WITHINBEAM_FORMAX | TUNING_MODE_UPDATEONOFF_FORMAX | TUNING_MODE_CAL_MICPOW_FORMAX | TUNING_MODE_BROADSIDE_FORMAX | ((LVNV_TuningModeWord_bm)0))
-/**
-<table border>
- <tr>
- <td><b>Name</b></td>
- <td><b>Value</b></td>
- <td><b>Description</b></td>
- </tr>
- <tr>
- <td>@ref LVNV_STATUS_LOST_BEAM</td>
- <td>1</td>
- <td>LostBeam detections</td>
- </tr>
- <tr>
- <td>@ref LVNV_STATUS_MIC_COV</td>
- <td>2</td>
- <td>Microphone Coverage detections</td>
- </tr>
- <tr>
- <td>@ref LVNV_STATUS_FSB_UPDATE</td>
- <td>4</td>
- <td>FSB updates</td>
- </tr>
- <tr>
- <td>@ref LVNV_STATUS_BEAM_DAMAGE</td>
- <td>8</td>
- <td>BeamDamage detections</td>
- </tr>
- <tr>
- <td>@ref LVNV_STATUS_GSC_UPDATE</td>
- <td>16</td>
- <td>GSC updates</td>
- </tr>
- <tr>
- <td>@ref LVNV_STATUS_DNNS_WBEAM</td>
- <td>32</td>
- <td>DNNS WithinBeam detections</td>
- </tr>
- <tr>
- <td>@ref LVNV_STATUS_DNNS_ACTIVITY</td>
- <td>64</td>
- <td>DNNS activity detections</td>
- </tr>
- <tr>
- <td>@ref LVNV_STATUS_CAL_MICPOW</td>
- <td>128</td>
- <td>Calibration Microphone Power</td>
- </tr>
- <tr>
- <td>@ref LVNV_STATUS_MICPOWSP</td>
- <td>256</td>
- <td>(LV1008) MicPow Speech detections</td>
- </tr>
- <tr>
- <td>@ref LVNV_STATUS_BROADSIDE_FLAG</td>
- <td>512</td>
- <td>(LV2370) Broadside detection flag</td>
- </tr>
- <tr>
- <td>@ref LVNV_STATUS_CAL_UPDATED</td>
- <td>1024</td>
- <td>(LV8237) Calibration updated flag</td>
- </tr>
- <tr>
- <td>@ref LVNV_STATUS_WBEAM_FIX</td>
- <td>2048</td>
- <td>WithinBeam detection for Fixed Beamformer (if available).</td>
- </tr>
-</table> */
-typedef LVM_UINT16 LVNV_StatusWord_bm;
-/**
-* @def LVNV_STATUS_LOST_BEAM
-* LostBeam detections
-* @see LVNV_StatusWord_bm
-*/
-#define LVNV_STATUS_LOST_BEAM ((LVNV_StatusWord_bm)1)
-/**
-* @def LVNV_STATUS_MIC_COV
-* Microphone Coverage detections
-* @see LVNV_StatusWord_bm
-*/
-#define LVNV_STATUS_MIC_COV ((LVNV_StatusWord_bm)2)
-/**
-* @def LVNV_STATUS_FSB_UPDATE
-* FSB updates
-* @see LVNV_StatusWord_bm
-*/
-#define LVNV_STATUS_FSB_UPDATE ((LVNV_StatusWord_bm)4)
-/**
-* @def LVNV_STATUS_BEAM_DAMAGE
-* BeamDamage detections
-* @see LVNV_StatusWord_bm
-*/
-#define LVNV_STATUS_BEAM_DAMAGE ((LVNV_StatusWord_bm)8)
-/**
-* @def LVNV_STATUS_GSC_UPDATE
-* GSC updates
-* @see LVNV_StatusWord_bm
-*/
-#define LVNV_STATUS_GSC_UPDATE ((LVNV_StatusWord_bm)16)
-/**
-* @def LVNV_STATUS_DNNS_WBEAM
-* DNNS WithinBeam detections
-* @see LVNV_StatusWord_bm
-*/
-#define LVNV_STATUS_DNNS_WBEAM ((LVNV_StatusWord_bm)32)
-/**
-* @def LVNV_STATUS_DNNS_ACTIVITY
-* DNNS activity detections
-* @see LVNV_StatusWord_bm
-*/
-#define LVNV_STATUS_DNNS_ACTIVITY ((LVNV_StatusWord_bm)64)
-/**
-* @def LVNV_STATUS_CAL_MICPOW
-* Calibration Microphone Power
-* @see LVNV_StatusWord_bm
-*/
-#define LVNV_STATUS_CAL_MICPOW ((LVNV_StatusWord_bm)128)
-/**
-* @def LVNV_STATUS_MICPOWSP
-* (LV1008) MicPow Speech detections
-* @see LVNV_StatusWord_bm
-*/
-#define LVNV_STATUS_MICPOWSP ((LVNV_StatusWord_bm)256)
-/**
-* @def LVNV_STATUS_BROADSIDE_FLAG
-* (LV2370) Broadside detection flag
-* @see LVNV_StatusWord_bm
-*/
-#define LVNV_STATUS_BROADSIDE_FLAG ((LVNV_StatusWord_bm)512)
-/**
-* @def LVNV_STATUS_CAL_UPDATED
-* (LV8237) Calibration updated flag
-* @see LVNV_StatusWord_bm
-*/
-#define LVNV_STATUS_CAL_UPDATED ((LVNV_StatusWord_bm)1024)
-/**
-* @def LVNV_STATUS_WBEAM_fix
-* WithinBeam detection for Fixed Beamformer (if available).
-* @see LVNV_StatusWord_bm
-*/
-#define LVNV_STATUS_WBEAM_FIX ((LVNV_StatusWord_bm)2048)
-/**
-* @def LVNV_STATUSWORD_BM_MIN
-* Minimal value for LVNV_StatusWord_bm
-* @see LVNV_StatusWord_bm
-*/
-#define LVNV_STATUSWORD_BM_MIN ((LVNV_StatusWord_bm)0)
-/**
-* @def LVNV_STATUSWORD_BM_MAX
-* Maximal value for LVNV_StatusWord_bm
-* @see LVNV_StatusWord_bm
-*/
-#define LVNV_STATUS_LOST_BEAM_FORMAX ((LVNV_StatusWord_bm)1)
-#define LVNV_STATUS_MIC_COV_FORMAX ((LVNV_StatusWord_bm)2)
-#define LVNV_STATUS_FSB_UPDATE_FORMAX ((LVNV_StatusWord_bm)4)
-#define LVNV_STATUS_BEAM_DAMAGE_FORMAX ((LVNV_StatusWord_bm)8)
-#define LVNV_STATUS_GSC_UPDATE_FORMAX ((LVNV_StatusWord_bm)16)
-#define LVNV_STATUS_DNNS_WBEAM_FORMAX ((LVNV_StatusWord_bm)32)
-#define LVNV_STATUS_DNNS_ACTIVITY_FORMAX ((LVNV_StatusWord_bm)64)
-#define LVNV_STATUS_CAL_MICPOW_FORMAX ((LVNV_StatusWord_bm)128)
-#define LVNV_STATUS_MICPOWSP_FORMAX ((LVNV_StatusWord_bm)256)
-#define LVNV_STATUS_BROADSIDE_FLAG_FORMAX ((LVNV_StatusWord_bm)512)
-#define LVNV_STATUS_CAL_UPDATED_FORMAX ((LVNV_StatusWord_bm)1024)
-#define LVNV_STATUS_WBEAM_FIX_FORMAX ((LVNV_StatusWord_bm)2048)
-#define LVNV_STATUSWORD_BM_MAX (LVNV_STATUS_LOST_BEAM_FORMAX | LVNV_STATUS_MIC_COV_FORMAX | LVNV_STATUS_FSB_UPDATE_FORMAX | LVNV_STATUS_BEAM_DAMAGE_FORMAX | LVNV_STATUS_GSC_UPDATE_FORMAX | LVNV_STATUS_DNNS_WBEAM_FORMAX | LVNV_STATUS_DNNS_ACTIVITY_FORMAX | LVNV_STATUS_CAL_MICPOW_FORMAX | LVNV_STATUS_MICPOWSP_FORMAX | LVNV_STATUS_BROADSIDE_FLAG_FORMAX | LVNV_STATUS_CAL_UPDATED_FORMAX | LVNV_STATUS_WBEAM_FIX_FORMAX | ((LVNV_StatusWord_bm)0))
-/**
-<table border>
- <tr>
- <td><b>Name</b></td>
- <td><b>Value</b></td>
- <td><b>Description</b></td>
- </tr>
- <tr>
- <td>@ref LVHF_CONTROL_TUNE_PATHCHANGE</td>
- <td>1</td>
- <td>PCD tuning beep</td>
- </tr>
- <tr>
- <td>@ref LVHF_CONTROL_TUNE_CLIP</td>
- <td>2</td>
- <td>SPDET_x_clip tuning beep</td>
- </tr>
- <tr>
- <td>@ref LVHF_CONTROL_TUNE_FAR_SPEAKS</td>
- <td>4</td>
- <td>SPDET_far tuning beep</td>
- </tr>
- <tr>
- <td>@ref LVHF_CONTROL_TUNE_MIC_SPEAKS</td>
- <td>8</td>
- <td>SPDET_mic tuning beep</td>
- </tr>
- <tr>
- <td>@ref LVHF_CONTROL_TUNE_HB_MUTE</td>
- <td>16</td>
- <td>Mute high band (4kHz-8kHz). Should be disabled by default.</td>
- </tr>
- <tr>
- <td>@ref LVHF_CONTROL_TUNE_TB_MUTE</td>
- <td>32</td>
- <td>Mute top band (above 8kHz). Should be disabled by default.</td>
- </tr>
-</table> */
-typedef LVM_UINT16 LVHF_TuningModeWord;
-/**
-* @def LVHF_CONTROL_TUNE_PATHCHANGE
-* PCD tuning beep
-* @see LVHF_TuningModeWord
-*/
-#define LVHF_CONTROL_TUNE_PATHCHANGE ((LVHF_TuningModeWord)1)
-/**
-* @def LVHF_CONTROL_TUNE_CLIP
-* SPDET_x_clip tuning beep
-* @see LVHF_TuningModeWord
-*/
-#define LVHF_CONTROL_TUNE_CLIP ((LVHF_TuningModeWord)2)
-/**
-* @def LVHF_CONTROL_TUNE_FAR_SPEAKS
-* SPDET_far tuning beep
-* @see LVHF_TuningModeWord
-*/
-#define LVHF_CONTROL_TUNE_FAR_SPEAKS ((LVHF_TuningModeWord)4)
-/**
-* @def LVHF_CONTROL_TUNE_MIC_SPEAKS
-* SPDET_mic tuning beep
-* @see LVHF_TuningModeWord
-*/
-#define LVHF_CONTROL_TUNE_MIC_SPEAKS ((LVHF_TuningModeWord)8)
-/**
-* @def LVHF_CONTROL_TUNE_HB_MUTE
-* Mute high band (4kHz-8kHz). Should be disabled by default.
-* @see LVHF_TuningModeWord
-*/
-#define LVHF_CONTROL_TUNE_HB_MUTE ((LVHF_TuningModeWord)16)
-/**
-* @def LVHF_CONTROL_TUNE_TB_MUTE
-* Mute top band (above 8kHz). Should be disabled by default.
-* @see LVHF_TuningModeWord
-*/
-#define LVHF_CONTROL_TUNE_TB_MUTE ((LVHF_TuningModeWord)32)
-/**
-* @def LVHF_TUNINGMODEWORD_MIN
-* Minimal value for LVHF_TuningModeWord
-* @see LVHF_TuningModeWord
-*/
-#define LVHF_TUNINGMODEWORD_MIN ((LVHF_TuningModeWord)0)
-/**
-* @def LVHF_TUNINGMODEWORD_MAX
-* Maximal value for LVHF_TuningModeWord
-* @see LVHF_TuningModeWord
-*/
-#define LVHF_CONTROL_TUNE_PATHCHANGE_FORMAX ((LVHF_TuningModeWord)1)
-#define LVHF_CONTROL_TUNE_CLIP_FORMAX ((LVHF_TuningModeWord)2)
-#define LVHF_CONTROL_TUNE_FAR_SPEAKS_FORMAX ((LVHF_TuningModeWord)4)
-#define LVHF_CONTROL_TUNE_MIC_SPEAKS_FORMAX ((LVHF_TuningModeWord)8)
-#define LVHF_CONTROL_TUNE_HB_MUTE_FORMAX ((LVHF_TuningModeWord)16)
-#define LVHF_CONTROL_TUNE_TB_MUTE_FORMAX ((LVHF_TuningModeWord)32)
-#define LVHF_TUNINGMODEWORD_MAX (LVHF_CONTROL_TUNE_PATHCHANGE_FORMAX | LVHF_CONTROL_TUNE_CLIP_FORMAX | LVHF_CONTROL_TUNE_FAR_SPEAKS_FORMAX | LVHF_CONTROL_TUNE_MIC_SPEAKS_FORMAX | LVHF_CONTROL_TUNE_HB_MUTE_FORMAX | LVHF_CONTROL_TUNE_TB_MUTE_FORMAX | ((LVHF_TuningModeWord)0))
-/**
-<table border>
- <tr>
- <td><b>Name</b></td>
- <td><b>Value</b></td>
- <td><b>Description</b></td>
- </tr>
- <tr>
- <td>@ref LVHF_MODE_NLMS</td>
- <td>1</td>
- <td>NLMS functionality</td>
- </tr>
- <tr>
- <td>@ref LVHF_MODE_DES</td>
- <td>2</td>
- <td>DES (Dynamic Echo Suppression)</td>
- </tr>
- <tr>
- <td>@ref LVHF_MODE_NS</td>
- <td>4</td>
- <td>NS (Noise Suppression)</td>
- </tr>
- <tr>
- <td>@ref LVHF_MODE_CNI</td>
- <td>8</td>
- <td>CNI (Comfort Noise Injection)</td>
- </tr>
- <tr>
- <td>@ref LVHF_MODE_NLES</td>
- <td>16</td>
- <td>NLES (Non Linear Echo Suppression)</td>
- </tr>
- <tr>
- <td>@ref LVHF_MODE_PCD_DT</td>
- <td>64</td>
- <td>DT (Double Talk) protection after PCD</td>
- </tr>
- <tr>
- <td>@ref LVHF_MODE_PCD</td>
- <td>128</td>
- <td>PCD (Path Change Detector)</td>
- </tr>
- <tr>
- <td>@ref LVHF_MODE_INIT_ES</td>
- <td>256</td>
- <td>Initial echo suppression setting by PCD_gamma_e_rescue</td>
- </tr>
- <tr>
- <td>@ref LVHF_MODE_HS</td>
- <td>512</td>
- <td>HornSuppression (if available)</td>
- </tr>
- <tr>
- <td>@ref LVHF_MODE_PRENLMS</td>
- <td>4096</td>
- <td>Pre-NLMS preprocessing</td>
- </tr>
-</table> */
-typedef LVM_UINT16 LVHF_ModeWord_bm;
-/**
-* @def LVHF_MODE_NLMS
-* NLMS functionality
-* @see LVHF_ModeWord_bm
-*/
-#define LVHF_MODE_NLMS ((LVHF_ModeWord_bm)1)
-/**
-* @def LVHF_MODE_DES
-* DES (Dynamic Echo Suppression)
-* @see LVHF_ModeWord_bm
-*/
-#define LVHF_MODE_DES ((LVHF_ModeWord_bm)2)
-/**
-* @def LVHF_MODE_NS
-* NS (Noise Suppression)
-* @see LVHF_ModeWord_bm
-*/
-#define LVHF_MODE_NS ((LVHF_ModeWord_bm)4)
-/**
-* @def LVHF_MODE_CNI
-* CNI (Comfort Noise Injection)
-* @see LVHF_ModeWord_bm
-*/
-#define LVHF_MODE_CNI ((LVHF_ModeWord_bm)8)
-/**
-* @def LVHF_MODE_NLES
-* NLES (Non Linear Echo Suppression)
-* @see LVHF_ModeWord_bm
-*/
-#define LVHF_MODE_NLES ((LVHF_ModeWord_bm)16)
-/**
-* @def LVHF_MODE_PCD_DT
-* DT (Double Talk) protection after PCD
-* @see LVHF_ModeWord_bm
-*/
-#define LVHF_MODE_PCD_DT ((LVHF_ModeWord_bm)64)
-/**
-* @def LVHF_MODE_PCD
-* PCD (Path Change Detector)
-* @see LVHF_ModeWord_bm
-*/
-#define LVHF_MODE_PCD ((LVHF_ModeWord_bm)128)
-/**
-* @def LVHF_MODE_INIT_ES
-* Initial echo suppression setting by PCD_gamma_e_rescue
-* @see LVHF_ModeWord_bm
-*/
-#define LVHF_MODE_INIT_ES ((LVHF_ModeWord_bm)256)
-/**
-* @def LVHF_MODE_HS
-* HornSuppression (if available)
-* @see LVHF_ModeWord_bm
-*/
-#define LVHF_MODE_HS ((LVHF_ModeWord_bm)512)
-/**
-* @def LVHF_MODE_PRENLMS
-* Pre-NLMS preprocessing
-* @see LVHF_ModeWord_bm
-*/
-#define LVHF_MODE_PRENLMS ((LVHF_ModeWord_bm)4096)
-/**
-* @def LVHF_MODEWORD_BM_MIN
-* Minimal value for LVHF_ModeWord_bm
-* @see LVHF_ModeWord_bm
-*/
-#define LVHF_MODEWORD_BM_MIN ((LVHF_ModeWord_bm)0)
-/**
-* @def LVHF_MODEWORD_BM_MAX
-* Maximal value for LVHF_ModeWord_bm
-* @see LVHF_ModeWord_bm
-*/
-#define LVHF_MODE_NLMS_FORMAX ((LVHF_ModeWord_bm)1)
-#define LVHF_MODE_DES_FORMAX ((LVHF_ModeWord_bm)2)
-#define LVHF_MODE_NS_FORMAX ((LVHF_ModeWord_bm)4)
-#define LVHF_MODE_CNI_FORMAX ((LVHF_ModeWord_bm)8)
-#define LVHF_MODE_NLES_FORMAX ((LVHF_ModeWord_bm)16)
-#define LVHF_MODE_PCD_DT_FORMAX ((LVHF_ModeWord_bm)64)
-#define LVHF_MODE_PCD_FORMAX ((LVHF_ModeWord_bm)128)
-#define LVHF_MODE_INIT_ES_FORMAX ((LVHF_ModeWord_bm)256)
-#define LVHF_MODE_HS_FORMAX ((LVHF_ModeWord_bm)512)
-#define LVHF_MODE_PRENLMS_FORMAX ((LVHF_ModeWord_bm)4096)
-#define LVHF_MODEWORD_BM_MAX (LVHF_MODE_NLMS_FORMAX | LVHF_MODE_DES_FORMAX | LVHF_MODE_NS_FORMAX | LVHF_MODE_CNI_FORMAX | LVHF_MODE_NLES_FORMAX | LVHF_MODE_PCD_DT_FORMAX | LVHF_MODE_PCD_FORMAX | LVHF_MODE_INIT_ES_FORMAX | LVHF_MODE_HS_FORMAX | LVHF_MODE_PRENLMS_FORMAX | ((LVHF_ModeWord_bm)0))
-/**
-<table border>
- <tr>
- <td><b>Name</b></td>
- <td><b>Value</b></td>
- <td><b>Description</b></td>
- </tr>
- <tr>
- <td>@ref LVHF_STATUS_FAR_SPEAKS</td>
- <td>1</td>
- <td>FarEnd is speaking</td>
- </tr>
- <tr>
- <td>@ref LVHF_STATUS_FAR_STARTS</td>
- <td>2</td>
- <td>FarEnd starts to speak</td>
- </tr>
- <tr>
- <td>@ref LVHF_STATUS_MIC_SPEAKS</td>
- <td>4</td>
- <td>Mic activity detected</td>
- </tr>
- <tr>
- <td>@ref LVHF_STATUS_CLIP</td>
- <td>8</td>
- <td>Clipping Detected</td>
- </tr>
- <tr>
- <td>@ref LVHF_STATUS_PATHCHANGE</td>
- <td>16</td>
- <td>Path Change detected</td>
- </tr>
-</table> */
-typedef LVM_UINT16 LVHF_StatusWord_bm;
-/**
-* @def LVHF_STATUS_FAR_SPEAKS
-* FarEnd is speaking
-* @see LVHF_StatusWord_bm
-*/
-#define LVHF_STATUS_FAR_SPEAKS ((LVHF_StatusWord_bm)1)
-/**
-* @def LVHF_STATUS_FAR_STARTS
-* FarEnd starts to speak
-* @see LVHF_StatusWord_bm
-*/
-#define LVHF_STATUS_FAR_STARTS ((LVHF_StatusWord_bm)2)
-/**
-* @def LVHF_STATUS_MIC_SPEAKS
-* Mic activity detected
-* @see LVHF_StatusWord_bm
-*/
-#define LVHF_STATUS_MIC_SPEAKS ((LVHF_StatusWord_bm)4)
-/**
-* @def LVHF_STATUS_CLIP
-* Clipping Detected
-* @see LVHF_StatusWord_bm
-*/
-#define LVHF_STATUS_CLIP ((LVHF_StatusWord_bm)8)
-/**
-* @def LVHF_STATUS_PATHCHANGE
-* Path Change detected
-* @see LVHF_StatusWord_bm
-*/
-#define LVHF_STATUS_PATHCHANGE ((LVHF_StatusWord_bm)16)
-/**
-* @def LVHF_STATUSWORD_BM_MIN
-* Minimal value for LVHF_StatusWord_bm
-* @see LVHF_StatusWord_bm
-*/
-#define LVHF_STATUSWORD_BM_MIN ((LVHF_StatusWord_bm)0)
-/**
-* @def LVHF_STATUSWORD_BM_MAX
-* Maximal value for LVHF_StatusWord_bm
-* @see LVHF_StatusWord_bm
-*/
-#define LVHF_STATUS_FAR_SPEAKS_FORMAX ((LVHF_StatusWord_bm)1)
-#define LVHF_STATUS_FAR_STARTS_FORMAX ((LVHF_StatusWord_bm)2)
-#define LVHF_STATUS_MIC_SPEAKS_FORMAX ((LVHF_StatusWord_bm)4)
-#define LVHF_STATUS_CLIP_FORMAX ((LVHF_StatusWord_bm)8)
-#define LVHF_STATUS_PATHCHANGE_FORMAX ((LVHF_StatusWord_bm)16)
-#define LVHF_STATUSWORD_BM_MAX (LVHF_STATUS_FAR_SPEAKS_FORMAX | LVHF_STATUS_FAR_STARTS_FORMAX | LVHF_STATUS_MIC_SPEAKS_FORMAX | LVHF_STATUS_CLIP_FORMAX | LVHF_STATUS_PATHCHANGE_FORMAX | ((LVHF_StatusWord_bm)0))
-
-#define LVVIDHEADER_LVVE_RX_MASK1_LVWIREFORMAT_LENGTH (2) ///< Number of bytes to encode @ref LVVIDHeader_LVVE_Rx_Mask1_bm in LVWireFormat.
-
-#define LVVIDHEADER_LVVE_RX_MASK2_LVWIREFORMAT_LENGTH (2) ///< Number of bytes to encode @ref LVVIDHeader_LVVE_Rx_Mask2_bm in LVWireFormat.
-
-#define LVVIDHEADER_LVVE_TX_MASK1_LVWIREFORMAT_LENGTH (2) ///< Number of bytes to encode @ref LVVIDHeader_LVVE_Tx_Mask1_bm in LVWireFormat.
-
-#define LVVIDHEADER_LVVE_TX_MASK2_LVWIREFORMAT_LENGTH (2) ///< Number of bytes to encode @ref LVVIDHeader_LVVE_Tx_Mask2_bm in LVWireFormat.
-
-#define LVVIDHEADER_CONFIGURATIONS_MASK1_LVWIREFORMAT_LENGTH (2) ///< Number of bytes to encode @ref LVVIDHeader_Configurations_Mask1_bm in LVWireFormat.
-
-#define LVVIDHEADER_CONFIGURATIONS_MASK2_LVWIREFORMAT_LENGTH (2) ///< Number of bytes to encode @ref LVVIDHeader_Configurations_Mask2_bm in LVWireFormat.
-
-#define LVVC_MODEWORD_LVWIREFORMAT_LENGTH (2) ///< Number of bytes to encode @ref LVVC_ModeWord_bm in LVWireFormat.
-
-#define LVFENS_MODEWORD_LVWIREFORMAT_LENGTH (2) ///< Number of bytes to encode @ref LVFENS_ModeWord_bm in LVWireFormat.
-
-#define LVWM_MODEWORD_LVWIREFORMAT_LENGTH (2) ///< Number of bytes to encode @ref LVWM_ModeWord_bm in LVWireFormat.
-
-#define LVNV_MODEWORD_LVWIREFORMAT_LENGTH (2) ///< Number of bytes to encode @ref LVNV_ModeWord_bm in LVWireFormat.
-
-#define LVNV_MODE2WORD_LVWIREFORMAT_LENGTH (2) ///< Number of bytes to encode @ref LVNV_Mode2Word_bm in LVWireFormat.
-
-#define LVNV_TUNINGMODEWORD_LVWIREFORMAT_LENGTH (2) ///< Number of bytes to encode @ref LVNV_TuningModeWord_bm in LVWireFormat.
-
-#define LVNV_STATUSWORD_LVWIREFORMAT_LENGTH (2) ///< Number of bytes to encode @ref LVNV_StatusWord_bm in LVWireFormat.
-
-#define LVHF_TUNINGMODEWORD_LVWIREFORMAT_LENGTH (2) ///< Number of bytes to encode @ref LVHF_TuningModeWord in LVWireFormat.
-
-#define LVHF_MODEWORD_LVWIREFORMAT_LENGTH (2) ///< Number of bytes to encode @ref LVHF_ModeWord_bm in LVWireFormat.
-
-#define LVHF_STATUSWORD_LVWIREFORMAT_LENGTH (2) ///< Number of bytes to encode @ref LVHF_StatusWord_bm in LVWireFormat.
-
-#define LVM_MODE_LVWIREFORMAT_LENGTH (4) ///< Number of bytes to encode @ref LVM_Mode_en in LVWireFormat.
-
-#define LVM_CONFIG_LVWIREFORMAT_LENGTH (4) ///< Number of bytes to encode @ref LVM_Config_en in LVWireFormat.
-
-#define LVM_FS_LVWIREFORMAT_LENGTH (4) ///< Number of bytes to encode @ref LVM_Fs_en in LVWireFormat.
-
-#define LVVIDHEADER_MESSAGEID_LVWIREFORMAT_LENGTH (4) ///< Number of bytes to encode @ref LVVIDHeader_MessageID_en in LVWireFormat.
-
-#define LVVIDHEADER_RETURNSTATUS_LVWIREFORMAT_LENGTH (4) ///< Number of bytes to encode @ref LVVIDHeader_ReturnStatus_en in LVWireFormat.
-
-#define LVVE_RX_MODE_LVWIREFORMAT_LENGTH (4) ///< Number of bytes to encode @ref LVVE_Rx_Mode_en in LVWireFormat.
-
-#define LVVE_TX_MODE_LVWIREFORMAT_LENGTH (4) ///< Number of bytes to encode @ref LVVE_Tx_Mode_en in LVWireFormat.
-
-#define LVVIDHEADER_CONTROLPARAMS_LVWIREFORMAT_LENGTH (7 \
- + LVVIDHEADER_LVVE_RX_MASK1_LVWIREFORMAT_LENGTH \
- + LVVIDHEADER_LVVE_RX_MASK2_LVWIREFORMAT_LENGTH \
- + LVVIDHEADER_LVVE_TX_MASK1_LVWIREFORMAT_LENGTH \
- + LVVIDHEADER_LVVE_TX_MASK2_LVWIREFORMAT_LENGTH \
- + LVVIDHEADER_CONFIGURATIONS_MASK1_LVWIREFORMAT_LENGTH \
- + LVVIDHEADER_CONFIGURATIONS_MASK2_LVWIREFORMAT_LENGTH \
- + LVVIDHEADER_MESSAGEID_LVWIREFORMAT_LENGTH \
- + LVM_FS_LVWIREFORMAT_LENGTH) ///< Number of bytes to encode LVVIDHeader ControlParameters in LVWireFormat.
-
-#define LVVC_CONTROLPARAMS_LVWIREFORMAT_LENGTH (22 \
- + LVM_MODE_LVWIREFORMAT_LENGTH \
- + LVVC_MODEWORD_LVWIREFORMAT_LENGTH) ///< Number of bytes to encode LVVC ControlParameters in LVWireFormat.
-
-#define LVFENS_CONTROLPARAMS_LVWIREFORMAT_LENGTH (2 \
- + LVM_MODE_LVWIREFORMAT_LENGTH \
- + LVFENS_MODEWORD_LVWIREFORMAT_LENGTH) ///< Number of bytes to encode LVFENS ControlParameters in LVWireFormat.
-
-#define LVWM_CONTROLPARAMS_LVWIREFORMAT_LENGTH (14 \
- + LVM_MODE_LVWIREFORMAT_LENGTH \
- + LVWM_MODEWORD_LVWIREFORMAT_LENGTH) ///< Number of bytes to encode LVWM ControlParameters in LVWireFormat.
-
-#define LVDRC_CONTROLPARAMS_LVWIREFORMAT_LENGTH (28 \
- + LVM_MODE_LVWIREFORMAT_LENGTH \
- + LVM_MODE_LVWIREFORMAT_LENGTH) ///< Number of bytes to encode LVDRC ControlParameters in LVWireFormat.
-
-#define LVNG_CONTROLPARAMS_LVWIREFORMAT_LENGTH (26 \
- + LVM_MODE_LVWIREFORMAT_LENGTH) ///< Number of bytes to encode LVNG ControlParameters in LVWireFormat.
-
-#define LVNLPP_CONTROLPARAMS_LVWIREFORMAT_LENGTH (4) ///< Number of bytes to encode LVNLPP ControlParameters in LVWireFormat.
-
-#define LVEQ_CONTROLPARAMS_LVWIREFORMAT_LENGTH (130) ///< Number of bytes to encode LVEQ ControlParameters in LVWireFormat.
-
-#define LVVOL_CONTROLPARAMS_LVWIREFORMAT_LENGTH (2 \
- + LVM_MODE_LVWIREFORMAT_LENGTH) ///< Number of bytes to encode LVVOL ControlParameters in LVWireFormat.
-
-#define LVHPF_CONTROLPARAMS_LVWIREFORMAT_LENGTH (2 \
- + LVM_MODE_LVWIREFORMAT_LENGTH) ///< Number of bytes to encode LVHPF ControlParameters in LVWireFormat.
-
-#define LVMUTE_CONTROLPARAMS_LVWIREFORMAT_LENGTH (LVM_MODE_LVWIREFORMAT_LENGTH) ///< Number of bytes to encode LVMUTE ControlParameters in LVWireFormat.
-
-#define LVVE_RX_CONTROLPARAMS_LVWIREFORMAT_LENGTH (4 \
- + LVVE_RX_MODE_LVWIREFORMAT_LENGTH \
- + LVM_MODE_LVWIREFORMAT_LENGTH \
- + LVM_MODE_LVWIREFORMAT_LENGTH \
- + LVFENS_CONTROLPARAMS_LVWIREFORMAT_LENGTH \
- + LVM_MODE_LVWIREFORMAT_LENGTH \
- + LVNLPP_CONTROLPARAMS_LVWIREFORMAT_LENGTH \
- + LVVC_CONTROLPARAMS_LVWIREFORMAT_LENGTH \
- + LVM_MODE_LVWIREFORMAT_LENGTH \
- + LVEQ_CONTROLPARAMS_LVWIREFORMAT_LENGTH \
- + LVDRC_CONTROLPARAMS_LVWIREFORMAT_LENGTH \
- + LVM_MODE_LVWIREFORMAT_LENGTH \
- + LVWM_CONTROLPARAMS_LVWIREFORMAT_LENGTH \
- + LVNG_CONTROLPARAMS_LVWIREFORMAT_LENGTH) ///< Number of bytes to encode LVVE_Rx ControlParameters in LVWireFormat.
-
-#define LVNV_CONTROLPARAMS_LVWIREFORMAT_LENGTH (122 \
- + LVM_MODE_LVWIREFORMAT_LENGTH \
- + LVNV_MODEWORD_LVWIREFORMAT_LENGTH \
- + LVNV_MODE2WORD_LVWIREFORMAT_LENGTH \
- + LVNV_TUNINGMODEWORD_LVWIREFORMAT_LENGTH) ///< Number of bytes to encode LVNV ControlParameters in LVWireFormat.
-
-#define LVHF_CONTROLPARAMS_LVWIREFORMAT_LENGTH (78 \
- + LVM_MODE_LVWIREFORMAT_LENGTH \
- + LVHF_MODEWORD_LVWIREFORMAT_LENGTH \
- + LVHF_TUNINGMODEWORD_LVWIREFORMAT_LENGTH) ///< Number of bytes to encode LVHF ControlParameters in LVWireFormat.
-
-#define LVBD_CONTROLPARAMS_LVWIREFORMAT_LENGTH (4 \
- + LVM_MODE_LVWIREFORMAT_LENGTH) ///< Number of bytes to encode LVBD ControlParameters in LVWireFormat.
-
-#define LVVE_TX_CONTROLPARAMS_LVWIREFORMAT_LENGTH (8 \
- + LVVE_TX_MODE_LVWIREFORMAT_LENGTH \
- + LVM_MODE_LVWIREFORMAT_LENGTH \
- + LVM_MODE_LVWIREFORMAT_LENGTH \
- + LVM_MODE_LVWIREFORMAT_LENGTH \
- + LVM_MODE_LVWIREFORMAT_LENGTH \
- + LVHF_CONTROLPARAMS_LVWIREFORMAT_LENGTH \
- + LVNV_CONTROLPARAMS_LVWIREFORMAT_LENGTH \
- + LVWM_CONTROLPARAMS_LVWIREFORMAT_LENGTH \
- + LVM_MODE_LVWIREFORMAT_LENGTH \
- + LVEQ_CONTROLPARAMS_LVWIREFORMAT_LENGTH \
- + LVDRC_CONTROLPARAMS_LVWIREFORMAT_LENGTH) ///< Number of bytes to encode LVVE_Tx ControlParameters in LVWireFormat.
-
-/**
-* @def LVVIDHEADER_HEADERVERSION_DEFAULT
-* Default of HeaderVersion
-* @see LVVIDHeader_ControlParams_st
-*/
-#define LVVIDHEADER_HEADERVERSION_DEFAULT (3)
-/**
-* @def LVVIDHEADER_HEADERVERSION_MIN
-* MinValue of HeaderVersion
-* @see LVVIDHeader_ControlParams_st
-*/
-#define LVVIDHEADER_HEADERVERSION_MIN (0)
-/**
-* @def LVVIDHEADER_HEADERVERSION_MAX
-* MaxValue of HeaderVersion
-* @see LVVIDHeader_ControlParams_st
-*/
-#define LVVIDHEADER_HEADERVERSION_MAX (255)
-
-/**
-* @def LVVIDHEADER_BASELINEVERSION_DEFAULT
-* Default of BaselineVersion
-* @see LVVIDHeader_ControlParams_st
-*/
-#define LVVIDHEADER_BASELINEVERSION_DEFAULT (51906816)
-/**
-* @def LVVIDHEADER_BASELINEVERSION_MIN
-* MinValue of BaselineVersion
-* @see LVVIDHeader_ControlParams_st
-*/
-#define LVVIDHEADER_BASELINEVERSION_MIN (1)
-/**
-* @def LVVIDHEADER_BASELINEVERSION_MAX
-* MaxValue of BaselineVersion
-* @see LVVIDHeader_ControlParams_st
-*/
-#define LVVIDHEADER_BASELINEVERSION_MAX (4294967295)
-
-/**
-* @def LVVIDHEADER_LVVE_RX_ALGOMASK1_DEFAULT
-* Default of LVVE_Rx_AlgoMask1
-* @see LVVIDHeader_ControlParams_st
-*/
-#define LVVIDHEADER_LVVE_RX_ALGOMASK1_DEFAULT (LVVIDHEADER_LVVE_RX_MASK1_BM_MAX)
-
-/**
-* @def LVVIDHEADER_LVVE_RX_ALGOMASK2_DEFAULT
-* Default of LVVE_Rx_AlgoMask2
-* @see LVVIDHeader_ControlParams_st
-*/
-#define LVVIDHEADER_LVVE_RX_ALGOMASK2_DEFAULT (LVVIDHEADER_LVVE_RX_MASK2_BM_MAX)
-
-/**
-* @def LVVIDHEADER_LVVE_TX_ALGOMASK1_DEFAULT
-* Default of LVVE_Tx_AlgoMask1
-* @see LVVIDHeader_ControlParams_st
-*/
-#define LVVIDHEADER_LVVE_TX_ALGOMASK1_DEFAULT (LVVIDHEADER_LVVE_TX_MASK1_BM_MAX)
-
-/**
-* @def LVVIDHEADER_LVVE_TX_ALGOMASK2_DEFAULT
-* Default of LVVE_Tx_AlgoMask2
-* @see LVVIDHeader_ControlParams_st
-*/
-#define LVVIDHEADER_LVVE_TX_ALGOMASK2_DEFAULT (LVVIDHEADER_LVVE_TX_MASK2_BM_MAX)
-
-/**
-* @def LVVIDHEADER_LVVE_CONFIG_ALGOMASK1_DEFAULT
-* Default of LVVE_Config_AlgoMask1
-* @see LVVIDHeader_ControlParams_st
-*/
-#define LVVIDHEADER_LVVE_CONFIG_ALGOMASK1_DEFAULT (LVVIDHEADER_CONFIGURATIONS_MASK1_BM_MAX)
-
-/**
-* @def LVVIDHEADER_LVVE_CONFIG_ALGOMASK2_DEFAULT
-* Default of LVVE_Config_AlgoMask2
-* @see LVVIDHeader_ControlParams_st
-*/
-#define LVVIDHEADER_LVVE_CONFIG_ALGOMASK2_DEFAULT (LVVIDHEADER_CONFIGURATIONS_MASK2_BM_MAX)
-
-/**
-* @def LVVIDHEADER_MESSAGEID_DEFAULT
-* Default of MessageID
-* @see LVVIDHeader_ControlParams_st
-*/
-#define LVVIDHEADER_MESSAGEID_DEFAULT (LVVE_RX_PRESET)
-
-/**
-* @def LVVIDHEADER_SAMPLERATE_DEFAULT
-* Default of SampleRate
-* @see LVVIDHeader_ControlParams_st
-*/
-#define LVVIDHEADER_SAMPLERATE_DEFAULT (LVM_FS_8000)
-
-/**
-* @def LVVIDHEADER_VOLUMEINDEX_DEFAULT
-* Default of VolumeIndex
-* @see LVVIDHeader_ControlParams_st
-*/
-#define LVVIDHEADER_VOLUMEINDEX_DEFAULT (0)
-/**
-* @def LVVIDHEADER_VOLUMEINDEX_MIN
-* MinValue of VolumeIndex
-* @see LVVIDHeader_ControlParams_st
-*/
-#define LVVIDHEADER_VOLUMEINDEX_MIN (0)
-/**
-* @def LVVIDHEADER_VOLUMEINDEX_MAX
-* MaxValue of VolumeIndex
-* @see LVVIDHeader_ControlParams_st
-*/
-#define LVVIDHEADER_VOLUMEINDEX_MAX (255)
-
-/**
-* @def LVVIDHEADER_NUMVOLUMES_DEFAULT
-* Default of NumVolumes
-* @see LVVIDHeader_ControlParams_st
-*/
-#define LVVIDHEADER_NUMVOLUMES_DEFAULT (1)
-/**
-* @def LVVIDHEADER_NUMVOLUMES_MIN
-* MinValue of NumVolumes
-* @see LVVIDHeader_ControlParams_st
-*/
-#define LVVIDHEADER_NUMVOLUMES_MIN (0)
-/**
-* @def LVVIDHEADER_NUMVOLUMES_MAX
-* MaxValue of NumVolumes
-* @see LVVIDHeader_ControlParams_st
-*/
-#define LVVIDHEADER_NUMVOLUMES_MAX (255)
-
-/**
-* @def LVVC_OPERATINGMODE_DEFAULT
-* Default of OperatingMode
-* @see LVVC_ControlParams_st
-*/
-#define LVVC_OPERATINGMODE_DEFAULT (LVM_MODE_OFF)
-
-/**
-* @def LVVC_MODE_DEFAULT
-* Default of mode
-* @see LVVC_ControlParams_st
-*/
-#define LVVC_MODE_DEFAULT (0)
-
-/**
-* @def LVVC_GAIN_LIN_MAX_DEFAULT
-* Default of Gain_Lin_Max
-* @see LVVC_ControlParams_st
-*/
-#define LVVC_GAIN_LIN_MAX_DEFAULT (1286)
-/**
-* @def LVVC_GAIN_LIN_MAX_MIN
-* MinValue of Gain_Lin_Max
-* @see LVVC_ControlParams_st
-*/
-#define LVVC_GAIN_LIN_MAX_MIN (512)
-/**
-* @def LVVC_GAIN_LIN_MAX_MAX
-* MaxValue of Gain_Lin_Max
-* @see LVVC_ControlParams_st
-*/
-#define LVVC_GAIN_LIN_MAX_MAX (32767)
-
-/**
-* @def LVVC_NOISE_SENSITIVITY_DEFAULT
-* Default of Noise_Sensitivity
-* @see LVVC_ControlParams_st
-*/
-#define LVVC_NOISE_SENSITIVITY_DEFAULT (20000)
-/**
-* @def LVVC_NOISE_SENSITIVITY_MIN
-* MinValue of Noise_Sensitivity
-* @see LVVC_ControlParams_st
-*/
-#define LVVC_NOISE_SENSITIVITY_MIN (-6709)
-/**
-* @def LVVC_NOISE_SENSITIVITY_MAX
-* MaxValue of Noise_Sensitivity
-* @see LVVC_ControlParams_st
-*/
-#define LVVC_NOISE_SENSITIVITY_MAX (32767)
-
-/**
-* @def LVVC_AVL_TARGET_LEVEL_LIN_DEFAULT
-* Default of AVL_Target_level_lin
-* @see LVVC_ControlParams_st
-*/
-#define LVVC_AVL_TARGET_LEVEL_LIN_DEFAULT (16384)
-/**
-* @def LVVC_AVL_TARGET_LEVEL_LIN_MIN
-* MinValue of AVL_Target_level_lin
-* @see LVVC_ControlParams_st
-*/
-#define LVVC_AVL_TARGET_LEVEL_LIN_MIN (0)
-/**
-* @def LVVC_AVL_TARGET_LEVEL_LIN_MAX
-* MaxValue of AVL_Target_level_lin
-* @see LVVC_ControlParams_st
-*/
-#define LVVC_AVL_TARGET_LEVEL_LIN_MAX (32767)
-
-/**
-* @def LVVC_AVL_MINGAINLIN_DEFAULT
-* Default of AVL_MinGainLin
-* @see LVVC_ControlParams_st
-*/
-#define LVVC_AVL_MINGAINLIN_DEFAULT (256)
-/**
-* @def LVVC_AVL_MINGAINLIN_MIN
-* MinValue of AVL_MinGainLin
-* @see LVVC_ControlParams_st
-*/
-#define LVVC_AVL_MINGAINLIN_MIN (0)
-/**
-* @def LVVC_AVL_MINGAINLIN_MAX
-* MaxValue of AVL_MinGainLin
-* @see LVVC_ControlParams_st
-*/
-#define LVVC_AVL_MINGAINLIN_MAX (512)
-
-/**
-* @def LVVC_AVL_MAXGAINLIN_DEFAULT
-* Default of AVL_MaxGainLin
-* @see LVVC_ControlParams_st
-*/
-#define LVVC_AVL_MAXGAINLIN_DEFAULT (8192)
-/**
-* @def LVVC_AVL_MAXGAINLIN_MIN
-* MinValue of AVL_MaxGainLin
-* @see LVVC_ControlParams_st
-*/
-#define LVVC_AVL_MAXGAINLIN_MIN (512)
-/**
-* @def LVVC_AVL_MAXGAINLIN_MAX
-* MaxValue of AVL_MaxGainLin
-* @see LVVC_ControlParams_st
-*/
-#define LVVC_AVL_MAXGAINLIN_MAX (32767)
-
-/**
-* @def LVVC_AVL_NOMINALGAIN_DEFAULT
-* Default of AVL_NominalGain
-* @see LVVC_ControlParams_st
-*/
-#define LVVC_AVL_NOMINALGAIN_DEFAULT (512)
-/**
-* @def LVVC_AVL_NOMINALGAIN_MIN
-* MinValue of AVL_NominalGain
-* @see LVVC_ControlParams_st
-*/
-#define LVVC_AVL_NOMINALGAIN_MIN (0)
-/**
-* @def LVVC_AVL_NOMINALGAIN_MAX
-* MaxValue of AVL_NominalGain
-* @see LVVC_ControlParams_st
-*/
-#define LVVC_AVL_NOMINALGAIN_MAX (32767)
-
-/**
-* @def LVVC_AVL_ATTACK_DEFAULT
-* Default of AVL_Attack
-* @see LVVC_ControlParams_st
-*/
-#define LVVC_AVL_ATTACK_DEFAULT (12055)
-/**
-* @def LVVC_AVL_ATTACK_MIN
-* MinValue of AVL_Attack
-* @see LVVC_ControlParams_st
-*/
-#define LVVC_AVL_ATTACK_MIN (0)
-/**
-* @def LVVC_AVL_ATTACK_MAX
-* MaxValue of AVL_Attack
-* @see LVVC_ControlParams_st
-*/
-#define LVVC_AVL_ATTACK_MAX (32767)
-
-/**
-* @def LVVC_AVL_RELEASE_DEFAULT
-* Default of AVL_Release
-* @see LVVC_ControlParams_st
-*/
-#define LVVC_AVL_RELEASE_DEFAULT (32604)
-/**
-* @def LVVC_AVL_RELEASE_MIN
-* MinValue of AVL_Release
-* @see LVVC_ControlParams_st
-*/
-#define LVVC_AVL_RELEASE_MIN (0)
-/**
-* @def LVVC_AVL_RELEASE_MAX
-* MaxValue of AVL_Release
-* @see LVVC_ControlParams_st
-*/
-#define LVVC_AVL_RELEASE_MAX (32767)
-
-/**
-* @def LVVC_AVL_RELEASEMAX_DEFAULT
-* Default of AVL_ReleaseMax
-* @see LVVC_ControlParams_st
-*/
-#define LVVC_AVL_RELEASEMAX_DEFAULT (32441)
-/**
-* @def LVVC_AVL_RELEASEMAX_MIN
-* MinValue of AVL_ReleaseMax
-* @see LVVC_ControlParams_st
-*/
-#define LVVC_AVL_RELEASEMAX_MIN (0)
-/**
-* @def LVVC_AVL_RELEASEMAX_MAX
-* MaxValue of AVL_ReleaseMax
-* @see LVVC_ControlParams_st
-*/
-#define LVVC_AVL_RELEASEMAX_MAX (32767)
-
-/**
-* @def LVVC_AVL_LIMIT_MAXOUTPUTLIN_DEFAULT
-* Default of AVL_Limit_MaxOutputLin
-* @see LVVC_ControlParams_st
-*/
-#define LVVC_AVL_LIMIT_MAXOUTPUTLIN_DEFAULT (23170)
-/**
-* @def LVVC_AVL_LIMIT_MAXOUTPUTLIN_MIN
-* MinValue of AVL_Limit_MaxOutputLin
-* @see LVVC_ControlParams_st
-*/
-#define LVVC_AVL_LIMIT_MAXOUTPUTLIN_MIN (0)
-/**
-* @def LVVC_AVL_LIMIT_MAXOUTPUTLIN_MAX
-* MaxValue of AVL_Limit_MaxOutputLin
-* @see LVVC_ControlParams_st
-*/
-#define LVVC_AVL_LIMIT_MAXOUTPUTLIN_MAX (32767)
-
-/**
-* @def LVVC_SPDETECT_THRESHOLD_DEFAULT
-* Default of SpDetect_Threshold
-* @see LVVC_ControlParams_st
-*/
-#define LVVC_SPDETECT_THRESHOLD_DEFAULT (1024)
-/**
-* @def LVVC_SPDETECT_THRESHOLD_MIN
-* MinValue of SpDetect_Threshold
-* @see LVVC_ControlParams_st
-*/
-#define LVVC_SPDETECT_THRESHOLD_MIN (0)
-/**
-* @def LVVC_SPDETECT_THRESHOLD_MAX
-* MaxValue of SpDetect_Threshold
-* @see LVVC_ControlParams_st
-*/
-#define LVVC_SPDETECT_THRESHOLD_MAX (32767)
-
-/**
-* @def LVFENS_OPERATINGMODE_DEFAULT
-* Default of OperatingMode
-* @see LVFENS_ControlParams_st
-*/
-#define LVFENS_OPERATINGMODE_DEFAULT (LVM_MODE_OFF)
-
-/**
-* @def LVFENS_FENS_LIMIT_NS_DEFAULT
-* Default of FENS_limit_NS
-* @see LVFENS_ControlParams_st
-*/
-#define LVFENS_FENS_LIMIT_NS_DEFAULT (10976)
-/**
-* @def LVFENS_FENS_LIMIT_NS_MIN
-* MinValue of FENS_limit_NS
-* @see LVFENS_ControlParams_st
-*/
-#define LVFENS_FENS_LIMIT_NS_MIN (0)
-/**
-* @def LVFENS_FENS_LIMIT_NS_MAX
-* MaxValue of FENS_limit_NS
-* @see LVFENS_ControlParams_st
-*/
-#define LVFENS_FENS_LIMIT_NS_MAX (32767)
-
-/**
-* @def LVFENS_MODE_DEFAULT
-* Default of Mode
-* @see LVFENS_ControlParams_st
-*/
-#define LVFENS_MODE_DEFAULT (0)
-
-/**
-* @def LVWM_OPERATINGMODE_DEFAULT
-* Default of OperatingMode
-* @see LVWM_ControlParams_st
-*/
-#define LVWM_OPERATINGMODE_DEFAULT (LVM_MODE_OFF)
-
-/**
-* @def LVWM_MODE_DEFAULT
-* Default of mode
-* @see LVWM_ControlParams_st
-*/
-#define LVWM_MODE_DEFAULT (7)
-
-/**
-* @def LVWM_AVL_TARGET_LEVEL_LIN_DEFAULT
-* Default of AVL_Target_level_lin
-* @see LVWM_ControlParams_st
-*/
-#define LVWM_AVL_TARGET_LEVEL_LIN_DEFAULT (16384)
-/**
-* @def LVWM_AVL_TARGET_LEVEL_LIN_MIN
-* MinValue of AVL_Target_level_lin
-* @see LVWM_ControlParams_st
-*/
-#define LVWM_AVL_TARGET_LEVEL_LIN_MIN (0)
-/**
-* @def LVWM_AVL_TARGET_LEVEL_LIN_MAX
-* MaxValue of AVL_Target_level_lin
-* @see LVWM_ControlParams_st
-*/
-#define LVWM_AVL_TARGET_LEVEL_LIN_MAX (32767)
-
-/**
-* @def LVWM_AVL_MINGAINLIN_DEFAULT
-* Default of AVL_MinGainLin
-* @see LVWM_ControlParams_st
-*/
-#define LVWM_AVL_MINGAINLIN_DEFAULT (128)
-/**
-* @def LVWM_AVL_MINGAINLIN_MIN
-* MinValue of AVL_MinGainLin
-* @see LVWM_ControlParams_st
-*/
-#define LVWM_AVL_MINGAINLIN_MIN (0)
-/**
-* @def LVWM_AVL_MINGAINLIN_MAX
-* MaxValue of AVL_MinGainLin
-* @see LVWM_ControlParams_st
-*/
-#define LVWM_AVL_MINGAINLIN_MAX (512)
-
-/**
-* @def LVWM_AVL_MAXGAINLIN_DEFAULT
-* Default of AVL_MaxGainLin
-* @see LVWM_ControlParams_st
-*/
-#define LVWM_AVL_MAXGAINLIN_DEFAULT (8189)
-/**
-* @def LVWM_AVL_MAXGAINLIN_MIN
-* MinValue of AVL_MaxGainLin
-* @see LVWM_ControlParams_st
-*/
-#define LVWM_AVL_MAXGAINLIN_MIN (512)
-/**
-* @def LVWM_AVL_MAXGAINLIN_MAX
-* MaxValue of AVL_MaxGainLin
-* @see LVWM_ControlParams_st
-*/
-#define LVWM_AVL_MAXGAINLIN_MAX (32767)
-
-/**
-* @def LVWM_AVL_ATTACK_DEFAULT
-* Default of AVL_Attack
-* @see LVWM_ControlParams_st
-*/
-#define LVWM_AVL_ATTACK_DEFAULT (25520)
-/**
-* @def LVWM_AVL_ATTACK_MIN
-* MinValue of AVL_Attack
-* @see LVWM_ControlParams_st
-*/
-#define LVWM_AVL_ATTACK_MIN (0)
-/**
-* @def LVWM_AVL_ATTACK_MAX
-* MaxValue of AVL_Attack
-* @see LVWM_ControlParams_st
-*/
-#define LVWM_AVL_ATTACK_MAX (32767)
-
-/**
-* @def LVWM_AVL_RELEASE_DEFAULT
-* Default of AVL_Release
-* @see LVWM_ControlParams_st
-*/
-#define LVWM_AVL_RELEASE_DEFAULT (32685)
-/**
-* @def LVWM_AVL_RELEASE_MIN
-* MinValue of AVL_Release
-* @see LVWM_ControlParams_st
-*/
-#define LVWM_AVL_RELEASE_MIN (0)
-/**
-* @def LVWM_AVL_RELEASE_MAX
-* MaxValue of AVL_Release
-* @see LVWM_ControlParams_st
-*/
-#define LVWM_AVL_RELEASE_MAX (32767)
-
-/**
-* @def LVWM_AVL_LIMIT_MAXOUTPUTLIN_DEFAULT
-* Default of AVL_Limit_MaxOutputLin
-* @see LVWM_ControlParams_st
-*/
-#define LVWM_AVL_LIMIT_MAXOUTPUTLIN_DEFAULT (23197)
-/**
-* @def LVWM_AVL_LIMIT_MAXOUTPUTLIN_MIN
-* MinValue of AVL_Limit_MaxOutputLin
-* @see LVWM_ControlParams_st
-*/
-#define LVWM_AVL_LIMIT_MAXOUTPUTLIN_MIN (0)
-/**
-* @def LVWM_AVL_LIMIT_MAXOUTPUTLIN_MAX
-* MaxValue of AVL_Limit_MaxOutputLin
-* @see LVWM_ControlParams_st
-*/
-#define LVWM_AVL_LIMIT_MAXOUTPUTLIN_MAX (32767)
-
-/**
-* @def LVWM_SPDETECT_THRESHOLD_DEFAULT
-* Default of SpDetect_Threshold
-* @see LVWM_ControlParams_st
-*/
-#define LVWM_SPDETECT_THRESHOLD_DEFAULT (9216)
-/**
-* @def LVWM_SPDETECT_THRESHOLD_MIN
-* MinValue of SpDetect_Threshold
-* @see LVWM_ControlParams_st
-*/
-#define LVWM_SPDETECT_THRESHOLD_MIN (0)
-/**
-* @def LVWM_SPDETECT_THRESHOLD_MAX
-* MaxValue of SpDetect_Threshold
-* @see LVWM_ControlParams_st
-*/
-#define LVWM_SPDETECT_THRESHOLD_MAX (32767)
-
-/**
-* @def LVDRC_OPERATINGMODE_DEFAULT
-* Default of OperatingMode
-* @see LVDRC_ControlParams_st
-*/
-#define LVDRC_OPERATINGMODE_DEFAULT (LVM_MODE_OFF)
-
-/**
-* @def LVDRC_NUMKNEES_DEFAULT
-* Default of NumKnees
-* @see LVDRC_ControlParams_st
-*/
-#define LVDRC_NUMKNEES_DEFAULT (5)
-/**
-* @def LVDRC_NUMKNEES_MIN
-* MinValue of NumKnees
-* @see LVDRC_ControlParams_st
-*/
-#define LVDRC_NUMKNEES_MIN (1)
-/**
-* @def LVDRC_NUMKNEES_MAX
-* MaxValue of NumKnees
-* @see LVDRC_ControlParams_st
-*/
-#define LVDRC_NUMKNEES_MAX (5)
-
-/**
-* @def LVDRC_COMPRESSORCURVEINPUTLEVELS_DEFAULT
-* Default of CompressorCurveInputLevels
-* @see LVDRC_ControlParams_st
-*/
-#define LVDRC_COMPRESSORCURVEINPUTLEVELS_DEFAULT {-96,-70,-50, -24, 0}
-/**
-* @def LVDRC_COMPRESSORCURVEINPUTLEVELS_MIN
-* MinValue of CompressorCurveInputLevels
-* @see LVDRC_ControlParams_st
-*/
-#define LVDRC_COMPRESSORCURVEINPUTLEVELS_MIN (-96)
-/**
-* @def LVDRC_COMPRESSORCURVEINPUTLEVELS_MAX
-* MaxValue of CompressorCurveInputLevels
-* @see LVDRC_ControlParams_st
-*/
-#define LVDRC_COMPRESSORCURVEINPUTLEVELS_MAX (0)
-/**
-* @def LVDRC_COMPRESSORCURVEINPUTLEVELS_LENGTH
-* Length of CompressorCurveInputLevels
-* @see LVDRC_ControlParams_st
-*/
-#define LVDRC_COMPRESSORCURVEINPUTLEVELS_LENGTH (5)
-
-/**
-* @def LVDRC_COMPRESSORCURVEOUTPUTLEVELS_DEFAULT
-* Default of CompressorCurveOutputLevels
-* @see LVDRC_ControlParams_st
-*/
-#define LVDRC_COMPRESSORCURVEOUTPUTLEVELS_DEFAULT {-96,-70,-38,-12,0}
-/**
-* @def LVDRC_COMPRESSORCURVEOUTPUTLEVELS_MIN
-* MinValue of CompressorCurveOutputLevels
-* @see LVDRC_ControlParams_st
-*/
-#define LVDRC_COMPRESSORCURVEOUTPUTLEVELS_MIN (-96)
-/**
-* @def LVDRC_COMPRESSORCURVEOUTPUTLEVELS_MAX
-* MaxValue of CompressorCurveOutputLevels
-* @see LVDRC_ControlParams_st
-*/
-#define LVDRC_COMPRESSORCURVEOUTPUTLEVELS_MAX (0)
-/**
-* @def LVDRC_COMPRESSORCURVEOUTPUTLEVELS_LENGTH
-* Length of CompressorCurveOutputLevels
-* @see LVDRC_ControlParams_st
-*/
-#define LVDRC_COMPRESSORCURVEOUTPUTLEVELS_LENGTH (5)
-
-/**
-* @def LVDRC_ATTACKTIME_DEFAULT
-* Default of AttackTime
-* @see LVDRC_ControlParams_st
-*/
-#define LVDRC_ATTACKTIME_DEFAULT (50)
-/**
-* @def LVDRC_ATTACKTIME_MIN
-* MinValue of AttackTime
-* @see LVDRC_ControlParams_st
-*/
-#define LVDRC_ATTACKTIME_MIN (0)
-/**
-* @def LVDRC_ATTACKTIME_MAX
-* MaxValue of AttackTime
-* @see LVDRC_ControlParams_st
-*/
-#define LVDRC_ATTACKTIME_MAX (32767)
-
-/**
-* @def LVDRC_RELEASETIME_DEFAULT
-* Default of ReleaseTime
-* @see LVDRC_ControlParams_st
-*/
-#define LVDRC_RELEASETIME_DEFAULT (50)
-/**
-* @def LVDRC_RELEASETIME_MIN
-* MinValue of ReleaseTime
-* @see LVDRC_ControlParams_st
-*/
-#define LVDRC_RELEASETIME_MIN (0)
-/**
-* @def LVDRC_RELEASETIME_MAX
-* MaxValue of ReleaseTime
-* @see LVDRC_ControlParams_st
-*/
-#define LVDRC_RELEASETIME_MAX (32767)
-
-/**
-* @def LVDRC_LIMITEROPERATINGMODE_DEFAULT
-* Default of LimiterOperatingMode
-* @see LVDRC_ControlParams_st
-*/
-#define LVDRC_LIMITEROPERATINGMODE_DEFAULT (LVM_MODE_OFF)
-
-/**
-* @def LVDRC_LIMITLEVEL_DEFAULT
-* Default of LimitLevel
-* @see LVDRC_ControlParams_st
-*/
-#define LVDRC_LIMITLEVEL_DEFAULT (0)
-/**
-* @def LVDRC_LIMITLEVEL_MIN
-* MinValue of LimitLevel
-* @see LVDRC_ControlParams_st
-*/
-#define LVDRC_LIMITLEVEL_MIN (-96)
-/**
-* @def LVDRC_LIMITLEVEL_MAX
-* MaxValue of LimitLevel
-* @see LVDRC_ControlParams_st
-*/
-#define LVDRC_LIMITLEVEL_MAX (0)
-
-/**
-* @def LVNG_OPERATINGMODE_DEFAULT
-* Default of OperatingMode
-* @see LVNG_ControlParams_st
-*/
-#define LVNG_OPERATINGMODE_DEFAULT (LVM_MODE_OFF)
-
-/**
-* @def LVNG_NUMKNEES_DEFAULT
-* Default of NumKnees
-* @see LVNG_ControlParams_st
-*/
-#define LVNG_NUMKNEES_DEFAULT (5)
-/**
-* @def LVNG_NUMKNEES_MIN
-* MinValue of NumKnees
-* @see LVNG_ControlParams_st
-*/
-#define LVNG_NUMKNEES_MIN (1)
-/**
-* @def LVNG_NUMKNEES_MAX
-* MaxValue of NumKnees
-* @see LVNG_ControlParams_st
-*/
-#define LVNG_NUMKNEES_MAX (5)
-
-/**
-* @def LVNG_COMPRESSORCURVEINPUTLEVELS_DEFAULT
-* Default of CompressorCurveInputLevels
-* @see LVNG_ControlParams_st
-*/
-#define LVNG_COMPRESSORCURVEINPUTLEVELS_DEFAULT {-80,-70,-50, -24, 0}
-/**
-* @def LVNG_COMPRESSORCURVEINPUTLEVELS_MIN
-* MinValue of CompressorCurveInputLevels
-* @see LVNG_ControlParams_st
-*/
-#define LVNG_COMPRESSORCURVEINPUTLEVELS_MIN (-96)
-/**
-* @def LVNG_COMPRESSORCURVEINPUTLEVELS_MAX
-* MaxValue of CompressorCurveInputLevels
-* @see LVNG_ControlParams_st
-*/
-#define LVNG_COMPRESSORCURVEINPUTLEVELS_MAX (0)
-/**
-* @def LVNG_COMPRESSORCURVEINPUTLEVELS_LENGTH
-* Length of CompressorCurveInputLevels
-* @see LVNG_ControlParams_st
-*/
-#define LVNG_COMPRESSORCURVEINPUTLEVELS_LENGTH (5)
-
-/**
-* @def LVNG_COMPRESSORCURVEOUTPUTLEVELS_DEFAULT
-* Default of CompressorCurveOutputLevels
-* @see LVNG_ControlParams_st
-*/
-#define LVNG_COMPRESSORCURVEOUTPUTLEVELS_DEFAULT {-96,-80,-50, -24, 0}
-/**
-* @def LVNG_COMPRESSORCURVEOUTPUTLEVELS_MIN
-* MinValue of CompressorCurveOutputLevels
-* @see LVNG_ControlParams_st
-*/
-#define LVNG_COMPRESSORCURVEOUTPUTLEVELS_MIN (-96)
-/**
-* @def LVNG_COMPRESSORCURVEOUTPUTLEVELS_MAX
-* MaxValue of CompressorCurveOutputLevels
-* @see LVNG_ControlParams_st
-*/
-#define LVNG_COMPRESSORCURVEOUTPUTLEVELS_MAX (0)
-/**
-* @def LVNG_COMPRESSORCURVEOUTPUTLEVELS_LENGTH
-* Length of CompressorCurveOutputLevels
-* @see LVNG_ControlParams_st
-*/
-#define LVNG_COMPRESSORCURVEOUTPUTLEVELS_LENGTH (5)
-
-/**
-* @def LVNG_ATTACKTIME_DEFAULT
-* Default of AttackTime
-* @see LVNG_ControlParams_st
-*/
-#define LVNG_ATTACKTIME_DEFAULT (50)
-/**
-* @def LVNG_ATTACKTIME_MIN
-* MinValue of AttackTime
-* @see LVNG_ControlParams_st
-*/
-#define LVNG_ATTACKTIME_MIN (0)
-/**
-* @def LVNG_ATTACKTIME_MAX
-* MaxValue of AttackTime
-* @see LVNG_ControlParams_st
-*/
-#define LVNG_ATTACKTIME_MAX (32767)
-
-/**
-* @def LVNG_RELEASETIME_DEFAULT
-* Default of ReleaseTime
-* @see LVNG_ControlParams_st
-*/
-#define LVNG_RELEASETIME_DEFAULT (50)
-/**
-* @def LVNG_RELEASETIME_MIN
-* MinValue of ReleaseTime
-* @see LVNG_ControlParams_st
-*/
-#define LVNG_RELEASETIME_MIN (0)
-/**
-* @def LVNG_RELEASETIME_MAX
-* MaxValue of ReleaseTime
-* @see LVNG_ControlParams_st
-*/
-#define LVNG_RELEASETIME_MAX (32767)
-
-/**
-* @def LVNLPP_NLPP_LIMIT_DEFAULT
-* Default of NLPP_Limit
-* @see LVNLPP_ControlParams_st
-*/
-#define LVNLPP_NLPP_LIMIT_DEFAULT (0)
-/**
-* @def LVNLPP_NLPP_LIMIT_MIN
-* MinValue of NLPP_Limit
-* @see LVNLPP_ControlParams_st
-*/
-#define LVNLPP_NLPP_LIMIT_MIN (-24)
-/**
-* @def LVNLPP_NLPP_LIMIT_MAX
-* MaxValue of NLPP_Limit
-* @see LVNLPP_ControlParams_st
-*/
-#define LVNLPP_NLPP_LIMIT_MAX (0)
-
-/**
-* @def LVNLPP_NLPP_HPF_CORNERFREQ_DEFAULT
-* Default of NLPP_HPF_CornerFreq
-* @see LVNLPP_ControlParams_st
-*/
-#define LVNLPP_NLPP_HPF_CORNERFREQ_DEFAULT (50)
-/**
-* @def LVNLPP_NLPP_HPF_CORNERFREQ_MIN
-* MinValue of NLPP_HPF_CornerFreq
-* @see LVNLPP_ControlParams_st
-*/
-#define LVNLPP_NLPP_HPF_CORNERFREQ_MIN (50)
-/**
-* @def LVNLPP_NLPP_HPF_CORNERFREQ_MAX
-* MaxValue of NLPP_HPF_CornerFreq
-* @see LVNLPP_ControlParams_st
-*/
-#define LVNLPP_NLPP_HPF_CORNERFREQ_MAX (1000)
-
-/**
-* @def LVEQ_EQ_LENGTH_DEFAULT
-* Default of EQ_Length
-* @see LVEQ_ControlParams_st
-*/
-#define LVEQ_EQ_LENGTH_DEFAULT (64)
-/**
-* @def LVEQ_EQ_LENGTH_MIN
-* MinValue of EQ_Length
-* @see LVEQ_ControlParams_st
-*/
-#define LVEQ_EQ_LENGTH_MIN (8)
-/**
-* @def LVEQ_EQ_LENGTH_MAX
-* MaxValue of EQ_Length
-* @see LVEQ_ControlParams_st
-*/
-#define LVEQ_EQ_LENGTH_MAX (64)
-
-/**
-* @def LVEQ_EQ_COEFS_DEFAULT
-* Default of EQ_Coefs
-* @see LVEQ_ControlParams_st
-*/
-#define LVEQ_EQ_COEFS_DEFAULT {4096,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}
-/**
-* @def LVEQ_EQ_COEFS_MIN
-* MinValue of EQ_Coefs
-* @see LVEQ_ControlParams_st
-*/
-#define LVEQ_EQ_COEFS_MIN (-32768)
-/**
-* @def LVEQ_EQ_COEFS_MAX
-* MaxValue of EQ_Coefs
-* @see LVEQ_ControlParams_st
-*/
-#define LVEQ_EQ_COEFS_MAX (32767)
-/**
-* @def LVEQ_EQ_COEFS_LENGTH
-* Length of EQ_Coefs
-* @see LVEQ_ControlParams_st
-*/
-#define LVEQ_EQ_COEFS_LENGTH (64)
-
-/**
-* @def LVVOL_VOL_OPERATINGMODE_DEFAULT
-* Default of VOL_OperatingMode
-* @see LVVOL_ControlParams_st
-*/
-#define LVVOL_VOL_OPERATINGMODE_DEFAULT (LVM_MODE_OFF)
-
-/**
-* @def LVVOL_VOL_GAIN_DEFAULT
-* Default of VOL_Gain
-* @see LVVOL_ControlParams_st
-*/
-#define LVVOL_VOL_GAIN_DEFAULT (0)
-/**
-* @def LVVOL_VOL_GAIN_MIN
-* MinValue of VOL_Gain
-* @see LVVOL_ControlParams_st
-*/
-#define LVVOL_VOL_GAIN_MIN (-96)
-/**
-* @def LVVOL_VOL_GAIN_MAX
-* MaxValue of VOL_Gain
-* @see LVVOL_ControlParams_st
-*/
-#define LVVOL_VOL_GAIN_MAX (24)
-
-/**
-* @def LVHPF_HPF_OPERATINGMODE_DEFAULT
-* Default of HPF_OperatingMode
-* @see LVHPF_ControlParams_st
-*/
-#define LVHPF_HPF_OPERATINGMODE_DEFAULT (LVM_MODE_OFF)
-
-/**
-* @def LVHPF_HPF_CORNERFREQ_DEFAULT
-* Default of HPF_CornerFreq
-* @see LVHPF_ControlParams_st
-*/
-#define LVHPF_HPF_CORNERFREQ_DEFAULT (50)
-/**
-* @def LVHPF_HPF_CORNERFREQ_MIN
-* MinValue of HPF_CornerFreq
-* @see LVHPF_ControlParams_st
-*/
-#define LVHPF_HPF_CORNERFREQ_MIN (50)
-/**
-* @def LVHPF_HPF_CORNERFREQ_MAX
-* MaxValue of HPF_CornerFreq
-* @see LVHPF_ControlParams_st
-*/
-#define LVHPF_HPF_CORNERFREQ_MAX (1500)
-
-/**
-* @def LVMUTE_MUTE_DEFAULT
-* Default of Mute
-* @see LVMUTE_ControlParams_st
-*/
-#define LVMUTE_MUTE_DEFAULT (LVM_MODE_OFF)
-
-/**
-* @def LVVE_RX_OPERATINGMODE_DEFAULT
-* Default of OperatingMode
-* @see LVVE_Rx_ControlParams_st
-*/
-#define LVVE_RX_OPERATINGMODE_DEFAULT (LVVE_RX_MODE_OFF)
-
-/**
-* @def LVVE_RX_MUTE_DEFAULT
-* Default of Mute
-* @see LVVE_Rx_ControlParams_st
-*/
-#define LVVE_RX_MUTE_DEFAULT (LVM_MODE_OFF)
-
-/**
-* @def LVVE_RX_VOL_OPERATINGMODE_DEFAULT
-* Default of VOL_OperatingMode
-* @see LVVE_Rx_ControlParams_st
-*/
-#define LVVE_RX_VOL_OPERATINGMODE_DEFAULT (LVM_MODE_OFF)
-
-/**
-* @def LVVE_RX_VOL_GAIN_DEFAULT
-* Default of VOL_Gain
-* @see LVVE_Rx_ControlParams_st
-*/
-#define LVVE_RX_VOL_GAIN_DEFAULT (0)
-/**
-* @def LVVE_RX_VOL_GAIN_MIN
-* MinValue of VOL_Gain
-* @see LVVE_Rx_ControlParams_st
-*/
-#define LVVE_RX_VOL_GAIN_MIN (-96)
-/**
-* @def LVVE_RX_VOL_GAIN_MAX
-* MaxValue of VOL_Gain
-* @see LVVE_Rx_ControlParams_st
-*/
-#define LVVE_RX_VOL_GAIN_MAX (24)
-
-
-/**
-* @def LVVE_RX_NLPP_OPERATINGMODE_DEFAULT
-* Default of NLPP_OperatingMode
-* @see LVVE_Rx_ControlParams_st
-*/
-#define LVVE_RX_NLPP_OPERATINGMODE_DEFAULT (LVM_MODE_OFF)
-
-
-
-/**
-* @def LVVE_RX_EQ_OPERATINGMODE_DEFAULT
-* Default of EQ_OperatingMode
-* @see LVVE_Rx_ControlParams_st
-*/
-#define LVVE_RX_EQ_OPERATINGMODE_DEFAULT (LVM_MODE_OFF)
-
-
-
-/**
-* @def LVVE_RX_HPF_OPERATINGMODE_DEFAULT
-* Default of HPF_OperatingMode
-* @see LVVE_Rx_ControlParams_st
-*/
-#define LVVE_RX_HPF_OPERATINGMODE_DEFAULT (LVM_MODE_OFF)
-
-/**
-* @def LVVE_RX_HPF_CORNERFREQ_DEFAULT
-* Default of HPF_CornerFreq
-* @see LVVE_Rx_ControlParams_st
-*/
-#define LVVE_RX_HPF_CORNERFREQ_DEFAULT (50)
-/**
-* @def LVVE_RX_HPF_CORNERFREQ_MIN
-* MinValue of HPF_CornerFreq
-* @see LVVE_Rx_ControlParams_st
-*/
-#define LVVE_RX_HPF_CORNERFREQ_MIN (50)
-/**
-* @def LVVE_RX_HPF_CORNERFREQ_MAX
-* MaxValue of HPF_CornerFreq
-* @see LVVE_Rx_ControlParams_st
-*/
-#define LVVE_RX_HPF_CORNERFREQ_MAX (1500)
-
-
-
-/**
-* @def LVNV_OPERATINGMODE_DEFAULT
-* Default of OperatingMode
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_OPERATINGMODE_DEFAULT (LVM_MODE_OFF)
-
-/**
-* @def LVNV_MODE_DEFAULT
-* Default of Mode
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_MODE_DEFAULT (18935)
-
-/**
-* @def LVNV_MODE2_DEFAULT
-* Default of Mode2
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_MODE2_DEFAULT (14)
-
-/**
-* @def LVNV_TUNING_MODE_DEFAULT
-* Default of Tuning_mode
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_TUNING_MODE_DEFAULT (0)
-
-/**
-* @def LVNV_INPUT_GAIN_MIC0_DEFAULT
-* Default of Input_Gain_Mic0
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_INPUT_GAIN_MIC0_DEFAULT (8192)
-/**
-* @def LVNV_INPUT_GAIN_MIC0_MIN
-* MinValue of Input_Gain_Mic0
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_INPUT_GAIN_MIC0_MIN (0)
-/**
-* @def LVNV_INPUT_GAIN_MIC0_MAX
-* MaxValue of Input_Gain_Mic0
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_INPUT_GAIN_MIC0_MAX (32767)
-
-/**
-* @def LVNV_INPUT_GAIN_MIC1_DEFAULT
-* Default of Input_Gain_Mic1
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_INPUT_GAIN_MIC1_DEFAULT (8192)
-/**
-* @def LVNV_INPUT_GAIN_MIC1_MIN
-* MinValue of Input_Gain_Mic1
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_INPUT_GAIN_MIC1_MIN (0)
-/**
-* @def LVNV_INPUT_GAIN_MIC1_MAX
-* MaxValue of Input_Gain_Mic1
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_INPUT_GAIN_MIC1_MAX (32767)
-
-/**
-* @def LVNV_OUTPUT_GAIN_DEFAULT
-* Default of Output_Gain
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_OUTPUT_GAIN_DEFAULT (2048)
-/**
-* @def LVNV_OUTPUT_GAIN_MIN
-* MinValue of Output_Gain
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_OUTPUT_GAIN_MIN (0)
-/**
-* @def LVNV_OUTPUT_GAIN_MAX
-* MaxValue of Output_Gain
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_OUTPUT_GAIN_MAX (32767)
-
-/**
-* @def LVNV_NLMS0_LB_TAPS_DEFAULT
-* Default of NLMS0_LB_taps
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_NLMS0_LB_TAPS_DEFAULT (32)
-/**
-* @def LVNV_NLMS0_LB_TAPS_MIN
-* MinValue of NLMS0_LB_taps
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_NLMS0_LB_TAPS_MIN (16)
-/**
-* @def LVNV_NLMS0_LB_TAPS_MAX
-* MaxValue of NLMS0_LB_taps
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_NLMS0_LB_TAPS_MAX (64)
-
-/**
-* @def LVNV_NLMS0_LB_TWOALPHA_DEFAULT
-* Default of NLMS0_LB_twoalpha
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_NLMS0_LB_TWOALPHA_DEFAULT (8192)
-/**
-* @def LVNV_NLMS0_LB_TWOALPHA_MIN
-* MinValue of NLMS0_LB_twoalpha
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_NLMS0_LB_TWOALPHA_MIN (0)
-/**
-* @def LVNV_NLMS0_LB_TWOALPHA_MAX
-* MaxValue of NLMS0_LB_twoalpha
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_NLMS0_LB_TWOALPHA_MAX (32767)
-
-/**
-* @def LVNV_NLMS0_LB_ERL_DEFAULT
-* Default of NLMS0_LB_erl
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_NLMS0_LB_ERL_DEFAULT (1000)
-/**
-* @def LVNV_NLMS0_LB_ERL_MIN
-* MinValue of NLMS0_LB_erl
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_NLMS0_LB_ERL_MIN (64)
-/**
-* @def LVNV_NLMS0_LB_ERL_MAX
-* MaxValue of NLMS0_LB_erl
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_NLMS0_LB_ERL_MAX (32767)
-
-/**
-* @def LVNV_NLMS0_HB_TAPS_DEFAULT
-* Default of NLMS0_HB_taps
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_NLMS0_HB_TAPS_DEFAULT (24)
-/**
-* @def LVNV_NLMS0_HB_TAPS_MIN
-* MinValue of NLMS0_HB_taps
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_NLMS0_HB_TAPS_MIN (16)
-/**
-* @def LVNV_NLMS0_HB_TAPS_MAX
-* MaxValue of NLMS0_HB_taps
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_NLMS0_HB_TAPS_MAX (64)
-
-/**
-* @def LVNV_NLMS0_HB_TWOALPHA_DEFAULT
-* Default of NLMS0_HB_twoalpha
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_NLMS0_HB_TWOALPHA_DEFAULT (8192)
-/**
-* @def LVNV_NLMS0_HB_TWOALPHA_MIN
-* MinValue of NLMS0_HB_twoalpha
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_NLMS0_HB_TWOALPHA_MIN (0)
-/**
-* @def LVNV_NLMS0_HB_TWOALPHA_MAX
-* MaxValue of NLMS0_HB_twoalpha
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_NLMS0_HB_TWOALPHA_MAX (32767)
-
-/**
-* @def LVNV_NLMS0_HB_ERL_DEFAULT
-* Default of NLMS0_HB_erl
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_NLMS0_HB_ERL_DEFAULT (1000)
-/**
-* @def LVNV_NLMS0_HB_ERL_MIN
-* MinValue of NLMS0_HB_erl
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_NLMS0_HB_ERL_MIN (64)
-/**
-* @def LVNV_NLMS0_HB_ERL_MAX
-* MaxValue of NLMS0_HB_erl
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_NLMS0_HB_ERL_MAX (32767)
-
-/**
-* @def LVNV_NLMS0_PRESET_COEFS_DEFAULT
-* Default of NLMS0_preset_coefs
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_NLMS0_PRESET_COEFS_DEFAULT (0)
-/**
-* @def LVNV_NLMS0_PRESET_COEFS_MIN
-* MinValue of NLMS0_preset_coefs
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_NLMS0_PRESET_COEFS_MIN (0)
-/**
-* @def LVNV_NLMS0_PRESET_COEFS_MAX
-* MaxValue of NLMS0_preset_coefs
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_NLMS0_PRESET_COEFS_MAX (2)
-
-/**
-* @def LVNV_NLMS0_OFFSET_DEFAULT
-* Default of NLMS0_offset
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_NLMS0_OFFSET_DEFAULT (776)
-/**
-* @def LVNV_NLMS0_OFFSET_MIN
-* MinValue of NLMS0_offset
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_NLMS0_OFFSET_MIN (0)
-/**
-* @def LVNV_NLMS0_OFFSET_MAX
-* MaxValue of NLMS0_offset
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_NLMS0_OFFSET_MAX (32767)
-
-/**
-* @def LVNV_NLMS1_LB_TAPS_DEFAULT
-* Default of NLMS1_LB_taps
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_NLMS1_LB_TAPS_DEFAULT (32)
-/**
-* @def LVNV_NLMS1_LB_TAPS_MIN
-* MinValue of NLMS1_LB_taps
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_NLMS1_LB_TAPS_MIN (16)
-/**
-* @def LVNV_NLMS1_LB_TAPS_MAX
-* MaxValue of NLMS1_LB_taps
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_NLMS1_LB_TAPS_MAX (32)
-
-/**
-* @def LVNV_NLMS1_LB_TWOALPHA_DEFAULT
-* Default of NLMS1_LB_twoalpha
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_NLMS1_LB_TWOALPHA_DEFAULT (8192)
-/**
-* @def LVNV_NLMS1_LB_TWOALPHA_MIN
-* MinValue of NLMS1_LB_twoalpha
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_NLMS1_LB_TWOALPHA_MIN (0)
-/**
-* @def LVNV_NLMS1_LB_TWOALPHA_MAX
-* MaxValue of NLMS1_LB_twoalpha
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_NLMS1_LB_TWOALPHA_MAX (32767)
-
-/**
-* @def LVNV_NLMS1_LB_ERL_DEFAULT
-* Default of NLMS1_LB_erl
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_NLMS1_LB_ERL_DEFAULT (1000)
-/**
-* @def LVNV_NLMS1_LB_ERL_MIN
-* MinValue of NLMS1_LB_erl
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_NLMS1_LB_ERL_MIN (64)
-/**
-* @def LVNV_NLMS1_LB_ERL_MAX
-* MaxValue of NLMS1_LB_erl
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_NLMS1_LB_ERL_MAX (32767)
-
-/**
-* @def LVNV_NLMS1_HB_TAPS_DEFAULT
-* Default of NLMS1_HB_taps
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_NLMS1_HB_TAPS_DEFAULT (24)
-/**
-* @def LVNV_NLMS1_HB_TAPS_MIN
-* MinValue of NLMS1_HB_taps
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_NLMS1_HB_TAPS_MIN (16)
-/**
-* @def LVNV_NLMS1_HB_TAPS_MAX
-* MaxValue of NLMS1_HB_taps
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_NLMS1_HB_TAPS_MAX (32)
-
-/**
-* @def LVNV_NLMS1_HB_TWOALPHA_DEFAULT
-* Default of NLMS1_HB_twoalpha
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_NLMS1_HB_TWOALPHA_DEFAULT (8192)
-/**
-* @def LVNV_NLMS1_HB_TWOALPHA_MIN
-* MinValue of NLMS1_HB_twoalpha
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_NLMS1_HB_TWOALPHA_MIN (0)
-/**
-* @def LVNV_NLMS1_HB_TWOALPHA_MAX
-* MaxValue of NLMS1_HB_twoalpha
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_NLMS1_HB_TWOALPHA_MAX (32767)
-
-/**
-* @def LVNV_NLMS1_HB_ERL_DEFAULT
-* Default of NLMS1_HB_erl
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_NLMS1_HB_ERL_DEFAULT (1000)
-/**
-* @def LVNV_NLMS1_HB_ERL_MIN
-* MinValue of NLMS1_HB_erl
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_NLMS1_HB_ERL_MIN (64)
-/**
-* @def LVNV_NLMS1_HB_ERL_MAX
-* MaxValue of NLMS1_HB_erl
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_NLMS1_HB_ERL_MAX (32767)
-
-/**
-* @def LVNV_NLMS1_PRESET_COEFS_DEFAULT
-* Default of NLMS1_preset_coefs
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_NLMS1_PRESET_COEFS_DEFAULT (0)
-/**
-* @def LVNV_NLMS1_PRESET_COEFS_MIN
-* MinValue of NLMS1_preset_coefs
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_NLMS1_PRESET_COEFS_MIN (0)
-/**
-* @def LVNV_NLMS1_PRESET_COEFS_MAX
-* MaxValue of NLMS1_preset_coefs
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_NLMS1_PRESET_COEFS_MAX (2)
-
-/**
-* @def LVNV_NLMS1_OFFSET_DEFAULT
-* Default of NLMS1_offset
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_NLMS1_OFFSET_DEFAULT (776)
-/**
-* @def LVNV_NLMS1_OFFSET_MIN
-* MinValue of NLMS1_offset
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_NLMS1_OFFSET_MIN (0)
-/**
-* @def LVNV_NLMS1_OFFSET_MAX
-* MaxValue of NLMS1_offset
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_NLMS1_OFFSET_MAX (32767)
-
-/**
-* @def LVNV_CAL_MICPOWFLOORMIN_DEFAULT
-* Default of CAL_micPowFloorMin
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_CAL_MICPOWFLOORMIN_DEFAULT (150)
-/**
-* @def LVNV_CAL_MICPOWFLOORMIN_MIN
-* MinValue of CAL_micPowFloorMin
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_CAL_MICPOWFLOORMIN_MIN (0)
-/**
-* @def LVNV_CAL_MICPOWFLOORMIN_MAX
-* MaxValue of CAL_micPowFloorMin
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_CAL_MICPOWFLOORMIN_MAX (32767)
-
-/**
-* @def LVNV_WGTHRESHOLD_DEFAULT
-* Default of WgThreshold
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_WGTHRESHOLD_DEFAULT (32767)
-/**
-* @def LVNV_WGTHRESHOLD_MIN
-* MinValue of WgThreshold
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_WGTHRESHOLD_MIN (0)
-/**
-* @def LVNV_WGTHRESHOLD_MAX
-* MaxValue of WgThreshold
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_WGTHRESHOLD_MAX (32767)
-
-/**
-* @def LVNV_MPTHRESHOLD_DEFAULT
-* Default of MpThreshold
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_MPTHRESHOLD_DEFAULT (6554)
-/**
-* @def LVNV_MPTHRESHOLD_MIN
-* MinValue of MpThreshold
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_MPTHRESHOLD_MIN (0)
-/**
-* @def LVNV_MPTHRESHOLD_MAX
-* MaxValue of MpThreshold
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_MPTHRESHOLD_MAX (32767)
-
-/**
-* @def LVNV_FSB_INIT_TABLE0_DEFAULT
-* Default of FSB_init_table0
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_FSB_INIT_TABLE0_DEFAULT {32767, 0, 0, 0, 0, 0, 0, 0}
-/**
-* @def LVNV_FSB_INIT_TABLE0_MIN
-* MinValue of FSB_init_table0
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_FSB_INIT_TABLE0_MIN (-32768)
-/**
-* @def LVNV_FSB_INIT_TABLE0_MAX
-* MaxValue of FSB_init_table0
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_FSB_INIT_TABLE0_MAX (32767)
-/**
-* @def LVNV_FSB_INIT_TABLE0_LENGTH
-* Length of FSB_init_table0
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_FSB_INIT_TABLE0_LENGTH (8)
-
-/**
-* @def LVNV_FSB_INIT_TABLE1_DEFAULT
-* Default of FSB_init_table1
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_FSB_INIT_TABLE1_DEFAULT {0, 0, 0, 0, 0, 0, 0, 0}
-/**
-* @def LVNV_FSB_INIT_TABLE1_MIN
-* MinValue of FSB_init_table1
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_FSB_INIT_TABLE1_MIN (-32768)
-/**
-* @def LVNV_FSB_INIT_TABLE1_MAX
-* MaxValue of FSB_init_table1
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_FSB_INIT_TABLE1_MAX (32767)
-/**
-* @def LVNV_FSB_INIT_TABLE1_LENGTH
-* Length of FSB_init_table1
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_FSB_INIT_TABLE1_LENGTH (8)
-
-/**
-* @def LVNV_FSB_TAPS_DEFAULT
-* Default of FSB_taps
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_FSB_TAPS_DEFAULT (16)
-/**
-* @def LVNV_FSB_TAPS_MIN
-* MinValue of FSB_taps
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_FSB_TAPS_MIN (8)
-/**
-* @def LVNV_FSB_TAPS_MAX
-* MaxValue of FSB_taps
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_FSB_TAPS_MAX (16)
-
-/**
-* @def LVNV_FSB_TWOALPHA_DEFAULT
-* Default of FSB_twoalpha
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_FSB_TWOALPHA_DEFAULT (655)
-/**
-* @def LVNV_FSB_TWOALPHA_MIN
-* MinValue of FSB_twoalpha
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_FSB_TWOALPHA_MIN (0)
-/**
-* @def LVNV_FSB_TWOALPHA_MAX
-* MaxValue of FSB_twoalpha
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_FSB_TWOALPHA_MAX (32767)
-
-/**
-* @def LVNV_FSB_REF_GAIN_DEFAULT
-* Default of FSB_ref_gain
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_FSB_REF_GAIN_DEFAULT (1024)
-/**
-* @def LVNV_FSB_REF_GAIN_MIN
-* MinValue of FSB_ref_gain
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_FSB_REF_GAIN_MIN (0)
-/**
-* @def LVNV_FSB_REF_GAIN_MAX
-* MaxValue of FSB_ref_gain
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_FSB_REF_GAIN_MAX (32767)
-
-/**
-* @def LVNV_GSC_TAPS_DEFAULT
-* Default of GSC_taps
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_GSC_TAPS_DEFAULT (16)
-/**
-* @def LVNV_GSC_TAPS_MIN
-* MinValue of GSC_taps
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_GSC_TAPS_MIN (8)
-/**
-* @def LVNV_GSC_TAPS_MAX
-* MaxValue of GSC_taps
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_GSC_TAPS_MAX (48)
-
-/**
-* @def LVNV_GSC_TWOALPHA_DEFAULT
-* Default of GSC_twoalpha
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_GSC_TWOALPHA_DEFAULT (1638)
-/**
-* @def LVNV_GSC_TWOALPHA_MIN
-* MinValue of GSC_twoalpha
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_GSC_TWOALPHA_MIN (0)
-/**
-* @def LVNV_GSC_TWOALPHA_MAX
-* MaxValue of GSC_twoalpha
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_GSC_TWOALPHA_MAX (32767)
-
-/**
-* @def LVNV_GSC_ERL_DEFAULT
-* Default of GSC_erl
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_GSC_ERL_DEFAULT (256)
-/**
-* @def LVNV_GSC_ERL_MIN
-* MinValue of GSC_erl
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_GSC_ERL_MIN (64)
-/**
-* @def LVNV_GSC_ERL_MAX
-* MaxValue of GSC_erl
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_GSC_ERL_MAX (32767)
-
-/**
-* @def LVNV_GSC_OFFSET_DEFAULT
-* Default of GSC_offset
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_GSC_OFFSET_DEFAULT (1638)
-/**
-* @def LVNV_GSC_OFFSET_MIN
-* MinValue of GSC_offset
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_GSC_OFFSET_MIN (0)
-/**
-* @def LVNV_GSC_OFFSET_MAX
-* MaxValue of GSC_offset
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_GSC_OFFSET_MAX (32767)
-
-/**
-* @def LVNV_DNNS_ECHOGAMMAHI_DEFAULT
-* Default of DNNS_EchoGammaHi
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_DNNS_ECHOGAMMAHI_DEFAULT (16384)
-/**
-* @def LVNV_DNNS_ECHOGAMMAHI_MIN
-* MinValue of DNNS_EchoGammaHi
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_DNNS_ECHOGAMMAHI_MIN (0)
-/**
-* @def LVNV_DNNS_ECHOGAMMAHI_MAX
-* MaxValue of DNNS_EchoGammaHi
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_DNNS_ECHOGAMMAHI_MAX (32767)
-
-/**
-* @def LVNV_DNNS_ECHOGAMMALO_DEFAULT
-* Default of DNNS_EchoGammaLo
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_DNNS_ECHOGAMMALO_DEFAULT (8192)
-/**
-* @def LVNV_DNNS_ECHOGAMMALO_MIN
-* MinValue of DNNS_EchoGammaLo
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_DNNS_ECHOGAMMALO_MIN (0)
-/**
-* @def LVNV_DNNS_ECHOGAMMALO_MAX
-* MaxValue of DNNS_EchoGammaLo
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_DNNS_ECHOGAMMALO_MAX (32767)
-
-/**
-* @def LVNV_DNNS_ECHOALPHAREV_DEFAULT
-* Default of DNNS_EchoAlphaRev
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_DNNS_ECHOALPHAREV_DEFAULT (12000)
-/**
-* @def LVNV_DNNS_ECHOALPHAREV_MIN
-* MinValue of DNNS_EchoAlphaRev
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_DNNS_ECHOALPHAREV_MIN (0)
-/**
-* @def LVNV_DNNS_ECHOALPHAREV_MAX
-* MaxValue of DNNS_EchoAlphaRev
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_DNNS_ECHOALPHAREV_MAX (32767)
-
-/**
-* @def LVNV_DNNS_ECHOTAILPORTION_DEFAULT
-* Default of DNNS_EchoTailPortion
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_DNNS_ECHOTAILPORTION_DEFAULT (7000)
-/**
-* @def LVNV_DNNS_ECHOTAILPORTION_MIN
-* MinValue of DNNS_EchoTailPortion
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_DNNS_ECHOTAILPORTION_MIN (0)
-/**
-* @def LVNV_DNNS_ECHOTAILPORTION_MAX
-* MaxValue of DNNS_EchoTailPortion
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_DNNS_ECHOTAILPORTION_MAX (32767)
-
-/**
-* @def LVNV_DNNS_NLATTEN_DEFAULT
-* Default of DNNS_NlAtten
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_DNNS_NLATTEN_DEFAULT (256)
-/**
-* @def LVNV_DNNS_NLATTEN_MIN
-* MinValue of DNNS_NlAtten
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_DNNS_NLATTEN_MIN (0)
-/**
-* @def LVNV_DNNS_NLATTEN_MAX
-* MaxValue of DNNS_NlAtten
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_DNNS_NLATTEN_MAX (2048)
-
-/**
-* @def LVNV_DNNS_NOISEGAMMAS_DEFAULT
-* Default of DNNS_NoiseGammaS
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_DNNS_NOISEGAMMAS_DEFAULT (11470)
-/**
-* @def LVNV_DNNS_NOISEGAMMAS_MIN
-* MinValue of DNNS_NoiseGammaS
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_DNNS_NOISEGAMMAS_MIN (0)
-/**
-* @def LVNV_DNNS_NOISEGAMMAS_MAX
-* MaxValue of DNNS_NoiseGammaS
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_DNNS_NOISEGAMMAS_MAX (32767)
-
-/**
-* @def LVNV_DNNS_NOISEGAMMAN_DEFAULT
-* Default of DNNS_NoiseGammaN
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_DNNS_NOISEGAMMAN_DEFAULT (16384)
-/**
-* @def LVNV_DNNS_NOISEGAMMAN_MIN
-* MinValue of DNNS_NoiseGammaN
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_DNNS_NOISEGAMMAN_MIN (0)
-/**
-* @def LVNV_DNNS_NOISEGAMMAN_MAX
-* MaxValue of DNNS_NoiseGammaN
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_DNNS_NOISEGAMMAN_MAX (32767)
-
-/**
-* @def LVNV_DNNS_NOISEGAINMINS_DEFAULT
-* Default of DNNS_NoiseGainMinS
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_DNNS_NOISEGAINMINS_DEFAULT (11140)
-/**
-* @def LVNV_DNNS_NOISEGAINMINS_MIN
-* MinValue of DNNS_NoiseGainMinS
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_DNNS_NOISEGAINMINS_MIN (0)
-/**
-* @def LVNV_DNNS_NOISEGAINMINS_MAX
-* MaxValue of DNNS_NoiseGainMinS
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_DNNS_NOISEGAINMINS_MAX (32767)
-
-/**
-* @def LVNV_DNNS_NOISEGAINMINN_DEFAULT
-* Default of DNNS_NoiseGainMinN
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_DNNS_NOISEGAINMINN_DEFAULT (6554)
-/**
-* @def LVNV_DNNS_NOISEGAINMINN_MIN
-* MinValue of DNNS_NoiseGainMinN
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_DNNS_NOISEGAINMINN_MIN (0)
-/**
-* @def LVNV_DNNS_NOISEGAINMINN_MAX
-* MaxValue of DNNS_NoiseGainMinN
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_DNNS_NOISEGAINMINN_MAX (32767)
-
-/**
-* @def LVNV_DNNS_NOISEBIASCOMP_DEFAULT
-* Default of DNNS_NoiseBiasComp
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_DNNS_NOISEBIASCOMP_DEFAULT (9830)
-/**
-* @def LVNV_DNNS_NOISEBIASCOMP_MIN
-* MinValue of DNNS_NoiseBiasComp
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_DNNS_NOISEBIASCOMP_MIN (0)
-/**
-* @def LVNV_DNNS_NOISEBIASCOMP_MAX
-* MaxValue of DNNS_NoiseBiasComp
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_DNNS_NOISEBIASCOMP_MAX (32767)
-
-/**
-* @def LVNV_DNNS_GAINETA_DEFAULT
-* Default of DNNS_GainEta
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_DNNS_GAINETA_DEFAULT (256)
-/**
-* @def LVNV_DNNS_GAINETA_MIN
-* MinValue of DNNS_GainEta
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_DNNS_GAINETA_MIN (0)
-/**
-* @def LVNV_DNNS_GAINETA_MAX
-* MaxValue of DNNS_GainEta
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_DNNS_GAINETA_MAX (32767)
-
-/**
-* @def LVNV_DNNS_ACTHRESHOLD_DEFAULT
-* Default of DNNS_AcThreshold
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_DNNS_ACTHRESHOLD_DEFAULT (12288)
-/**
-* @def LVNV_DNNS_ACTHRESHOLD_MIN
-* MinValue of DNNS_AcThreshold
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_DNNS_ACTHRESHOLD_MIN (0)
-/**
-* @def LVNV_DNNS_ACTHRESHOLD_MAX
-* MaxValue of DNNS_AcThreshold
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_DNNS_ACTHRESHOLD_MAX (32767)
-
-/**
-* @def LVNV_DNNS_WBTHRESHOLD_DEFAULT
-* Default of DNNS_WbThreshold
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_DNNS_WBTHRESHOLD_DEFAULT (9216)
-/**
-* @def LVNV_DNNS_WBTHRESHOLD_MIN
-* MinValue of DNNS_WbThreshold
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_DNNS_WBTHRESHOLD_MIN (0)
-/**
-* @def LVNV_DNNS_WBTHRESHOLD_MAX
-* MaxValue of DNNS_WbThreshold
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_DNNS_WBTHRESHOLD_MAX (32767)
-
-/**
-* @def LVNV_DNNS_LOSTBEAMTHRESHOLD_DEFAULT
-* Default of DNNS_LostBeamThreshold
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_DNNS_LOSTBEAMTHRESHOLD_DEFAULT (320)
-/**
-* @def LVNV_DNNS_LOSTBEAMTHRESHOLD_MIN
-* MinValue of DNNS_LostBeamThreshold
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_DNNS_LOSTBEAMTHRESHOLD_MIN (0)
-/**
-* @def LVNV_DNNS_LOSTBEAMTHRESHOLD_MAX
-* MaxValue of DNNS_LostBeamThreshold
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_DNNS_LOSTBEAMTHRESHOLD_MAX (32767)
-
-/**
-* @def LVNV_PCD_BETA_DEFAULT
-* Default of PCD_beta
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_PCD_BETA_DEFAULT (230)
-/**
-* @def LVNV_PCD_BETA_MIN
-* MinValue of PCD_beta
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_PCD_BETA_MIN (0)
-/**
-* @def LVNV_PCD_BETA_MAX
-* MaxValue of PCD_beta
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_PCD_BETA_MAX (32767)
-
-/**
-* @def LVNV_PCD_THRESHOLD_DEFAULT
-* Default of PCD_Threshold
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_PCD_THRESHOLD_DEFAULT (26213)
-/**
-* @def LVNV_PCD_THRESHOLD_MIN
-* MinValue of PCD_Threshold
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_PCD_THRESHOLD_MIN (0)
-/**
-* @def LVNV_PCD_THRESHOLD_MAX
-* MaxValue of PCD_Threshold
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_PCD_THRESHOLD_MAX (32767)
-
-/**
-* @def LVHF_OPERATINGMODE_DEFAULT
-* Default of OperatingMode
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_OPERATINGMODE_DEFAULT (LVM_MODE_OFF)
-
-/**
-* @def LVHF_MODE_DEFAULT
-* Default of Mode
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_MODE_DEFAULT (4607)
-
-/**
-* @def LVHF_TUNINGMODE_DEFAULT
-* Default of TuningMode
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_TUNINGMODE_DEFAULT (0)
-
-/**
-* @def LVHF_INPUTGAIN_DEFAULT
-* Default of InputGain
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_INPUTGAIN_DEFAULT (8192)
-/**
-* @def LVHF_INPUTGAIN_MIN
-* MinValue of InputGain
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_INPUTGAIN_MIN (0)
-/**
-* @def LVHF_INPUTGAIN_MAX
-* MaxValue of InputGain
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_INPUTGAIN_MAX (32767)
-
-/**
-* @def LVHF_OUTPUTGAIN_DEFAULT
-* Default of OutputGain
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_OUTPUTGAIN_DEFAULT (2048)
-/**
-* @def LVHF_OUTPUTGAIN_MIN
-* MinValue of OutputGain
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_OUTPUTGAIN_MIN (0)
-/**
-* @def LVHF_OUTPUTGAIN_MAX
-* MaxValue of OutputGain
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_OUTPUTGAIN_MAX (32767)
-
-/**
-* @def LVHF_NLMS_LIMIT_DEFAULT
-* Default of NLMS_limit
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_NLMS_LIMIT_DEFAULT (0)
-/**
-* @def LVHF_NLMS_LIMIT_MIN
-* MinValue of NLMS_limit
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_NLMS_LIMIT_MIN (-24)
-/**
-* @def LVHF_NLMS_LIMIT_MAX
-* MaxValue of NLMS_limit
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_NLMS_LIMIT_MAX (0)
-
-/**
-* @def LVHF_NLMS_LB_TAPS_DEFAULT
-* Default of NLMS_LB_taps
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_NLMS_LB_TAPS_DEFAULT (64)
-/**
-* @def LVHF_NLMS_LB_TAPS_MIN
-* MinValue of NLMS_LB_taps
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_NLMS_LB_TAPS_MIN (16)
-/**
-* @def LVHF_NLMS_LB_TAPS_MAX
-* MaxValue of NLMS_LB_taps
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_NLMS_LB_TAPS_MAX (200)
-
-/**
-* @def LVHF_NLMS_LB_TWO_ALPHA_DEFAULT
-* Default of NLMS_LB_two_alpha
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_NLMS_LB_TWO_ALPHA_DEFAULT (8192)
-/**
-* @def LVHF_NLMS_LB_TWO_ALPHA_MIN
-* MinValue of NLMS_LB_two_alpha
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_NLMS_LB_TWO_ALPHA_MIN (0)
-/**
-* @def LVHF_NLMS_LB_TWO_ALPHA_MAX
-* MaxValue of NLMS_LB_two_alpha
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_NLMS_LB_TWO_ALPHA_MAX (32767)
-
-/**
-* @def LVHF_NLMS_LB_ERL_DEFAULT
-* Default of NLMS_LB_erl
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_NLMS_LB_ERL_DEFAULT (128)
-/**
-* @def LVHF_NLMS_LB_ERL_MIN
-* MinValue of NLMS_LB_erl
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_NLMS_LB_ERL_MIN (64)
-/**
-* @def LVHF_NLMS_LB_ERL_MAX
-* MaxValue of NLMS_LB_erl
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_NLMS_LB_ERL_MAX (32767)
-
-/**
-* @def LVHF_NLMS_HB_TAPS_DEFAULT
-* Default of NLMS_HB_taps
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_NLMS_HB_TAPS_DEFAULT (64)
-/**
-* @def LVHF_NLMS_HB_TAPS_MIN
-* MinValue of NLMS_HB_taps
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_NLMS_HB_TAPS_MIN (16)
-/**
-* @def LVHF_NLMS_HB_TAPS_MAX
-* MaxValue of NLMS_HB_taps
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_NLMS_HB_TAPS_MAX (136)
-
-/**
-* @def LVHF_NLMS_HB_TWO_ALPHA_DEFAULT
-* Default of NLMS_HB_two_alpha
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_NLMS_HB_TWO_ALPHA_DEFAULT (8192)
-/**
-* @def LVHF_NLMS_HB_TWO_ALPHA_MIN
-* MinValue of NLMS_HB_two_alpha
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_NLMS_HB_TWO_ALPHA_MIN (0)
-/**
-* @def LVHF_NLMS_HB_TWO_ALPHA_MAX
-* MaxValue of NLMS_HB_two_alpha
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_NLMS_HB_TWO_ALPHA_MAX (32767)
-
-/**
-* @def LVHF_NLMS_HB_ERL_DEFAULT
-* Default of NLMS_HB_erl
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_NLMS_HB_ERL_DEFAULT (128)
-/**
-* @def LVHF_NLMS_HB_ERL_MIN
-* MinValue of NLMS_HB_erl
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_NLMS_HB_ERL_MIN (64)
-/**
-* @def LVHF_NLMS_HB_ERL_MAX
-* MaxValue of NLMS_HB_erl
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_NLMS_HB_ERL_MAX (32767)
-
-/**
-* @def LVHF_NLMS_PRESET_COEFS_DEFAULT
-* Default of NLMS_preset_coefs
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_NLMS_PRESET_COEFS_DEFAULT (1)
-/**
-* @def LVHF_NLMS_PRESET_COEFS_MIN
-* MinValue of NLMS_preset_coefs
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_NLMS_PRESET_COEFS_MIN (0)
-/**
-* @def LVHF_NLMS_PRESET_COEFS_MAX
-* MaxValue of NLMS_preset_coefs
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_NLMS_PRESET_COEFS_MAX (2)
-
-/**
-* @def LVHF_NLMS_OFFSET_DEFAULT
-* Default of NLMS_offset
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_NLMS_OFFSET_DEFAULT (767)
-/**
-* @def LVHF_NLMS_OFFSET_MIN
-* MinValue of NLMS_offset
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_NLMS_OFFSET_MIN (0)
-/**
-* @def LVHF_NLMS_OFFSET_MAX
-* MaxValue of NLMS_offset
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_NLMS_OFFSET_MAX (32767)
-
-/**
-* @def LVHF_DENS_TAIL_ALPHA_LB_DEFAULT
-* Default of DENS_tail_alpha_LB
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_DENS_TAIL_ALPHA_LB_DEFAULT (25395)
-/**
-* @def LVHF_DENS_TAIL_ALPHA_LB_MIN
-* MinValue of DENS_tail_alpha_LB
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_DENS_TAIL_ALPHA_LB_MIN (0)
-/**
-* @def LVHF_DENS_TAIL_ALPHA_LB_MAX
-* MaxValue of DENS_tail_alpha_LB
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_DENS_TAIL_ALPHA_LB_MAX (32767)
-
-/**
-* @def LVHF_DENS_TAIL_PORTION_LB_DEFAULT
-* Default of DENS_tail_portion_LB
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_DENS_TAIL_PORTION_LB_DEFAULT (29491)
-/**
-* @def LVHF_DENS_TAIL_PORTION_LB_MIN
-* MinValue of DENS_tail_portion_LB
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_DENS_TAIL_PORTION_LB_MIN (0)
-/**
-* @def LVHF_DENS_TAIL_PORTION_LB_MAX
-* MaxValue of DENS_tail_portion_LB
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_DENS_TAIL_PORTION_LB_MAX (32767)
-
-/**
-* @def LVHF_DENS_GAMMA_E_HIGH_LB_DEFAULT
-* Default of DENS_gamma_e_high_LB
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_DENS_GAMMA_E_HIGH_LB_DEFAULT (512)
-/**
-* @def LVHF_DENS_GAMMA_E_HIGH_LB_MIN
-* MinValue of DENS_gamma_e_high_LB
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_DENS_GAMMA_E_HIGH_LB_MIN (0)
-/**
-* @def LVHF_DENS_GAMMA_E_HIGH_LB_MAX
-* MaxValue of DENS_gamma_e_high_LB
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_DENS_GAMMA_E_HIGH_LB_MAX (32767)
-
-/**
-* @def LVHF_DENS_GAMMA_E_DT_LB_DEFAULT
-* Default of DENS_gamma_e_dt_LB
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_DENS_GAMMA_E_DT_LB_DEFAULT (256)
-/**
-* @def LVHF_DENS_GAMMA_E_DT_LB_MIN
-* MinValue of DENS_gamma_e_dt_LB
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_DENS_GAMMA_E_DT_LB_MIN (0)
-/**
-* @def LVHF_DENS_GAMMA_E_DT_LB_MAX
-* MaxValue of DENS_gamma_e_dt_LB
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_DENS_GAMMA_E_DT_LB_MAX (32767)
-
-/**
-* @def LVHF_DENS_GAMMA_E_LOW_LB_DEFAULT
-* Default of DENS_gamma_e_low_LB
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_DENS_GAMMA_E_LOW_LB_DEFAULT (256)
-/**
-* @def LVHF_DENS_GAMMA_E_LOW_LB_MIN
-* MinValue of DENS_gamma_e_low_LB
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_DENS_GAMMA_E_LOW_LB_MIN (0)
-/**
-* @def LVHF_DENS_GAMMA_E_LOW_LB_MAX
-* MaxValue of DENS_gamma_e_low_LB
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_DENS_GAMMA_E_LOW_LB_MAX (32767)
-
-/**
-* @def LVHF_DENS_NL_ATTEN_LB_DEFAULT
-* Default of DENS_NL_atten_LB
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_DENS_NL_ATTEN_LB_DEFAULT (0)
-/**
-* @def LVHF_DENS_NL_ATTEN_LB_MIN
-* MinValue of DENS_NL_atten_LB
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_DENS_NL_ATTEN_LB_MIN (0)
-/**
-* @def LVHF_DENS_NL_ATTEN_LB_MAX
-* MaxValue of DENS_NL_atten_LB
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_DENS_NL_ATTEN_LB_MAX (2048)
-
-/**
-* @def LVHF_DENS_TAIL_ALPHA_HB_DEFAULT
-* Default of DENS_tail_alpha_HB
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_DENS_TAIL_ALPHA_HB_DEFAULT (25395)
-/**
-* @def LVHF_DENS_TAIL_ALPHA_HB_MIN
-* MinValue of DENS_tail_alpha_HB
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_DENS_TAIL_ALPHA_HB_MIN (0)
-/**
-* @def LVHF_DENS_TAIL_ALPHA_HB_MAX
-* MaxValue of DENS_tail_alpha_HB
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_DENS_TAIL_ALPHA_HB_MAX (32767)
-
-/**
-* @def LVHF_DENS_TAIL_PORTION_HB_DEFAULT
-* Default of DENS_tail_portion_HB
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_DENS_TAIL_PORTION_HB_DEFAULT (29491)
-/**
-* @def LVHF_DENS_TAIL_PORTION_HB_MIN
-* MinValue of DENS_tail_portion_HB
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_DENS_TAIL_PORTION_HB_MIN (0)
-/**
-* @def LVHF_DENS_TAIL_PORTION_HB_MAX
-* MaxValue of DENS_tail_portion_HB
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_DENS_TAIL_PORTION_HB_MAX (32767)
-
-/**
-* @def LVHF_DENS_GAMMA_E_HIGH_HB_DEFAULT
-* Default of DENS_gamma_e_high_HB
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_DENS_GAMMA_E_HIGH_HB_DEFAULT (512)
-/**
-* @def LVHF_DENS_GAMMA_E_HIGH_HB_MIN
-* MinValue of DENS_gamma_e_high_HB
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_DENS_GAMMA_E_HIGH_HB_MIN (0)
-/**
-* @def LVHF_DENS_GAMMA_E_HIGH_HB_MAX
-* MaxValue of DENS_gamma_e_high_HB
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_DENS_GAMMA_E_HIGH_HB_MAX (32767)
-
-/**
-* @def LVHF_DENS_GAMMA_E_DT_HB_DEFAULT
-* Default of DENS_gamma_e_dt_HB
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_DENS_GAMMA_E_DT_HB_DEFAULT (256)
-/**
-* @def LVHF_DENS_GAMMA_E_DT_HB_MIN
-* MinValue of DENS_gamma_e_dt_HB
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_DENS_GAMMA_E_DT_HB_MIN (0)
-/**
-* @def LVHF_DENS_GAMMA_E_DT_HB_MAX
-* MaxValue of DENS_gamma_e_dt_HB
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_DENS_GAMMA_E_DT_HB_MAX (32767)
-
-/**
-* @def LVHF_DENS_GAMMA_E_LOW_HB_DEFAULT
-* Default of DENS_gamma_e_low_HB
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_DENS_GAMMA_E_LOW_HB_DEFAULT (256)
-/**
-* @def LVHF_DENS_GAMMA_E_LOW_HB_MIN
-* MinValue of DENS_gamma_e_low_HB
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_DENS_GAMMA_E_LOW_HB_MIN (0)
-/**
-* @def LVHF_DENS_GAMMA_E_LOW_HB_MAX
-* MaxValue of DENS_gamma_e_low_HB
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_DENS_GAMMA_E_LOW_HB_MAX (32767)
-
-/**
-* @def LVHF_DENS_NL_ATTEN_HB_DEFAULT
-* Default of DENS_NL_atten_HB
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_DENS_NL_ATTEN_HB_DEFAULT (0)
-/**
-* @def LVHF_DENS_NL_ATTEN_HB_MIN
-* MinValue of DENS_NL_atten_HB
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_DENS_NL_ATTEN_HB_MIN (0)
-/**
-* @def LVHF_DENS_NL_ATTEN_HB_MAX
-* MaxValue of DENS_NL_atten_HB
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_DENS_NL_ATTEN_HB_MAX (2048)
-
-/**
-* @def LVHF_DENS_GAMMA_E_ALPHA_DEFAULT
-* Default of DENS_gamma_e_alpha
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_DENS_GAMMA_E_ALPHA_DEFAULT (24000)
-/**
-* @def LVHF_DENS_GAMMA_E_ALPHA_MIN
-* MinValue of DENS_gamma_e_alpha
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_DENS_GAMMA_E_ALPHA_MIN (0)
-/**
-* @def LVHF_DENS_GAMMA_E_ALPHA_MAX
-* MaxValue of DENS_gamma_e_alpha
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_DENS_GAMMA_E_ALPHA_MAX (32767)
-
-/**
-* @def LVHF_DENS_GAMMA_N_DEFAULT
-* Default of DENS_gamma_n
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_DENS_GAMMA_N_DEFAULT (280)
-/**
-* @def LVHF_DENS_GAMMA_N_MIN
-* MinValue of DENS_gamma_n
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_DENS_GAMMA_N_MIN (0)
-/**
-* @def LVHF_DENS_GAMMA_N_MAX
-* MaxValue of DENS_gamma_n
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_DENS_GAMMA_N_MAX (32767)
-
-/**
-* @def LVHF_DENS_SPDET_NEAR_DEFAULT
-* Default of DENS_spdet_near
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_DENS_SPDET_NEAR_DEFAULT (512)
-/**
-* @def LVHF_DENS_SPDET_NEAR_MIN
-* MinValue of DENS_spdet_near
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_DENS_SPDET_NEAR_MIN (0)
-/**
-* @def LVHF_DENS_SPDET_NEAR_MAX
-* MaxValue of DENS_spdet_near
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_DENS_SPDET_NEAR_MAX (32767)
-
-/**
-* @def LVHF_DENS_SPDET_ACT_DEFAULT
-* Default of DENS_spdet_act
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_DENS_SPDET_ACT_DEFAULT (768)
-/**
-* @def LVHF_DENS_SPDET_ACT_MIN
-* MinValue of DENS_spdet_act
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_DENS_SPDET_ACT_MIN (0)
-/**
-* @def LVHF_DENS_SPDET_ACT_MAX
-* MaxValue of DENS_spdet_act
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_DENS_SPDET_ACT_MAX (32767)
-
-/**
-* @def LVHF_DENS_LIMIT_NS_DEFAULT
-* Default of DENS_limit_ns
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_DENS_LIMIT_NS_DEFAULT (10361)
-/**
-* @def LVHF_DENS_LIMIT_NS_MIN
-* MinValue of DENS_limit_ns
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_DENS_LIMIT_NS_MIN (0)
-/**
-* @def LVHF_DENS_LIMIT_NS_MAX
-* MaxValue of DENS_limit_ns
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_DENS_LIMIT_NS_MAX (32767)
-
-/**
-* @def LVHF_DENS_CNI_GAIN_DEFAULT
-* Default of DENS_CNI_Gain
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_DENS_CNI_GAIN_DEFAULT (16384)
-/**
-* @def LVHF_DENS_CNI_GAIN_MIN
-* MinValue of DENS_CNI_Gain
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_DENS_CNI_GAIN_MIN (0)
-/**
-* @def LVHF_DENS_CNI_GAIN_MAX
-* MaxValue of DENS_CNI_Gain
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_DENS_CNI_GAIN_MAX (32767)
-
-/**
-* @def LVHF_DENS_NFE_BLOCKSIZE_DEFAULT
-* Default of DENS_NFE_blocksize
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_DENS_NFE_BLOCKSIZE_DEFAULT (150)
-/**
-* @def LVHF_DENS_NFE_BLOCKSIZE_MIN
-* MinValue of DENS_NFE_blocksize
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_DENS_NFE_BLOCKSIZE_MIN (0)
-/**
-* @def LVHF_DENS_NFE_BLOCKSIZE_MAX
-* MaxValue of DENS_NFE_blocksize
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_DENS_NFE_BLOCKSIZE_MAX (32767)
-
-/**
-* @def LVHF_SPDET_FAR_DEFAULT
-* Default of SPDET_far
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_SPDET_FAR_DEFAULT (16384)
-/**
-* @def LVHF_SPDET_FAR_MIN
-* MinValue of SPDET_far
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_SPDET_FAR_MIN (0)
-/**
-* @def LVHF_SPDET_FAR_MAX
-* MaxValue of SPDET_far
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_SPDET_FAR_MAX (32767)
-
-/**
-* @def LVHF_SPDET_MIC_DEFAULT
-* Default of SPDET_mic
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_SPDET_MIC_DEFAULT (16384)
-/**
-* @def LVHF_SPDET_MIC_MIN
-* MinValue of SPDET_mic
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_SPDET_MIC_MIN (0)
-/**
-* @def LVHF_SPDET_MIC_MAX
-* MaxValue of SPDET_mic
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_SPDET_MIC_MAX (32767)
-
-/**
-* @def LVHF_SPDET_X_CLIP_DEFAULT
-* Default of SPDET_x_clip
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_SPDET_X_CLIP_DEFAULT (0)
-/**
-* @def LVHF_SPDET_X_CLIP_MIN
-* MinValue of SPDET_x_clip
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_SPDET_X_CLIP_MIN (0)
-/**
-* @def LVHF_SPDET_X_CLIP_MAX
-* MaxValue of SPDET_x_clip
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_SPDET_X_CLIP_MAX (32767)
-
-/**
-* @def LVHF_PCD_THRESHOLD_DEFAULT
-* Default of PCD_threshold
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_PCD_THRESHOLD_DEFAULT (20000)
-/**
-* @def LVHF_PCD_THRESHOLD_MIN
-* MinValue of PCD_threshold
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_PCD_THRESHOLD_MIN (0)
-/**
-* @def LVHF_PCD_THRESHOLD_MAX
-* MaxValue of PCD_threshold
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_PCD_THRESHOLD_MAX (32767)
-
-/**
-* @def LVHF_PCD_TAPS_DEFAULT
-* Default of PCD_taps
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_PCD_TAPS_DEFAULT (16)
-/**
-* @def LVHF_PCD_TAPS_MIN
-* MinValue of PCD_taps
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_PCD_TAPS_MIN (16)
-/**
-* @def LVHF_PCD_TAPS_MAX
-* MaxValue of PCD_taps
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_PCD_TAPS_MAX (64)
-
-/**
-* @def LVHF_PCD_ERL_DEFAULT
-* Default of PCD_erl
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_PCD_ERL_DEFAULT (64)
-/**
-* @def LVHF_PCD_ERL_MIN
-* MinValue of PCD_erl
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_PCD_ERL_MIN (64)
-/**
-* @def LVHF_PCD_ERL_MAX
-* MaxValue of PCD_erl
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_PCD_ERL_MAX (32767)
-
-/**
-* @def LVHF_PCD_MINIMUM_ERL_DEFAULT
-* Default of PCD_minimum_erl
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_PCD_MINIMUM_ERL_DEFAULT (64)
-/**
-* @def LVHF_PCD_MINIMUM_ERL_MIN
-* MinValue of PCD_minimum_erl
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_PCD_MINIMUM_ERL_MIN (64)
-/**
-* @def LVHF_PCD_MINIMUM_ERL_MAX
-* MaxValue of PCD_minimum_erl
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_PCD_MINIMUM_ERL_MAX (32767)
-
-/**
-* @def LVHF_PCD_ERL_STEP_DEFAULT
-* Default of PCD_erl_step
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_PCD_ERL_STEP_DEFAULT (16800)
-/**
-* @def LVHF_PCD_ERL_STEP_MIN
-* MinValue of PCD_erl_step
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_PCD_ERL_STEP_MIN (16384)
-/**
-* @def LVHF_PCD_ERL_STEP_MAX
-* MaxValue of PCD_erl_step
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_PCD_ERL_STEP_MAX (32767)
-
-/**
-* @def LVHF_PCD_GAMMA_E_RESCUE_DEFAULT
-* Default of PCD_gamma_e_rescue
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_PCD_GAMMA_E_RESCUE_DEFAULT (5000)
-/**
-* @def LVHF_PCD_GAMMA_E_RESCUE_MIN
-* MinValue of PCD_gamma_e_rescue
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_PCD_GAMMA_E_RESCUE_MIN (0)
-/**
-* @def LVHF_PCD_GAMMA_E_RESCUE_MAX
-* MaxValue of PCD_gamma_e_rescue
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_PCD_GAMMA_E_RESCUE_MAX (32767)
-
-/**
-* @def LVBD_BD_OPERATINGMODE_DEFAULT
-* Default of BD_OperatingMode
-* @see LVBD_ControlParams_st
-*/
-#define LVBD_BD_OPERATINGMODE_DEFAULT (LVM_MODE_OFF)
-
-/**
-* @def LVBD_BULKDELAY_DEFAULT
-* Default of BulkDelay
-* @see LVBD_ControlParams_st
-*/
-#define LVBD_BULKDELAY_DEFAULT (0)
-/**
-* @def LVBD_BULKDELAY_MIN
-* MinValue of BulkDelay
-* @see LVBD_ControlParams_st
-*/
-#define LVBD_BULKDELAY_MIN (0)
-/**
-* @def LVBD_BULKDELAY_MAX
-* MaxValue of BulkDelay
-* @see LVBD_ControlParams_st
-*/
-#define LVBD_BULKDELAY_MAX (6400)
-
-/**
-* @def LVBD_BD_GAIN_DEFAULT
-* Default of BD_Gain
-* @see LVBD_ControlParams_st
-*/
-#define LVBD_BD_GAIN_DEFAULT (8192)
-/**
-* @def LVBD_BD_GAIN_MIN
-* MinValue of BD_Gain
-* @see LVBD_ControlParams_st
-*/
-#define LVBD_BD_GAIN_MIN (0)
-/**
-* @def LVBD_BD_GAIN_MAX
-* MaxValue of BD_Gain
-* @see LVBD_ControlParams_st
-*/
-#define LVBD_BD_GAIN_MAX (32767)
-
-/**
-* @def LVVE_TX_OPERATINGMODE_DEFAULT
-* Default of OperatingMode
-* @see LVVE_Tx_ControlParams_st
-*/
-#define LVVE_TX_OPERATINGMODE_DEFAULT (LVVE_TX_MODE_OFF)
-
-/**
-* @def LVVE_TX_MUTE_DEFAULT
-* Default of Mute
-* @see LVVE_Tx_ControlParams_st
-*/
-#define LVVE_TX_MUTE_DEFAULT (LVM_MODE_OFF)
-
-/**
-* @def LVVE_TX_BD_OPERATINGMODE_DEFAULT
-* Default of BD_OperatingMode
-* @see LVVE_Tx_ControlParams_st
-*/
-#define LVVE_TX_BD_OPERATINGMODE_DEFAULT (LVM_MODE_OFF)
-
-/**
-* @def LVVE_TX_BULKDELAY_DEFAULT
-* Default of BulkDelay
-* @see LVVE_Tx_ControlParams_st
-*/
-#define LVVE_TX_BULKDELAY_DEFAULT (0)
-/**
-* @def LVVE_TX_BULKDELAY_MIN
-* MinValue of BulkDelay
-* @see LVVE_Tx_ControlParams_st
-*/
-#define LVVE_TX_BULKDELAY_MIN (0)
-/**
-* @def LVVE_TX_BULKDELAY_MAX
-* MaxValue of BulkDelay
-* @see LVVE_Tx_ControlParams_st
-*/
-#define LVVE_TX_BULKDELAY_MAX (6400)
-
-/**
-* @def LVVE_TX_BD_GAIN_DEFAULT
-* Default of BD_Gain
-* @see LVVE_Tx_ControlParams_st
-*/
-#define LVVE_TX_BD_GAIN_DEFAULT (8192)
-/**
-* @def LVVE_TX_BD_GAIN_MIN
-* MinValue of BD_Gain
-* @see LVVE_Tx_ControlParams_st
-*/
-#define LVVE_TX_BD_GAIN_MIN (0)
-/**
-* @def LVVE_TX_BD_GAIN_MAX
-* MaxValue of BD_Gain
-* @see LVVE_Tx_ControlParams_st
-*/
-#define LVVE_TX_BD_GAIN_MAX (32767)
-
-/**
-* @def LVVE_TX_VOL_OPERATINGMODE_DEFAULT
-* Default of VOL_OperatingMode
-* @see LVVE_Tx_ControlParams_st
-*/
-#define LVVE_TX_VOL_OPERATINGMODE_DEFAULT (LVM_MODE_OFF)
-
-/**
-* @def LVVE_TX_VOL_GAIN_DEFAULT
-* Default of VOL_Gain
-* @see LVVE_Tx_ControlParams_st
-*/
-#define LVVE_TX_VOL_GAIN_DEFAULT (0)
-/**
-* @def LVVE_TX_VOL_GAIN_MIN
-* MinValue of VOL_Gain
-* @see LVVE_Tx_ControlParams_st
-*/
-#define LVVE_TX_VOL_GAIN_MIN (-96)
-/**
-* @def LVVE_TX_VOL_GAIN_MAX
-* MaxValue of VOL_Gain
-* @see LVVE_Tx_ControlParams_st
-*/
-#define LVVE_TX_VOL_GAIN_MAX (24)
-
-/**
-* @def LVVE_TX_HPF_OPERATINGMODE_DEFAULT
-* Default of HPF_OperatingMode
-* @see LVVE_Tx_ControlParams_st
-*/
-#define LVVE_TX_HPF_OPERATINGMODE_DEFAULT (LVM_MODE_OFF)
-
-/**
-* @def LVVE_TX_MIC_HPF_CORNERFREQ_DEFAULT
-* Default of MIC_HPF_CornerFreq
-* @see LVVE_Tx_ControlParams_st
-*/
-#define LVVE_TX_MIC_HPF_CORNERFREQ_DEFAULT (50)
-/**
-* @def LVVE_TX_MIC_HPF_CORNERFREQ_MIN
-* MinValue of MIC_HPF_CornerFreq
-* @see LVVE_Tx_ControlParams_st
-*/
-#define LVVE_TX_MIC_HPF_CORNERFREQ_MIN (50)
-/**
-* @def LVVE_TX_MIC_HPF_CORNERFREQ_MAX
-* MaxValue of MIC_HPF_CornerFreq
-* @see LVVE_Tx_ControlParams_st
-*/
-#define LVVE_TX_MIC_HPF_CORNERFREQ_MAX (1500)
-
-
-
-
-/**
-* @def LVVE_TX_EQ_OPERATINGMODE_DEFAULT
-* Default of EQ_OperatingMode
-* @see LVVE_Tx_ControlParams_st
-*/
-#define LVVE_TX_EQ_OPERATINGMODE_DEFAULT (LVM_MODE_OFF)
-
-//adb by xuxinqiang 20150519
-#define LVVE_MAX_EQ_LENGTH_NB 32 /* Maximum equaliser length for narrowband configuration */
-#define LVVE_MAX_EQ_LENGTH_WB 64 /* Maximum equaliser length for wideband configuration */
-
-
-/**
-* @def LVVC_GAIN_DEFAULT
-* Default of Gain
-* @see LVVC_ControlParams_st
-*/
-#define LVVC_GAIN_DEFAULT (0)
-/**
-* @def LVVC_GAIN_MIN
-* MinValue of Gain
-* @see LVVC_ControlParams_st
-*/
-#define LVVC_GAIN_MIN (0)
-/**
-* @def LVVC_GAIN_MAX
-* MaxValue of Gain
-* @see LVVC_ControlParams_st
-*/
-#define LVVC_GAIN_MAX (32767)
-
-/**
-* @def LVVC_SPDETECTED_DEFAULT
-* Default of SpDetected
-* @see LVVC_ControlParams_st
-*/
-#define LVVC_SPDETECTED_DEFAULT (0)
-/**
-* @def LVVC_SPDETECTED_MIN
-* MinValue of SpDetected
-* @see LVVC_ControlParams_st
-*/
-#define LVVC_SPDETECTED_MIN (0)
-/**
-* @def LVVC_SPDETECTED_MAX
-* MaxValue of SpDetected
-* @see LVVC_ControlParams_st
-*/
-#define LVVC_SPDETECTED_MAX (1)
-
-/**
-* @def LVWM_AVL_GAIN_DEFAULT
-* Default of AVL_Gain
-* @see LVWM_ControlParams_st
-*/
-#define LVWM_AVL_GAIN_DEFAULT (0)
-/**
-* @def LVWM_AVL_GAIN_MIN
-* MinValue of AVL_Gain
-* @see LVWM_ControlParams_st
-*/
-#define LVWM_AVL_GAIN_MIN (0)
-/**
-* @def LVWM_AVL_GAIN_MAX
-* MaxValue of AVL_Gain
-* @see LVWM_ControlParams_st
-*/
-#define LVWM_AVL_GAIN_MAX (32767)
-
-
-
-/**
-* @def LVVE_RX_DUMMY_DEFAULT
-* Default of dummy
-* @see LVVE_Rx_ControlParams_st
-*/
-#define LVVE_RX_DUMMY_DEFAULT (0)
-/**
-* @def LVVE_RX_DUMMY_MIN
-* MinValue of dummy
-* @see LVVE_Rx_ControlParams_st
-*/
-#define LVVE_RX_DUMMY_MIN (-128)
-/**
-* @def LVVE_RX_DUMMY_MAX
-* MaxValue of dummy
-* @see LVVE_Rx_ControlParams_st
-*/
-#define LVVE_RX_DUMMY_MAX (127)
-
-/**
-* @def LVNV_STATUS_DEFAULT
-* Default of status
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_STATUS_DEFAULT (0)
-
-/**
-* @def LVNV_DUMMY_DEFAULT
-* Default of Dummy
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_DUMMY_DEFAULT (0)
-/**
-* @def LVNV_DUMMY_MIN
-* MinValue of Dummy
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_DUMMY_MIN (0)
-/**
-* @def LVNV_DUMMY_MAX
-* MaxValue of Dummy
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_DUMMY_MAX (0)
-
-/**
-* @def LVNV_PNLMS0_LB_COEFFS_DEFAULT
-* Default of pNLMS0_LB_Coeffs
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_PNLMS0_LB_COEFFS_DEFAULT (0)
-/**
-* @def LVNV_PNLMS0_LB_COEFFS_MIN
-* MinValue of pNLMS0_LB_Coeffs
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_PNLMS0_LB_COEFFS_MIN (-2147483648)
-/**
-* @def LVNV_PNLMS0_LB_COEFFS_MAX
-* MaxValue of pNLMS0_LB_Coeffs
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_PNLMS0_LB_COEFFS_MAX (2147483647)
-
-/**
-* @def LVNV_PNLMS0_HB_COEFFS_DEFAULT
-* Default of pNLMS0_HB_Coeffs
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_PNLMS0_HB_COEFFS_DEFAULT (0)
-/**
-* @def LVNV_PNLMS0_HB_COEFFS_MIN
-* MinValue of pNLMS0_HB_Coeffs
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_PNLMS0_HB_COEFFS_MIN (-2147483648)
-/**
-* @def LVNV_PNLMS0_HB_COEFFS_MAX
-* MaxValue of pNLMS0_HB_Coeffs
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_PNLMS0_HB_COEFFS_MAX (2147483647)
-
-/**
-* @def LVNV_PNLMS1_LB_COEFFS_DEFAULT
-* Default of pNLMS1_LB_Coeffs
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_PNLMS1_LB_COEFFS_DEFAULT (0)
-/**
-* @def LVNV_PNLMS1_LB_COEFFS_MIN
-* MinValue of pNLMS1_LB_Coeffs
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_PNLMS1_LB_COEFFS_MIN (-2147483648)
-/**
-* @def LVNV_PNLMS1_LB_COEFFS_MAX
-* MaxValue of pNLMS1_LB_Coeffs
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_PNLMS1_LB_COEFFS_MAX (2147483647)
-
-/**
-* @def LVNV_PNLMS1_HB_COEFFS_DEFAULT
-* Default of pNLMS1_HB_Coeffs
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_PNLMS1_HB_COEFFS_DEFAULT (0)
-/**
-* @def LVNV_PNLMS1_HB_COEFFS_MIN
-* MinValue of pNLMS1_HB_Coeffs
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_PNLMS1_HB_COEFFS_MIN (-2147483648)
-/**
-* @def LVNV_PNLMS1_HB_COEFFS_MAX
-* MaxValue of pNLMS1_HB_Coeffs
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_PNLMS1_HB_COEFFS_MAX (2147483647)
-
-/**
-* @def LVNV_PFSB_COEFFS_DEFAULT
-* Default of pFSB_Coeffs
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_PFSB_COEFFS_DEFAULT (0)
-/**
-* @def LVNV_PFSB_COEFFS_MIN
-* MinValue of pFSB_Coeffs
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_PFSB_COEFFS_MIN (-2147483648)
-/**
-* @def LVNV_PFSB_COEFFS_MAX
-* MaxValue of pFSB_Coeffs
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_PFSB_COEFFS_MAX (2147483647)
-
-/**
-* @def LVNV_PGSC_COEFFS_DEFAULT
-* Default of pGSC_Coeffs
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_PGSC_COEFFS_DEFAULT (0)
-/**
-* @def LVNV_PGSC_COEFFS_MIN
-* MinValue of pGSC_Coeffs
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_PGSC_COEFFS_MIN (-2147483648)
-/**
-* @def LVNV_PGSC_COEFFS_MAX
-* MaxValue of pGSC_Coeffs
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_PGSC_COEFFS_MAX (2147483647)
-
-/**
-* @def LVNV_PMICPOWSP_DEFAULT
-* Default of pMicPowSp
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_PMICPOWSP_DEFAULT (0)
-/**
-* @def LVNV_PMICPOWSP_MIN
-* MinValue of pMicPowSp
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_PMICPOWSP_MIN (0)
-/**
-* @def LVNV_PMICPOWSP_MAX
-* MaxValue of pMicPowSp
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_PMICPOWSP_MAX (1)
-
-/**
-* @def LVNV_PCALFACTOR_DEFAULT
-* Default of pCalFactor
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_PCALFACTOR_DEFAULT (0)
-/**
-* @def LVNV_PCALFACTOR_MIN
-* MinValue of pCalFactor
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_PCALFACTOR_MIN (0)
-/**
-* @def LVNV_PCALFACTOR_MAX
-* MaxValue of pCalFactor
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_PCALFACTOR_MAX (32767)
-
-/**
-* @def LVNV_PCALREADY_DEFAULT
-* Default of pCalReady
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_PCALREADY_DEFAULT (0)
-/**
-* @def LVNV_PCALREADY_MIN
-* MinValue of pCalReady
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_PCALREADY_MIN (0)
-/**
-* @def LVNV_PCALREADY_MAX
-* MaxValue of pCalReady
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_PCALREADY_MAX (2)
-
-/**
-* @def LVNV_PBROADSIDE_INTERCC_DEFAULT
-* Default of pBroadside_interCC
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_PBROADSIDE_INTERCC_DEFAULT (0)
-/**
-* @def LVNV_PBROADSIDE_INTERCC_MIN
-* MinValue of pBroadside_interCC
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_PBROADSIDE_INTERCC_MIN (0)
-/**
-* @def LVNV_PBROADSIDE_INTERCC_MAX
-* MaxValue of pBroadside_interCC
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_PBROADSIDE_INTERCC_MAX (32767)
-
-/**
-* @def LVHF_GAMMAE_DEFAULT
-* Default of gammae
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_GAMMAE_DEFAULT (0)
-/**
-* @def LVHF_GAMMAE_MIN
-* MinValue of gammae
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_GAMMAE_MIN (0)
-/**
-* @def LVHF_GAMMAE_MAX
-* MaxValue of gammae
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_GAMMAE_MAX (32767)
-
-/**
-* @def LVHF_STATUS_DEFAULT
-* Default of status
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_STATUS_DEFAULT (0)
-
-/**
-* @def LVHF_PNLMS_LB_COEFS_DEFAULT
-* Default of pNLMS_LB_Coefs
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_PNLMS_LB_COEFS_DEFAULT (0)
-/**
-* @def LVHF_PNLMS_LB_COEFS_MIN
-* MinValue of pNLMS_LB_Coefs
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_PNLMS_LB_COEFS_MIN (-2147483648)
-/**
-* @def LVHF_PNLMS_LB_COEFS_MAX
-* MaxValue of pNLMS_LB_Coefs
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_PNLMS_LB_COEFS_MAX (2147483647)
-
-/**
-* @def LVHF_PNLMS_HB_COEFS_DEFAULT
-* Default of pNLMS_HB_Coefs
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_PNLMS_HB_COEFS_DEFAULT (0)
-/**
-* @def LVHF_PNLMS_HB_COEFS_MIN
-* MinValue of pNLMS_HB_Coefs
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_PNLMS_HB_COEFS_MIN (-2147483648)
-/**
-* @def LVHF_PNLMS_HB_COEFS_MAX
-* MaxValue of pNLMS_HB_Coefs
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_PNLMS_HB_COEFS_MAX (2147483647)
-
-/**
-* @def LVHF_PPCD_COEFS_DEFAULT
-* Default of pPCD_Coefs
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_PPCD_COEFS_DEFAULT (0)
-/**
-* @def LVHF_PPCD_COEFS_MIN
-* MinValue of pPCD_Coefs
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_PPCD_COEFS_MIN (-2147483648)
-/**
-* @def LVHF_PPCD_COEFS_MAX
-* MaxValue of pPCD_Coefs
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_PPCD_COEFS_MAX (2147483647)
-
-
-
-
-/**
-* @def LVVE_TX_DUMMY_DEFAULT
-* Default of dummy
-* @see LVVE_Tx_ControlParams_st
-*/
-#define LVVE_TX_DUMMY_DEFAULT (0)
-/**
-* @def LVVE_TX_DUMMY_MIN
-* MinValue of dummy
-* @see LVVE_Tx_ControlParams_st
-*/
-#define LVVE_TX_DUMMY_MIN (-128)
-/**
-* @def LVVE_TX_DUMMY_MAX
-* MaxValue of dummy
-* @see LVVE_Tx_ControlParams_st
-*/
-#define LVVE_TX_DUMMY_MAX (127)
-
-/**
-* Enum type for LVVIDHeader_MessageID_en
-*/
-typedef enum
-{
- LVVE_RX_PRESET = 0, ///< VID header Message ID for LVVE_Rx presets
- LVVE_TX_PRESET = 1, ///< VID header Message ID for LVVE_Tx Presets
- LVVIDHEADER_MESSAGEID_EN_DUMMY = LVM_MAXENUM
-} LVVIDHeader_MessageID_en;
-
-/**
-* Enum type for LVVIDHeader_ReturnStatus_en
-*/
-typedef enum
-{
- LVVIDHEADER_NULLADDRESS = 0, ///< LVVIDHeader module returns NULL address error
- LVVIDHEADER_SUCCESS = 1, ///< LVVIDHeader module returns with success
- LVVIDHEADER_RETURNSTATUS_EN_DUMMY = LVM_MAXENUM
-} LVVIDHeader_ReturnStatus_en;
-
-/**
-* Enum type for LVVE_Rx_Mode_en
-*/
-typedef enum
-{
- LVVE_RX_MODE_OFF = 0, ///< Rx voice engine is turned off
- LVVE_RX_MODE_ON = 1, ///< Rx voice in will run
- LVVE_RX_MODE_BYPASS = 2, ///< Rx voice engine will run but output will be ignored
- LVVE_RX_MODE_EN_DUMMY = LVM_MAXENUM
-} LVVE_Rx_Mode_en;
-
-/**
-* Enum type for LVVE_Tx_Mode_en
-*/
-typedef enum
-{
- LVVE_TX_MODE_OFF = 0, ///< Tx in LVVE engine is disabled
- LVVE_TX_MODE_ON = 1, ///< TX in LVVE is enabled
- LVVE_TX_MODE_BYPASS_MIC0 = 2, ///< TX in LVVE engine will run but output will be Mic0 signal
- LVVE_TX_MODE_BYPASS_MIC1 = 3, ///< Tx in LVVE engine will run but output will be Mic1 signal
- LVVE_TX_MODE_BYPASS_REF = 4, ///< Tx in LVVE engine will run but output will be Ref signal
- LVVE_TX_MODE_EN_DUMMY = LVM_MAXENUM
-} LVVE_Tx_Mode_en;
-
-/****************************************************************************************/
-/* */
-/* Structures */
-/* */
-/****************************************************************************************/
-/**
-* The status parameters are used to retrieve the status of the module.
-* @see LVVC_GetStatusParameters
-*/
-typedef struct
-{
- /**
- The internal gain setting used by VoiceClarity.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>6.9</td>
- <td>@ref LVVC_GAIN_MIN (0)</td>
- <td>@ref LVVC_GAIN_DEFAULT (0)</td>
- <td>@ref LVVC_GAIN_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 Gain; ///< Gain
-
- /**
- 0 (no detection) or 1 (detection).
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>15.0</td>
- <td>@ref LVVC_SPDETECTED_MIN (0)</td>
- <td>@ref LVVC_SPDETECTED_DEFAULT (0)</td>
- <td>@ref LVVC_SPDETECTED_MAX (1)</td>
- </tr>
- </table> */
- LVM_INT16 SpDetected; ///< The speech detector flag.
-
-} LVVC_StatusParams_st;
-
-/**
-* The status parameters are used to retrieve the status of the module.
-* @see LVWM_GetStatusParameters
-*/
-typedef struct
-{
- /**
- The internal gain setting used by WhisperMode in dB.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>6.9</td>
- <td>@ref LVWM_AVL_GAIN_MIN (0)</td>
- <td>@ref LVWM_AVL_GAIN_DEFAULT (0)</td>
- <td>@ref LVWM_AVL_GAIN_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 AVL_Gain; ///< gain (dB)
-
-} LVWM_StatusParams_st;
-
-/**
-* The status parameters are used to retrieve the status of the module.
-* @see LVVE_Rx_GetStatusParameters
-*/
-typedef struct
-{
- /**
- Voice Clarity Status Parameter Structure.
- */
- LVVC_StatusParams_st VC_StatusParams; ///< Voice Clarity Status Parameter Structure
-
- /**
- Whisper Mode Status Parameter Structure.
- */
- LVWM_StatusParams_st WM_StatusParams; ///< Whisper Mode Status Parameter Structure
-
- /**
- Dummy Param.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>1.7</td>
- <td>@ref LVVE_RX_DUMMY_MIN (-128)</td>
- <td>@ref LVVE_RX_DUMMY_DEFAULT (0)</td>
- <td>@ref LVVE_RX_DUMMY_MAX (127)</td>
- </tr>
- </table> */
- LVM_INT8 dummy; ///< Dummy Param
-
-} LVVE_Rx_StatusParams_st;
-
-/**
-* The status parameters are used to retrieve the status of the module.
-* @see LVNV_GetStatusParameters
-*/
-typedef struct
-{
- /**
- Bit mask describing the current state of LVNV, used for debugging.
- */
- LVNV_StatusWord_bm status; ///< current state
-
- /**
- To keep correct memory alignment. To be removed when LVNV_StatusWord_bm has
- become int32 as it should.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>0.15</td>
- <td>@ref LVNV_DUMMY_MIN (0)</td>
- <td>@ref LVNV_DUMMY_DEFAULT (0)</td>
- <td>@ref LVNV_DUMMY_MAX (0)</td>
- </tr>
- </table> */
- LVM_INT16 Dummy; ///< Dummy for memory alignment.
-
- /**
- Pointer to the coefficients of the primary low-band (0-4kHz) NLMS filter
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>1.30</td>
- <td>@ref LVNV_PNLMS0_LB_COEFFS_MIN (-2147483648)</td>
- <td>@ref LVNV_PNLMS0_LB_COEFFS_DEFAULT (0)</td>
- <td>@ref LVNV_PNLMS0_LB_COEFFS_MAX (2147483647)</td>
- </tr>
- </table> */
- LVM_INT32* pNLMS0_LB_Coeffs; ///< NLMS0 lowband filter coefficients
-
- /**
- Pointer to the coefficients of the primary high-band (4-8kHz) NLMS filter
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>1.30</td>
- <td>@ref LVNV_PNLMS0_HB_COEFFS_MIN (-2147483648)</td>
- <td>@ref LVNV_PNLMS0_HB_COEFFS_DEFAULT (0)</td>
- <td>@ref LVNV_PNLMS0_HB_COEFFS_MAX (2147483647)</td>
- </tr>
- </table> */
- LVM_INT32* pNLMS0_HB_Coeffs; ///< NLMS0 highband filter coefficients
-
- /**
- Pointer to the coefficients of the secondary low-band (0-4kHz) NLMS filter
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>1.30</td>
- <td>@ref LVNV_PNLMS1_LB_COEFFS_MIN (-2147483648)</td>
- <td>@ref LVNV_PNLMS1_LB_COEFFS_DEFAULT (0)</td>
- <td>@ref LVNV_PNLMS1_LB_COEFFS_MAX (2147483647)</td>
- </tr>
- </table> */
- LVM_INT32* pNLMS1_LB_Coeffs; ///< NLMS1 lowband filter coefficients
-
- /**
- Pointer to the coefficients of the secondary high-band (4-8kHz) NLMS filter
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>1.30</td>
- <td>@ref LVNV_PNLMS1_HB_COEFFS_MIN (-2147483648)</td>
- <td>@ref LVNV_PNLMS1_HB_COEFFS_DEFAULT (0)</td>
- <td>@ref LVNV_PNLMS1_HB_COEFFS_MAX (2147483647)</td>
- </tr>
- </table> */
- LVM_INT32* pNLMS1_HB_Coeffs; ///< NLMS1 highband filter coefficients
-
- /**
- Pointer to the coefficients of the FSB0 and FSB1 filters
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>16.15</td>
- <td>@ref LVNV_PFSB_COEFFS_MIN (-2147483648)</td>
- <td>@ref LVNV_PFSB_COEFFS_DEFAULT (0)</td>
- <td>@ref LVNV_PFSB_COEFFS_MAX (2147483647)</td>
- </tr>
- </table> */
- LVM_INT32* pFSB_Coeffs; ///< FSB0 and FSB1 coefficients
-
- /**
- Pointer to the coefficients of the GSC filter
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>1.30</td>
- <td>@ref LVNV_PGSC_COEFFS_MIN (-2147483648)</td>
- <td>@ref LVNV_PGSC_COEFFS_DEFAULT (0)</td>
- <td>@ref LVNV_PGSC_COEFFS_MAX (2147483647)</td>
- </tr>
- </table> */
- LVM_INT32* pGSC_Coeffs; ///< GSC coefficients
-
- /**
- Pointer to the MicPowSp detection flag
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>15.0</td>
- <td>@ref LVNV_PMICPOWSP_MIN (0)</td>
- <td>@ref LVNV_PMICPOWSP_DEFAULT (0)</td>
- <td>@ref LVNV_PMICPOWSP_MAX (1)</td>
- </tr>
- </table> */
- LVM_INT16* pMicPowSp; ///< MicPow Speech detection flag
-
- /**
- Pointer to the variable of Calibration factor
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>2.13</td>
- <td>@ref LVNV_PCALFACTOR_MIN (0)</td>
- <td>@ref LVNV_PCALFACTOR_DEFAULT (0)</td>
- <td>@ref LVNV_PCALFACTOR_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16* pCalFactor; ///< Calibration factor value
-
- /**
- Pointer to the variable of Calibration ready
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>15.0</td>
- <td>@ref LVNV_PCALREADY_MIN (0)</td>
- <td>@ref LVNV_PCALREADY_DEFAULT (0)</td>
- <td>@ref LVNV_PCALREADY_MAX (2)</td>
- </tr>
- </table> */
- LVM_INT16* pCalReady; ///< Calibration ready value
-
- /**
- Pointer to the inter-channel correlation value used in broadside detection.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>0.15</td>
- <td>@ref LVNV_PBROADSIDE_INTERCC_MIN (0)</td>
- <td>@ref LVNV_PBROADSIDE_INTERCC_DEFAULT (0)</td>
- <td>@ref LVNV_PBROADSIDE_INTERCC_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16* pBroadside_interCC; ///< Broadside correlation
-
-} LVNV_StatusParams_st;
-
-/**
-* The status parameters are used to retrieve the status of the module.
-* @see LVHF_GetStatusParameters
-*/
-typedef struct
-{
- /**
- Current value of the echo subtraction factor.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>5.10</td>
- <td>@ref LVHF_GAMMAE_MIN (0)</td>
- <td>@ref LVHF_GAMMAE_DEFAULT (0)</td>
- <td>@ref LVHF_GAMMAE_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 gammae; ///< multiplicator factor of echo suppression
-
- /**
- Bit mask describing the current state of LVHF, used for debugging.
- */
- LVHF_StatusWord_bm status; ///< current state
-
- /**
- Pointer to the coefficients of the LB NLMS.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>1.30</td>
- <td>@ref LVHF_PNLMS_LB_COEFS_MIN (-2147483648)</td>
- <td>@ref LVHF_PNLMS_LB_COEFS_DEFAULT (0)</td>
- <td>@ref LVHF_PNLMS_LB_COEFS_MAX (2147483647)</td>
- </tr>
- </table> */
- LVM_INT32* pNLMS_LB_Coefs; ///< NLMS lowband filter coefficients
-
- /**
- Pointer to the coefficients of the HB NLMS.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>1.30</td>
- <td>@ref LVHF_PNLMS_HB_COEFS_MIN (-2147483648)</td>
- <td>@ref LVHF_PNLMS_HB_COEFS_DEFAULT (0)</td>
- <td>@ref LVHF_PNLMS_HB_COEFS_MAX (2147483647)</td>
- </tr>
- </table> */
- LVM_INT32* pNLMS_HB_Coefs; ///< NLMS highband filter coefficients
-
- /**
- Pointer to the coefficients of the PCD NLMS.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>1.30</td>
- <td>@ref LVHF_PPCD_COEFS_MIN (-2147483648)</td>
- <td>@ref LVHF_PPCD_COEFS_DEFAULT (0)</td>
- <td>@ref LVHF_PPCD_COEFS_MAX (2147483647)</td>
- </tr>
- </table> */
- LVM_INT32* pPCD_Coefs; ///< PCD NLMS filter coefficients
-
-} LVHF_StatusParams_st;
-
-/**
-* The status parameters are used to retrieve the status of the module.
-* @see LVVE_Tx_GetStatusParameters
-*/
-typedef struct
-{
- /**
- HandsFree Status Parameter Structure.
- */
- LVHF_StatusParams_st HF_StatusParams; ///< HandsFree Status Parameters Structure
-
- /**
- NoiseVoid Status Parameter Structure.
- */
- LVNV_StatusParams_st NV_StatusParams; ///< NoiseVoid Status Parameters Structrue
-
- /**
- WhisperMode Status Parameter Structure.
- */
- LVWM_StatusParams_st WM_StatusParams; ///< WhisperMode Status Parameter Structrue
-
- /**
- Dummy Param.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>1.7</td>
- <td>@ref LVVE_TX_DUMMY_MIN (-128)</td>
- <td>@ref LVVE_TX_DUMMY_DEFAULT (0)</td>
- <td>@ref LVVE_TX_DUMMY_MAX (127)</td>
- </tr>
- </table> */
- LVM_INT8 dummy; ///< Dummy Param
-
-} LVVE_Tx_StatusParams_st;
-
-/**
-* The control parameters are used to control the overall module behavior. These parameters may
-* be changed at any time during processing using the LVVIDHeader_SetControlParameters function but they
-* will not take effect until the next call to the LVVIDHeader_Process function.
-*
-* @see LVVIDHeader_SetControlParameters
-* @see LVVIDHeader_Process
-*/
-typedef struct
-{
- /**
- This number always increments by one when there is change in the header format.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>8.0</td>
- <td>@ref LVVIDHEADER_HEADERVERSION_MIN (0)</td>
- <td>@ref LVVIDHEADER_HEADERVERSION_DEFAULT (3)</td>
- <td>@ref LVVIDHEADER_HEADERVERSION_MAX (255)</td>
- </tr>
- </table> */
- LVM_UINT8 HeaderVersion; ///< Header Format Version
-
- /**
- Initially This variable holds value of the baseline version. The value is in
- format of xxyyzzpp where xx is major number of the library, yy is minor number,
- zz is second minor number and pp is patch number of the baseline.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>32.0</td>
- <td>@ref LVVIDHEADER_BASELINEVERSION_MIN (1)</td>
- <td>@ref LVVIDHEADER_BASELINEVERSION_DEFAULT (51906816)</td>
- <td>@ref LVVIDHEADER_BASELINEVERSION_MAX (4294967295)</td>
- </tr>
- </table> */
- LVM_UINT32 BaselineVersion; ///< This is LVVE tagged version name
-
- /**
- First LVVE_Rx algorithm mask which holds information of which LVVE_Rx
- algorithms are present.
- */
- LVVIDHeader_LVVE_Rx_Mask1_bm LVVE_Rx_AlgoMask1; ///< This variable forms first part of LVVE_Rx algorithm mask
-
- /**
- Second LVVE_Rx algorithm mask which holds information of which LVVE_Rx
- algorithms are present.
- */
- LVVIDHeader_LVVE_Rx_Mask2_bm LVVE_Rx_AlgoMask2; ///< This variable forms second part of LVVE_Rx algorithm mask
-
- /**
- First LVVE_Tx algorithm mask which holds information of which LVVE_Tx
- algorithms are present.
- */
- LVVIDHeader_LVVE_Tx_Mask1_bm LVVE_Tx_AlgoMask1; ///< This variable forms first part of LVVE_Tx mask
-
- /**
- Second LVVE_Tx algorithm mask which holds information of which LVVE_Tx
- algorithms are present.
- */
- LVVIDHeader_LVVE_Tx_Mask2_bm LVVE_Tx_AlgoMask2; ///< This variable forms second part of LVVE_Tx mask
-
- /**
- First LVVE configuration mask which holds information of which configurations
- of LVVE_Tx and LVVE_Rx algorithm are present.
- */
- LVVIDHeader_Configurations_Mask1_bm LVVE_Config_AlgoMask1; ///< This variable forms first part of common LVVE_Tx and LVVE_Rx configuration mask
-
- /**
- Second LVVE configuration mask which holds information of which configurations
- of LVVE_Tx and LVVE_Rx algorithm are present.
- */
- LVVIDHeader_Configurations_Mask2_bm LVVE_Config_AlgoMask2; ///< This variable forms second part of common LVVE_Tx and LVVE_Rx configuration mask
-
- /**
- Messge ID is used to identify stream
- */
- LVVIDHeader_MessageID_en MessageID; ///< This param holds message ID of the buffer
-
- /**
- This parameter specifies the sample rate information of the buffer.
- */
- LVM_Fs_en SampleRate; ///< Sample rate information of the buffer.
-
- /**
- This parameter specifies the volume index corresponding to the subsequent data.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>8.0</td>
- <td>@ref LVVIDHEADER_VOLUMEINDEX_MIN (0)</td>
- <td>@ref LVVIDHEADER_VOLUMEINDEX_DEFAULT (0)</td>
- <td>@ref LVVIDHEADER_VOLUMEINDEX_MAX (255)</td>
- </tr>
- </table> */
- LVM_UINT8 VolumeIndex; ///< Volume index corresponding to the subsequent data.
-
- /**
- This parameter specifies how many volumes are present in the binary file.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>8.0</td>
- <td>@ref LVVIDHEADER_NUMVOLUMES_MIN (0)</td>
- <td>@ref LVVIDHEADER_NUMVOLUMES_DEFAULT (1)</td>
- <td>@ref LVVIDHEADER_NUMVOLUMES_MAX (255)</td>
- </tr>
- </table> */
- LVM_UINT8 NumVolumes; ///< Number of volumes present in the binary file.
-
-} LVVIDHeader_ControlParams_st;
-
-/**
-* The control parameters are used to control the overall module behavior. These parameters may
-* be changed at any time during processing using the LVVC_SetControlParameters function but they
-* will not take effect until the next call to the LVVC_Process function.
-*
-* @see LVVC_SetControlParameters
-* @see LVVC_Process
-*/
-typedef struct
-{
- /**
- Control the operating mode (ON/OFF) of the algorithm.
- */
- LVM_Mode_en OperatingMode; ///< Operating mode
-
- /**
- The mode word to enable/disable internal algorithm blocks of VoiceClarity.
- */
- LVVC_ModeWord_bm mode; ///< Mode word
-
- /**
- Maximum Gain applied to the signal.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>6.9</td>
- <td>@ref LVVC_GAIN_LIN_MAX_MIN (512)</td>
- <td>@ref LVVC_GAIN_LIN_MAX_DEFAULT (1286)</td>
- <td>@ref LVVC_GAIN_LIN_MAX_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 Gain_Lin_Max; ///< Maximum Gain.
-
- /**
- The Noise_Sensitivity parameter sets how sensitive VoiceClarity will be to the
- background noise level. The Noise_Sensitivity parameter allows adjusting the
- sensitivity of those processing blocks to the nearend noise level. For high
- values of the Noise_Sensitivity the effect of the mentioned processing blocks
- will be big, even at low to moderate nearend noise levels. For low values of
- the Noise_Sensitivity the effect of the processing blocks will be smaller, even
- for high nearend noise levels.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>0.15</td>
- <td>@ref LVVC_NOISE_SENSITIVITY_MIN (-6709)</td>
- <td>@ref LVVC_NOISE_SENSITIVITY_DEFAULT (20000)</td>
- <td>@ref LVVC_NOISE_SENSITIVITY_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 Noise_Sensitivity; ///< Noise Sensitivity.
-
- /**
- The desired output level of the AGC. <br>
- AVL_Target_level_lin = \f$32767*10^{Target_Level_dB/20}\f$
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>0.15</td>
- <td>@ref LVVC_AVL_TARGET_LEVEL_LIN_MIN (0)</td>
- <td>@ref LVVC_AVL_TARGET_LEVEL_LIN_DEFAULT (16384)</td>
- <td>@ref LVVC_AVL_TARGET_LEVEL_LIN_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 AVL_Target_level_lin; ///< The desired output level of the AGC.
-
- /**
- The maximal attenuation of the AGC. <br>
- AVL_MinGainLin = \f$512*10^{MinGain_dB/20}\f$
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>6.9</td>
- <td>@ref LVVC_AVL_MINGAINLIN_MIN (0)</td>
- <td>@ref LVVC_AVL_MINGAINLIN_DEFAULT (256)</td>
- <td>@ref LVVC_AVL_MINGAINLIN_MAX (512)</td>
- </tr>
- </table> */
- LVM_INT16 AVL_MinGainLin; ///< The maximal attenuation of the AGC.
-
- /**
- The maximal gain of the AGC. <br>
- AVL_MaxGainLin = \f$512*10^{MaxGain_dB/20}\f$
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>6.9</td>
- <td>@ref LVVC_AVL_MAXGAINLIN_MIN (512)</td>
- <td>@ref LVVC_AVL_MAXGAINLIN_DEFAULT (8192)</td>
- <td>@ref LVVC_AVL_MAXGAINLIN_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 AVL_MaxGainLin; ///< The maximal gain of the AGC.
-
- /**
- The nominal gain of the AGC.<br>
- AVL_NominalGain = \f$512*10^{NominalGain_dB/20}\f$
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>6.9</td>
- <td>@ref LVVC_AVL_NOMINALGAIN_MIN (0)</td>
- <td>@ref LVVC_AVL_NOMINALGAIN_DEFAULT (512)</td>
- <td>@ref LVVC_AVL_NOMINALGAIN_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 AVL_NominalGain; ///< The nominal gain of the AGC.
-
- /**
- The gain of the AGC is smoothed across time. The time constant of the smoothing
- depends on whether the gain is increasing or decreasing. When a sudden loud
- signal is encountered (e.g. attack of speech), the attack time is used. When
- the gain is increasing (e.g. long period of whispered speech), the release time
- is used. <br>
-
- AVL_Attack = \f$32767*\exp(-1/(100*AttackTimeSec))\f$
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>0.15</td>
- <td>@ref LVVC_AVL_ATTACK_MIN (0)</td>
- <td>@ref LVVC_AVL_ATTACK_DEFAULT (12055)</td>
- <td>@ref LVVC_AVL_ATTACK_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 AVL_Attack; ///< The attack time of the AGC.
-
- /**
- The gain of the AGC is smoothed across time. The time constant of the smoothing
- depends on whether the gain is increasing or decreasing. When a sudden loud
- signal is encountered (e.g. attack of speech), the attack time is used. When
- the gain is increasing (e.g. long period of whispered speech), the release time
- is used. <br>
-
- AVL_Release = \f$32767*\exp(-1/(100*ReleaseTimeSec))\f$
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>0.15</td>
- <td>@ref LVVC_AVL_RELEASE_MIN (0)</td>
- <td>@ref LVVC_AVL_RELEASE_DEFAULT (32604)</td>
- <td>@ref LVVC_AVL_RELEASE_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 AVL_Release; ///< The release time of the AGC.
-
- /**
- The release time at maximum noise level.<br>
-
- AVL_ReleaseMax = \f$32767*\exp(-1/(100*ReleaseMaxTimeSec))\f$
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>0.15</td>
- <td>@ref LVVC_AVL_RELEASEMAX_MIN (0)</td>
- <td>@ref LVVC_AVL_RELEASEMAX_DEFAULT (32441)</td>
- <td>@ref LVVC_AVL_RELEASEMAX_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 AVL_ReleaseMax; ///< The release time at maximum noise level.
-
- /**
- AVL_Limit_MaxOutputLin = \f$32767*10^{TargetLimiterLeveldB/20}\f$
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>0.15</td>
- <td>@ref LVVC_AVL_LIMIT_MAXOUTPUTLIN_MIN (0)</td>
- <td>@ref LVVC_AVL_LIMIT_MAXOUTPUTLIN_DEFAULT (23170)</td>
- <td>@ref LVVC_AVL_LIMIT_MAXOUTPUTLIN_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 AVL_Limit_MaxOutputLin; ///< The level to which the signal will be limited.
-
- /**
- The higher the value of the threshold, the less speech detections will occur.
- <br>
- SpDetect_Threshold = \f$512 * [0,64]\f$
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>6.9</td>
- <td>@ref LVVC_SPDETECT_THRESHOLD_MIN (0)</td>
- <td>@ref LVVC_SPDETECT_THRESHOLD_DEFAULT (1024)</td>
- <td>@ref LVVC_SPDETECT_THRESHOLD_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 SpDetect_Threshold; ///< The threshold used in the speech detector of VoiceClarity.
-
-} LVVC_ControlParams_st;
-
-/**
-* The control parameters are used to control the overall module behavior. These parameters may
-* be changed at any time during processing using the LVFENS_SetControlParameters function but they
-* will not take effect until the next call to the LVFENS_Process function.
-*
-* @see LVFENS_SetControlParameters
-* @see LVFENS_Process
-*/
-typedef struct
-{
- /**
- */
- LVM_Mode_en OperatingMode; ///< Operating Mode
-
- /**
- The maximum amount of noise suppression. <br>
- Unit: dB<br>
- FENS_limit_ns = \f$32767*10^{-max noise reduction[dB]/20}\f$
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>0.15</td>
- <td>@ref LVFENS_FENS_LIMIT_NS_MIN (0)</td>
- <td>@ref LVFENS_FENS_LIMIT_NS_DEFAULT (10976)</td>
- <td>@ref LVFENS_FENS_LIMIT_NS_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 FENS_limit_NS; ///< FENS Noise Suppression Limit
-
- /**
- The mode word to control the internal operation of FENS.
- */
- LVFENS_ModeWord_bm Mode; ///< Mode word
-
-} LVFENS_ControlParams_st;
-
-/**
-* The control parameters are used to control the overall module behavior. These parameters may
-* be changed at any time during processing using the LVWM_SetControlParameters function but they
-* will not take effect until the next call to the LVWM_Process function.
-*
-* @see LVWM_SetControlParameters
-* @see LVWM_Process
-*/
-typedef struct
-{
- /**
- Control the operating mode (ON/OFF) of the algorithm.
- */
- LVM_Mode_en OperatingMode; ///< Operating mode
-
- /**
- The mode word to enable/disable internal algorithm blocks of WhisperMode.
- */
- LVWM_ModeWord_bm mode; ///< Mode word
-
- /**
- The desired output level of the AGC. <br>
- AVL_Target_level_lin = \f$32767*10^{TargetLeveldB/20}\f$
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>0.15</td>
- <td>@ref LVWM_AVL_TARGET_LEVEL_LIN_MIN (0)</td>
- <td>@ref LVWM_AVL_TARGET_LEVEL_LIN_DEFAULT (16384)</td>
- <td>@ref LVWM_AVL_TARGET_LEVEL_LIN_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 AVL_Target_level_lin; ///< The desired output level of the AGC.
-
- /**
- The maximal attenuation of the AGC. <br>
- AVL_MinGainLin = \f$512*10^{MinGaindB/20}\f$
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>6.9</td>
- <td>@ref LVWM_AVL_MINGAINLIN_MIN (0)</td>
- <td>@ref LVWM_AVL_MINGAINLIN_DEFAULT (128)</td>
- <td>@ref LVWM_AVL_MINGAINLIN_MAX (512)</td>
- </tr>
- </table> */
- LVM_INT16 AVL_MinGainLin; ///< The maximal attenuation of the AGC.
-
- /**
- The maximal gain of the AGC. <br>
- AVL_MaxGainLin = \f$512*10^{MaxGaindB/20}\f$
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>6.9</td>
- <td>@ref LVWM_AVL_MAXGAINLIN_MIN (512)</td>
- <td>@ref LVWM_AVL_MAXGAINLIN_DEFAULT (8189)</td>
- <td>@ref LVWM_AVL_MAXGAINLIN_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 AVL_MaxGainLin; ///< The maximal gain of the AGC.
-
- /**
- The gain of the AGC is smoothed across time. The time constant of the smoothing
- depends on whether the gain is increasing or decreasing. When a sudden loud
- signal is encountered (e.g. attack of speech), the attack time is used. When
- the gain is increasing (e.g. long period of whispered speech), the release time
- is used. <br>
-
- AVL_Attack = \f$32767*\exp(-1/(100*AttackTimeSec))\f$
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>0.15</td>
- <td>@ref LVWM_AVL_ATTACK_MIN (0)</td>
- <td>@ref LVWM_AVL_ATTACK_DEFAULT (25520)</td>
- <td>@ref LVWM_AVL_ATTACK_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 AVL_Attack; ///< The attack time of the AGC.
-
- /**
- The gain of the AGC is smoothed across time. The time constant of the smoothing
- depends on whether the gain is increasing or decreasing. When a sudden loud
- signal is encountered (e.g. attack of speech), the attack time is used. When
- the gain is increasing (e.g. long period of whispered speech), the release time
- is used. <br>
-
- AVL_Release = \f$32767*\exp(-1/(100*ReleasTimeSec))\f$
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>0.15</td>
- <td>@ref LVWM_AVL_RELEASE_MIN (0)</td>
- <td>@ref LVWM_AVL_RELEASE_DEFAULT (32685)</td>
- <td>@ref LVWM_AVL_RELEASE_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 AVL_Release; ///< The release time of the AGC.
-
- /**
- AVL_Limit_MaxOutputLin = \f$32767*10^{TargetLimiterLeveldB/20}\f$
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>0.15</td>
- <td>@ref LVWM_AVL_LIMIT_MAXOUTPUTLIN_MIN (0)</td>
- <td>@ref LVWM_AVL_LIMIT_MAXOUTPUTLIN_DEFAULT (23197)</td>
- <td>@ref LVWM_AVL_LIMIT_MAXOUTPUTLIN_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 AVL_Limit_MaxOutputLin; ///< The level to which the signal will be limited.
-
- /**
- The higher the value of the threshold, the less speech detections will occur.
- <br>
- SpDetect_Threshold = \f$512 * [0,64]\f$
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>6.9</td>
- <td>@ref LVWM_SPDETECT_THRESHOLD_MIN (0)</td>
- <td>@ref LVWM_SPDETECT_THRESHOLD_DEFAULT (9216)</td>
- <td>@ref LVWM_SPDETECT_THRESHOLD_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 SpDetect_Threshold; ///< The threshold used in the speech detector of WhisperMode.
-
-} LVWM_ControlParams_st;
-
-/**
-* The control parameters are used to control the overall module behavior. These parameters may
-* be changed at any time during processing using the LVDRC_SetControlParameters function but they
-* will not take effect until the next call to the LVDRC_Process function.
-*
-* @see LVDRC_SetControlParameters
-* @see LVDRC_Process
-*/
-typedef struct
-{
- /**
- Operating mode for DRC
- */
- LVM_Mode_en OperatingMode; ///< Operating mode
-
- /**
- Sets the number of sections (knee points) in the compressor curve
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>16.0</td>
- <td>@ref LVDRC_NUMKNEES_MIN (1)</td>
- <td>@ref LVDRC_NUMKNEES_DEFAULT (5)</td>
- <td>@ref LVDRC_NUMKNEES_MAX (5)</td>
- </tr>
- </table> */
- LVM_UINT16 NumKnees; ///< Number of Knee points in compressor curve
-
- /**
- An array of size 5(maximum) containing the knee points specified by the
- compression curve in dBFs. The number of knee points in use is limited by the
- NumKnees parameter. Th input level for the first knee should be equal to or
- larger than -96dB, and the input level for the last knee should be 0dB.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>15.0</td>
- <td>@ref LVDRC_COMPRESSORCURVEINPUTLEVELS_MIN (-96)</td>
- <td>@ref LVDRC_COMPRESSORCURVEINPUTLEVELS_DEFAULT {-96,-70,-50, -24, 0}</td>
- <td>@ref LVDRC_COMPRESSORCURVEINPUTLEVELS_MAX (0)</td>
- </tr>
- </table> */
- LVM_INT16 CompressorCurveInputLevels[LVDRC_COMPRESSORCURVEINPUTLEVELS_LENGTH]; ///< Compressor Curve Input Levels
-
- /**
- An array of size 5(maximum) containing the knee points specified by the
- compression curve in dBFs. The number of knee points in use is limited by the
- NumKnees parameter. The output level for the first knee should be equal to or
- larger than -96dB, and the output level for the last knee should be equal to or
- smaller than 0dB.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>15.0</td>
- <td>@ref LVDRC_COMPRESSORCURVEOUTPUTLEVELS_MIN (-96)</td>
- <td>@ref LVDRC_COMPRESSORCURVEOUTPUTLEVELS_DEFAULT {-96,-70,-38,-12,0}</td>
- <td>@ref LVDRC_COMPRESSORCURVEOUTPUTLEVELS_MAX (0)</td>
- </tr>
- </table> */
- LVM_INT16 CompressorCurveOutputLevels[LVDRC_COMPRESSORCURVEOUTPUTLEVELS_LENGTH]; ///< Compressor Curve Output Levels
-
- /**
- The AttackTime parameter is the time constant controlling the rate of reaction
- to increase in signal level. The AttackTime is specified in increments of 100µs
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>15.0</td>
- <td>@ref LVDRC_ATTACKTIME_MIN (0)</td>
- <td>@ref LVDRC_ATTACKTIME_DEFAULT (50)</td>
- <td>@ref LVDRC_ATTACKTIME_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 AttackTime; ///< Attack Time
-
- /**
- The ReleaseTime parameter is the time constant controlling the rate of reaction
- to decrease in signal level. The ReleaseTime is specified in increments of
- 100µs.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>15.0</td>
- <td>@ref LVDRC_RELEASETIME_MIN (0)</td>
- <td>@ref LVDRC_RELEASETIME_DEFAULT (50)</td>
- <td>@ref LVDRC_RELEASETIME_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 ReleaseTime; ///< Release Time
-
- /**
- Enable or Disable limiter with soft clipping.
- */
- LVM_Mode_en LimiterOperatingMode; ///< Enable or Disable limiter with soft clipping
-
- /**
- Sets the limit level of the compressor in dB.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>15.0</td>
- <td>@ref LVDRC_LIMITLEVEL_MIN (-96)</td>
- <td>@ref LVDRC_LIMITLEVEL_DEFAULT (0)</td>
- <td>@ref LVDRC_LIMITLEVEL_MAX (0)</td>
- </tr>
- </table> */
- LVM_INT16 LimitLevel; ///< Sets the limit level of the compressor in dB
-
-} LVDRC_ControlParams_st;
-
-/**
-* The control parameters are used to control the overall module behavior. These parameters may
-* be changed at any time during processing using the LVNG_SetControlParameters function but they
-* will not take effect until the next call to the LVNG_Process function.
-*
-* @see LVNG_SetControlParameters
-* @see LVNG_Process
-*/
-typedef struct
-{
- /**
- Operating mode for Noise Gate
- */
- LVM_Mode_en OperatingMode; ///< Operating mode
-
- /**
- Sets the number of sections (knee points) in the compressor curve
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>16.0</td>
- <td>@ref LVNG_NUMKNEES_MIN (1)</td>
- <td>@ref LVNG_NUMKNEES_DEFAULT (5)</td>
- <td>@ref LVNG_NUMKNEES_MAX (5)</td>
- </tr>
- </table> */
- LVM_UINT16 NumKnees; ///< Number of Knee points in compressor curve
-
- /**
- An array of size 5(maximum) containing the knee points specified by the
- compression curve in dBFs. The number of knee points in use is limited by the
- NumKnees parameter. The input level for the first knee should be equal to or
- larger than -96dB, and the input level for the last knee should be 0dB.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>15.0</td>
- <td>@ref LVNG_COMPRESSORCURVEINPUTLEVELS_MIN (-96)</td>
- <td>@ref LVNG_COMPRESSORCURVEINPUTLEVELS_DEFAULT {-80,-70,-50, -24, 0}</td>
- <td>@ref LVNG_COMPRESSORCURVEINPUTLEVELS_MAX (0)</td>
- </tr>
- </table> */
- LVM_INT16 CompressorCurveInputLevels[LVNG_COMPRESSORCURVEINPUTLEVELS_LENGTH]; ///< Compressor Curve Input Levels
-
- /**
- An array of size 5(maximum) containing the knee points specified by the
- compression curve in dBFs. The number of knee points in use is limited by the
- NumKnees parameter. The output level for the first knee should be equal to or
- larger than -96dB, and the output level for the last knee should be equal to or
- smaller than 0dB.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>15.0</td>
- <td>@ref LVNG_COMPRESSORCURVEOUTPUTLEVELS_MIN (-96)</td>
- <td>@ref LVNG_COMPRESSORCURVEOUTPUTLEVELS_DEFAULT {-96,-80,-50, -24, 0}</td>
- <td>@ref LVNG_COMPRESSORCURVEOUTPUTLEVELS_MAX (0)</td>
- </tr>
- </table> */
- LVM_INT16 CompressorCurveOutputLevels[LVNG_COMPRESSORCURVEOUTPUTLEVELS_LENGTH]; ///< Compressor Curve Output Levels
-
- /**
- The AttackTime parameter is the time constant controlling the rate of reaction
- to increase in signal level. The AttackTime is specified in increments of 100µs
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>15.0</td>
- <td>@ref LVNG_ATTACKTIME_MIN (0)</td>
- <td>@ref LVNG_ATTACKTIME_DEFAULT (50)</td>
- <td>@ref LVNG_ATTACKTIME_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 AttackTime; ///< Attack Time
-
- /**
- The ReleaseTime parameter is the time constant controlling the rate of reaction
- to decrease in signal level. The ReleaseTime is specified in increments of
- 100µs.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>15.0</td>
- <td>@ref LVNG_RELEASETIME_MIN (0)</td>
- <td>@ref LVNG_RELEASETIME_DEFAULT (50)</td>
- <td>@ref LVNG_RELEASETIME_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 ReleaseTime; ///< Release Time
-
-} LVNG_ControlParams_st;
-
-/**
-* The control parameters are used to control the overall module behavior. These parameters may
-* be changed at any time during processing using the LVNLPP_SetControlParameters function but they
-* will not take effect until the next call to the LVNLPP_Process function.
-*
-* @see LVNLPP_SetControlParameters
-* @see LVNLPP_Process
-*/
-typedef struct
-{
- /**
- Limits the signal level compared to digital full scale in dB.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>15.0</td>
- <td>@ref LVNLPP_NLPP_LIMIT_MIN (-24)</td>
- <td>@ref LVNLPP_NLPP_LIMIT_DEFAULT (0)</td>
- <td>@ref LVNLPP_NLPP_LIMIT_MAX (0)</td>
- </tr>
- </table> */
- LVM_INT16 NLPP_Limit; ///< NLPP Limit
-
- /**
- Sets the -3dB corner frequency of the high-pass filter in Hz.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>16.0</td>
- <td>@ref LVNLPP_NLPP_HPF_CORNERFREQ_MIN (50)</td>
- <td>@ref LVNLPP_NLPP_HPF_CORNERFREQ_DEFAULT (50)</td>
- <td>@ref LVNLPP_NLPP_HPF_CORNERFREQ_MAX (1000)</td>
- </tr>
- </table> */
- LVM_UINT16 NLPP_HPF_CornerFreq; ///< NLPP HPF Corner Frequency
-
-} LVNLPP_ControlParams_st;
-
-/**
-* The control parameters are used to control the overall module behavior. These parameters may
-* be changed at any time during processing using the LVEQ_SetControlParameters function but they
-* will not take effect until the next call to the LVEQ_Process function.
-*
-* @see LVEQ_SetControlParameters
-* @see LVEQ_Process
-*/
-typedef struct
-{
- /**
- Sets the length of the Equalizer impulse response. This must never be more than
- the value of EQ_MaxLength set at initialization time. The EQ_Length must be a
- multiple of 8.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>16.0</td>
- <td>@ref LVEQ_EQ_LENGTH_MIN (8)</td>
- <td>@ref LVEQ_EQ_LENGTH_DEFAULT (64)</td>
- <td>@ref LVEQ_EQ_LENGTH_MAX (64)</td>
- </tr>
- </table> */
- LVM_UINT16 EQ_Length; ///< EQ Tap Length
-
- /**
- Pointer to an array containing the samples of the Equalizer impulse response.
- The format of the array content is specified below. The samples of the
- Equalizer impulse response must be in Q3.12 format.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>3.12</td>
- <td>@ref LVEQ_EQ_COEFS_MIN (-32768)</td>
- <td>@ref LVEQ_EQ_COEFS_DEFAULT {4096,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}</td>
- <td>@ref LVEQ_EQ_COEFS_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 *pEQ_Coefs; ///< Equalizer impulse response
-
-} LVEQ_ControlParams_st;
-
-
-
-/*[Begin] [lvwenhua-2013/10/21]*/
-typedef struct
-{
- LVM_INT16 EqCoefs[LVVE_MAX_EQ_LENGTH_NB];
-} LVEQ_Coefs_st;
-/*[End] [lvwenhua-2013/10/21]*/
-
-
-
-
-
-
-/**
-* The control parameters are used to control the overall module behavior. These parameters may
-* be changed at any time during processing using the LVVOL_SetControlParameters function but they
-* will not take effect until the next call to the LVVOL_Process function.
-*
-* @see LVVOL_SetControlParameters
-* @see LVVOL_Process
-*/
-typedef struct
-{
- /**
- Turns on/off VOL_Gain.
- */
- LVM_Mode_en VOL_OperatingMode; ///< Turns on/off VOL_Gain
-
- /**
- The volume control gain can be used to set the overall volume level of the
- signal. The gain is set in dB with steps of 1dB.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>15.0</td>
- <td>@ref LVVOL_VOL_GAIN_MIN (-96)</td>
- <td>@ref LVVOL_VOL_GAIN_DEFAULT (0)</td>
- <td>@ref LVVOL_VOL_GAIN_MAX (24)</td>
- </tr>
- </table> */
- LVM_INT16 VOL_Gain; ///< Apply Gain to Input signal
-
-} LVVOL_ControlParams_st;
-
-/**
-* The control parameters are used to control the overall module behavior. These parameters may
-* be changed at any time during processing using the LVHPF_SetControlParameters function but they
-* will not take effect until the next call to the LVHPF_Process function.
-*
-* @see LVHPF_SetControlParameters
-* @see LVHPF_Process
-*/
-typedef struct
-{
- /**
- Turns on/off High Pass filter.
- */
- LVM_Mode_en HPF_OperatingMode; ///< Turns on/off High Pass filter
-
- /**
- Sets the 3dB corner frequency of the high-pass filter. In case NoiseVoid is
- enabled, the same high-pass filter will be applied to the second microphone
- channel.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>16.0</td>
- <td>@ref LVHPF_HPF_CORNERFREQ_MIN (50)</td>
- <td>@ref LVHPF_HPF_CORNERFREQ_DEFAULT (50)</td>
- <td>@ref LVHPF_HPF_CORNERFREQ_MAX (1500)</td>
- </tr>
- </table> */
- LVM_UINT16 HPF_CornerFreq; ///< High Pass Filter Corner Frequency in Hz
-
-} LVHPF_ControlParams_st;
-
-/**
-* The control parameters are used to control the overall module behavior. These parameters may
-* be changed at any time during processing using the LVMUTE_SetControlParameters function but they
-* will not take effect until the next call to the LVMUTE_Process function.
-*
-* @see LVMUTE_SetControlParameters
-* @see LVMUTE_Process
-*/
-typedef struct
-{
- /**
- This param can mute unmute the Rx/Tx engine output.
- */
- LVM_Mode_en Mute; ///< This param can mute unmute the Rx/Tx engine output
-
-} LVMUTE_ControlParams_st;
-
-/**
-* The control parameters are used to control the overall module behavior. These parameters may
-* be changed at any time during processing using the LVVE_Rx_SetControlParameters function but they
-* will not take effect until the next call to the LVVE_Rx_Process function.
-*
-* @see LVVE_Rx_SetControlParameters
-* @see LVVE_Rx_Process
-*/
-typedef struct
-{
- /**
- This enumerated type is used to set the operating mode of the Rx path. The
- processing can be separately set to enable all processing modules (i.e., ON),
- to disable all processing modules (i.e., OFF) or to bypass all processing
- modules (i.e., BYPASS). When bypassed, all processing modules keep on running,
- but their output is not used.
- */
- LVVE_Rx_Mode_en OperatingMode; ///< This param controls the on/off of RX voice engine.
-
- /**
- This param can mute unmute the Rx/Tx engine output.
- */
- LVM_Mode_en Mute; ///< This param can mute unmute the Rx/Tx engine output
-
- /**
- Turns on/off VOL_Gain.
- */
- LVM_Mode_en VOL_OperatingMode; ///< Turns on/off VOL_Gain
-
- /**
- The volume control gain can be used to set the overall volume level of the
- signal. The gain is set in dB with steps of 1dB.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>15.0</td>
- <td>@ref LVVE_RX_VOL_GAIN_MIN (-96)</td>
- <td>@ref LVVE_RX_VOL_GAIN_DEFAULT (0)</td>
- <td>@ref LVVE_RX_VOL_GAIN_MAX (24)</td>
- </tr>
- </table> */
- LVM_INT16 VOL_Gain; ///< Apply Gain to Input signal
-
- /**
- Far End Noise Suppression Control Parameter Structure.
- */
- LVFENS_ControlParams_st FENS_ControlParams; ///< Far End Noise Suppression Control Parameter Structure
-
- /**
- Turns on/off NLPP.
- */
- LVM_Mode_en NLPP_OperatingMode; ///< Turns on/off NLPP
-
- /**
- NLPP Control Parameter Structure.
- */
- LVNLPP_ControlParams_st NLPP_ControlParams; ///< NLPP Control Parameter Structure
-
- /**
- Voice Clarity Control Parameter Structure.
- */
- LVVC_ControlParams_st VC_ControlParams; ///< Voice Clarity Control Parameter Structure
-
- /**
- Equalizer Operating mode.
- */
- LVM_Mode_en EQ_OperatingMode; ///< Equalizer Operating mode
-
- /**
- Equalizer Control Parameters Structure.
- */
- LVEQ_ControlParams_st EQ_ControlParams; ///< Equalizer Control Parameters Structure
-
- /**
- DRC Control Parameter Strcuture.
- */
- LVDRC_ControlParams_st DRC_ControlParams; ///< DRC Control Parameter Strcuture
-
- /**
- Turns on/off High Pass filter.
- */
- LVM_Mode_en HPF_OperatingMode; ///< Turns on/off High Pass filter
-
- /**
- Sets the 3dB corner frequency of the high-pass filter. In case NoiseVoid is
- enabled, the same high-pass filter will be applied to the second microphone
- channel.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>16.0</td>
- <td>@ref LVVE_RX_HPF_CORNERFREQ_MIN (50)</td>
- <td>@ref LVVE_RX_HPF_CORNERFREQ_DEFAULT (50)</td>
- <td>@ref LVVE_RX_HPF_CORNERFREQ_MAX (1500)</td>
- </tr>
- </table> */
- LVM_UINT16 HPF_CornerFreq; ///< High Pass Filter Corner Frequency in Hz
-
- /**
- Whisper Mode Control Parameter Strcuture.
- */
- LVWM_ControlParams_st WM_ControlParams; ///< Whisper Mode Control Parameter Strcuture
-
- /**
- Noise Gate Control Parameter Structure.
- */
- LVNG_ControlParams_st NG_ControlParams; ///< Noise Gate Control Parameter Structure
-
-} LVVE_Rx_ControlParams_st;
-
-/**
-* The control parameters are used to control the overall module behavior. These parameters may
-* be changed at any time during processing using the LVNV_SetControlParameters function but they
-* will not take effect until the next call to the LVNV_Process function.
-*
-* @see LVNV_SetControlParameters
-* @see LVNV_Process
-*/
-typedef struct
-{
- /**
- */
- LVM_Mode_en OperatingMode; ///< Operating Mode
-
- /**
- The mode word to enable/disable internal algorithm blocks of LVNV.
- */
- LVNV_ModeWord_bm Mode; ///< Mode word
-
- /**
- The mode2 word to allow switching or combining different blocks inside LVNV.
- */
- LVNV_Mode2Word_bm Mode2; ///< Mode2 word
-
- /**
- The tuning mode word to enable/disable internal algorithm tuning capabilities
- in the different blocks of LVNV. Only one bit is allowed to be enabled at a
- time.
- */
- LVNV_TuningModeWord_bm Tuning_mode; ///< Tuning mode word
-
- /**
- Gain applied at the primary channel in the Tx input. Used to scale the
- microphone signal in order to give the NLMS0_LB and NLMS0_HB filters headroom
- for correct operation.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>2.13</td>
- <td>@ref LVNV_INPUT_GAIN_MIC0_MIN (0)</td>
- <td>@ref LVNV_INPUT_GAIN_MIC0_DEFAULT (8192)</td>
- <td>@ref LVNV_INPUT_GAIN_MIC0_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 Input_Gain_Mic0; ///< The primary input gain.
-
- /**
- Gain applied at the secondary channel in the Tx input. Used to scale the
- microphone signal in order to give the NLMS1_LB and NLMS1_HB filters headroom
- for correct operation.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>2.13</td>
- <td>@ref LVNV_INPUT_GAIN_MIC1_MIN (0)</td>
- <td>@ref LVNV_INPUT_GAIN_MIC1_DEFAULT (8192)</td>
- <td>@ref LVNV_INPUT_GAIN_MIC1_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 Input_Gain_Mic1; ///< The secondary input gain.
-
- /**
- Gain applied at the Tx output of LVNV. Compensates the applied Input_Gain_Mic0
- in order to preserve the overall Tx gain.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>4.11</td>
- <td>@ref LVNV_OUTPUT_GAIN_MIN (0)</td>
- <td>@ref LVNV_OUTPUT_GAIN_DEFAULT (2048)</td>
- <td>@ref LVNV_OUTPUT_GAIN_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 Output_Gain; ///< The output gain.
-
- /**
- Length of the low-band (0-4kHz) adaptive echo cancellation filter for the
- primary channel. The Length should be chosen such that most of the energy of
- the impulse response is covered by the filter. The length should be a multiple
- of 8.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>16.0</td>
- <td>@ref LVNV_NLMS0_LB_TAPS_MIN (16)</td>
- <td>@ref LVNV_NLMS0_LB_TAPS_DEFAULT (32)</td>
- <td>@ref LVNV_NLMS0_LB_TAPS_MAX (64)</td>
- </tr>
- </table> */
- LVM_UINT16 NLMS0_LB_taps; ///< Number of NLMS0 low-band taps.
-
- /**
- Step size for the update of the low-band adaptive filter coefficients for the
- primary channel. It is recommended not to change the default value.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>0.15</td>
- <td>@ref LVNV_NLMS0_LB_TWOALPHA_MIN (0)</td>
- <td>@ref LVNV_NLMS0_LB_TWOALPHA_DEFAULT (8192)</td>
- <td>@ref LVNV_NLMS0_LB_TWOALPHA_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 NLMS0_LB_twoalpha; ///< NLMS0 low-band step size
-
- /**
- Adaptive step-size control for the low-band adaptive echo cancellation filter
- for the primary channel. This parameter is used to slow down the update speed
- of the adaptive filter during double talk situations.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>9.6</td>
- <td>@ref LVNV_NLMS0_LB_ERL_MIN (64)</td>
- <td>@ref LVNV_NLMS0_LB_ERL_DEFAULT (1000)</td>
- <td>@ref LVNV_NLMS0_LB_ERL_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 NLMS0_LB_erl; ///< NLMS0 low-band erl
-
- /**
- Length of the high-band (4-8kHz) adaptive echo cancellation filter for the
- primary channel. The Length should be chosen such that most of the energy of
- the impulse response is covered by the filter. The length should be a multiple
- of 8.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>16.0</td>
- <td>@ref LVNV_NLMS0_HB_TAPS_MIN (16)</td>
- <td>@ref LVNV_NLMS0_HB_TAPS_DEFAULT (24)</td>
- <td>@ref LVNV_NLMS0_HB_TAPS_MAX (64)</td>
- </tr>
- </table> */
- LVM_UINT16 NLMS0_HB_taps; ///< Number of NLMS0 high-band taps.
-
- /**
- Step size for the update of the high-band adaptive filter coefficients for the
- primary channel. It is recommended not to change the default value.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>0.15</td>
- <td>@ref LVNV_NLMS0_HB_TWOALPHA_MIN (0)</td>
- <td>@ref LVNV_NLMS0_HB_TWOALPHA_DEFAULT (8192)</td>
- <td>@ref LVNV_NLMS0_HB_TWOALPHA_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 NLMS0_HB_twoalpha; ///< NLMS0 high-band step size
-
- /**
- Adaptive step-size control for the high-band adaptive echo cancellation filter
- for the primary channel. This parameter is used to slow down the update speed
- of the adaptive filter during double talk situations.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>9.6</td>
- <td>@ref LVNV_NLMS0_HB_ERL_MIN (64)</td>
- <td>@ref LVNV_NLMS0_HB_ERL_DEFAULT (1000)</td>
- <td>@ref LVNV_NLMS0_HB_ERL_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 NLMS0_HB_erl; ///< NLMS0 high-band erl
-
- /**
- Indicates whether a preset of adaptive filter coefficients should be done.<br>
- 0 = No preset (coefficients as they are).<br>
- 1 = Preset with internally calculated coefficients.<br>
- 2 = Preset with zero coefficients.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>15.0</td>
- <td>@ref LVNV_NLMS0_PRESET_COEFS_MIN (0)</td>
- <td>@ref LVNV_NLMS0_PRESET_COEFS_DEFAULT (0)</td>
- <td>@ref LVNV_NLMS0_PRESET_COEFS_MAX (2)</td>
- </tr>
- </table> */
- LVM_INT16 NLMS0_preset_coefs; ///< NLMS0 preset
-
- /**
- Offset added to the normalization of the adaptation of the filter.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>0.15</td>
- <td>@ref LVNV_NLMS0_OFFSET_MIN (0)</td>
- <td>@ref LVNV_NLMS0_OFFSET_DEFAULT (776)</td>
- <td>@ref LVNV_NLMS0_OFFSET_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 NLMS0_offset; ///< NLMS0 offset
-
- /**
- Length of the low-band (0-4kHz) adaptive echo cancellation filter for the
- secondary channel. The Length should be chosen such that most of the energy of
- the impulse response is covered by the filter. The length should be a multiple
- of 8.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>16.0</td>
- <td>@ref LVNV_NLMS1_LB_TAPS_MIN (16)</td>
- <td>@ref LVNV_NLMS1_LB_TAPS_DEFAULT (32)</td>
- <td>@ref LVNV_NLMS1_LB_TAPS_MAX (32)</td>
- </tr>
- </table> */
- LVM_UINT16 NLMS1_LB_taps; ///< Number of NLMS1 low-band taps.
-
- /**
- Step size for the update of the low-band adaptive filter coefficients for the
- secondary channel. It is recommended not to change the default value.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>0.15</td>
- <td>@ref LVNV_NLMS1_LB_TWOALPHA_MIN (0)</td>
- <td>@ref LVNV_NLMS1_LB_TWOALPHA_DEFAULT (8192)</td>
- <td>@ref LVNV_NLMS1_LB_TWOALPHA_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 NLMS1_LB_twoalpha; ///< NLMS1 low-band step size
-
- /**
- Adaptive step-size control for the low-band adaptive echo cancellation filter
- for the secondary channel. This parameter is used to slow down the update speed
- of the adaptive filter during double talk situations.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>9.6</td>
- <td>@ref LVNV_NLMS1_LB_ERL_MIN (64)</td>
- <td>@ref LVNV_NLMS1_LB_ERL_DEFAULT (1000)</td>
- <td>@ref LVNV_NLMS1_LB_ERL_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 NLMS1_LB_erl; ///< NLMS1 low-band erl
-
- /**
- Length of the high-band (4-8kHz) adaptive echo cancellation filter for the
- secondary channel. The Length should be chosen such that most of the energy of
- the impulse response is covered by the filter. The length should be a multiple
- of 8.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>16.0</td>
- <td>@ref LVNV_NLMS1_HB_TAPS_MIN (16)</td>
- <td>@ref LVNV_NLMS1_HB_TAPS_DEFAULT (24)</td>
- <td>@ref LVNV_NLMS1_HB_TAPS_MAX (32)</td>
- </tr>
- </table> */
- LVM_UINT16 NLMS1_HB_taps; ///< Number of NLMS1 high-band taps.
-
- /**
- Step size for the update of the high-band adaptive filter coefficients for the
- secondary channel. It is recommended not to change the default value.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>0.15</td>
- <td>@ref LVNV_NLMS1_HB_TWOALPHA_MIN (0)</td>
- <td>@ref LVNV_NLMS1_HB_TWOALPHA_DEFAULT (8192)</td>
- <td>@ref LVNV_NLMS1_HB_TWOALPHA_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 NLMS1_HB_twoalpha; ///< NLMS1 high-band step size
-
- /**
- Adaptive step-size control for the high-band adaptive echo cancellation filter
- for the secondary channel. This parameter is used to slow down the update speed
- of the adaptive filter during double talk situations.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>9.6</td>
- <td>@ref LVNV_NLMS1_HB_ERL_MIN (64)</td>
- <td>@ref LVNV_NLMS1_HB_ERL_DEFAULT (1000)</td>
- <td>@ref LVNV_NLMS1_HB_ERL_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 NLMS1_HB_erl; ///< NLMS1 high-band erl
-
- /**
- Indicates whether a preset of adaptive filter coefficients should be done.<br>
- 0 = No preset (coefficients as they are).<br>
- 1 = Preset with internally calculated coefficients.<br>
- 2 = Preset with zero coefficients.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>15.0</td>
- <td>@ref LVNV_NLMS1_PRESET_COEFS_MIN (0)</td>
- <td>@ref LVNV_NLMS1_PRESET_COEFS_DEFAULT (0)</td>
- <td>@ref LVNV_NLMS1_PRESET_COEFS_MAX (2)</td>
- </tr>
- </table> */
- LVM_INT16 NLMS1_preset_coefs; ///< NLMS1 preset
-
- /**
- Offset added to the normalization of the adaptation of the filter.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>0.15</td>
- <td>@ref LVNV_NLMS1_OFFSET_MIN (0)</td>
- <td>@ref LVNV_NLMS1_OFFSET_DEFAULT (776)</td>
- <td>@ref LVNV_NLMS1_OFFSET_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 NLMS1_offset; ///< NLMS1 offset
-
- /**
- A parameter representing a threshold for the detection of instrumental noise.
- The higher the value for this parameter, the lower noise suppression
- performance.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>0.15</td>
- <td>@ref LVNV_CAL_MICPOWFLOORMIN_MIN (0)</td>
- <td>@ref LVNV_CAL_MICPOWFLOORMIN_DEFAULT (150)</td>
- <td>@ref LVNV_CAL_MICPOWFLOORMIN_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 CAL_micPowFloorMin; ///< Instrumental noise threshold
-
- /**
- Threshold for Windgush detector. The higher the value, the less sensitive the
- detection.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>6.9</td>
- <td>@ref LVNV_WGTHRESHOLD_MIN (0)</td>
- <td>@ref LVNV_WGTHRESHOLD_DEFAULT (32767)</td>
- <td>@ref LVNV_WGTHRESHOLD_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 WgThreshold; ///< Windgush threshold
-
- /**
- Threshold for speech detector based on power comparison between primary and
- secondary microphones. The higher the value, the less sensitive the detection.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>3.12</td>
- <td>@ref LVNV_MPTHRESHOLD_MIN (0)</td>
- <td>@ref LVNV_MPTHRESHOLD_DEFAULT (6554)</td>
- <td>@ref LVNV_MPTHRESHOLD_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 MpThreshold; ///< MicPow threshold
-
- /**
- Set of first 8 coefficients for adaptive filter FSB0. These values should be
- determined for the given microphone configuration
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>0.15</td>
- <td>@ref LVNV_FSB_INIT_TABLE0_MIN (-32768)</td>
- <td>@ref LVNV_FSB_INIT_TABLE0_DEFAULT {32767, 0, 0, 0, 0, 0, 0, 0}</td>
- <td>@ref LVNV_FSB_INIT_TABLE0_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 FSB_init_table0[LVNV_FSB_INIT_TABLE0_LENGTH]; ///< FSB0 initial coefficients.
-
- /**
- Set of first 8 coefficients for adaptive filter FSB1. These values should be
- determined for the given microphone configuration
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>0.15</td>
- <td>@ref LVNV_FSB_INIT_TABLE1_MIN (-32768)</td>
- <td>@ref LVNV_FSB_INIT_TABLE1_DEFAULT {0, 0, 0, 0, 0, 0, 0, 0}</td>
- <td>@ref LVNV_FSB_INIT_TABLE1_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 FSB_init_table1[LVNV_FSB_INIT_TABLE1_LENGTH]; ///< FSB1 initial coefficients.
-
- /**
- Length of the FSB to model the acoustical paths between the speech source and
- two microphones. The length must be equal to 16 for the handset application.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>16.0</td>
- <td>@ref LVNV_FSB_TAPS_MIN (8)</td>
- <td>@ref LVNV_FSB_TAPS_DEFAULT (16)</td>
- <td>@ref LVNV_FSB_TAPS_MAX (16)</td>
- </tr>
- </table> */
- LVM_UINT16 FSB_taps; ///< Number of FSB taps
-
- /**
- Step-size to update the coefficients of the adaptive filters. A higher value
- leads to a faster speed of the adaptation, while a lower value provides more
- stability, but a slow adaption speed.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>0.15</td>
- <td>@ref LVNV_FSB_TWOALPHA_MIN (0)</td>
- <td>@ref LVNV_FSB_TWOALPHA_DEFAULT (655)</td>
- <td>@ref LVNV_FSB_TWOALPHA_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 FSB_twoalpha; ///< FSB step size control
-
- /**
- Gain applied on the samples of the second FSB reference signal (fsbref[1]).
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>5.10</td>
- <td>@ref LVNV_FSB_REF_GAIN_MIN (0)</td>
- <td>@ref LVNV_FSB_REF_GAIN_DEFAULT (1024)</td>
- <td>@ref LVNV_FSB_REF_GAIN_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 FSB_ref_gain; ///< FSB ref gain
-
- /**
- Length of the GSC to model the transfer function between the noise reference
- and the residual signal, in order to reduce the noise and interfering sounds
- from the desired signal. This number should be a multiple of 8.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>16.0</td>
- <td>@ref LVNV_GSC_TAPS_MIN (8)</td>
- <td>@ref LVNV_GSC_TAPS_DEFAULT (16)</td>
- <td>@ref LVNV_GSC_TAPS_MAX (48)</td>
- </tr>
- </table> */
- LVM_UINT16 GSC_taps; ///< Number of GSC taps
-
- /**
- Step-size to update the coefficients of the adaptive filter. A higher value
- leads to a faster speed of the adaptation, while a lower value provides more
- stability, but a slow adaption speed.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>0.15</td>
- <td>@ref LVNV_GSC_TWOALPHA_MIN (0)</td>
- <td>@ref LVNV_GSC_TWOALPHA_DEFAULT (1638)</td>
- <td>@ref LVNV_GSC_TWOALPHA_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 GSC_twoalpha; ///< GSC step size control
-
- /**
- Adaptive step-size control for GSC to avoid divergence of the adaptive filter
- during desired speech. In general, GSC_erl is lower than NLMS_erl and ranges
- between 0 and 30 dB.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>9.6</td>
- <td>@ref LVNV_GSC_ERL_MIN (64)</td>
- <td>@ref LVNV_GSC_ERL_DEFAULT (256)</td>
- <td>@ref LVNV_GSC_ERL_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 GSC_erl; ///< GSC erl
-
- /**
- Offset added to the computation of the power of the noise reference to avoid
- that the power converges towards zero when the input is low.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>0.15</td>
- <td>@ref LVNV_GSC_OFFSET_MIN (0)</td>
- <td>@ref LVNV_GSC_OFFSET_DEFAULT (1638)</td>
- <td>@ref LVNV_GSC_OFFSET_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 GSC_offset; ///< GSC offset
-
- /**
- Echo subtraction factor applied during farend-only.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>2.13</td>
- <td>@ref LVNV_DNNS_ECHOGAMMAHI_MIN (0)</td>
- <td>@ref LVNV_DNNS_ECHOGAMMAHI_DEFAULT (16384)</td>
- <td>@ref LVNV_DNNS_ECHOGAMMAHI_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 DNNS_EchoGammaHi; ///< High echo subtraction factor
-
- /**
- Echo subtraction factor applied during double talk and nearend-only.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>2.13</td>
- <td>@ref LVNV_DNNS_ECHOGAMMALO_MIN (0)</td>
- <td>@ref LVNV_DNNS_ECHOGAMMALO_DEFAULT (8192)</td>
- <td>@ref LVNV_DNNS_ECHOGAMMALO_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 DNNS_EchoGammaLo; ///< Low echo subtraction factor
-
- /**
- Parameter related to the reverberation time of the acoustical environment,
- which represents the decay in energy over time of the echo tail of the impulse
- response.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>0.15</td>
- <td>@ref LVNV_DNNS_ECHOALPHAREV_MIN (0)</td>
- <td>@ref LVNV_DNNS_ECHOALPHAREV_DEFAULT (12000)</td>
- <td>@ref LVNV_DNNS_ECHOALPHAREV_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 DNNS_EchoAlphaRev; ///< Echo reverberation factor
-
- /**
- Parameter representing the portion of the echo tail (estimated by the NLMS
- filter) that has to be extrapolated in time.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>0.15</td>
- <td>@ref LVNV_DNNS_ECHOTAILPORTION_MIN (0)</td>
- <td>@ref LVNV_DNNS_ECHOTAILPORTION_DEFAULT (7000)</td>
- <td>@ref LVNV_DNNS_ECHOTAILPORTION_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 DNNS_EchoTailPortion; ///< Echo tail portion
-
- /**
- Non-linear echo subtraction factor applied during double talk and nearend-only.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>4.11</td>
- <td>@ref LVNV_DNNS_NLATTEN_MIN (0)</td>
- <td>@ref LVNV_DNNS_NLATTEN_DEFAULT (256)</td>
- <td>@ref LVNV_DNNS_NLATTEN_MAX (2048)</td>
- </tr>
- </table> */
- LVM_INT16 DNNS_NlAtten; ///< Non-linear echo subtraction factor
-
- /**
- Gain factor for stationary noise oversubtraction.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>2.13</td>
- <td>@ref LVNV_DNNS_NOISEGAMMAS_MIN (0)</td>
- <td>@ref LVNV_DNNS_NOISEGAMMAS_DEFAULT (11470)</td>
- <td>@ref LVNV_DNNS_NOISEGAMMAS_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 DNNS_NoiseGammaS; ///< Stationary noise oversubtraction factor
-
- /**
- Gain factor for non-stationary noise oversubtraction.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>2.13</td>
- <td>@ref LVNV_DNNS_NOISEGAMMAN_MIN (0)</td>
- <td>@ref LVNV_DNNS_NOISEGAMMAN_DEFAULT (16384)</td>
- <td>@ref LVNV_DNNS_NOISEGAMMAN_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 DNNS_NoiseGammaN; ///< Non-stationary noise oversubtraction factor
-
- /**
- The maximum amount of stationary noise suppression.<br>
- DNNS_NoiseGainMinS = \f$2*32767*10^{MaxNoiseReductiondB/20}\f$
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>-1.16</td>
- <td>@ref LVNV_DNNS_NOISEGAINMINS_MIN (0)</td>
- <td>@ref LVNV_DNNS_NOISEGAINMINS_DEFAULT (11140)</td>
- <td>@ref LVNV_DNNS_NOISEGAINMINS_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 DNNS_NoiseGainMinS; ///< Maximum stationary noise suppression.
-
- /**
- The maximum amount of non-stationary noise suppression.<br>
- DNNS_NoiseGainMinN = \f$2*32767*10^{MaxNoiseReductiondB/20}\f$
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>-1.16</td>
- <td>@ref LVNV_DNNS_NOISEGAINMINN_MIN (0)</td>
- <td>@ref LVNV_DNNS_NOISEGAINMINN_DEFAULT (6554)</td>
- <td>@ref LVNV_DNNS_NOISEGAINMINN_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 DNNS_NoiseGainMinN; ///< Maximum non-stationary noise suppression.
-
- /**
- Bias compensation factor for stationary noise estimation.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>2.13</td>
- <td>@ref LVNV_DNNS_NOISEBIASCOMP_MIN (0)</td>
- <td>@ref LVNV_DNNS_NOISEBIASCOMP_DEFAULT (9830)</td>
- <td>@ref LVNV_DNNS_NOISEBIASCOMP_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 DNNS_NoiseBiasComp; ///< Bias compensation factor.
-
- /**
- Echo oversubtraction factor applied to the estimated non-stationary noise
- floor.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>3.12</td>
- <td>@ref LVNV_DNNS_GAINETA_MIN (0)</td>
- <td>@ref LVNV_DNNS_GAINETA_DEFAULT (256)</td>
- <td>@ref LVNV_DNNS_GAINETA_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 DNNS_GainEta; ///< Echo oversubtraction factor.
-
- /**
- Detection threshold for microphone activity.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>3.12</td>
- <td>@ref LVNV_DNNS_ACTHRESHOLD_MIN (0)</td>
- <td>@ref LVNV_DNNS_ACTHRESHOLD_DEFAULT (12288)</td>
- <td>@ref LVNV_DNNS_ACTHRESHOLD_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 DNNS_AcThreshold; ///< Activity threshold.
-
- /**
- Detection threshold for activity within the beam of FSB.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>3.12</td>
- <td>@ref LVNV_DNNS_WBTHRESHOLD_MIN (0)</td>
- <td>@ref LVNV_DNNS_WBTHRESHOLD_DEFAULT (9216)</td>
- <td>@ref LVNV_DNNS_WBTHRESHOLD_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 DNNS_WbThreshold; ///< WithinBeam threshold.
-
- /**
- Detection threshold for lost beam where the nearend speaker is speaking outside
- the beam of the FSB.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>9.6</td>
- <td>@ref LVNV_DNNS_LOSTBEAMTHRESHOLD_MIN (0)</td>
- <td>@ref LVNV_DNNS_LOSTBEAMTHRESHOLD_DEFAULT (320)</td>
- <td>@ref LVNV_DNNS_LOSTBEAMTHRESHOLD_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 DNNS_LostBeamThreshold; ///< Lost beam threshold.
-
- /**
- Smoothing factor applied to get a smoothed value of the inter-channel
- correlation.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>9.6</td>
- <td>@ref LVNV_PCD_BETA_MIN (0)</td>
- <td>@ref LVNV_PCD_BETA_DEFAULT (230)</td>
- <td>@ref LVNV_PCD_BETA_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 PCD_beta; ///< ICC smoothing factor.
-
- /**
- Detection threshold for broadside when the nearend speaker is not in end-fire
- position with respect to the microphone configuration.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>9.6</td>
- <td>@ref LVNV_PCD_THRESHOLD_MIN (0)</td>
- <td>@ref LVNV_PCD_THRESHOLD_DEFAULT (26213)</td>
- <td>@ref LVNV_PCD_THRESHOLD_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 PCD_Threshold; ///< Broadside detection threshold.
-
-} LVNV_ControlParams_st;
-
-/**
-* The control parameters are used to control the overall module behavior. These parameters may
-* be changed at any time during processing using the LVHF_SetControlParameters function but they
-* will not take effect until the next call to the LVHF_Process function.
-*
-* @see LVHF_SetControlParameters
-* @see LVHF_Process
-*/
-typedef struct
-{
- /**
- */
- LVM_Mode_en OperatingMode; ///< Operating Mode
-
- /**
- The mode word to enable/disable internal algorithm blocks of HandsFree
- */
- LVHF_ModeWord_bm Mode; ///< Mode Word
-
- /**
- The tuning mode is used to enable/disable internal algorithm tuning
- capabilities in the different blocks of HandsFree. Only one bit allowed to be
- enabled at a time.
- */
- LVHF_TuningModeWord TuningMode; ///< Tuning Mode
-
- /**
- Gain applied at the Tx input of LVHF. Used to scale the microphone signal in
- order to give the NLMS filter headroom for correct operation.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>2.13</td>
- <td>@ref LVHF_INPUTGAIN_MIN (0)</td>
- <td>@ref LVHF_INPUTGAIN_DEFAULT (8192)</td>
- <td>@ref LVHF_INPUTGAIN_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 InputGain; ///< Input Gain
-
- /**
- Gain applied at the Tx output of LVHF. Compensates the applied InputGain in
- order to preserve the overall Tx gain.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>4.11</td>
- <td>@ref LVHF_OUTPUTGAIN_MIN (0)</td>
- <td>@ref LVHF_OUTPUTGAIN_DEFAULT (2048)</td>
- <td>@ref LVHF_OUTPUTGAIN_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 OutputGain; ///< Output Gain
-
- /**
- Limit the NLMS reference signal. Value in dB Full Scale.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>15.0</td>
- <td>@ref LVHF_NLMS_LIMIT_MIN (-24)</td>
- <td>@ref LVHF_NLMS_LIMIT_DEFAULT (0)</td>
- <td>@ref LVHF_NLMS_LIMIT_MAX (0)</td>
- </tr>
- </table> */
- LVM_INT16 NLMS_limit; ///< Limit the NLMS reference signal.
-
- /**
- Length of the low-band (0-4kHz) adaptive echo cancellation filter. The Length
- should be chosen such that most of the energy of the impulse response is
- covered by the filter. The length should be a multiple of 8.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>16.0</td>
- <td>@ref LVHF_NLMS_LB_TAPS_MIN (16)</td>
- <td>@ref LVHF_NLMS_LB_TAPS_DEFAULT (64)</td>
- <td>@ref LVHF_NLMS_LB_TAPS_MAX (200)</td>
- </tr>
- </table> */
- LVM_UINT16 NLMS_LB_taps; ///< Number of taps for LB NLMS.
-
- /**
- Step size for the update of the low-band (0-4kHz) adaptive filter coefficients.
- It is recommended not to change the default value.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>0.15</td>
- <td>@ref LVHF_NLMS_LB_TWO_ALPHA_MIN (0)</td>
- <td>@ref LVHF_NLMS_LB_TWO_ALPHA_DEFAULT (8192)</td>
- <td>@ref LVHF_NLMS_LB_TWO_ALPHA_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 NLMS_LB_two_alpha; ///< Step Size of LB NLMS
-
- /**
- Adaptive step size control for the low-band (0-4kHz) adaptive echo cancellation
- filter. This parameter is used to slow down the update speed of the adaptive
- filter during double talk situations.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>9.6</td>
- <td>@ref LVHF_NLMS_LB_ERL_MIN (64)</td>
- <td>@ref LVHF_NLMS_LB_ERL_DEFAULT (128)</td>
- <td>@ref LVHF_NLMS_LB_ERL_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 NLMS_LB_erl; ///< ERL of LB NLMS
-
- /**
- Length of the high-band (4-8kHz) adaptive echo cancellation filter. The Length
- should be chosen such that most of the energy of the impulse response is
- covered by the filter. The length should be a multiple of 8. In case of
- narrowband processing, this parameter has no effect.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>16.0</td>
- <td>@ref LVHF_NLMS_HB_TAPS_MIN (16)</td>
- <td>@ref LVHF_NLMS_HB_TAPS_DEFAULT (64)</td>
- <td>@ref LVHF_NLMS_HB_TAPS_MAX (136)</td>
- </tr>
- </table> */
- LVM_UINT16 NLMS_HB_taps; ///< Number of taps for HB NLMS.
-
- /**
- Step size for the update of the high-band (4-8kHz) adaptive filter
- coefficients. It is recommended not to change the default value. In case of
- narrowband processing, this parameter has no effect.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>0.15</td>
- <td>@ref LVHF_NLMS_HB_TWO_ALPHA_MIN (0)</td>
- <td>@ref LVHF_NLMS_HB_TWO_ALPHA_DEFAULT (8192)</td>
- <td>@ref LVHF_NLMS_HB_TWO_ALPHA_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 NLMS_HB_two_alpha; ///< Step Size of HB NLMS
-
- /**
- Adaptive step size control for the high-band (4-8kHz) adaptive echo
- cancellation filter. This parameter is used to slow down the update speed of
- the adaptive filter during double talk situations. In case of narrowband
- processing, this parameter has no effect.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>9.6</td>
- <td>@ref LVHF_NLMS_HB_ERL_MIN (64)</td>
- <td>@ref LVHF_NLMS_HB_ERL_DEFAULT (128)</td>
- <td>@ref LVHF_NLMS_HB_ERL_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 NLMS_HB_erl; ///< ERL of HB NLMS
-
- /**
- Indicates whether a preset of adaptive filter coefficients should be done. <br>
- 0 = No preset (Coefficients as they are)<br>
- 1= Preset with internally calculated coefficients.<br>
- 2= Preset with zero coefficients.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>15.0</td>
- <td>@ref LVHF_NLMS_PRESET_COEFS_MIN (0)</td>
- <td>@ref LVHF_NLMS_PRESET_COEFS_DEFAULT (1)</td>
- <td>@ref LVHF_NLMS_PRESET_COEFS_MAX (2)</td>
- </tr>
- </table> */
- LVM_INT16 NLMS_preset_coefs; ///< Coefficient preset.
-
- /**
- Offset added to the normalization of the adaptation of the filter.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>0.15</td>
- <td>@ref LVHF_NLMS_OFFSET_MIN (0)</td>
- <td>@ref LVHF_NLMS_OFFSET_DEFAULT (767)</td>
- <td>@ref LVHF_NLMS_OFFSET_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 NLMS_offset; ///< NLMS offset
-
- /**
- Parameter related to the reverberation of the acoustic environment. It
- represents the decay in time of the energy of the echo tail of the impulse
- response for the LB.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>0.15</td>
- <td>@ref LVHF_DENS_TAIL_ALPHA_LB_MIN (0)</td>
- <td>@ref LVHF_DENS_TAIL_ALPHA_LB_DEFAULT (25395)</td>
- <td>@ref LVHF_DENS_TAIL_ALPHA_LB_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 DENS_tail_alpha_LB;
- /**
- Parameter related to the portion of the echo tail that has to be extrapolated
- in time for LB.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>0.15</td>
- <td>@ref LVHF_DENS_TAIL_PORTION_LB_MIN (0)</td>
- <td>@ref LVHF_DENS_TAIL_PORTION_LB_DEFAULT (29491)</td>
- <td>@ref LVHF_DENS_TAIL_PORTION_LB_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 DENS_tail_portion_LB;
- /**
- Echo subtraction factor applied during farend-only for the LB.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>7.8</td>
- <td>@ref LVHF_DENS_GAMMA_E_HIGH_LB_MIN (0)</td>
- <td>@ref LVHF_DENS_GAMMA_E_HIGH_LB_DEFAULT (512)</td>
- <td>@ref LVHF_DENS_GAMMA_E_HIGH_LB_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 DENS_gamma_e_high_LB; ///< FE Echo subtraction LB
-
- /**
- Echo subtraction factor applied during double talk for the LB.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>7.8</td>
- <td>@ref LVHF_DENS_GAMMA_E_DT_LB_MIN (0)</td>
- <td>@ref LVHF_DENS_GAMMA_E_DT_LB_DEFAULT (256)</td>
- <td>@ref LVHF_DENS_GAMMA_E_DT_LB_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 DENS_gamma_e_dt_LB; ///< DT Echo subtraction factor LB
-
- /**
- Echo subtraction factor applied during nearend-only for the LB.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>7.8</td>
- <td>@ref LVHF_DENS_GAMMA_E_LOW_LB_MIN (0)</td>
- <td>@ref LVHF_DENS_GAMMA_E_LOW_LB_DEFAULT (256)</td>
- <td>@ref LVHF_DENS_GAMMA_E_LOW_LB_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 DENS_gamma_e_low_LB; ///< NE Echo subtraction factor LB
-
- /**
- The amount of extra non-linear suppression relative to the maximum linear echo
- suppression for the LB. The use of these non-linear echo suppression mechanisms
- should be avoided as much as possible since it affects the double talk
- performance.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>4.11</td>
- <td>@ref LVHF_DENS_NL_ATTEN_LB_MIN (0)</td>
- <td>@ref LVHF_DENS_NL_ATTEN_LB_DEFAULT (0)</td>
- <td>@ref LVHF_DENS_NL_ATTEN_LB_MAX (2048)</td>
- </tr>
- </table> */
- LVM_INT16 DENS_NL_atten_LB; ///< LB Non linear attenuation
-
- /**
- Parameter related to the reverberation of the acoustic environment. It
- represents the decay in time of the energy of the echo tail of the impulse
- response for the HB.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>0.15</td>
- <td>@ref LVHF_DENS_TAIL_ALPHA_HB_MIN (0)</td>
- <td>@ref LVHF_DENS_TAIL_ALPHA_HB_DEFAULT (25395)</td>
- <td>@ref LVHF_DENS_TAIL_ALPHA_HB_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 DENS_tail_alpha_HB;
- /**
- Parameter related to the portion of the echo tail that has to be extrapolated
- in time for HB.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>0.15</td>
- <td>@ref LVHF_DENS_TAIL_PORTION_HB_MIN (0)</td>
- <td>@ref LVHF_DENS_TAIL_PORTION_HB_DEFAULT (29491)</td>
- <td>@ref LVHF_DENS_TAIL_PORTION_HB_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 DENS_tail_portion_HB;
- /**
- Echo subtraction factor applied during farend-only for the HB.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>7.8</td>
- <td>@ref LVHF_DENS_GAMMA_E_HIGH_HB_MIN (0)</td>
- <td>@ref LVHF_DENS_GAMMA_E_HIGH_HB_DEFAULT (512)</td>
- <td>@ref LVHF_DENS_GAMMA_E_HIGH_HB_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 DENS_gamma_e_high_HB; ///< FE Echo subtraction HB
-
- /**
- Echo subtraction factor applied during double talk for the HB.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>7.8</td>
- <td>@ref LVHF_DENS_GAMMA_E_DT_HB_MIN (0)</td>
- <td>@ref LVHF_DENS_GAMMA_E_DT_HB_DEFAULT (256)</td>
- <td>@ref LVHF_DENS_GAMMA_E_DT_HB_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 DENS_gamma_e_dt_HB; ///< DT Echo subtraction factor HB
-
- /**
- Echo subtraction factor applied during nearend-only for the HB.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>7.8</td>
- <td>@ref LVHF_DENS_GAMMA_E_LOW_HB_MIN (0)</td>
- <td>@ref LVHF_DENS_GAMMA_E_LOW_HB_DEFAULT (256)</td>
- <td>@ref LVHF_DENS_GAMMA_E_LOW_HB_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 DENS_gamma_e_low_HB; ///< NE Echo subtraction factor HB
-
- /**
- The amount of extra non-linear suppression relative to the maximum linear echo
- suppression. for the HB. The use of these non-linear echo suppression
- mechanisms should be avoided as much as possible since it affects the double
- talk performance.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>4.11</td>
- <td>@ref LVHF_DENS_NL_ATTEN_HB_MIN (0)</td>
- <td>@ref LVHF_DENS_NL_ATTEN_HB_DEFAULT (0)</td>
- <td>@ref LVHF_DENS_NL_ATTEN_HB_MAX (2048)</td>
- </tr>
- </table> */
- LVM_INT16 DENS_NL_atten_HB; ///< NE Echo subtraction factor HB
-
- /**
- Smoothing factor applied when switching between gamma_e values.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>0.15</td>
- <td>@ref LVHF_DENS_GAMMA_E_ALPHA_MIN (0)</td>
- <td>@ref LVHF_DENS_GAMMA_E_ALPHA_DEFAULT (24000)</td>
- <td>@ref LVHF_DENS_GAMMA_E_ALPHA_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 DENS_gamma_e_alpha; ///< Smoothing factor for gamma_e
-
- /**
- Gain factor for Noise subtraction.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>7.8</td>
- <td>@ref LVHF_DENS_GAMMA_N_MIN (0)</td>
- <td>@ref LVHF_DENS_GAMMA_N_DEFAULT (280)</td>
- <td>@ref LVHF_DENS_GAMMA_N_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 DENS_gamma_n; ///< Gain factor
-
- /**
- Threshold for nearend activity detection.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>7.8</td>
- <td>@ref LVHF_DENS_SPDET_NEAR_MIN (0)</td>
- <td>@ref LVHF_DENS_SPDET_NEAR_DEFAULT (512)</td>
- <td>@ref LVHF_DENS_SPDET_NEAR_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 DENS_spdet_near;
- /**
- Threshold for microphone activity detection.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>7.8</td>
- <td>@ref LVHF_DENS_SPDET_ACT_MIN (0)</td>
- <td>@ref LVHF_DENS_SPDET_ACT_DEFAULT (768)</td>
- <td>@ref LVHF_DENS_SPDET_ACT_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 DENS_spdet_act;
- /**
- The maximum amount of noise suppression. <br>
- DENS_limit_ns = \f$32767*10^{-MaxNoiseReduction[dB]/20}\f$
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>0.15</td>
- <td>@ref LVHF_DENS_LIMIT_NS_MIN (0)</td>
- <td>@ref LVHF_DENS_LIMIT_NS_DEFAULT (10361)</td>
- <td>@ref LVHF_DENS_LIMIT_NS_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 DENS_limit_ns; ///< Maximum noise suppression.
-
- /**
- The amount of comfort noise insertion.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>1.14</td>
- <td>@ref LVHF_DENS_CNI_GAIN_MIN (0)</td>
- <td>@ref LVHF_DENS_CNI_GAIN_DEFAULT (16384)</td>
- <td>@ref LVHF_DENS_CNI_GAIN_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 DENS_CNI_Gain; ///< CNI gain
-
- /**
- The window length (expressed in integer multiples of 10ms) for the estimation
- of the noise components. It is recommended to keep this parameter at its
- default value.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>0.15</td>
- <td>@ref LVHF_DENS_NFE_BLOCKSIZE_MIN (0)</td>
- <td>@ref LVHF_DENS_NFE_BLOCKSIZE_DEFAULT (150)</td>
- <td>@ref LVHF_DENS_NFE_BLOCKSIZE_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 DENS_NFE_blocksize; ///< NFE blocksize
-
- /**
- Threshold for farend activity detection.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>0.15</td>
- <td>@ref LVHF_SPDET_FAR_MIN (0)</td>
- <td>@ref LVHF_SPDET_FAR_DEFAULT (16384)</td>
- <td>@ref LVHF_SPDET_FAR_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 SPDET_far;
- /**
- Threshold for microphone activity detection.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>0.15</td>
- <td>@ref LVHF_SPDET_MIC_MIN (0)</td>
- <td>@ref LVHF_SPDET_MIC_DEFAULT (16384)</td>
- <td>@ref LVHF_SPDET_MIC_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 SPDET_mic;
- /**
- Threshold to activate the non-linear echo-suppression.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>0.15</td>
- <td>@ref LVHF_SPDET_X_CLIP_MIN (0)</td>
- <td>@ref LVHF_SPDET_X_CLIP_DEFAULT (0)</td>
- <td>@ref LVHF_SPDET_X_CLIP_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 SPDET_x_clip;
- /**
- Threshold to detect acoustical path changes.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>0.15</td>
- <td>@ref LVHF_PCD_THRESHOLD_MIN (0)</td>
- <td>@ref LVHF_PCD_THRESHOLD_DEFAULT (20000)</td>
- <td>@ref LVHF_PCD_THRESHOLD_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 PCD_threshold; ///< PCD threshold
-
- /**
- Length of the background adaptive filter. The length should be chosen such that
- only the main peak of the impulse response is covered by the filter. The length
- should be a multiple of 8.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>16.0</td>
- <td>@ref LVHF_PCD_TAPS_MIN (16)</td>
- <td>@ref LVHF_PCD_TAPS_DEFAULT (16)</td>
- <td>@ref LVHF_PCD_TAPS_MAX (64)</td>
- </tr>
- </table> */
- LVM_INT16 PCD_taps; ///< Number of taps of background NLMS.
-
- /**
- Adaptive step size control for the background adaptive filter.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>9.6</td>
- <td>@ref LVHF_PCD_ERL_MIN (64)</td>
- <td>@ref LVHF_PCD_ERL_DEFAULT (64)</td>
- <td>@ref LVHF_PCD_ERL_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 PCD_erl; ///< Step size of background NLMS.
-
- /**
- If a path change is detected, NLMS_erl of the NLMS is set to this value, to
- ensure a fast adapting filter.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>9.6</td>
- <td>@ref LVHF_PCD_MINIMUM_ERL_MIN (64)</td>
- <td>@ref LVHF_PCD_MINIMUM_ERL_DEFAULT (64)</td>
- <td>@ref LVHF_PCD_MINIMUM_ERL_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 PCD_minimum_erl; ///< Step size of NLMS after PCD.
-
- /**
- After a path change the NLMS_erl of the NLMS increases back to the nominal
- value. The speed to increase can be controlled by this parameter.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>1.14</td>
- <td>@ref LVHF_PCD_ERL_STEP_MIN (16384)</td>
- <td>@ref LVHF_PCD_ERL_STEP_DEFAULT (16800)</td>
- <td>@ref LVHF_PCD_ERL_STEP_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 PCD_erl_step; ///< Step of ERL increase after PCD.
-
- /**
- Gain factor applied to the echo subtraction during acoustical path change.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>7.8</td>
- <td>@ref LVHF_PCD_GAMMA_E_RESCUE_MIN (0)</td>
- <td>@ref LVHF_PCD_GAMMA_E_RESCUE_DEFAULT (5000)</td>
- <td>@ref LVHF_PCD_GAMMA_E_RESCUE_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 PCD_gamma_e_rescue; ///< gamma_e after PCD
-
-} LVHF_ControlParams_st;
-
-/**
-* The control parameters are used to control the overall module behavior. These parameters may
-* be changed at any time during processing using the LVBD_SetControlParameters function but they
-* will not take effect until the next call to the LVBD_Process function.
-*
-* @see LVBD_SetControlParameters
-* @see LVBD_Process
-*/
-typedef struct
-{
- /**
- Set Bulk Delay operating mode on/off.
- */
- LVM_Mode_en BD_OperatingMode; ///< Set Bulk Delay operating mode on/off
-
- /**
- This parameter compensates for the fixed delay in the echo path and can be
- measured in advance. This delay is caused by the audio I/O buffering, AD/DA
- converter and propagation time between the loudspeaker and microphone. The unit
- of 'BulkDelay' is [number of samples] at the respective sampling rate.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>16.0</td>
- <td>@ref LVBD_BULKDELAY_MIN (0)</td>
- <td>@ref LVBD_BULKDELAY_DEFAULT (0)</td>
- <td>@ref LVBD_BULKDELAY_MAX (6400)</td>
- </tr>
- </table> */
- LVM_UINT16 BulkDelay; ///< Sets Bulk Delay
-
- /**
- This param sets the gain for the Echo reference signal. Value 8192 belong to
- 0dB
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>2.13</td>
- <td>@ref LVBD_BD_GAIN_MIN (0)</td>
- <td>@ref LVBD_BD_GAIN_DEFAULT (8192)</td>
- <td>@ref LVBD_BD_GAIN_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 BD_Gain; ///< Apply Gain to Echo reference signal
-
-} LVBD_ControlParams_st;
-
-/**
-* The control parameters are used to control the overall module behavior. These parameters may
-* be changed at any time during processing using the LVVE_Tx_SetControlParameters function but they
-* will not take effect until the next call to the LVVE_Tx_Process function.
-*
-* @see LVVE_Tx_SetControlParameters
-* @see LVVE_Tx_Process
-*/
-typedef struct
-{
- /**
- This enumerated type is used to set the operating mode of the Tx path. The
- processing can be separately set to enable all processing modules (i.e., ON),
- to disable all processing modules (i.e., OFF) or to bypass all processing
- modules (i.e., BYPASS). When bypassed, all processing modules keep on running,
- but their output is not used. When bypassing the Tx processing, the user can
- select which buffer should be copied to the output buffer, if required: @li
- Input microphone signal (or secondary microphone signal in case of
- two-microphone setups); @li Rx reference signal; These operations ensure that
- the input data is correctly transferred to the output buffer for all
- combinations of input and output buffer types and input format. When OFF, the
- input is copied to the output and the LVVE can be provided with invalid
- parameters for modules. The sub module functions are not executed in this
- scenario. Their combined functionality is summarized in follwoing table. <br>
- <div align="center"> <table cellspacing="1" cellpadding="4" border="3">
- <caption>LVVE Tx operating mode in combination with LVVE microphone routing
- mode</caption> <tr> <th></th> <th colspan="2">MICROUTING_MODE_DEFAULT</th> <th
- colspan="2">MICROUTING_MODE_SWAPPED</th> </tr> <tr> <th width="70"></th> <th
- width="70">Process</th> <th width="70">Output</th> <th width="70">Process</th>
- <th width="70">Output</th> </tr> <tr align="left"> <td>LVVE_TX_MODE_OFF</td>
- <td>None</td> <td>Tx input 0</td> <td>None</td> <td>Tx input 1</td> </tr> <tr
- align="left"> <td>LVVE_TX_MODE_ON</td> <td>Tx input 0</td> <td>Tx output</td>
- <td>Tx input 1</td> <td>Tx output</td> </tr> <tr align="left">
- <td>LVVE_TX_MODE_BYPASS_MIC0</td> <td>Tx input 0</td> <td>Tx input 0</td>
- <td>Tx input 1</td> <td>Tx input 1</td> </tr> <tr align="left">
- <td>LVVE_TX_MODE_BYPASS_MIC1</td> <td>Tx input 0</td> <td>Tx input 1</td>
- <td>Tx input 1</td> <td>Tx input 0</td> </tr> <tr align="left">
- <td>LVVE_TX_MODE_BYPASS_REF</td> <td>Tx input 0</td> <td>Tx ref input</td>
- <td>Tx input 1</td> <td>Tx ref input</td> </tr> </table> </div>
- */
- LVVE_Tx_Mode_en OperatingMode; ///< TX Operating mode
-
- /**
- This param can mute unmute the Rx/Tx engine output.
- */
- LVM_Mode_en Mute; ///< This param can mute unmute the Rx/Tx engine output
-
- /**
- Set Bulk Delay operating mode on/off.
- */
- LVM_Mode_en BD_OperatingMode; ///< Set Bulk Delay operating mode on/off
-
- /**
- This parameter compensates for the fixed delay in the echo path and can be
- measured in advance. This delay is caused by the audio I/O buffering, AD/DA
- converter and propagation time between the loudspeaker and microphone. The unit
- of 'BulkDelay' is [number of samples] at the respective sampling rate.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>16.0</td>
- <td>@ref LVVE_TX_BULKDELAY_MIN (0)</td>
- <td>@ref LVVE_TX_BULKDELAY_DEFAULT (0)</td>
- <td>@ref LVVE_TX_BULKDELAY_MAX (6400)</td>
- </tr>
- </table> */
- LVM_UINT16 BulkDelay; ///< Sets Bulk Delay
-
- /**
- This param sets the gain for the Echo reference signal. Value 8192 belong to
- 0dB
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>2.13</td>
- <td>@ref LVVE_TX_BD_GAIN_MIN (0)</td>
- <td>@ref LVVE_TX_BD_GAIN_DEFAULT (8192)</td>
- <td>@ref LVVE_TX_BD_GAIN_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 BD_Gain; ///< Apply Gain to Echo reference signal
-
- /**
- Turns on/off VOL_Gain.
- */
- LVM_Mode_en VOL_OperatingMode; ///< Turns on/off VOL_Gain
-
- /**
- The volume control gain can be used to set the overall volume level of the
- signal. The gain is set in dB with steps of 1dB.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>15.0</td>
- <td>@ref LVVE_TX_VOL_GAIN_MIN (-96)</td>
- <td>@ref LVVE_TX_VOL_GAIN_DEFAULT (0)</td>
- <td>@ref LVVE_TX_VOL_GAIN_MAX (24)</td>
- </tr>
- </table> */
- LVM_INT16 VOL_Gain; ///< Apply Gain to Input signal
-
- /**
- Turns on/off High Pass filter.
- */
- LVM_Mode_en HPF_OperatingMode; ///< Turns on/off High Pass filter
-
- /**
- Sets the 3dB corner frequency of the high-pass filter. In case NoiseVoid is
- enabled, the same high-pass filter will be applied to the second microphone
- channel.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>16.0</td>
- <td>@ref LVVE_TX_MIC_HPF_CORNERFREQ_MIN (50)</td>
- <td>@ref LVVE_TX_MIC_HPF_CORNERFREQ_DEFAULT (50)</td>
- <td>@ref LVVE_TX_MIC_HPF_CORNERFREQ_MAX (1500)</td>
- </tr>
- </table> */
- LVM_UINT16 MIC_HPF_CornerFreq; ///< High Pass Filter Corner Frequency in Hz
-
- /**
- HandsFree Control Parameter Strcuture.
- */
- LVHF_ControlParams_st HF_ControlParams; ///< HandsFree Control Parameter Structure
-
- /**
- NoiseVoid Control Parameter Structure.
- */
- LVNV_ControlParams_st NV_ControlParams; ///< NoiseVoid Control Parameter Structure
-
- /**
- WhisperMode Control Parameter Structure.
- */
- LVWM_ControlParams_st WM_ControlParams; ///< WhisperMode Control Parameter Structure
-
- /**
- Equalizer Operating mode.
- */
- LVM_Mode_en EQ_OperatingMode; ///< Equalizer Operating mode
-
- /**
- Equalizer Control Parameter Structure.
- */
- LVEQ_ControlParams_st EQ_ControlParams; ///< Equalizer Control Parameters Structure
-
- /**
- DRC Control Parameter Structure.
- */
- LVDRC_ControlParams_st DRC_ControlParams; ///< DRC Control Parameter Structure
-
-} LVVE_Tx_ControlParams_st;
-
-
-
-/*[Begin] [lvwenhua-2012/3/12]*/
-#define LVVC_VOLUME_NUM 12
-
-typedef struct
-{
- LVM_INT16 NoiseSensitivity[LVVC_VOLUME_NUM];
-} LVVC_NoiseSens_st;
-/*[End] [lvwenhua-2012/3/12]*/
-
-/*[Begin] [lvwenhua-2011/8/23]*/
-typedef struct
-{
- LVVE_Tx_ControlParams_st Tx_ControlParams;
- LVVE_Rx_ControlParams_st Rx_ControlParams;
- LVEQ_Coefs_st TxEqCoefs;
- LVEQ_Coefs_st RxEqCoefs;
- /*[Begin] [lvwenhua-2012/3/12]*/
- LVVC_NoiseSens_st RxVcNoiseSens;
- /*[End] [lvwenhua-2012/3/12]*/
-} LVVE_ControlParams_st;
-typedef struct
-{
- LVM_UINT32 isVpParamInNv;
- LVVE_ControlParams_st Handset_ControlParams;
- LVVE_ControlParams_st Handsfree_ControlParams;
- LVVE_ControlParams_st Headset_ControlParams;
- LVVE_ControlParams_st Bluetooth_ControlParams;
-} LVVE_ControlParams_All_st;
-/*[End] [lvwenhua-2011/8/23]*/
-
-
-
-
-
-
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#endif /* __REL_LVVE_HF_NV1_VC_AGC_RX_DRC_RX_WB_VIDPP_H__ */
-
-/* End of file */
diff --git a/Uboot/cp/ps/driver/src/chipsets/src/audio_base/nxp/tos/PARAM_Default.h b/Uboot/cp/ps/driver/src/chipsets/src/audio_base/nxp/tos/PARAM_Default.h
deleted file mode 100755
index 857327b..0000000
--- a/Uboot/cp/ps/driver/src/chipsets/src/audio_base/nxp/tos/PARAM_Default.h
+++ /dev/null
@@ -1,213 +0,0 @@
-static LVM_CHAR LVVE_Tx_Preset_Buffer_Voice_Tool[] ={
-0x03, 0x00, 0x09, 0x18, 0x03, 0xD5, 0x07, 0x00, 0x00, 0xBD, 0x02, 0x00, 0x00, 0x02, 0x00, 0x00,
-0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x32, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0x11, 0x00, 0x00, 0x00,
-0x20, 0x00, 0x08, 0x00, 0x00, 0x40, 0x00, 0x00, 0x20, 0x80, 0x00, 0x40, 0x00, 0x00, 0x20, 0x80,
-0x00, 0x01, 0x00, 0xFF, 0x02, 0x33, 0x63, 0x33, 0x73, 0x00, 0x02, 0x00, 0x01, 0x00, 0x01, 0x00,
-0x00, 0x33, 0x63, 0x33, 0x73, 0x00, 0x02, 0x00, 0x01, 0x00, 0x01, 0x00, 0x00, 0xC0, 0x5D, 0x18,
-0x01, 0x00, 0x02, 0x00, 0x03, 0x79, 0x28, 0x00, 0x40, 0x96, 0x00, 0x00, 0x40, 0x00, 0x40, 0x00,
-0x00, 0x20, 0x4E, 0x10, 0x00, 0x40, 0x00, 0x40, 0x00, 0xA0, 0x41, 0x88, 0x13, 0x00, 0x00, 0x00,
-0x00, 0xF7, 0x49, 0x0E, 0x00, 0x00, 0x00, 0x00, 0x20, 0x00, 0x20, 0x00, 0x08, 0x20, 0x00, 0x00,
-0x20, 0xE8, 0x03, 0x18, 0x00, 0x00, 0x20, 0xE8, 0x03, 0x00, 0x00, 0x08, 0x03, 0x20, 0x00, 0x00,
-0x20, 0xE8, 0x03, 0x18, 0x00, 0x00, 0x20, 0xE8, 0x03, 0x00, 0x00, 0x08, 0x03, 0x96, 0x00, 0xFF,
-0x7F, 0x9A, 0x19, 0xFF, 0x7F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x10, 0x00, 0x8F, 0x02, 0x00, 0x04, 0x10, 0x00, 0x66, 0x06, 0x00, 0x01, 0x66,
-0x06, 0x00, 0x40, 0x00, 0x20, 0xE0, 0x2E, 0x58, 0x1B, 0x00, 0x01, 0xCE, 0x2C, 0x00, 0x40, 0x84,
-0x2B, 0x9A, 0x19, 0x66, 0x26, 0x00, 0x01, 0x00, 0x30, 0x00, 0x24, 0x40, 0x01, 0xE6, 0x00, 0x65,
-0x66, 0x00, 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x40, 0x80, 0x00, 0xFD, 0x1F, 0xB0, 0x63, 0xAD,
-0x7F, 0x9D, 0x5A, 0x00, 0x24, 0x00, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05,
-0x00, 0xA0, 0xFF, 0xBA, 0xFF, 0xCE, 0xFF, 0xE8, 0xFF, 0x00, 0x00, 0xA0, 0xFF, 0xBA, 0xFF, 0xDA,
-0xFF, 0xF4, 0xFF, 0x00, 0x00, 0x32, 0x00, 0x32, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
-};
-static LVM_CHAR LVVE_Rx_Preset_Buffer_Voice_Tool []={
-0x03, 0x00, 0x09, 0x18, 0x03, 0xD5, 0x07, 0x00, 0x00, 0xBD, 0x02, 0x00, 0x00, 0x02, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x01, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xE0, 0x2A, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x32, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06,
-0x05, 0x20, 0x4E, 0x00, 0x40, 0x00, 0x01, 0x00, 0x20, 0x00, 0x02, 0x17, 0x2F, 0x5C, 0x7F, 0xB9,
-0x7E, 0x82, 0x5A, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05,
-0x00, 0xA0, 0xFF, 0xBA, 0xFF, 0xCE, 0xFF, 0xE8, 0xFF, 0x00, 0x00, 0xA0, 0xFF, 0xBA, 0xFF, 0xDA,
-0xFF, 0xF4, 0xFF, 0x00, 0x00, 0x32, 0x00, 0x32, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x32, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x40, 0x80, 0x00, 0xFD,
-0x1F, 0xB0, 0x63, 0xAD, 0x7F, 0x9D, 0x5A, 0x00, 0x24, 0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0xB0,
-0xFF, 0xBA, 0xFF, 0xCE, 0xFF, 0xE8, 0xFF, 0x00, 0x00, 0xA0, 0xFF, 0xB0, 0xFF, 0xCE, 0xFF, 0xE8,
-0xFF, 0x00, 0x00, 0x32, 0x00, 0x32, 0x00, 0x03, 0x00, 0x09, 0x18, 0x03, 0xD5, 0x07, 0x00, 0x00,
-0xBD, 0x02, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x01, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0xE0, 0x2A, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x32, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x05, 0x20, 0x4E, 0x00, 0x40, 0x00, 0x01, 0x00, 0x20,
-0x00, 0x02, 0x17, 0x2F, 0x5C, 0x7F, 0xB9, 0x7E, 0x82, 0x5A, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00,
-0x20, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0xA0, 0xFF, 0xBA, 0xFF, 0xCE, 0xFF, 0xE8, 0xFF,
-0x00, 0x00, 0xA0, 0xFF, 0xBA, 0xFF, 0xDA, 0xFF, 0xF4, 0xFF, 0x00, 0x00, 0x32, 0x00, 0x32, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x32, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x07, 0x00, 0x00, 0x40, 0x80, 0x00, 0xFD, 0x1F, 0xB0, 0x63, 0xAD, 0x7F, 0x9D, 0x5A, 0x00, 0x24,
-0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0xB0, 0xFF, 0xBA, 0xFF, 0xCE, 0xFF, 0xE8, 0xFF, 0x00, 0x00,
-0xA0, 0xFF, 0xB0, 0xFF, 0xCE, 0xFF, 0xE8, 0xFF, 0x00, 0x00, 0x32, 0x00, 0x32, 0x00, 0x03, 0x00,
-0x09, 0x18, 0x03, 0xD5, 0x07, 0x00, 0x00, 0xBD, 0x02, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xE0, 0x2A, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x32, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x05, 0x20,
-0x4E, 0x00, 0x40, 0x00, 0x01, 0x00, 0x20, 0x00, 0x02, 0x17, 0x2F, 0x5C, 0x7F, 0xB9, 0x7E, 0x82,
-0x5A, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0xA0,
-0xFF, 0xBA, 0xFF, 0xCE, 0xFF, 0xE8, 0xFF, 0x00, 0x00, 0xA0, 0xFF, 0xBA, 0xFF, 0xDA, 0xFF, 0xF4,
-0xFF, 0x00, 0x00, 0x32, 0x00, 0x32, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x32, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x40, 0x80, 0x00, 0xFD, 0x1F, 0xB0,
-0x63, 0xAD, 0x7F, 0x9D, 0x5A, 0x00, 0x24, 0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0xB0, 0xFF, 0xBA,
-0xFF, 0xCE, 0xFF, 0xE8, 0xFF, 0x00, 0x00, 0xA0, 0xFF, 0xB0, 0xFF, 0xCE, 0xFF, 0xE8, 0xFF, 0x00,
-0x00, 0x32, 0x00, 0x32, 0x00, 0x03, 0x00, 0x09, 0x18, 0x03, 0xD5, 0x07, 0x00, 0x00, 0xBD, 0x02,
-0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x06,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0xE0, 0x2A, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x32, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x06, 0x05, 0x20, 0x4E, 0x00, 0x40, 0x00, 0x01, 0x00, 0x20, 0x00, 0x02,
-0x17, 0x2F, 0x5C, 0x7F, 0xB9, 0x7E, 0x82, 0x5A, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0x20, 0x00,
-0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0xA0, 0xFF, 0xBA, 0xFF, 0xCE, 0xFF, 0xE8, 0xFF, 0x00, 0x00,
-0xA0, 0xFF, 0xBA, 0xFF, 0xDA, 0xFF, 0xF4, 0xFF, 0x00, 0x00, 0x32, 0x00, 0x32, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x32, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x00,
-0x00, 0x40, 0x80, 0x00, 0xFD, 0x1F, 0xB0, 0x63, 0xAD, 0x7F, 0x9D, 0x5A, 0x00, 0x24, 0x00, 0x00,
-0x00, 0x00, 0x05, 0x00, 0xB0, 0xFF, 0xBA, 0xFF, 0xCE, 0xFF, 0xE8, 0xFF, 0x00, 0x00, 0xA0, 0xFF,
-0xB0, 0xFF, 0xCE, 0xFF, 0xE8, 0xFF, 0x00, 0x00, 0x32, 0x00, 0x32, 0x00, 0x03, 0x00, 0x09, 0x18,
-0x03, 0xD5, 0x07, 0x00, 0x00, 0xBD, 0x02, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xE0, 0x2A, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x32, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x05, 0x20, 0x4E, 0x00,
-0x40, 0x00, 0x01, 0x00, 0x20, 0x00, 0x02, 0x17, 0x2F, 0x5C, 0x7F, 0xB9, 0x7E, 0x82, 0x5A, 0x00,
-0x04, 0x00, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0xA0, 0xFF, 0xBA,
-0xFF, 0xCE, 0xFF, 0xE8, 0xFF, 0x00, 0x00, 0xA0, 0xFF, 0xBA, 0xFF, 0xDA, 0xFF, 0xF4, 0xFF, 0x00,
-0x00, 0x32, 0x00, 0x32, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x32,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x40, 0x80, 0x00, 0xFD, 0x1F, 0xB0, 0x63, 0xAD,
-0x7F, 0x9D, 0x5A, 0x00, 0x24, 0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0xB0, 0xFF, 0xBA, 0xFF, 0xCE,
-0xFF, 0xE8, 0xFF, 0x00, 0x00, 0xA0, 0xFF, 0xB0, 0xFF, 0xCE, 0xFF, 0xE8, 0xFF, 0x00, 0x00, 0x32,
-0x00, 0x32, 0x00, 0x03, 0x00, 0x09, 0x18, 0x03, 0xD5, 0x07, 0x00, 0x00, 0xBD, 0x02, 0x00, 0x00,
-0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x06, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0xE0, 0x2A, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x32, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x06, 0x05, 0x20, 0x4E, 0x00, 0x40, 0x00, 0x01, 0x00, 0x20, 0x00, 0x02, 0x17, 0x2F,
-0x5C, 0x7F, 0xB9, 0x7E, 0x82, 0x5A, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x10,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x05, 0x00, 0xA0, 0xFF, 0xBA, 0xFF, 0xCE, 0xFF, 0xE8, 0xFF, 0x00, 0x00, 0xA0, 0xFF,
-0xBA, 0xFF, 0xDA, 0xFF, 0xF4, 0xFF, 0x00, 0x00, 0x32, 0x00, 0x32, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x32, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x40,
-0x80, 0x00, 0xFD, 0x1F, 0xB0, 0x63, 0xAD, 0x7F, 0x9D, 0x5A, 0x00, 0x24, 0x00, 0x00, 0x00, 0x00,
-0x05, 0x00, 0xB0, 0xFF, 0xBA, 0xFF, 0xCE, 0xFF, 0xE8, 0xFF, 0x00, 0x00, 0xA0, 0xFF, 0xB0, 0xFF,
-0xCE, 0xFF, 0xE8, 0xFF, 0x00, 0x00, 0x32, 0x00, 0x32, 0x00
-};
-
-static LVM_CHAR LVVE_Tx_Mute_File_Buffer[] ={
-0x03, 0x00, 0x09, 0x18, 0x03, 0xD5, 0x07, 0x00, 0x00, 0xBD, 0x02, 0x00, 0x00, 0x02, 0x00, 0x00,
-0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x00, 0x00, 0x00, 0x01,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x32, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0x11, 0x00, 0x00, 0x00,
-0x20, 0x00, 0x08, 0x00, 0x00, 0x40, 0x00, 0x00, 0x20, 0x80, 0x00, 0x40, 0x00, 0x00, 0x20, 0x80,
-0x00, 0x01, 0x00, 0xFF, 0x02, 0x33, 0x63, 0x33, 0x73, 0x00, 0x02, 0x00, 0x01, 0x00, 0x01, 0x00,
-0x00, 0x33, 0x63, 0x33, 0x73, 0x00, 0x02, 0x00, 0x01, 0x00, 0x01, 0x00, 0x00, 0xC0, 0x5D, 0x18,
-0x01, 0x00, 0x02, 0x00, 0x03, 0x79, 0x28, 0x00, 0x40, 0x96, 0x00, 0x00, 0x40, 0x00, 0x40, 0x00,
-0x00, 0x20, 0x4E, 0x10, 0x00, 0x40, 0x00, 0x40, 0x00, 0xA0, 0x41, 0x88, 0x13, 0x00, 0x00, 0x00,
-0x00, 0xF7, 0x49, 0x0E, 0x00, 0x00, 0x00, 0x00, 0x20, 0x00, 0x20, 0x00, 0x08, 0x20, 0x00, 0x00,
-0x20, 0xE8, 0x03, 0x18, 0x00, 0x00, 0x20, 0xE8, 0x03, 0x00, 0x00, 0x08, 0x03, 0x20, 0x00, 0x00,
-0x20, 0xE8, 0x03, 0x18, 0x00, 0x00, 0x20, 0xE8, 0x03, 0x00, 0x00, 0x08, 0x03, 0x96, 0x00, 0xFF,
-0x7F, 0x9A, 0x19, 0xFF, 0x7F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x10, 0x00, 0x8F, 0x02, 0x00, 0x04, 0x10, 0x00, 0x66, 0x06, 0x00, 0x01, 0x66,
-0x06, 0x00, 0x40, 0x00, 0x20, 0xE0, 0x2E, 0x58, 0x1B, 0x00, 0x01, 0xCE, 0x2C, 0x00, 0x40, 0x84,
-0x2B, 0x9A, 0x19, 0x66, 0x26, 0x00, 0x01, 0x00, 0x30, 0x00, 0x24, 0x40, 0x01, 0xE6, 0x00, 0x65,
-0x66, 0x00, 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x40, 0x80, 0x00, 0xFD, 0x1F, 0xB0, 0x63, 0xAD,
-0x7F, 0x9D, 0x5A, 0x00, 0x24, 0x00, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05,
-0x00, 0xA0, 0xFF, 0xBA, 0xFF, 0xCE, 0xFF, 0xE8, 0xFF, 0x00, 0x00, 0xA0, 0xFF, 0xBA, 0xFF, 0xDA,
-0xFF, 0xF4, 0xFF, 0x00, 0x00, 0x32, 0x00, 0x32, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
-};
-static LVM_CHAR LVVE_Tx_Wb_Mute_File_Buffer[] ={
-0x03, 0x00, 0x09, 0x18, 0x03, 0xD5, 0x07, 0x00, 0x00, 0xBD, 0x02, 0x00, 0x00, 0x02, 0x00, 0x00,
-0x00, 0x01, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x00, 0x00, 0x00, 0x01,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x32, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0x11, 0x00, 0x00, 0x00,
-0x20, 0x00, 0x08, 0x00, 0x00, 0x40, 0x00, 0x00, 0x20, 0x80, 0x00, 0x40, 0x00, 0x00, 0x20, 0x80,
-0x00, 0x01, 0x00, 0xFF, 0x02, 0x33, 0x63, 0x33, 0x73, 0x00, 0x02, 0x00, 0x01, 0x00, 0x01, 0x00,
-0x00, 0x33, 0x63, 0x33, 0x73, 0x00, 0x02, 0x00, 0x01, 0x00, 0x01, 0x00, 0x00, 0xC0, 0x5D, 0x18,
-0x01, 0x00, 0x02, 0x00, 0x03, 0x79, 0x28, 0x00, 0x40, 0x96, 0x00, 0x00, 0x40, 0x00, 0x40, 0x00,
-0x00, 0x20, 0x4E, 0x10, 0x00, 0x40, 0x00, 0x40, 0x00, 0xA0, 0x41, 0x88, 0x13, 0x00, 0x00, 0x00,
-0x00, 0xF7, 0x49, 0x0E, 0x00, 0x00, 0x00, 0x00, 0x20, 0x00, 0x20, 0x00, 0x08, 0x20, 0x00, 0x00,
-0x20, 0xE8, 0x03, 0x18, 0x00, 0x00, 0x20, 0xE8, 0x03, 0x00, 0x00, 0x08, 0x03, 0x20, 0x00, 0x00,
-0x20, 0xE8, 0x03, 0x18, 0x00, 0x00, 0x20, 0xE8, 0x03, 0x00, 0x00, 0x08, 0x03, 0x96, 0x00, 0xFF,
-0x7F, 0x9A, 0x19, 0xFF, 0x7F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x10, 0x00, 0x8F, 0x02, 0x00, 0x04, 0x10, 0x00, 0x66, 0x06, 0x00, 0x01, 0x66,
-0x06, 0x00, 0x40, 0x00, 0x20, 0xE0, 0x2E, 0x58, 0x1B, 0x00, 0x01, 0xCE, 0x2C, 0x00, 0x40, 0x84,
-0x2B, 0x9A, 0x19, 0x66, 0x26, 0x00, 0x01, 0x00, 0x30, 0x00, 0x24, 0x40, 0x01, 0xE6, 0x00, 0x65,
-0x66, 0x00, 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x40, 0x80, 0x00, 0xFD, 0x1F, 0xB0, 0x63, 0xAD,
-0x7F, 0x9D, 0x5A, 0x00, 0x24, 0x00, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05,
-0x00, 0xA0, 0xFF, 0xBA, 0xFF, 0xCE, 0xFF, 0xE8, 0xFF, 0x00, 0x00, 0xA0, 0xFF, 0xBA, 0xFF, 0xDA,
-0xFF, 0xF4, 0xFF, 0x00, 0x00, 0x32, 0x00, 0x32, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
-};
diff --git a/Uboot/cp/ps/driver/src/chipsets/src/audio_base/nxp/tos/audio_process.a b/Uboot/cp/ps/driver/src/chipsets/src/audio_base/nxp/tos/audio_process.a
deleted file mode 100755
index 449febf..0000000
--- a/Uboot/cp/ps/driver/src/chipsets/src/audio_base/nxp/tos/audio_process.a
+++ /dev/null
Binary files differ
diff --git a/Uboot/cp/ps/driver/src/chipsets/src/audio_base/nxp/tos/nxp_DrvNvData.h b/Uboot/cp/ps/driver/src/chipsets/src/audio_base/nxp/tos/nxp_DrvNvData.h
deleted file mode 100755
index 418c259..0000000
--- a/Uboot/cp/ps/driver/src/chipsets/src/audio_base/nxp/tos/nxp_DrvNvData.h
+++ /dev/null
@@ -1,6 +0,0 @@
-//6 level volume
-//add by zhanglixia
-//#define LVWM_TX_FILE_SIZE 463 //×Ö½ÚÊý
-//#define LVWM_RX_FILE_SIZE 1866
-
-//const static LVM_CHAR LVVE_Param_Test[] ={};
diff --git a/Uboot/cp/ps/driver/src/chipsets/src/audio_base/nxp/uclinux/LVC_Types.h b/Uboot/cp/ps/driver/src/chipsets/src/audio_base/nxp/uclinux/LVC_Types.h
deleted file mode 100755
index 14efe8c..0000000
--- a/Uboot/cp/ps/driver/src/chipsets/src/audio_base/nxp/uclinux/LVC_Types.h
+++ /dev/null
@@ -1,383 +0,0 @@
-/************************************************************************/
-/* Copyright (c) 2004-2014 NXP Software. All rights are reserved. */
-/* Reproduction in whole or in part is prohibited without the prior */
-/* written consent of the copyright owner. */
-/* */
-/* This software and any compilation or derivative thereof is and */
-/* shall remain the proprietary information of NXP Software and is */
-/* highly confidential in nature. Any and all use hereof is restricted */
-/* and is subject to the terms and conditions set forth in the */
-/* software license agreement concluded with NXP Software. */
-/* */
-/* Under no circumstances is this software or any derivative thereof */
-/* to be combined with any Open Source Software in any way or */
-/* licensed under any Open License Terms without the express prior */
-/* written permission of NXP Software. */
-/* */
-/* For the purpose of this clause, the term Open Source Software means */
-/* any software that is licensed under Open License Terms. Open */
-/* License Terms means terms in any license that require as a */
-/* condition of use, modification and/or distribution of a work */
-/* */
-/* 1. the making available of source code or other materials */
-/* preferred for modification, or */
-/* */
-/* 2. the granting of permission for creating derivative */
-/* works, or */
-/* */
-/* 3. the reproduction of certain notices or license terms */
-/* in derivative works or accompanying documentation, or */
-/* */
-/* 4. the granting of a royalty-free license to any party */
-/* under Intellectual Property Rights */
-/* */
-/* regarding the work and/or any work that contains, is combined with, */
-/* requires or otherwise is based on the work. */
-/* */
-/* This software is provided for ease of recompilation only. */
-/* Modification and reverse engineering of this software are strictly */
-/* prohibited. */
-/* */
-/************************************************************************/
-
-/****************************************************************************************
-
- $Author: beq07720 $
- $Revision: 55357 $
- $Date: 2014-03-05 22:16:13 +0530 (Wed, 05 Mar 2014) $
-
-*****************************************************************************************/
-
-/** @file
- * Header file defining the standard LifeVibes types for use in the application layer
- * interface of all LifeVibes modules
- */
-
-#ifndef LVM_TYPES_H
-#define LVM_TYPES_H
-
-#ifdef __cplusplus
-extern "C" {
-#endif /* __cplusplus */
-
-/****************************************************************************************/
-/* */
-/* definitions */
-/* */
-/****************************************************************************************/
-
-#define LVM_NULL 0 ///< NULL pointer
-
-#define LVM_TRUE 1 ///< Boolean True
-#define LVM_FALSE 0 ///< Boolean False
-
-#define LVM_MAXINT_8 127 ///< Maximum positive integer size
-#define LVM_MAXINT_16 32767 ///< Maximum signed int 16 bits number
-#define LVM_MAXINT_32 2147483647 ///< Maximum signed int 32 bits number
-#define LVM_MAXUINT_32 4294967295U ///< Maximum un-signed int 32 bits number
-
-#if ( defined(VARIANT_24BIT) )
-#define LVM_MAXENUM 8388607L ///< Maximum value for enumerator
-#else
-#define LVM_MAXENUM 2147483647 ///< Maximum value for enumerator
-#endif
-
-#define LVM_MODULEID_MASK 0xFF00 ///< Mask to extract the calling module ID from callbackId
-#define LVM_EVENTID_MASK 0x00FF ///< Mask to extract the callback event from callbackId
-
-/* Memory table*/
-#define LVM_MEMREGION_PERSISTENT_SLOW_DATA 0 ///< Offset to the instance memory region
-#define LVM_MEMREGION_PERSISTENT_FAST_DATA 1 ///< Offset to the persistent data memory region
-#define LVM_MEMREGION_PERSISTENT_FAST_COEF 2 ///< Offset to the persistent coefficient memory region
-#define LVM_MEMREGION_TEMPORARY_FAST 3 ///< Offset to temporary memory region
-
-#define LVM_NR_MEMORY_REGIONS 4 ///< Number of memory regions
-
-#define LVM_MODE_LVWIREFORMAT_LENGTH (4) ///< Number of bytes to encode @ref LVM_Mode_en in LVWireFormat
-#define LVM_CONFIG_LVWIREFORMAT_LENGTH (4) ///< Number of bytes to encode @ref LVM_Config_en in LVWireFormat
-#define LVM_FS_LVWIREFORMAT_LENGTH (4) ///< Number of bytes to encode @ref LVM_Fs_en sample Rate in LVWireFormat
-
-#define LVM_CHAR_LVWIREFORMAT_LENGTH (1)
-#define LVM_INT8_LVWIREFORMAT_LENGTH (1)
-#define LVM_UINT8_LVWIREFORMAT_LENGTH (1)
-
-#define LVM_INT16_LVWIREFORMAT_LENGTH (2)
-#define LVM_UINT16_LVWIREFORMAT_LENGTH (2)
-
-#define LVM_INT32_LVWIREFORMAT_LENGTH (4)
-#define LVM_UINT32_LVWIREFORMAT_LENGTH (4)
-
-
-/****************************************************************************************/
-/* */
-/* Basic types */
-/* */
-/****************************************************************************************/
-
-#if defined(CORE_TIC64)
-typedef char LVM_CHAR; ///< ASCII character
-
-typedef char LVM_INT8; ///< Signed 8-bit word
-typedef unsigned char LVM_UINT8; ///< Unsigned 8-bit word
-
-typedef short LVM_INT16; ///< Signed 16-bit word
-typedef unsigned short LVM_UINT16; ///< Unsigned 16-bit word
-
-typedef int LVM_INT32; ///< Signed 32-bit word
-typedef unsigned int LVM_UINT32; ///< Unsigned 32-bit word
-#else
-
-#if ( defined(VARIANT_FRAC16) || defined (VARIANT_REFREAL16) )
-typedef long DATATYPE; ///< long data type
-
-typedef char LVM_CHAR; ///< ASCII character
-
-typedef char LVM_INT8; ///< Signed 8-bit word
-typedef unsigned char LVM_UINT8; ///< Unsigned 8-bit word
-
-typedef long LVM_INT16; ///< Signed 16-bit word
-typedef long LVM_UINT16; ///< Unsigned 16-bit word
-
-typedef long LVM_INT32; ///< Signed 32-bit word
-typedef long LVM_UINT32; ///< Unsigned 32-bit word
-
-#else
-typedef char LVM_CHAR; ///< ASCII character
-
-typedef char LVM_INT8; ///< Signed 8-bit word
-typedef unsigned char LVM_UINT8; ///< Unsigned 8-bit word
-
-typedef short LVM_INT16; ///< Signed 16-bit word
-typedef unsigned short LVM_UINT16; ///< Unsigned 16-bit word
-
-typedef long LVM_INT32; ///< Signed 32-bit word
-typedef unsigned long LVM_UINT32; ///< Unsigned 32-bit word
-#if ( defined(VARIANT_24BIT) )
-
-#define LVM_MAXINT_24 8388607L ///< 24 bit max int
-#define LVM_MININT_24 -8388608L ///< 24bit min int
-
-#define LVM_MAXINT_48 140737488355327LL ///< 48bit max int
-#define LVM_MININT_48 -140737488355328LL ///< 48bit min int
-
-#endif // VARIANT_24BIT
-
-#endif // VARIANT_FRAC16
-
-#endif // CORE_TIC64
-
-/****************************************************************************************/
-/* */
-/* Standard Enumerated types */
-/* */
-/****************************************************************************************/
-
-/**
-The @ref LVM_Mode_en enumerated type is used to set the operating mode of a particular feature inside the LifeVibes modules.
-The feature can be separately set to enable the feature processing (i.e., ON) or to disable all feature processing
-modules (i.e., OFF).
-*/
-typedef enum
-{
- LVM_MODE_OFF = 0, ///< LVM module disabled
- LVM_MODE_ON = 1, ///< LVM module enabled
- LVM_MODE_DUMMY = LVM_MAXENUM
-} LVM_Mode_en;
-
-/**
-Sets stream Format
-*/
-typedef enum
-{
- LVM_STEREO = 0, ///<Stereo stream
- LVM_MONOINSTEREO = 1, ///<Mono in stereo stream
- LVM_MONO = 2, ///<Mono stream
- LVM_5DOT1 = 3, ///<stream 5.1 formatted
- LVM_7DOT1 = 4, ///<stream 7.1 formatted
- LVM_SOURCE_DUMMY = LVM_MAXENUM
-} LVM_Format_en;
-
-/**
-Sets Speaker type
-*/
-typedef enum
-{
- LVM_SPEAKER_MONO = 0, ///< Mono type speaker
- LVM_SPEAKER_STEREO = 1, ///< Stereo type speaker
- LVM_SPEAKER_DUMMY = LVM_MAXENUM
-} LVM_SpeakerType_en;
-
-/**
-Sets Word length
-*/
-typedef enum
-{
- LVM_16_BIT = 0, ///< 16 bit word length
- LVM_32_BIT = 1, ///< 32 bit word length
- LVM_WORDLENGTH_DUMMY = LVM_MAXENUM
-} LVM_WordLength_en;
-
-/**
-The LVM product supports the sample rates specified in @ref LVM_Fs_en. The input and output sample rates are always the same.
-*/
-typedef enum
-{
- LVM_FS_8000 = 0, ///< 8k sampling rate
- LVM_FS_11025 = 1, ///< 11.025k sampling rate
- LVM_FS_12000 = 2, ///< 12k sampling rate
- LVM_FS_16000 = 3, ///< 16k sampling rate
- LVM_FS_22050 = 4, ///< 22.050k sampling rate
- LVM_FS_24000 = 5, ///< 24k sampling rate
- LVM_FS_32000 = 6, ///< 32k sampling rate
- LVM_FS_44100 = 7, ///< 44.1k sampling rate
- LVM_FS_48000 = 8, ///< 48k sampling rate
- LVM_FS_COUNT = 9, ///< Max sampling rate count
- LVM_FS_INVALID = LVM_MAXENUM-1,
- LVM_FS_DUMMY = LVM_MAXENUM
-} LVM_Fs_en;
-
-/**
-The enumerated type is used to select the reset mode for the module.
-@ref LVM_RESET_SOFT is used to select a soft reset (or partial reset) and @ref LVM_RESET_HARD is
-used to select a hard reset (full re-initialization).
-*/
-typedef enum
-{
-/**
-<table border>
- <tr>
- <td><b>Name</b></td>
- <td><b>MODE</b></td>
- </tr>
- <tr>
- <td>ResetType</td>
- <td>@ref LVM_RESET_SOFT</td>
- </tr>
- <tr>
- <td></td>
- <td>@ref LVM_RESET_HARD</td>
- </tr>
-</table>
-*/
- LVM_RESET_SOFT = 0, ///< Reset type for LVM where a partial reset of the module should be performed
- LVM_RESET_HARD = 1, ///< Reset type for LVM where a full reset of the module should be performed
- LVM_RESET_DUMMY = LVM_MAXENUM
-} LVM_ResetType_en;
-
-/**
-The @ref LVM_MemoryTypes_en enumerated type identifies the memory region types so that they can be correctly placed in memory
-by the calling application.
-The module initially has no permanent memory storage and makes no use of persistent memory allocation internally.
-The calling application must allocate memory for the module to use.
-
-Four memory regions are required:
-@li @ref LVM_MEMREGION_PERSISTENT_SLOW_DATA : this type of memory is used to store all the control data that needs to be saved between two consecutive calls to the process function.
-@li @ref LVM_MEMREGION_PERSISTENT_FAST_DATA : this type of memory is used to store data such as filter history
-@li @ref LVM_MEMREGION_PERSISTENT_FAST_COEF : this type of memory is used to store filter coefficients.
-@li @ref LVM_MEMREGION_TEMPORARY_FAST (scratch): this type of memory is used to store temporary data. This memory can be reused by the application in between calls to the process function.
-
-This collection of memory regions forms the module instance.
-
-Typically the memory is allocated by the application dynamically; however, it can be allocated statically if required.
-The sizes of the memory regions can be found by running the GetMemoryTable functions on a simulator and noting
-the returned values. Alternatively contact NXP who can provide the figures.
-It is possible that these memory sizes will change between release versions of the library and hence the dynamic memory allocation method is preferred where possible.
-On some target platforms the placement of memory regions is critical for achieving optimal performance of the module.
-*/
-typedef enum
-{
- LVM_PERSISTENT_SLOW_DATA = LVM_MEMREGION_PERSISTENT_SLOW_DATA, ///< Persistent slow memory region
- LVM_PERSISTENT_FAST_DATA = LVM_MEMREGION_PERSISTENT_FAST_DATA, ///< Persistent fast memory region
- LVM_PERSISTENT_FAST_COEF = LVM_MEMREGION_PERSISTENT_FAST_COEF, ///< Persisten fast memory for coefficient storage
- LVM_TEMPORARY_FAST = LVM_MEMREGION_TEMPORARY_FAST, ///< Temporary fast memory region
- LVM_MEMORYTYPE_DUMMY = LVM_MAXENUM
-} LVM_MemoryTypes_en;
-
-/**
-Sets mod of Configuration
-*/
-typedef enum
-{
- LVM_CONFIG_HANDSET = 0, ///< Handset configuration
- LVM_CONFIG_SPEAKERPHONE = 1, ///< Speaker mod configuration
- LVM_CONFIG_EARPIECE = 2, ///< Earpiece configuration
- LVM_CONFIG_DUMMY = LVM_MAXENUM
-} LVM_Config_en;
-
-/**
-The @ref LVM_MemoryRegion_st type defines a memory region by specifying its size in bytes, its region type and its base pointer.
-@see LVM_MemoryTypes_en
-*/
-#if ( defined(VARIANT_24BIT) )
-typedef struct
-{
- LVM_INT24 Size; ///< The size of the memory region in bytes
- LVM_MemoryTypes_en Type; ///< Type of memory region
- void *pBaseAddress; ///< Pointer to the memory region base address
-} LVM_MemoryRegion_st;
-#else
-typedef struct
-{
- LVM_UINT32 Size; ///< The size of the memory region in bytes
- LVM_MemoryTypes_en Type; ///< Type of memory region
- void *pBaseAddress; ///< Pointer to the memory region base address
-} LVM_MemoryRegion_st;
-#endif
-
-/**
-The LVM_MemoryTable_st type defines the memory requirements of the module as an array of region definitions.
-The number of required memory regions is given by the constant @ref LVM_NR_MEMORY_REGIONS
-@see LVM_MemoryRegion_st
-*/
-typedef struct
-{
- LVM_MemoryRegion_st Region[LVM_NR_MEMORY_REGIONS]; ///< One definition of all memory regions
-} LVM_MemoryTable_st;
-
-/**
-Beats Per Minute Structure
-*/
-typedef struct
-{
- LVM_INT16 ShortTermMinimum; ///< Beats per minute in Q9.6 format
- LVM_INT16 ShortTermAverage; ///< Beats per minute in Q9.6 format
- LVM_INT16 ShortTermMaximum; ///< Beats per minute in Q9.6 format
-
- LVM_INT16 Confidence; ///< Beat confidence level: 0 = no confidence, 32767 = maximum confidence
- LVM_INT16 Strength; ///< Beat strength level: 0 = no beat, 32767 = maximum strength beat
- LVM_INT16 LongTermMinimum; ///< Beats per minute in Q9.6 format
- LVM_INT16 LongTermAverage; ///< Beats per minute in Q9.6 format
- LVM_INT16 LongTermMaximum; ///< Beats per minute in Q9.6 format
-
-} LVM_BPMModuleStats_st;
-
-
-/****************************************************************************************/
-/* */
-/* Standard Function Prototypes */
-/* */
-/****************************************************************************************/
-/**
-@brief General purpose callback function
-
-@param pCallbackData Pointer to the callback data structure
-@param pGeneralPurpose General purpose pointer (e.g. to a data structure needed in the callback)
-@param PresetLength General purpose variable (e.g. to be used as callback ID)
-@return \ref LVM_INT32
-*/
-typedef LVM_INT32 (*LVM_Callback)(void *pCallbackData,
- void *pGeneralPurpose,
- LVM_INT16 GeneralPurpose );
-
-
-/****************************************************************************************/
-/* */
-/* End of file */
-/* */
-/****************************************************************************************/
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#endif /* LVM_TYPES_H */
diff --git a/Uboot/cp/ps/driver/src/chipsets/src/audio_base/nxp/uclinux/LVVE.h b/Uboot/cp/ps/driver/src/chipsets/src/audio_base/nxp/uclinux/LVVE.h
deleted file mode 100755
index 9c48d8e..0000000
--- a/Uboot/cp/ps/driver/src/chipsets/src/audio_base/nxp/uclinux/LVVE.h
+++ /dev/null
@@ -1,1371 +0,0 @@
-/****************************************************************************************/
-/* Copyright (c) 2004-2014 NXP Software. All rights are reserved. */
-/* Reproduction in whole or in part is prohibited without the prior */
-/* written consent of the copyright owner. */
-/* */
-/* This software and any compilation or derivative thereof is and */
-/* shall remain the proprietary information of NXP Software and is */
-/* highly confidential in nature. Any and all use hereof is restricted */
-/* and is subject to the terms and conditions set forth in the */
-/* software license agreement concluded with NXP Software. */
-/* */
-/* Under no circumstances is this software or any derivative thereof */
-/* to be combined with any Open Source Software in any way or */
-/* licensed under any Open License Terms without the express prior */
-/* written permission of NXP Software. */
-/* */
-/* For the purpose of this clause, the term Open Source Software means */
-/* any software that is licensed under Open License Terms. Open */
-/* License Terms means terms in any license that require as a */
-/* condition of use, modification and/or distribution of a work */
-/* */
-/* 1. the making available of source code or other materials */
-/* preferred for modification, or */
-/* */
-/* 2. the granting of permission for creating derivative */
-/* works, or */
-/* */
-/* 3. the reproduction of certain notices or license terms */
-/* in derivative works or accompanying documentation, or */
-/* */
-/* 4. the granting of a royalty-free license to any party */
-/* under Intellectual Property Rights */
-/* */
-/* regarding the work and/or any work that contains, is combined with, */
-/* requires or otherwise is based on the work. */
-/* */
-/* This software is provided for ease of recompilation only. */
-/* Modification and reverse engineering of this software are strictly */
-/* prohibited. */
-/* */
-/****************************************************************************************/
-
-/****************************************************************************************/
-/* */
-/* $Author: nxp65285 $*/
-/* $Revision: 56908 $*/
-/* $Date: 2014-04-10 17:30:02 +0530 (Thu, 10 Apr 2014) $*/
-/* */
-/****************************************************************************************/
-
-/**
-@file
-Header file for the application layer interface of the LVVE module.
-This files includes all definitions, types, structures and function prototypes
-required by the calling layer. All other types, structures and functions are
-private.
-*/
-
-#ifndef __LVVE_H__
-#define __LVVE_H__
-
-#ifdef __cplusplus
-extern "C" {
-#endif /* __cplusplus */
-
-/****************************************************************************************/
-/* */
-/* Includes */
-/* */
-/****************************************************************************************/
-
-#include "LVVE_VID.h"
-
-/****************************************************************************************/
-/* */
-/* Definitions */
-/* */
-/****************************************************************************************/
-/* Below include logic is designed to reduce checks to 1 or 2 conditions due to limitations in the backend stripping code */
-
-
-
-
-
-#define LVVE_MAX_PCM_FRAME_SIZE 160 ///< LVVE maximum processing frame size
-
-
-#define LVVE_NOISESAMPLES_PER_FRAME 2 ///< Number of samples required for noise estimation per frame
-/**
-@def LVVE_RX_PRESET_LENGTH
-Length of the LVVE_Rx preset buffer (number of bytes).
-@see LVVE_Rx_SetPreset
-@ingroup LVVE_Rx
-*/
-#define LVVE_RX_PRESET_LENGTH (LVVIDHEADER_CONTROLPARAMS_LVWIREFORMAT_LENGTH + LVVE_RX_CONTROLPARAMS_LVWIREFORMAT_LENGTH) ///< RX preset Buffer length
-
-/**
-@def LVVE_TX_PRESET_LENGTH
-Length of the LVVE_Tx preset buffer (number of bytes).
-@see LVVE_Tx_SetPreset
-@ingroup LVVE_Tx
-*/
-#define LVVE_TX_PRESET_LENGTH (LVVIDHEADER_CONTROLPARAMS_LVWIREFORMAT_LENGTH + LVVE_TX_CONTROLPARAMS_LVWIREFORMAT_LENGTH) ///< TX preset buffer length
-
-
-/* Deprecated Definitions */
-
-#define LVVE_MAX_BULK_DELAY LVVE_TX_BULKDELAY_MAX
-#define LVVE_RX_MODE_DUMMY LVVE_RX_MODE_EN_DUMMY
-#define LVVE_TX_MODE_DUMMY LVVE_TX_MODE_EN_DUMMY
-
-#define LVVE_MAX_VOL_GAIN_DB LVVE_TX_VOL_GAIN_MAX
-#define LVVE_MIN_VOL_GAIN_DB LVVE_TX_VOL_GAIN_MIN
-
-#define LVVE_MAX_HPF_CORNER_HZ LVVE_TX_MIC_HPF_CORNERFREQ_MAX
-#define LVVE_MIN_HPF_CORNER_HZ LVVE_TX_MIC_HPF_CORNERFREQ_MIN
-
-#define LVVE_MAX_HPF_RX_CORNER_HZ LVVE_RX_HPF_CORNERFREQ_MAX
-
-#define LVVE_MAX_NLPP_LIMIT_DB LVNLPP_NLPP_LIMIT_MAX
-#define LVVE_MIN_NLPP_LIMIT_DB LVNLPP_NLPP_LIMIT_MIN
-
-
-#define LVVE_MAX_DRC_LEVEL LVDRC_COMPRESSORCURVEINPUTLEVELS_MAX
-#define LVVE_MIN_DRC_LEVEL LVDRC_COMPRESSORCURVEINPUTLEVELS_MIN
-#define LVVE_MIN_DRC_NUMKNEES LVDRC_NUMKNEES_MIN
-#define LVVE_MAX_DRC_NUMKNEES LVDRC_NUMKNEES_MAX
-#define LVVE_MIN_DRC_ATTACKTIME LVDRC_ATTACKTIME_MIN
-#define LVVE_MAX_DRC_ATTACKTIME LVDRC_ATTACKTIME_MAX
-#define LVVE_MIN_DRC_RELEASETIME LVDRC_RELEASETIME_MIN
-#define LVVE_MAX_DRC_RELEASETIME LVDRC_RELEASETIME_MAX
-
-
-/* End deprecated defines*/
-/****************************************************************************************/
-/* */
-/* Types */
-/* */
-/****************************************************************************************/
-
-/**
-LVVE_Tx Instance Handle
-This handle is used by most of the LVVE APIs
-@see LVVE_Tx_GetInstanceHandle
-@ingroup LVVE_Tx
-*/
-typedef void *LVVE_Tx_Handle_t; ///< LVVE Tx handle
-/**
-This handle is used by most of the LVVE APIs
-@see LVVE_Rx_GetInstanceHandle
-@ingroup LVVE_Rx
-*/
-typedef void *LVVE_Rx_Handle_t; ///< LVVE Rx handle
-
-/**
-This enum type specifies the different error codes returned by the API functions
-For the exact meaning see the individual function descriptions
-*/
-typedef enum
-{
- LVVE_SUCCESS = 0, ///< Successful return from a routine
- LVVE_ALIGNMENTERROR = 1, ///< Memory alignment error
- LVVE_NULLADDRESS = 2, ///< NULL allocation address
- LVVE_OUTOFRANGE = 3, ///< Out of range parameter
- LVVE_INVALIDNUMSAMPLES = 4, ///< Invalid number of samples
- LVVE_INVALID_ALGORITHM_CONFIGURATION = 5, ///< Mutually exclusive algorithms configured ON
- LVVE_INVALID_STATE_CONFIGURATION = 6, ///< Invalid state of the algorithm
- LVVE_PRESET_INVALID_BUFFER_LENGTH = 7, ///< Incorrect length of buffer used in SetPreset
- LVVE_PRESET_INVALID_VOLUME_INDEX = 8, ///< The volume index exceeds the buffer content in SetPreset
- LVVE_PRESET_INVALID_BUFFER_VERSION = 9, ///< The version of the preset buffer does not match this library
- LVVE_PRESET_INVALID_BASELINE_VERSION = 10, ///< Invalid LVVE Baseline Version in preset buffer
- LVVE_PRESET_INVALID_MASK = 11, ///< Invalid algorithm mask in preset buffer
- LVVE_PRESET_INVALID_SAMPLE_RATE = 12, ///< Invalid sample rate @ref LVM_Fs_en in preset buffer
- LVVE_PRESET_INVALID_LVWIREFORMAT_MESSAGEID = 13, ///< Invalid @ref LVVIDHeader_MessageID_en wire format message id in preset buffer
-
- LVVE_RETURNSTATUS_DUMMY = LVM_MAXENUM
-} LVVE_ReturnStatus_en;
-
-/**
-Byte array containing encoded LVVE_Rx_ControlParams for one or multiple volumes.
-The length of this array should be a multiple of @ref LVVE_RX_PRESET_LENGTH.
-@see LVVE_Rx_SetPreset
-@ingroup LVVE_Rx
-*/
-typedef LVM_CHAR* LVVE_Rx_Preset_t; ///< LVVE Rx preset buffer
-
-/**
-Byte array containing encoded LVVE_Tx_ControlParams for one or multiple volumes.
-The length of this array should be a multiple of @ref LVVE_TX_PRESET_LENGTH.
-@see LVVE_Tx_SetPreset
-@ingroup LVVE_Tx
-*/
-typedef LVM_CHAR* LVVE_Tx_Preset_t; ///< LVVE Tx preset buffer
-
-
-/****************************************************************************************/
-/* */
-/* Structures */
-/* */
-/****************************************************************************************/
-
-/**
-The instance parameters define certain important operating limits required by the calling application.
-These instance parameters affect how much memory is required by the LVVE and hence must be provided
-when the instance is created.
-@see LVVE_Rx_GetMemoryTable
-@see LVVE_Rx_GetInstanceHandle
-@see LVVE_Tx_GetMemoryTable
-@see LVVE_Tx_GetInstanceHandle
-*/
-/**
-EQ Module Instance Parameters Structure.
-@see LVEQ_InstanceParams_st
-*/
-typedef struct
-{
-/**
-Max Size of Equalizer
-Sets the maximum length of the equalizer impulse response that can be used.
-It must be a multiple of 8.
-<table border>
-<caption>EQ Max Length Table</caption>
- <tr>
- <td><b>Unit</b></td>
- <td><b>Q format</b></td>
- <td><b>Data Range</b></td>
- <td><b>Default Values</b></td>
- </tr>
- <tr>
- <td><b>Integer Length in Samples</b></td>
- <td><b>Q16.0</b></td>
- <td>[8,\ref LVEQ_EQ_LENGTH_MAX]</td>
- <td>\ref LVEQ_EQ_LENGTH_DEFAULT</td>
- </tr>
-</table>
-*/
- LVM_UINT16 EQ_MaxLength; ///< EQ Max Length
-} LVEQ_InstanceParams_st;
-
-/**
-Tx Instance Parameter Structure
-These parameters are set at initialization time and may not be changed during processing
-@ref LVVE_Tx_GetInstanceHandle
-@ingroup LVVE_Tx
-*/
-typedef struct
-{
- LVM_Fs_en SampleRate; ///< Sample rate
-/**
-Sets the maximum length of the bulk delay between Rx and Tx expressed in samples.
-The unit of MaxBulkDelay is [number of samples] at the respective sampling rate.
-<table border>
-<caption>Max Bulk Delay Table</caption>
- <tr>
- <td><b>Type</b></td>
- <td><b>Unit</b></td>
- <td><b>Q format</b></td>
- <td><b>Data Range</b></td>
- <td><b>Default Values</b></td>
- </tr>
- <tr>
- <td><b>LVM_UINT16</b></td>
- <td><b>Integer Length in Samples</b></td>
- <td><b>Q16.0</b></td>
- <td>[0,6400]</td>
- <td>None</td>
- </tr>
-</table>
-*/
- LVM_UINT16 MaxBulkDelay; ///< Max bulk delay
-
- LVEQ_InstanceParams_st EQ_InstParams; ///< EQ instance
-} LVVE_Tx_InstanceParams_st;
-
-/**
-Rx Instance Parameter Structure
-These parameters are set at initialization time and may not be changed during processing.
-@ref LVVE_Rx_GetInstanceHandle
-@ingroup LVVE_Rx
-*/
-typedef struct
-{
- LVM_Fs_en SampleRate; ///< LVVE sample rate
- LVEQ_InstanceParams_st EQ_InstParams;///< EQ instance
-
-} LVVE_Rx_InstanceParams_st;
-
-/**
-The version information structure contains one character field to store LVVE version number.
-A call to the @ref LVVE_GetVersionInfo function is needed to retrieve this information.
-*/
-typedef struct
-{
- LVM_CHAR VersionNumber[64]; ///< Version number of the LifeVibes™ VoiceExperience library
-} LVVE_VersionInfo;
-
-/**
-Used to reset LVVE_Rx module any time.
-@ref LVM_ResetType_en parameter determine the type of reset required
-@ingroup LVVE_Rx
-*/
-typedef struct
-{
- LVM_ResetType_en ResetType; ///< RX Reset Type
-} LVVE_Rx_ResetParams_st;
-
-/**
-Used to reset LVVE_Tx module any time.
-LVM_ResetType_en parameter determine the type of reset required
-@ingroup LVVE_Tx
-*/
-typedef struct
-{
- LVM_ResetType_en ResetType; ///< TX Reset Type
-} LVVE_Tx_ResetParams_st;
-
-/**
-@brief Retrieve the memory requirements of the LVVE_Tx module.
-
-This function returns a table of memory records that describe size, type and memory space of all buffers
-required by the instance. The number of initialized memory records is defined by LVVE_NR_MEMORY_REGIONS.
-This function is used for two purposes and is called in two different ways:
-
-@li Memory Allocation: When the LVVE_GetMemoryTable functions are called with a NULL instance handle (hInstance = LVM_NULL)
- the function returns the memory requirements. The base address pointers in the memory table are set to NULL.
- All elements of the instance parameters structure (pointed to by pInstParams) must contain valid values as the memory
- requirements are affected by these settings.
-
-@li Memory Free: When called with a non-NULL instance handle (hInstance = a valid instance handle)
- the function returns the memory table used when the instance was created.
- The base address pointers returned will be those supplied by the calling application when the memory
- was allocated and can now be used for freeing memory. The instance parameters (pointed to by pInstParams)
- are ignored and the pInstParams parameter may be set to NULL.
-@li In case of memory allocation, all elements of the parameter initialization structure defined by pInstParams
- must contain valid values as the memory requirements are affected by these settings.
- In some releases of the bundle library one or more memory regions may have a zero size.
-
-@pre The number of memory records in the array defined by pMemoryTable is equal to @ref LVM_NR_MEMORY_REGIONS.
-@pre Exactly @ref LVM_NR_MEMORY_REGIONS memory records of pMemoryTable are initialized.
-
-@post When this function is called with hInstance = NULL the memory base address pointers
-will be NULL on return.
-@post When the function is called for freeing memory, hInstance = Instance Handle the
-memory table returns the allocated memory and base addresses used during
-initialisation.
-
-@return LVVE_SUCCESS when the function call succeeds and the memory table is filled correctly
-@return LVVE_NULLADDRESS when pMemoryTable was NULL
-@return LVVE_NULLADDRESS when pInstParams was NULL and the call was for memory allocation
- is NULL.
-@return LVVE_OUTOFRANGE when pInstParams contains parameters out of the excepted range
-
-@note This function may be interrupted by the LVVE_Tx_Process function.
-
-@ingroup LVVE_Tx
-
-LVVE_Tx_GetMemoryTable: Memory Allocation Example:
-
-The following example shows how to get the memory requirements for the LVVE_Tx instance.
-\code
- InstParams_Tx.SampleRate = LVM_FS_8000;
- // Include the other instance params here
-
- LVVE_Status = LVVE_Tx_GetMemoryTable ( LVM_NULL,
- &MemTab_Tx,
- &InstParams_Tx );
-
- if( LVVE_Status != LVVE_SUCCESS )
- {
- // Handle Errors
- }
-
- for( c1 = 0; c1 < LVVE_NR_MEMORY_REGIONS; c1++ )
- {
- if( MemTab_Tx.Region[c1].Size != 0 )
- {
- MemTab_Tx.Region[c1].pBaseAddress =
- malloc(MemTab_Tx.Region[c1].Size);
- }
- }
-\endcode
-
-LVVE_Tx_GetMemoryTable: Freeing Memory Example:
-
-The following example shows how to free the memory from the LVVE_Tx instance.
-
-\code
- LVVE_Status = LVVE_Tx_GetMemoryTable( hInstance,
- &MemTab_Tx,
- LVM_NULL);
-
- if (LVVE_Status != LVVE_SUCCESS)
- {
- // Handle errors
- }
-
- for( c1 = 0; c1 < LVVE_NR_MEMORY_REGIONS; c1++)
- {
- if (MemTab_Tx.Region[c1].Size != 0)
- {
- free(MemTab_Tx.Region[c1].pBaseAddress);
- }
- }
-\endcode
-
-*/
-
-LVVE_ReturnStatus_en LVVE_Tx_GetMemoryTable(LVVE_Tx_Handle_t hInstance,
- LVM_MemoryTable_st *pMemoryTable,
- LVVE_Tx_InstanceParams_st *pInstanceParams);
-
-/**
-@brief Retrieve the memory requirements of the LVVE_Rx module.
-
-This function returns a table of memory records that describe size, type and memory space of all buffers
-required by the instance. The number of initialized memory records is defined by LVVE_NR_MEMORY_REGIONS.
-This function is used for two purposes and is called in two different ways:
-
-@li Memory Allocation: When the LVVE_GetMemoryTable functions are called with a NULL instance handle (hInstance = LVM_NULL)
- the function returns the memory requirements. The base address pointers in the memory table are set to NULL.
- All elements of the instance parameters structure (pointed to by pInstParams) must contain valid values as the memory
- requirements are affected by these settings.
-
-@li Memory Free: When called with a non-NULL instance handle (hInstance = a valid instance handle)
- the function returns the memory table used when the instance was created.
- The base address pointers returned will be those supplied by the calling application when the memory
- was allocated and can now be used for freeing memory. The instance parameters (pointed to by pInstParams)
- are ignored and the pInstParams parameter may be set to NULL.
-@li In case of memory allocation, all elements of the parameter initialization structure defined by pInstParams
- must contain valid values as the memory requirements are affected by these settings.
- In some releases of the bundle library one or more memory regions may have a zero size.
-
-@pre The number of memory records in the array defined by pMemoryTable is equal to @ref LVM_NR_MEMORY_REGIONS.
-@pre Exactly @ref LVM_NR_MEMORY_REGIONS memory records of pMemoryTable are initialized.
-
-@post When this function is called with hInstance = NULL the memory base address pointers
-will be NULL on return.
-@post When the function is called for freeing memory, hInstance = Instance Handle the
-memory table returns the allocated memory and base addresses used during
-initialisation.
-
-@return LVVE_SUCCESS when the function call succeeds and the memory table is filled correctly
-@return LVVE_NULLADDRESS when pMemoryTable was NULL
-@return LVVE_NULLADDRESS when pInstParams was NULL and the call was for memory allocation
- is NULL.
-@return LVVE_OUTOFRANGE when pInstParams contains parameters out of the excepted range
-
-@note This function may be interrupted by the LVVE_Rx_Process function.
-
-@ingroup LVVE_Rx
-
-LVVE_Rx_GetMemoryTable: Memory Allocation Example:
-
-The following example shows how to get the memory requirements for the LVVE_Rx instance.
-
-\code
- InstParams_Rx.SampleRate = LVM_FS_8000;
- // Include the other instance params here
-
- LVVE_Status = LVVE_Rx_GetMemoryTable ( LVM_NULL,
- &MemTab_Rx,
- &InstParams_Rx );
-
- if( LVVE_Status != LVVE_SUCCESS )
- {
- // Handle Errors
- }
-
- for( c1 = 0; c1 < LVVE_NR_MEMORY_REGIONS; c1++ )
- {
- if( MemTab_Rx.Region[c1].Size != 0 )
- {
- MemTab_Rx.Region[c1].pBaseAddress =
- malloc(MemTab_Rx.Region[c1].Size);
- }
- }
-\endcode
-
-LVVE_Rx_GetMemoryTable: Freeing Memory Example:
-
-The following example shows how to free the memory from the LVVE_Rx instance.
-
-\code
- LVVE_Status = LVVE_Rx_GetMemoryTable( hInstance,
- &MemTab_Rx,
- LVM_NULL);
-
- if (LVVE_Status != LVVE_SUCCESS)
- {
- // Handle errors
- }
-
- for( c1 = 0; c1 < LVVE_NR_MEMORY_REGIONS; c1++)
- {
- if (MemTab_Rx.Region[c1].Size != 0)
- {
- free(MemTab_Rx.Region[c1].pBaseAddress);
- }
- }
-\endcode
-*/
-
-LVVE_ReturnStatus_en LVVE_Rx_GetMemoryTable(LVVE_Rx_Handle_t hInstance,
- LVM_MemoryTable_st *pMemoryTable,
- LVVE_Rx_InstanceParams_st *pInstanceParams);
-
-
-/**
-@brief Created handle to the instance of the LVVE_Tx module
-
-This function is used to create the LVVE_Tx instance. All control parameters are set to invalid values.
-The memory table pointed to by pMemoryTable must be created. If the memory table is not correct then an error will be returned.
-The memory requirements of the Rx and Tx unit are dependent on the instance parameters supplied and so the
-instance parameters provided in this function call must be the same as those used in the @ref LVVE_Tx_GetMemoryTable function calls
-used for memory allocation.
-
-@pre The memory records tables defined by pMemoryTable contains pointers to non-overlapping buffers
-with the size as requested via the prior calls to the LVVE_Tx_GetMemoryTable functions.
-@pre The initialization parameter structure defined by pInstParams is identical to the structure passed
-to prior call to @ref LVVE_Tx_GetMemoryTable functions.
-
-
-@param phInstance Pointer to the instance handle.
-@param pMemoryTable Pointer to the memory definition table.
-@param pInstanceParams Pointer to the instance parameters.
-
-@return LVVE_SUCCESS when creation was successful
-@return LVVE_NULLADDRESS When phInstance or pMemoryTable or pInstanceParams is NULL.
-@return LVVE_NULLADDRESS when one or more of the memory regions with a non-zero size has been
- given a NULL base address pointer.
-@return LVVE_OUTOFRANGE when pInstParams contains parameters out of the excepted range
-
-@ingroup LVVE_Tx
-
- LVVE_Tx_GetInstanceHandle Example:
-
-The following example shows how to initialize LVVE_Tx_GetInstanceHandle.
-
-\code
- hInstance_Tx = LVM_NULL;
- LVVE_Status = LVVE_Tx_GetInstanceHandle( &hInstance_Tx,
- &MemTab_Tx,
- &InstParams_Tx );
- if( LVVE_Status != LVVE_SUCCESS )
- {
- // Handle Errors
- }
-\endcode
-
-*/
-
-LVVE_ReturnStatus_en LVVE_Tx_GetInstanceHandle(LVVE_Tx_Handle_t *phInstance,
- LVM_MemoryTable_st *pMemoryTable,
- LVVE_Tx_InstanceParams_st *pInstanceParams);
-
-/**
-@brief Created handle to the instance of the LVVE_Rx module
-
-This functions is used to create LVVE_Rx instance. All control parameters are set to invalid values.
-The memory table pointed to by pMemoryTable must be created. If the memory table is not correct then an error will be returned.
-The memory requirements of the Rx and Rx unit are dependent on the instance parameters supplied and so the
-instance parameters provided in this function call must be the same as those used in the @ref LVVE_Rx_GetMemoryTable function calls
-used for memory allocation.
-
-@pre The memory records tables defined by pMemoryTable contains pointers to non-overlapping buffers
-with the size as requested via the prior calls to the LVVE_Rx_GetMemoryTable functions.
-@pre The initialization parameter structure defined by pInstParams is identical to the structure passed
-to prior call to @ref LVVE_Rx_GetMemoryTable functions.
-
-
-@param phInstance Pointer to the instance handle.
-@param pMemoryTable Pointer to the memory definition table.
-@param pInstanceParams Pointer to the instance parameters.
-
-@return LVVE_SUCCESS when creation was successful
-@return LVVE_NULLADDRESS When phInstance or pMemoryTable or pInstanceParams is NULL.
-@return LVVE_NULLADDRESS when one or more of the memory regions with a non-zero size has been
- given a NULL base address pointer.
-@return LVVE_OUTOFRANGE when pInstParams contains parameters out of the excepted range
-
-@ingroup LVVE_Rx
-
- LVVE_Rx_GetInstanceHandle Example:
-
-The following example shows how to initialize LVVE_Rx_GetInstanceHandle.
-
-\code
- hInstance_Rx = LVM_NULL;
- LVVE_Status = LVVE_Rx_GetInstanceHandle( &hInstance_Rx,
- &MemTab_Rx,
- &InstParams_Rx );
- if( LVVE_Status != LVVE_SUCCESS )
- {
- // Handle Errors
- }
-\endcode
-
-*/
-
-LVVE_ReturnStatus_en LVVE_Rx_GetInstanceHandle(LVVE_Rx_Handle_t *phInstance,
- LVM_MemoryTable_st *pMemoryTable,
- LVVE_Rx_InstanceParams_st *pInstanceParams);
-
-/**
-@brief Retrieve the current LVVE_Tx control parameters.
-
-This function copies the control parameters from the LVVE_Tx into the supplied
-parameter structure, pControlParams. The values returned are the values given in the last successful
-call to the LVVE_Tx_SetControlParameters function.
-
-@param hInstance Instance handle
-@param pControlParams Pointer to the control parameters
-
-@pre hInstance should be valid handle.
-@pre pControlParams should be allocated by caller.
-@post pControlParams will be filled with the values given in the last successful call to
- the LVVE_Tx_SetControlParameters function. They are not necessarily the values
- used in the last call to the LVVE_Tx_Process function, this will be the case if
- LVVE_Tx_SetControlParameters has been called since the last call to LVVE_Tx_Process.
-
-@return LVVE_SUCCESS Succeeded
-@return LVVE_NULLADDRESS When hInstance or pControlParams is NULL
-
-@note The LVVE_Tx_GetControlParameters function can be called at any time during processing.
-
-@ingroup LVVE_Tx
-
-LVVE_Tx_GetControlParameters Example:
-
-The following example shows how to get different control parameters for the LVVE_Tx instance.
-
-\code
- LVVE_Status = LVVE_Tx_GetControlParameters( &hInstance_Tx,
- &ControlParams_Tx );
-
- if( LVVE_Status != LVVE_SUCCESS )
- {
- // Handle Errors
- }
-\endcode
-
-*/
-
-LVVE_ReturnStatus_en LVVE_Tx_GetControlParameters( LVVE_Tx_Handle_t hInstance,
- LVVE_Tx_ControlParams_st *pControlParams);
-
-/**
-@brief Retrieve the current LVVE_Rx control parameters.
-
-This function copies the control parameters from the LVVE_Tx into the supplied
-parameter structure, pControlParams. The values returned are the values given in the last successful
-call to the LVVE_Rx_SetControlParameters function.
-
-@param hInstance Instance handle
-@param pControlParams Pointer to the control parameters
-
-@pre hInstance should be valid handle.
-@pre pControlParams should be allocated by caller.
-@post pControlParams will be filled with the values given in the last successful call to
- the LVVE_Rx_SetControlParameters function. They are not necessarily the values
- used in the last call to the LVVE_Rx_Process function, this will be the case if
- LVVE_Tx_SetControlParameters has been called since the last call to LVVE_Tx_Process.
-
-@return LVVE_SUCCESS Succeeded
-@return LVVE_NULLADDRESS When hInstance or pControlParams is NULL
-
-@note The LVVE_Rx_GetControlParameters function can be called at any time during processing.
-
-@ingroup LVVE_Rx
-
-LVVE_Rx_GetControlParameters Example:
-
-The following example shows how to get different control parameters for the LVVE_Rx instance.
-
-\code
- LVVE_Status = LVVE_Rx_GetControlParameters( &hInstance_Rx,
- &ControlParams_Rx );
-
- if( LVVE_Status != LVVE_SUCCESS )
- {
- // Handle Errors
- }
-\endcode
-
-*/
-
-LVVE_ReturnStatus_en LVVE_Rx_GetControlParameters( LVVE_Rx_Handle_t hInstance,
- LVVE_Rx_ControlParams_st *pControlParams);
-
-/**
-@brief Sets or changes the LVVE_Tx module parameters using C-strcuture.
-
-This function takes the new set of parameters and makes a local copy within
-LVVE_Tx but the parameters are only applied on the next call of the LVVE_Tx_Process
-function. When a parameter is unchanged no action is taken. This function can
-be called at any time during the processing, even when the LVVE_Tx_Process function
-is running. LifeVibes™ VoiceExperience control parameters can be set using two methods.
-Control Parameters can be populated in a \"C\" style structure (as explained in example) and then sent to the library.
-Another method is to populate control parameters in a byte array called Preset Buffer, see @ref LVVE_Tx_SetPreset for example usage.
-
-@param hInstance Instance Handle
-@param pNewParams Pointer to a parameter structure
-
-@pre hInstance should be valid handle.
-
-@return LVVE_SUCCESS Succeeded
-@return LVVE_NULLADDRESS When hInstance or pNewParams is NULL
-@return LVVE_OUTOFRANGE When pNewParams contains parameters of activated modules that are out of the excepted range
-@return LVVE_INVALID_ALGORITHM_CONFIGURATION When two mutual exclusive algorithms are both configured ON at run-time
- (e.g., NoiseVoid and HandsFree)
-
-
-@note This function may be interrupted by the LVVE_Tx_Process function
-
-@ingroup LVVE_Tx
-
-LVVE_Tx_GetControlParameters: Setting Control Parameters using C-Style structure Example:
-
-The following example shows how to set different control parameters for the LVVE_Tx instance.
-
-\code
- LVVE_Status = LVVE_Tx_GetControlParameters( &hInstance_Tx,
- &ControlParams_Tx );
-
- if( LVVE_Status != LVVE_SUCCESS )
- {
- // Handle Errors
- }
-
- Change Parameters as required
- ControlParams_Tx.VOL_Gain = VOL_TABLE[i];
- ControlParams_Tx.VC_ControlParams = VC_TABLE[i];
-
- // Update instance with new parameters
- LVVE_Status = LVVE_Tx_SetControlParameters( &hInstance_Tx,
- &ControlParams_Tx );
-
- if( LVVE_Status != LVVE_SUCCESS )
- {
- // Handle Errors
- }
-\endcode
-
-*/
-
-LVVE_ReturnStatus_en LVVE_Tx_SetControlParameters( LVVE_Tx_Handle_t hInstance,
- const LVVE_Tx_ControlParams_st * const pNewParams);
-
-/**
-@brief Sets or changes the LVVE_Rx module parameters using C-structure.
-
-This function takes the new set of parameters and makes a local copy within
-LVVE_Rx but the parameters are only applied on the next call of the LVVE_Rx_Process
-function. When a parameter is unchanged no action is taken. This function can
-be called at any time during the processing, even when the LVVE_Rx_Process function
-is running. LifeVibes™ VoiceExperience control parameters can be set using two methods.
-Control Parameters can be populated in a \"C\" style structure (as explained in example) and then sent to the library.
-Another method is to populate control parameters in a byte array called Preset Buffer, see @ref LVVE_Rx_SetPreset for example usage.
-
-@param hInstance Instance Handle
-@param pNewParams Pointer to a parameter structure
-
-@pre hInstance should be valid handle.
-
-@return LVVE_SUCCESS Succeeded
-@return LVVE_NULLADDRESS When hInstance or pNewParams is NULL
-@return LVVE_OUTOFRANGE When pNewParams contains parameters of activated modules that are out of the excepted range
-@return LVVE_INVALID_ALGORITHM_CONFIGURATION When two mutual exclusive algorithms are both configured ON at run-time
- (e.g., NoiseVoid and HandsFree)
-
-
-@note This function may be interrupted by the LVVE_Rx_Process function
-
-@ingroup LVVE_Rx
-
-LVVE_Rx_GetControlParameters: Setting Control Parameters using C-Style structure Example:
-
-The following example shows how to set different control parameters for the LVVE_Rx instance.
-
-\code
- LVVE_Status = LVVE_Rx_GetControlParameters( &hInstance_Rx,
- &ControlParams_Rx );
-
- if( LVVE_Status != LVVE_SUCCESS )
- {
- // Handle Errors
- }
-
- Change Parameters as required
- ControlParams_Rx.VOL_Gain = VOL_TABLE[i];
- ControlParams_Rx.VC_ControlParams = VC_TABLE[i];
-
- // Update instance with new parameters
- LVVE_Status = LVVE_Rx_SetControlParameters( &hInstance_Rx,
- &ControlParams_Rx );
-
- if( LVVE_Status != LVVE_SUCCESS )
- {
- // Handle Errors
- }
-\endcode
-
-*/
-LVVE_ReturnStatus_en LVVE_Rx_SetControlParameters( LVVE_Rx_Handle_t hInstance,
- const LVVE_Rx_ControlParams_st * const pNewParams);
-
-/**
-@brief Retrieve the current LVVE_Tx status parameters.
-
-This function copies internal status variables into the supplied status
-parameter structures.
-
-@param hInstance Instance handle
-@param pStatusParams Pointer to the status parameters
-
-@pre hInstance should be valid handle.
-@pre pStatusParams should be allocated by caller.
-@post pStatusParams will be filled with the latest status values of LVVE_Tx.
-
-@return LVVE_SUCCESS Succeeded
-@return LVVE_NULLADDRESS When hInstance or pStatusParams is NULL
-
-@note The LVVE_Tx_GetStatusParameters function can be called at any time during processing.
-This function can run in different threads than the process functions.
-
-
-@ingroup LVVE_Tx
-
-LVVE_Tx_GetStatusParameters: Get Internal Algorithm Status Attributes Example:
-The following example shows how to use LVVE_Tx_GetStatusParameters function call.
-
-\code
- LVVE_Tx_StatusParams_st Tx_Monitor;
- Status=LVVE_Tx_GetStatusParameters(hInstance_Tx,&Tx_Monitor);
- if (Status != LVVE_SUCCESS )
- {
- // Error Handling
- }
-\endcode
-
-*/
-
-LVVE_ReturnStatus_en LVVE_Tx_GetStatusParameters( LVVE_Tx_Handle_t hInstance,
- LVVE_Tx_StatusParams_st *pStatusParams);
-
-/**
-@brief Retrieve the current LVVE_Rx status parameters.
-
-This function copies internal status variables into the supplied status
-parameter structures.
-
-@param hInstance Instance handle
-@param pStatusParams Pointer to the status parameters
-
-@pre hInstance should be valid handle.
-@pre pStatusParams should be allocated by caller.
-@post pStatusParams will be filled with the latest status values of LVVE_Rx.
-
-@return LVVE_SUCCESS Succeeded
-@return LVVE_NULLADDRESS When hInstance or pStatusParams is NULL
-
-@note The LVVE_Rx_GetStatusParameters function can be called at any time during processing.
-This function can run in different threads than the process functions.
-
-@ingroup LVVE_Rx
-
-LVVE_Rx_GetStatusParameters: Get Internal Algorithm Status Attributes Example:
-The following example shows how to use LVVE_Rx_GetStatusParameters function call.
-
-\code
- LVVE_Rx_StatusParams_st Rx_Monitor;
- Status=LVVE_Rx_GetStatusParameters(hInstance_Rx,&Rx_Monitor);
- if (Status != LVVE_SUCCESS )
- {
- // Error Handling
- }
-\endcode
-
-*/
-
-LVVE_ReturnStatus_en LVVE_Rx_GetStatusParameters( LVVE_Rx_Handle_t hInstance,
- LVVE_Rx_StatusParams_st *pStatusParams);
-
-/**
-@brief Resets the LVVE_Tx module.
-
-The LVVE_Tx module instance memory contains data which depend on the input
-samples that have been processed previously. These data are buffers
-used for filter tabs and delay lines and also adaptive coefficients of the
-algorithm. The LVVE_Tx_ResetInstance function resets this input dependent data.
-
-The LVVE_Tx_ResetInstance function should be called whenever there is a
-discontinuity in the input audio stream. A discontinuity means that the
-current block of samples is not contiguous with the previous block of samples.
-Examples are
-@li Calling the LVVE_Tx_Process function after a period of inactivity
-@li Buffer underrun or overflow in the audio driver
-The LVVE_ResetInstance function of the Tx and/or Tx Unit should only be called when absolutely necessary as re-adaptation
-of internal algorithms will occur.
-The LVVE_ResetInstance functions can be called at any time, even when LVVE_Process is running. The reset will be
-applied at the start of the next call of the LVVE_Tx_Process function.
-
-
-@param hInstance Instance Handle
-@param pResetParams Reset Type
-
-@pre hInstance should be valid handle.
-
-@post Depending on the ResetType value, the LVVE_Tx_ResetInstance function can
-perform:
-@li Soft reset: partial reset of internal buffers and adaptive behavior. To be used for very short
-interruption or discontinuity, e.g., buffer under-run or overflow in the audio driver influencing the echo path delay.
-@li Hard reset: full reset of all internal buffers and adaptive behavior. To be used for long
-interruption or discontinuity, e.g., before calling the LVVE_Tx_Process function after a long period of inactivity
-in between calls in case instance was not freed.
-
-@return LVVE_SUCCESS Succeeded
-@return LVVE_NULLADDRESS When hInstance or pResetParams is NULL
-@return LVVE_OUTOFRANGE When content of pResetParams is invalid
-
-@note This function may be interrupted by the LVVE_Tx_Process function
-
-@ingroup LVVE_Tx
-
-LVVE_Tx_ResetInstance Example:
-
-The following example shows how to use LVVE_Tx_ResetInstance.
-\code
- LVVE_Status = LVVE_Tx_ResetInstance(hInstance, pResetParams);
-
- if (LVVE_Status != LVVE_SUCCESS)
- {
- // Handle LVVE_Tx_ResetInstance errors
- }
-\endcode
-
-*/
-LVVE_ReturnStatus_en LVVE_Tx_ResetInstance( LVVE_Tx_Handle_t hInstance,
- LVVE_Tx_ResetParams_st *pResetParams );
-
-/**
-@brief Resets the LVVE_Rx module.
-
-The LVVE_Rx module instance memory contains data which depend on the input
-samples that have been processed previously. These data are buffers
-used for filter tabs and delay lines and also adaptive coefficients of the
-algorithm. The LVVE_Rx_ResetInstance function resets this input dependent data.
-
-The LVVE_Rx_ResetInstance function should be called whenever there is a
-discontinuity in the input audio stream. A discontinuity means that the
-current block of samples is not contiguous with the previous block of samples.
-Examples are
-@li Calling the LVVE_Rx_Process function after a period of inactivity
-@li Buffer underrun or overflow in the audio driver
-The LVVE_ResetInstance function of the Rx and/or Tx Unit should only be called when absolutely necessary as re-adaptation
-of internal algorithms will occur.
-The LVVE_ResetInstance functions can be called at any time, even when LVVE_Process is running. The reset will be
-applied at the start of the next call of the LVVE_Rx_Process function.
-
-
-@param hInstance Instance Handle
-@param pResetParams Reset Type
-
-@pre hInstance should be valid handle.
-
-@post Depending on the ResetType value, the LVVE_Rx_ResetInstance function can
-perform:
-@li Soft reset: partial reset of internal buffers and adaptive behavior. To be used for very short
-interruption or discontinuity, e.g., buffer under-run or overflow in the audio driver influencing the echo path delay.
-@li Hard reset: full reset of all internal buffers and adaptive behavior. To be used for long
-interruption or discontinuity, e.g., before calling the LVVE_Rx_Process function after a long period of inactivity
-in between calls in case instance was not freed.
-
-@return LVVE_SUCCESS Succeeded
-@return LVVE_NULLADDRESS When hInstance or pResetParams is NULL
-@return LVVE_OUTOFRANGE When content of pResetParams is invalid
-
-@note This function may be interrupted by the LVVE_Rx_Process function
-
-@ingroup LVVE_Rx
-
-LVVE_Rx_ResetInstance Example:
-
-The following example shows how to use LVVE_Rx_ResetInstance.
-\code
- LVVE_Status = LVVE_Rx_ResetInstance(hInstance, pResetParams);
-
- if (LVVE_Status != LVVE_SUCCESS)
- {
- // Handle LVVE_Rx_ResetInstance errors
- }
-\endcode
-
-*/
-LVVE_ReturnStatus_en LVVE_Rx_ResetInstance( LVVE_Rx_Handle_t hInstance,
- LVVE_Rx_ResetParams_st *pResetParams );
-
-/**
-@brief Processes a block of samples by the LVVE_Tx module.
-
-This function processes the block of samples as configured with the current
-parameter settings. If new parameters have been given since the last call to
-LVVE_Tx_Process then these will be applied at the beginning of this process call.
-
-@param hInstance Instance Handle
-@param pInDataMic0 Pointer to the input speech sample buffer (pimary microphone).
-@param pInDataMic1 Pointer to the input speech sample buffer (secondary microphone).
-@param pRefData Pointer to the input farend reference buffer.
-@param pNoiseData Pointer to the output noise reference buffer.
-@param pOutData Pointer to the output sample buffer.
-@param NumSamples The number of samples to process should be integer multiple(n) of values in table.
- It is a frquency dependant paramter.
-<table border>
- <tr>
- <td><b>Unit</b></td>
- <td><b>Q format</b></td>
- <td><b>Data Range</b></td>
- <td><b>Default Values</b></td>
- </tr>
- <tr>
- <td><b>Samples</b></td>
- <td><b>Q16.0</b></td>
- <td>nx80 for 8kHz</td>
- <td>80 for 8kHz</td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td>nx160 for 16kHz</td>
- <td>160 for 16kHz</td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td>nx240 for 24kHz</td>
- <td>240 for 24kHz</td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td>nx320 for 32kHz</td>
- <td>320 for 32kHz</td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td>nx480 for 48kHz</td>
- <td>480 for 48kHz</td>
- </tr>
-</table>
-
-@pre hInstance should be valid handle.
-@pre LVVE_Tx_SetControlParameters should be called successfully once before.
-the first call to LVVE_Tx_Process
-@pre pInData is filled with the input samples to process.
-
-@post pOutData contains the processed samples.
-
-@return LVVE_SUCCESS Succeeded
-@return LVVE_NULLADDRESS When hInstance, pInData or pOutData is NULL
-@return LVVE_INVALIDNUMSAMPLES When the NumSamples is outside the allowed
-range
-@return LVVE_INVALID_STATE_CONFIGURATION When invalid state of the algorithm found
-
-@ingroup LVVE_Tx
-
-LVVE_Tx_Process Example:
-
-The following example shows how to use LVVE_Tx_Process function call
-
-\code
- // Tx Processing
- LVVE_STATUS = LVVE_Tx_Process( hInstance_Tx,
- pInData_Tx0,
- pInData_Tx1,
- pInData_Ref,
- pNoiseData,
- pOutData_Tx,
- NumSamples );
- if (LVVE_STATUS != LVVE_SUCCESS )
- {
- // Error Handling
- }
-\endcode
-
-*/
-LVVE_ReturnStatus_en LVVE_Tx_Process( LVVE_Tx_Handle_t hInstance,
- const LVM_INT16 *pInDataMic0,
- const LVM_INT16 *pInDataMic1,
- const LVM_INT16 *pRefData,
- LVM_INT16 *pNoiseData,
- LVM_INT16 *pOutData,
- const LVM_UINT16 NumSamples);
-
-/**
-@brief Processes a block of samples by the LVVE_Rx module.
-
-This function processes the block of samples as configured with the current
-parameter settings. If new parameters have been given since the last call to
-LVVE_Rx_Process then these will be applied at the beginning of this process call.
-
-@param hInstance Instance Handle
-@param pInData Pointer to the input sample buffer
-@param pNoiseData Pointer to the input noise buffer (for LVVC only). Pointer to the input noise reference buffer.
- The size of this buffer depends on the number of samples to process: NoiseDataBufferSize = 2 (size of the input buffer in ms) / 10ms
- i.e. for 20 ms input buffer, the NoiseData buffer size should be 4.
-
-@param pOutData Pointer to the output sample buffer
-@param NumSamples The number of samples to process should be integer multiple(n) of values in table.
- It is a frquency dependant paramter.
-<table border>
- <tr>
- <td><b>Unit</b></td>
- <td><b>Q format</b></td>
- <td><b>Data Range</b></td>
- <td><b>Default Values</b></td>
- </tr>
- <tr>
- <td><b>Samples</b></td>
- <td><b>Q16.0</b></td>
- <td>nx80 for 8kHz</td>
- <td>80 for 8kHz</td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td>nx160 for 16kHz</td>
- <td>160 for 16kHz</td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td>nx240 for 24kHz</td>
- <td>240 for 24kHz</td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td>nx320 for 32kHz</td>
- <td>320 for 32kHz</td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td>nx480 for 48kHz</td>
- <td>480 for 48kHz</td>
- </tr>
-</table>
-
-@pre hInstance should be valid handle.
-@pre LVVE_Rx_SetControlParameters should be called successfully once before.
-the first call to LVVE_Rx_Process
-@pre pInData is filled with the input samples to process.
-
-@post pOutData contains the processed samples.
-
-@return LVVE_SUCCESS Succeeded
-@return LVVE_NULLADDRESS When hInstance, pInData or pOutData is NULL
-@return LVVE_INVALIDNUMSAMPLES When the NumSamples is outside the allowed
-range
-@return LVVE_INVALID_STATE_CONFIGURATION When invalid state of the algorithm found
-
-@ingroup LVVE_Rx
-
-LVVE_Rx_Process Example:
-The following example shows how to use LVVE_Rx_Process function call.
-
-\code
- // Rx Processing
- LVVE_STATUS = LVVE_Rx_Process( hInstance_Rx,
- pInData_Rx,
- pNoiseData,
- pOutData_Rx,
- NumSamples );
-
- if (LVVE_STATUS != LVVE_SUCCESS )
- {
- // Error Handling
- }
-\endcode
-
-*/
-
-LVVE_ReturnStatus_en LVVE_Rx_Process( LVVE_Rx_Handle_t hInstance,
- const LVM_INT16 *pInData,
- const LVM_INT16 *pNoiseData,
- LVM_INT16 *pOutData,
- const LVM_UINT16 NumSamples);
-
-
-/**
-\brief get the version number of current of LVVE library.
-
-This function returns, to host, current version of the LVVE library
-@param pVersion version info
-
-@return LVVE_SUCCESS Succeeded
-@return LVVE_NULLADDRESS When one of hInstance, pInData or pOutData is NULL
-
-LVVE_GetVersionInfot Example:
-
-\code
- //Get the version information
- LVVE_VersionInfo VersionInfo;
- LVVE_GetVersionInfo(&VersionInfo);
-\endcode
-
-*/
-LVVE_ReturnStatus_en LVVE_GetVersionInfo( LVVE_VersionInfo *pVersion );
-
-/**
-@brief Sets or changes the LVVE_Tx module parameters through a Preset Buffer.
-
-Sets or changes the LVVE_Tx module parameters through a Preset Buffer. To set parameters using \"C\" structure see
-@ref LVVE_Tx_SetControlParameters
-This function takes the new set of parameters and makes a local copy within the
-LVVE_Tx module but the parameters are only applied on the next call of the LVVE_Tx_Process
-function. When no parameters are changed, no action is taken. This function can
-be called at any time during the processing, even when the LVVE_Tx_Process function
-is running.
-The new parameters are supplied in the form a @ref LVVE_Tx_Preset_t (Byte array).
-The length of the byte array shall be a multiple of @ref LVVE_TX_PRESET_LENGTH.
-
-@param hInstance Instance Handle
-@param pPreset Pointer to a Preset buffer
-@param PresetLength Length in bytes of the Preset buffer
-@param VolumeIndex Volume index to be selected from the Preset buffer
-
-@pre hInstance should be valid handle.
-
-@return @ref LVVE_SUCCESS Succeeded
-@return @ref LVVE_NULLADDRESS When hInstance or pPreset is NULL
-@return @ref LVVE_OUTOFRANGE When PresetLength or any of the new parameters is out of range
-@return @ref LVVE_INVALID_ALGORITHM_CONFIGURATION When mutually exclusive algorithms are enabled in the parameters at the same time
-@return @ref LVVE_PRESET_INVALID_BUFFER_LENGTH When the length of the input buffer is smaller than LVVE_TX_PRESET_LENGTH
-@return @ref LVVE_PRESET_INVALID_VOLUME_INDEX When the volume index exceeds the buffer content
-@return @ref LVVE_PRESET_INVALID_BUFFER_VERSION When the version of the format of the preset buffer does not match the version of the library
-@return @ref LVVE_PRESET_INVALID_BASELINE_VERSION When the baseline version of the provided preset buffer and the baseline version of the library do not match. Is the preset generated for this library ?
-@return @ref LVVE_PRESET_INVALID_MASK When the algorithm mask of the provided preset buffer and the algorithm mask of the library do not match. Is the preset generated for this library ?
-@return @ref LVVE_PRESET_INVALID_SAMPLE_RATE When the sample rate @ref LVM_Fs_en of the preset does not match the sample rate of the hInstance
-@return @ref LVVE_PRESET_INVALID_LVWIREFORMAT_MESSAGEID When the LVWireformat message id @ref LVVIDHeader_MessageID_en of the preset is not valid
-
-@note This function may be interrupted by the LVVE_Tx_Process function
-
-@ingroup LVVE_Tx
-LVVE_Tx_SetPreset: Setting Control Parameters using Preset Buffer Example:
-
-The following example shows how to set different control parameters for the LVVE_Tx instance using Preset Buffer.
-
-\code
- LVM_CHAR LVVE_Tx_Preset_Buffer[LVVE_TX_PRESET_LENGTH];
- LVVE_Tx_Preset_t const LVVE_Tx_Preset = LVVE_Tx_Preset_Buffer;
-
- FILE *PRESETFILE_Tx;
- LVM_INT32 ReadBytes = 0;
-
- PRESETFILE_Tx=fopen(filename, "rb" );
-
- // Read the preset buffer
- ReadBytes = fread( LVVE_Tx_Preset_Buffer,
- sizeof(LVM_CHAR),
- (LVM_UINT32)LVVE_TX_PRESET_LENGTH,
- PRESETFILE_Tx );
-
- fclose(PRESETFILE_Tx);
-
- // Update instance with new preset buffer
- LVVE_Status = LVVE_Tx_SetPreset( hInstance_Tx,
- LVVE_Tx_Preset,
- ReadBytes,
- 0);
-
- if ( LVVE_Status != LVVE_SUCCESS )
- {
- // Handle Errors
- }
-\endcode
-
-
-
-*/
-LVVE_ReturnStatus_en LVVE_Tx_SetPreset(LVVE_Tx_Handle_t hInstance,
- const LVVE_Tx_Preset_t pPreset,
- LVM_UINT32 PresetLength,
- LVM_UINT16 VolumeIndex);
-
-/**
-@brief Sets or changes the LVVE_Rx module parameters through a Preset Buffer
-
-Sets or changes the LVVE_Rx module parameters through a Preset Buffer. To set parameters using \"C\" structure see
-@ref LVVE_Rx_SetControlParameters
-This function takes the new set of parameters and makes a local copy within the
-LVVE_Rx module but the parameters are only applied on the next call of the LVVE_Rx_Process
-function. When no parameters are changed, no action is taken. This function can
-be called at any time during the processing, even when the LVVE_Rx_Process function
-is running.
-The new parameters are supplied in the form a @ref LVVE_Rx_Preset_t (Byte array).
-The length of the byte array shall be a multiple of @ref LVVE_RX_PRESET_LENGTH.
-
-@param hInstance Instance Handle
-@param pPreset Pointer to a Preset buffer
-@param PresetLength Length in bytes of the Preset buffer
-@param VolumeIndex Volume index to be selected from the Preset buffer
-
-@pre hInstance should be valid handle.
-
-@return @ref LVVE_SUCCESS Succeeded
-@return @ref LVVE_NULLADDRESS When hInstance or pPreset is NULL
-@return @ref LVVE_OUTOFRANGE When PresetLength or any of the new parameters is out of range
-@return @ref LVVE_INVALID_ALGORITHM_CONFIGURATION When mutually exclusive algorithms are enabled in the parameters at the same time
-@return @ref LVVE_PRESET_INVALID_BUFFER_LENGTH When the length of the input buffer is smaller than LVVE_RX_PRESET_LENGTH
-@return @ref LVVE_PRESET_INVALID_VOLUME_INDEX When the volume index exceeds the buffer content
-@return @ref LVVE_PRESET_INVALID_BUFFER_VERSION When the version of the format of the preset buffer does not match the version of the library
-@return @ref LVVE_PRESET_INVALID_BASELINE_VERSION When the baseline version of the provided preset buffer and the baseline version of the library do not match. Is the preset generated for this library ?
-@return @ref LVVE_PRESET_INVALID_MASK When the algorithm mask of the provided preset buffer and the algorithm mask of the library do not match. Is the preset generated for this library ?
-@return @ref LVVE_PRESET_INVALID_SAMPLE_RATE When the sample rate @ref LVM_Fs_en of the preset does not match the sample rate of the hInstance
-@return @ref LVVE_PRESET_INVALID_LVWIREFORMAT_MESSAGEID When the LVWireformat message id @ref LVVIDHeader_MessageID_en of the preset is not valid
-
-@note This function may be interrupted by the LVVE_Rx_Process function
-
-@ingroup LVVE_Rx
-
-LVVE_Rx_SetPreset: Setting Control Parameters using Preset Buffer Example:
-
-The following example shows how to set different control parameters for the LVVE_Rx instance using Preset Buffer.
-
-\code
- #define NUM_VOLUMES (5)
- LVM_CHAR LVVE_Rx_Preset_Buffer[NUM_VOLUMES*LVVE_RX_PRESET_LENGTH];
- LVVE_Rx_Preset_t const LVVE_Rx_Preset = LVVE_Rx_Preset_Buffer;
-
- FILE *PRESETFILE_Rx;
- LVM_INT32 ReadBytes = 0;
- LVM_UINT16 VolumeIndex = 3;
-
- PRESETFILE_Rx=fopen(filename, "rb" );
-
- // Read the preset buffer
- ReadBytes = fread( LVVE_Rx_Preset_Buffer,
- sizeof(LVM_CHAR),
- (LVM_UINT32)(NUM_VOLUMES*LVVE_RX_PRESET_LENGTH),
- PRESETFILE_Rx );
-
- fclose(PRESETFILE_Rx);
-
- // Update instance with new preset buffer
- LVVE_Status = LVVE_Rx_SetPreset( hInstance_Rx,
- LVVE_Rx_Preset,
- ReadBytes,
- VolumeIndex);
-
- if ( LVVE_Status != LVVE_SUCCESS )
- {
- // Handle Errors
- }
-\endcode
-
-*/
-LVVE_ReturnStatus_en LVVE_Rx_SetPreset(LVVE_Rx_Handle_t hInstance,
- const LVVE_Rx_Preset_t pPreset,
- LVM_UINT32 PresetLength,
- LVM_UINT16 VolumeIndex);
-
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#endif /* __LVVE_H__ */
-
-/* End of file */
diff --git a/Uboot/cp/ps/driver/src/chipsets/src/audio_base/nxp/uclinux/LVVE_VID.h b/Uboot/cp/ps/driver/src/chipsets/src/audio_base/nxp/uclinux/LVVE_VID.h
deleted file mode 100755
index 79047a8..0000000
--- a/Uboot/cp/ps/driver/src/chipsets/src/audio_base/nxp/uclinux/LVVE_VID.h
+++ /dev/null
@@ -1,8413 +0,0 @@
-/****************************************************************************************/
-/* Copyright (c) 2004-2016 NXP Software. All rights are reserved. */
-/* Reproduction in whole or in part is prohibited without the prior */
-/* written consent of the copyright owner. */
-/* */
-/* This software and any compilation or derivative thereof is and */
-/* shall remain the proprietary information of NXP Software and is */
-/* highly confidential in nature. Any and all use hereof is restricted */
-/* and is subject to the terms and conditions set forth in the */
-/* software license agreement concluded with NXP Software. */
-/* */
-/* Under no circumstances is this software or any derivative thereof */
-/* to be combined with any Open Source Software in any way or */
-/* licensed under any Open License Terms without the express prior */
-/* written permission of NXP Software. */
-/* */
-/* For the purpose of this clause, the term Open Source Software means */
-/* any software that is licensed under Open License Terms. Open */
-/* License Terms means terms in any license that require as a */
-/* condition of use, modification and/or distribution of a work */
-/* */
-/* 1. the making available of source code or other materials */
-/* preferred for modification, or */
-/* */
-/* 2. the granting of permission for creating derivative */
-/* works, or */
-/* */
-/* 3. the reproduction of certain notices or license terms */
-/* in derivative works or accompanying documentation, or */
-/* */
-/* 4. the granting of a royalty-free license to any party */
-/* under Intellectual Property Rights */
-/* */
-/* regarding the work and/or any work that contains, is combined with, */
-/* requires or otherwise is based on the work. */
-/* */
-/* This software is provided for ease of recompilation only. */
-/* Modification and reverse engineering of this software are strictly */
-/* prohibited. */
-/* */
-/****************************************************************************************/
-
-/****************************************************************************************/
-/* */
-/* $Author: nxp65285 $*/
-/* $Revision: 49390 $*/
-/* $Date: 2013-10-16 18:34:35 +0530 (Wed, 16 Oct 2013) $*/
-/* */
-/****************************************************************************************/
-
-/** @file
- * Header file for the application layer interface of the REL_LVVE_HF_NV1_VC_AGC_RX_DRC_RX module
- *
- * The suffix VID in header file stands for Voice Interface Definition
- * This files includes all definitions, types, and structures required by the calling
- * layer. Public functions are defined in the protoypes header files.
- * All other types, structures and functions are private.
- */
-
-#ifndef __REL_LVVE_HF_NV1_VC_AGC_RX_DRC_RX_VIDPP_H__
-#define __REL_LVVE_HF_NV1_VC_AGC_RX_DRC_RX_VIDPP_H__
-
-#ifdef __cplusplus
-extern "C" {
-#endif /* __cplusplus */
-
-/****************************************************************************************/
-/* */
-/* Includes */
-/* */
-/****************************************************************************************/
-#include "LVC_Types.h"
-
-/****************************************************************************************/
-/* */
-/* Definitions */
-/* */
-/****************************************************************************************/
-/**
-<table border>
- <tr>
- <td><b>Name</b></td>
- <td><b>Value</b></td>
- <td><b>Description</b></td>
- </tr>
- <tr>
- <td>@ref LVVIDHEADER_LVVE_RX_LVFENS_MASK1</td>
- <td>1</td>
- <td>Far End Noise Suppression is present in the LVVE_Rx</td>
- </tr>
- <tr>
- <td>@ref LVVIDHEADER_LVVE_RX_HPF_MASK1</td>
- <td>4</td>
- <td>High Pass Filter is present in the LVVE_Rx</td>
- </tr>
- <tr>
- <td>@ref LVVIDHEADER_LVVE_RX_LVNG_MASK1</td>
- <td>16</td>
- <td>Noise Gate is present in the LVVE_Rx</td>
- </tr>
- <tr>
- <td>@ref LVVIDHEADER_LVVE_RX_EQ_MASK1</td>
- <td>64</td>
- <td>Equalizer is present in the LVVE_Rx</td>
- </tr>
- <tr>
- <td>@ref LVVIDHEADER_LVVE_RX_AGC_MASK1</td>
- <td>128</td>
- <td>Automatic Gain Control is present in the LVVE_Rx</td>
- </tr>
- <tr>
- <td>@ref LVVIDHEADER_LVVE_RX_DRC_MASK1</td>
- <td>256</td>
- <td>Dynamic Range Control is present in the LVVE_Rx</td>
- </tr>
- <tr>
- <td>@ref LVVIDHEADER_LVVE_RX_VOL_MASK1</td>
- <td>512</td>
- <td>Volume Control is present in the LVVE_Rx</td>
- </tr>
- <tr>
- <td>@ref LVVIDHEADER_LVVE_RX_LVVC_MASK1</td>
- <td>1024</td>
- <td>VoiceClarity is present in the LVVE_Rx</td>
- </tr>
-</table> */
-typedef LVM_UINT16 LVVIDHeader_LVVE_Rx_Mask1_bm;
-/**
-* @def LVVIDHeader_LVVE_Rx_LVFENS_MASK1
-* Far End Noise Suppression is present in the LVVE_Rx
-* @see LVVIDHeader_LVVE_Rx_Mask1_bm
-*/
-#define LVVIDHEADER_LVVE_RX_LVFENS_MASK1 ((LVVIDHeader_LVVE_Rx_Mask1_bm)1)
-/**
-* @def LVVIDHeader_LVVE_Rx_HPF_MASK1
-* High Pass Filter is present in the LVVE_Rx
-* @see LVVIDHeader_LVVE_Rx_Mask1_bm
-*/
-#define LVVIDHEADER_LVVE_RX_HPF_MASK1 ((LVVIDHeader_LVVE_Rx_Mask1_bm)4)
-/**
-* @def LVVIDHeader_LVVE_Rx_LVNG_MASK1
-* Noise Gate is present in the LVVE_Rx
-* @see LVVIDHeader_LVVE_Rx_Mask1_bm
-*/
-#define LVVIDHEADER_LVVE_RX_LVNG_MASK1 ((LVVIDHeader_LVVE_Rx_Mask1_bm)16)
-/**
-* @def LVVIDHeader_LVVE_Rx_EQ_MASK1
-* Equalizer is present in the LVVE_Rx
-* @see LVVIDHeader_LVVE_Rx_Mask1_bm
-*/
-#define LVVIDHEADER_LVVE_RX_EQ_MASK1 ((LVVIDHeader_LVVE_Rx_Mask1_bm)64)
-/**
-* @def LVVIDHeader_LVVE_Rx_AGC_MASK1
-* Automatic Gain Control is present in the LVVE_Rx
-* @see LVVIDHeader_LVVE_Rx_Mask1_bm
-*/
-#define LVVIDHEADER_LVVE_RX_AGC_MASK1 ((LVVIDHeader_LVVE_Rx_Mask1_bm)128)
-/**
-* @def LVVIDHeader_LVVE_Rx_DRC_MASK1
-* Dynamic Range Control is present in the LVVE_Rx
-* @see LVVIDHeader_LVVE_Rx_Mask1_bm
-*/
-#define LVVIDHEADER_LVVE_RX_DRC_MASK1 ((LVVIDHeader_LVVE_Rx_Mask1_bm)256)
-/**
-* @def LVVIDHeader_LVVE_Rx_VOL_MASK1
-* Volume Control is present in the LVVE_Rx
-* @see LVVIDHeader_LVVE_Rx_Mask1_bm
-*/
-#define LVVIDHEADER_LVVE_RX_VOL_MASK1 ((LVVIDHeader_LVVE_Rx_Mask1_bm)512)
-/**
-* @def LVVIDHeader_LVVE_Rx_LVVC_MASK1
-* VoiceClarity is present in the LVVE_Rx
-* @see LVVIDHeader_LVVE_Rx_Mask1_bm
-*/
-#define LVVIDHEADER_LVVE_RX_LVVC_MASK1 ((LVVIDHeader_LVVE_Rx_Mask1_bm)1024)
-/**
-* @def LVVIDHEADER_LVVE_RX_MASK1_BM_MIN
-* Minimal value for LVVIDHeader_LVVE_Rx_Mask1_bm
-* @see LVVIDHeader_LVVE_Rx_Mask1_bm
-*/
-#define LVVIDHEADER_LVVE_RX_MASK1_BM_MIN ((LVVIDHeader_LVVE_Rx_Mask1_bm)0)
-/**
-* @def LVVIDHEADER_LVVE_RX_MASK1_BM_MAX
-* Maximal value for LVVIDHeader_LVVE_Rx_Mask1_bm
-* @see LVVIDHeader_LVVE_Rx_Mask1_bm
-*/
-#define LVVIDHEADER_LVVE_RX_LVFENS_MASK1_FORMAX ((LVVIDHeader_LVVE_Rx_Mask1_bm)1)
-#define LVVIDHEADER_LVVE_RX_HPF_MASK1_FORMAX ((LVVIDHeader_LVVE_Rx_Mask1_bm)4)
-#define LVVIDHEADER_LVVE_RX_LVNG_MASK1_FORMAX ((LVVIDHeader_LVVE_Rx_Mask1_bm)16)
-#define LVVIDHEADER_LVVE_RX_EQ_MASK1_FORMAX ((LVVIDHeader_LVVE_Rx_Mask1_bm)64)
-#define LVVIDHEADER_LVVE_RX_AGC_MASK1_FORMAX ((LVVIDHeader_LVVE_Rx_Mask1_bm)128)
-#define LVVIDHEADER_LVVE_RX_DRC_MASK1_FORMAX ((LVVIDHeader_LVVE_Rx_Mask1_bm)256)
-#define LVVIDHEADER_LVVE_RX_VOL_MASK1_FORMAX ((LVVIDHeader_LVVE_Rx_Mask1_bm)512)
-#define LVVIDHEADER_LVVE_RX_LVVC_MASK1_FORMAX ((LVVIDHeader_LVVE_Rx_Mask1_bm)1024)
-#define LVVIDHEADER_LVVE_RX_MASK1_BM_MAX (LVVIDHEADER_LVVE_RX_LVFENS_MASK1_FORMAX | LVVIDHEADER_LVVE_RX_HPF_MASK1_FORMAX | LVVIDHEADER_LVVE_RX_LVNG_MASK1_FORMAX | LVVIDHEADER_LVVE_RX_EQ_MASK1_FORMAX | LVVIDHEADER_LVVE_RX_AGC_MASK1_FORMAX | LVVIDHEADER_LVVE_RX_DRC_MASK1_FORMAX | LVVIDHEADER_LVVE_RX_VOL_MASK1_FORMAX | LVVIDHEADER_LVVE_RX_LVVC_MASK1_FORMAX | ((LVVIDHeader_LVVE_Rx_Mask1_bm)0))
-/**
-<table border>
- <tr>
- <td><b>Name</b></td>
- <td><b>Value</b></td>
- <td><b>Description</b></td>
- </tr>
-</table> */
-typedef LVM_UINT16 LVVIDHeader_LVVE_Rx_Mask2_bm;
-/**
-* @def LVVIDHEADER_LVVE_RX_MASK2_BM_MIN
-* Minimal value for LVVIDHeader_LVVE_Rx_Mask2_bm
-* @see LVVIDHeader_LVVE_Rx_Mask2_bm
-*/
-#define LVVIDHEADER_LVVE_RX_MASK2_BM_MIN ((LVVIDHeader_LVVE_Rx_Mask2_bm)0)
-/**
-* @def LVVIDHEADER_LVVE_RX_MASK2_BM_MAX
-* Maximal value for LVVIDHeader_LVVE_Rx_Mask2_bm
-* @see LVVIDHeader_LVVE_Rx_Mask2_bm
-*/
-#define LVVIDHEADER_LVVE_RX_MASK2_BM_MAX (((LVVIDHeader_LVVE_Rx_Mask2_bm)0))
-/**
-<table border>
- <tr>
- <td><b>Name</b></td>
- <td><b>Value</b></td>
- <td><b>Description</b></td>
- </tr>
- <tr>
- <td>@ref LVVIDHEADER_LVVE_TX_LVHF_MASK1</td>
- <td>1</td>
- <td>HandsFree is present in the LVVE_Tx</td>
- </tr>
- <tr>
- <td>@ref LVVIDHEADER_LVVE_TX_EQ_MASK1</td>
- <td>4</td>
- <td>Equalizer is present in the LVVE_Tx</td>
- </tr>
- <tr>
- <td>@ref LVVIDHEADER_LVVE_TX_DRC_MASK1</td>
- <td>16</td>
- <td>Dynamic Range Control is present in the LVVE_Tx</td>
- </tr>
- <tr>
- <td>@ref LVVIDHEADER_LVVE_TX_VOL_MASK1</td>
- <td>32</td>
- <td>Volume Control is present in the LVVE_Tx</td>
- </tr>
- <tr>
- <td>@ref LVVIDHEADER_LVVE_TX_HPF_MASK1</td>
- <td>128</td>
- <td>HPF is present in the LVVE_Tx</td>
- </tr>
- <tr>
- <td>@ref LVVIDHEADER_LVVE_TX_LVNV_01_MASK1</td>
- <td>512</td>
- <td>NoiseVoid is present in the LVVE_Tx</td>
- </tr>
-</table> */
-typedef LVM_UINT16 LVVIDHeader_LVVE_Tx_Mask1_bm;
-/**
-* @def LVVIDHeader_LVVE_Tx_LVHF_MASK1
-* HandsFree is present in the LVVE_Tx
-* @see LVVIDHeader_LVVE_Tx_Mask1_bm
-*/
-#define LVVIDHEADER_LVVE_TX_LVHF_MASK1 ((LVVIDHeader_LVVE_Tx_Mask1_bm)1)
-/**
-* @def LVVIDHeader_LVVE_Tx_EQ_MASK1
-* Equalizer is present in the LVVE_Tx
-* @see LVVIDHeader_LVVE_Tx_Mask1_bm
-*/
-#define LVVIDHEADER_LVVE_TX_EQ_MASK1 ((LVVIDHeader_LVVE_Tx_Mask1_bm)4)
-/**
-* @def LVVIDHeader_LVVE_Tx_DRC_MASK1
-* Dynamic Range Control is present in the LVVE_Tx
-* @see LVVIDHeader_LVVE_Tx_Mask1_bm
-*/
-#define LVVIDHEADER_LVVE_TX_DRC_MASK1 ((LVVIDHeader_LVVE_Tx_Mask1_bm)16)
-/**
-* @def LVVIDHeader_LVVE_Tx_VOL_MASK1
-* Volume Control is present in the LVVE_Tx
-* @see LVVIDHeader_LVVE_Tx_Mask1_bm
-*/
-#define LVVIDHEADER_LVVE_TX_VOL_MASK1 ((LVVIDHeader_LVVE_Tx_Mask1_bm)32)
-/**
-* @def LVVIDHeader_LVVE_Tx_HPF_MASK1
-* HPF is present in the LVVE_Tx
-* @see LVVIDHeader_LVVE_Tx_Mask1_bm
-*/
-#define LVVIDHEADER_LVVE_TX_HPF_MASK1 ((LVVIDHeader_LVVE_Tx_Mask1_bm)128)
-/**
-* @def LVVIDHeader_LVVE_Tx_LVNV_01_MASK1
-* NoiseVoid is present in the LVVE_Tx
-* @see LVVIDHeader_LVVE_Tx_Mask1_bm
-*/
-#define LVVIDHEADER_LVVE_TX_LVNV_01_MASK1 ((LVVIDHeader_LVVE_Tx_Mask1_bm)512)
-/**
-* @def LVVIDHEADER_LVVE_TX_MASK1_BM_MIN
-* Minimal value for LVVIDHeader_LVVE_Tx_Mask1_bm
-* @see LVVIDHeader_LVVE_Tx_Mask1_bm
-*/
-#define LVVIDHEADER_LVVE_TX_MASK1_BM_MIN ((LVVIDHeader_LVVE_Tx_Mask1_bm)0)
-/**
-* @def LVVIDHEADER_LVVE_TX_MASK1_BM_MAX
-* Maximal value for LVVIDHeader_LVVE_Tx_Mask1_bm
-* @see LVVIDHeader_LVVE_Tx_Mask1_bm
-*/
-#define LVVIDHEADER_LVVE_TX_LVHF_MASK1_FORMAX ((LVVIDHeader_LVVE_Tx_Mask1_bm)1)
-#define LVVIDHEADER_LVVE_TX_EQ_MASK1_FORMAX ((LVVIDHeader_LVVE_Tx_Mask1_bm)4)
-#define LVVIDHEADER_LVVE_TX_DRC_MASK1_FORMAX ((LVVIDHeader_LVVE_Tx_Mask1_bm)16)
-#define LVVIDHEADER_LVVE_TX_VOL_MASK1_FORMAX ((LVVIDHeader_LVVE_Tx_Mask1_bm)32)
-#define LVVIDHEADER_LVVE_TX_HPF_MASK1_FORMAX ((LVVIDHeader_LVVE_Tx_Mask1_bm)128)
-#define LVVIDHEADER_LVVE_TX_LVNV_01_MASK1_FORMAX ((LVVIDHeader_LVVE_Tx_Mask1_bm)512)
-#define LVVIDHEADER_LVVE_TX_MASK1_BM_MAX (LVVIDHEADER_LVVE_TX_LVHF_MASK1_FORMAX | LVVIDHEADER_LVVE_TX_EQ_MASK1_FORMAX | LVVIDHEADER_LVVE_TX_DRC_MASK1_FORMAX | LVVIDHEADER_LVVE_TX_VOL_MASK1_FORMAX | LVVIDHEADER_LVVE_TX_HPF_MASK1_FORMAX | LVVIDHEADER_LVVE_TX_LVNV_01_MASK1_FORMAX | ((LVVIDHeader_LVVE_Tx_Mask1_bm)0))
-/**
-<table border>
- <tr>
- <td><b>Name</b></td>
- <td><b>Value</b></td>
- <td><b>Description</b></td>
- </tr>
-</table> */
-typedef LVM_UINT16 LVVIDHeader_LVVE_Tx_Mask2_bm;
-/**
-* @def LVVIDHEADER_LVVE_TX_MASK2_BM_MIN
-* Minimal value for LVVIDHeader_LVVE_Tx_Mask2_bm
-* @see LVVIDHeader_LVVE_Tx_Mask2_bm
-*/
-#define LVVIDHEADER_LVVE_TX_MASK2_BM_MIN ((LVVIDHeader_LVVE_Tx_Mask2_bm)0)
-/**
-* @def LVVIDHEADER_LVVE_TX_MASK2_BM_MAX
-* Maximal value for LVVIDHeader_LVVE_Tx_Mask2_bm
-* @see LVVIDHeader_LVVE_Tx_Mask2_bm
-*/
-#define LVVIDHEADER_LVVE_TX_MASK2_BM_MAX (((LVVIDHeader_LVVE_Tx_Mask2_bm)0))
-/**
-<table border>
- <tr>
- <td><b>Name</b></td>
- <td><b>Value</b></td>
- <td><b>Description</b></td>
- </tr>
- <tr>
- <td>@ref LVVIDHEADER_CONFIGURATIONS_NARROWBAND_MASK1</td>
- <td>1</td>
- <td>NarrowBand configuration is present in the LVVE</td>
- </tr>
-</table> */
-typedef LVM_UINT16 LVVIDHeader_Configurations_Mask1_bm;
-/**
-* @def LVVIDHEADER_CONFIGURATIONS_NARROWBAND_MASK1
-* NarrowBand configuration is present in the LVVE
-* @see LVVIDHeader_Configurations_Mask1_bm
-*/
-#define LVVIDHEADER_CONFIGURATIONS_NARROWBAND_MASK1 ((LVVIDHeader_Configurations_Mask1_bm)1)
-/**
-* @def LVVIDHEADER_CONFIGURATIONS_MASK1_BM_MIN
-* Minimal value for LVVIDHeader_Configurations_Mask1_bm
-* @see LVVIDHeader_Configurations_Mask1_bm
-*/
-#define LVVIDHEADER_CONFIGURATIONS_MASK1_BM_MIN ((LVVIDHeader_Configurations_Mask1_bm)0)
-/**
-* @def LVVIDHEADER_CONFIGURATIONS_MASK1_BM_MAX
-* Maximal value for LVVIDHeader_Configurations_Mask1_bm
-* @see LVVIDHeader_Configurations_Mask1_bm
-*/
-#define LVVIDHEADER_CONFIGURATIONS_NARROWBAND_MASK1_FORMAX ((LVVIDHeader_Configurations_Mask1_bm)1)
-#define LVVIDHEADER_CONFIGURATIONS_MASK1_BM_MAX (LVVIDHEADER_CONFIGURATIONS_NARROWBAND_MASK1_FORMAX | ((LVVIDHeader_Configurations_Mask1_bm)0))
-/**
-<table border>
- <tr>
- <td><b>Name</b></td>
- <td><b>Value</b></td>
- <td><b>Description</b></td>
- </tr>
-</table> */
-typedef LVM_UINT16 LVVIDHeader_Configurations_Mask2_bm;
-/**
-* @def LVVIDHEADER_CONFIGURATIONS_MASK2_BM_MIN
-* Minimal value for LVVIDHeader_Configurations_Mask2_bm
-* @see LVVIDHeader_Configurations_Mask2_bm
-*/
-#define LVVIDHEADER_CONFIGURATIONS_MASK2_BM_MIN ((LVVIDHeader_Configurations_Mask2_bm)0)
-/**
-* @def LVVIDHEADER_CONFIGURATIONS_MASK2_BM_MAX
-* Maximal value for LVVIDHeader_Configurations_Mask2_bm
-* @see LVVIDHeader_Configurations_Mask2_bm
-*/
-#define LVVIDHEADER_CONFIGURATIONS_MASK2_BM_MAX (((LVVIDHeader_Configurations_Mask2_bm)0))
-/**
-<table border>
- <tr>
- <td><b>Name</b></td>
- <td><b>Value</b></td>
- <td><b>Description</b></td>
- </tr>
- <tr>
- <td>@ref LVVC_MODE_AVL</td>
- <td>2</td>
- <td>Turns on or off the AGC. If off both AGC and Limiter are bypassed.</td>
- </tr>
- <tr>
- <td>@ref LVVC_MODE_AVL_ADAPT</td>
- <td>4</td>
- <td>Allows turning off the dependency of the AGC upon the nearend noise level. When turned off, the AGC uses the default parameters.</td>
- </tr>
- <tr>
- <td>@ref LVVC_MODE_AVL_SPDETECT</td>
- <td>8</td>
- <td>Allows disabling speech detection in the AGC. When turned off, the AGC adapts its gain all the time.</td>
- </tr>
- <tr>
- <td>@ref LVVC_MODE_LIMITER</td>
- <td>16</td>
- <td>Turns on or off the limiter.</td>
- </tr>
- <tr>
- <td>@ref LVVC_MODE_LPF</td>
- <td>32</td>
- <td>Turns on or off the low-pass filter.</td>
- </tr>
- <tr>
- <td>@ref LVVC_MODE_HPF</td>
- <td>64</td>
- <td>Turns on or off the high-pass filter.</td>
- </tr>
- <tr>
- <td>@ref LVVC_MODE_VC</td>
- <td>128</td>
- <td>Turns on or off the VoiceClarity gain.</td>
- </tr>
-</table> */
-typedef LVM_UINT16 LVVC_ModeWord_bm;
-/**
-* @def LVVC_MODE_AVL
-* Turns on or off the AGC. If off both AGC and Limiter are bypassed.
-* @see LVVC_ModeWord_bm
-*/
-#define LVVC_MODE_AVL ((LVVC_ModeWord_bm)2)
-/**
-* @def LVVC_MODE_AVL_ADAPT
-* Allows turning off the dependency of the AGC upon the nearend noise level. When turned off, the AGC uses the default parameters.
-* @see LVVC_ModeWord_bm
-*/
-#define LVVC_MODE_AVL_ADAPT ((LVVC_ModeWord_bm)4)
-/**
-* @def LVVC_MODE_AVL_SPDETECT
-* Allows disabling speech detection in the AGC. When turned off, the AGC adapts its gain all the time.
-* @see LVVC_ModeWord_bm
-*/
-#define LVVC_MODE_AVL_SPDETECT ((LVVC_ModeWord_bm)8)
-/**
-* @def LVVC_MODE_LIMITER
-* Turns on or off the limiter.
-* @see LVVC_ModeWord_bm
-*/
-#define LVVC_MODE_LIMITER ((LVVC_ModeWord_bm)16)
-/**
-* @def LVVC_MODE_LPF
-* Turns on or off the low-pass filter.
-* @see LVVC_ModeWord_bm
-*/
-#define LVVC_MODE_LPF ((LVVC_ModeWord_bm)32)
-/**
-* @def LVVC_MODE_HPF
-* Turns on or off the high-pass filter.
-* @see LVVC_ModeWord_bm
-*/
-#define LVVC_MODE_HPF ((LVVC_ModeWord_bm)64)
-/**
-* @def LVVC_MODE_VC
-* Turns on or off the VoiceClarity gain.
-* @see LVVC_ModeWord_bm
-*/
-#define LVVC_MODE_VC ((LVVC_ModeWord_bm)128)
-/**
-* @def LVVC_MODEWORD_BM_MIN
-* Minimal value for LVVC_ModeWord_bm
-* @see LVVC_ModeWord_bm
-*/
-#define LVVC_MODEWORD_BM_MIN ((LVVC_ModeWord_bm)0)
-/**
-* @def LVVC_MODEWORD_BM_MAX
-* Maximal value for LVVC_ModeWord_bm
-* @see LVVC_ModeWord_bm
-*/
-#define LVVC_MODE_AVL_FORMAX ((LVVC_ModeWord_bm)2)
-#define LVVC_MODE_AVL_ADAPT_FORMAX ((LVVC_ModeWord_bm)4)
-#define LVVC_MODE_AVL_SPDETECT_FORMAX ((LVVC_ModeWord_bm)8)
-#define LVVC_MODE_LIMITER_FORMAX ((LVVC_ModeWord_bm)16)
-#define LVVC_MODE_LPF_FORMAX ((LVVC_ModeWord_bm)32)
-#define LVVC_MODE_HPF_FORMAX ((LVVC_ModeWord_bm)64)
-#define LVVC_MODE_VC_FORMAX ((LVVC_ModeWord_bm)128)
-#define LVVC_MODEWORD_BM_MAX (LVVC_MODE_AVL_FORMAX | LVVC_MODE_AVL_ADAPT_FORMAX | LVVC_MODE_AVL_SPDETECT_FORMAX | LVVC_MODE_LIMITER_FORMAX | LVVC_MODE_LPF_FORMAX | LVVC_MODE_HPF_FORMAX | LVVC_MODE_VC_FORMAX | ((LVVC_ModeWord_bm)0))
-/**
-<table border>
- <tr>
- <td><b>Name</b></td>
- <td><b>Value</b></td>
- <td><b>Description</b></td>
- </tr>
- <tr>
- <td>@ref LVFENS_MODE_HS</td>
- <td>1</td>
- <td>Switch ON and OFF Horn Suppressor. Currently Horn Suppressor is not supported.</td>
- </tr>
-</table> */
-typedef LVM_UINT16 LVFENS_ModeWord_bm;
-/**
-* @def LVFENS_MODE_HS
-* Switch ON and OFF Horn Suppressor. Currently Horn Suppressor is not supported.
-* @see LVFENS_ModeWord_bm
-*/
-#define LVFENS_MODE_HS ((LVFENS_ModeWord_bm)1)
-/**
-* @def LVFENS_MODEWORD_BM_MIN
-* Minimal value for LVFENS_ModeWord_bm
-* @see LVFENS_ModeWord_bm
-*/
-#define LVFENS_MODEWORD_BM_MIN ((LVFENS_ModeWord_bm)0)
-/**
-* @def LVFENS_MODEWORD_BM_MAX
-* Maximal value for LVFENS_ModeWord_bm
-* @see LVFENS_ModeWord_bm
-*/
-#define LVFENS_MODE_HS_FORMAX ((LVFENS_ModeWord_bm)1)
-#define LVFENS_MODEWORD_BM_MAX (LVFENS_MODE_HS_FORMAX | ((LVFENS_ModeWord_bm)0))
-/**
-<table border>
- <tr>
- <td><b>Name</b></td>
- <td><b>Value</b></td>
- <td><b>Description</b></td>
- </tr>
- <tr>
- <td>@ref LVWM_MODE_AVL</td>
- <td>1</td>
- <td>Turns on or off the AVL. If off, both AGC and Limiter are bypassed</td>
- </tr>
- <tr>
- <td>@ref LVWM_MODE_SPDETECT</td>
- <td>2</td>
- <td>Allows disabling speech detection in the AVL. When turned off, the AGC adapts its gain all the time.</td>
- </tr>
- <tr>
- <td>@ref LVWM_MODE_LIMITER</td>
- <td>4</td>
- <td>Turns on or off the limiter.</td>
- </tr>
- <tr>
- <td>@ref LVWM_MODE_EXT_SPDETECT</td>
- <td>8</td>
- <td>Used to tell the WhisperMode module if an external speech detection is available (If 0, there is no external speech detector).</td>
- </tr>
-</table> */
-typedef LVM_UINT16 LVWM_ModeWord_bm;
-/**
-* @def LVWM_MODE_AVL
-* Turns on or off the AVL. If off, both AGC and Limiter are bypassed
-* @see LVWM_ModeWord_bm
-*/
-#define LVWM_MODE_AVL ((LVWM_ModeWord_bm)1)
-/**
-* @def LVWM_MODE_SPDETECT
-* Allows disabling speech detection in the AVL. When turned off, the AGC adapts its gain all the time.
-* @see LVWM_ModeWord_bm
-*/
-#define LVWM_MODE_SPDETECT ((LVWM_ModeWord_bm)2)
-/**
-* @def LVWM_MODE_LIMITER
-* Turns on or off the limiter.
-* @see LVWM_ModeWord_bm
-*/
-#define LVWM_MODE_LIMITER ((LVWM_ModeWord_bm)4)
-/**
-* @def LVWM_MODE_EXT_SPDETECT
-* Used to tell the WhisperMode module if an external speech detection is available (If 0, there is no external speech detector).
-* @see LVWM_ModeWord_bm
-*/
-#define LVWM_MODE_EXT_SPDETECT ((LVWM_ModeWord_bm)8)
-/**
-* @def LVWM_MODEWORD_BM_MIN
-* Minimal value for LVWM_ModeWord_bm
-* @see LVWM_ModeWord_bm
-*/
-#define LVWM_MODEWORD_BM_MIN ((LVWM_ModeWord_bm)0)
-/**
-* @def LVWM_MODEWORD_BM_MAX
-* Maximal value for LVWM_ModeWord_bm
-* @see LVWM_ModeWord_bm
-*/
-#define LVWM_MODE_AVL_FORMAX ((LVWM_ModeWord_bm)1)
-#define LVWM_MODE_SPDETECT_FORMAX ((LVWM_ModeWord_bm)2)
-#define LVWM_MODE_LIMITER_FORMAX ((LVWM_ModeWord_bm)4)
-#define LVWM_MODE_EXT_SPDETECT_FORMAX ((LVWM_ModeWord_bm)8)
-#define LVWM_MODEWORD_BM_MAX (LVWM_MODE_AVL_FORMAX | LVWM_MODE_SPDETECT_FORMAX | LVWM_MODE_LIMITER_FORMAX | LVWM_MODE_EXT_SPDETECT_FORMAX | ((LVWM_ModeWord_bm)0))
-/**
-<table border>
- <tr>
- <td><b>Name</b></td>
- <td><b>Value</b></td>
- <td><b>Description</b></td>
- </tr>
- <tr>
- <td>@ref MODE_NLMS0</td>
- <td>1</td>
- <td>NLMS0 functionality</td>
- </tr>
- <tr>
- <td>@ref MODE_NLMS1</td>
- <td>2</td>
- <td>NLMS1 functionality</td>
- </tr>
- <tr>
- <td>@ref MODE_BEAMFORMER</td>
- <td>4</td>
- <td>Fiter-and-Sum Beamformer functionality</td>
- </tr>
- <tr>
- <td>@ref MODE_PCD</td>
- <td>8</td>
- <td>Switch between PCD (Path change detector) and BSD (Broadside detector)</td>
- </tr>
- <tr>
- <td>@ref MODE_GSC</td>
- <td>16</td>
- <td>Generalized Sidelobe Canceller functionality</td>
- </tr>
- <tr>
- <td>@ref MODE_DNNS</td>
- <td>32</td>
- <td>Dynamic Non-stationary Noise Suppression functionality</td>
- </tr>
- <tr>
- <td>@ref MODE_DES</td>
- <td>64</td>
- <td>Dynamic Echo Suppression functionality</td>
- </tr>
- <tr>
- <td>@ref MODE_NS</td>
- <td>128</td>
- <td>Stationary Noise Suppression functionality</td>
- </tr>
- <tr>
- <td>@ref MODE_NS_N</td>
- <td>256</td>
- <td>Non-stationary Noise Suppression functionality</td>
- </tr>
- <tr>
- <td>@ref MODE_CAL</td>
- <td>2048</td>
- <td>Switch between initial or continuous calibration</td>
- </tr>
- <tr>
- <td>@ref MODE_HB</td>
- <td>16384</td>
- <td>High Band mute/activated</td>
- </tr>
- <tr>
- <td>@ref MODE_HS</td>
- <td>32768</td>
- <td>Horn Suppressor functionality (if available)</td>
- </tr>
-</table> */
-typedef LVM_UINT16 LVNV_ModeWord_bm;
-/**
-* @def MODE_NLMS0
-* NLMS0 functionality
-* @see LVNV_ModeWord_bm
-*/
-#define MODE_NLMS0 ((LVNV_ModeWord_bm)1)
-/**
-* @def MODE_NLMS1
-* NLMS1 functionality
-* @see LVNV_ModeWord_bm
-*/
-#define MODE_NLMS1 ((LVNV_ModeWord_bm)2)
-/**
-* @def MODE_BEAMFORMER
-* Fiter-and-Sum Beamformer functionality
-* @see LVNV_ModeWord_bm
-*/
-#define MODE_BEAMFORMER ((LVNV_ModeWord_bm)4)
-/**
-* @def MODE_PCD
-* Switch between PCD (Path change detector) and BSD (Broadside detector)
-* @see LVNV_ModeWord_bm
-*/
-#define MODE_PCD ((LVNV_ModeWord_bm)8)
-/**
-* @def MODE_GSC
-* Generalized Sidelobe Canceller functionality
-* @see LVNV_ModeWord_bm
-*/
-#define MODE_GSC ((LVNV_ModeWord_bm)16)
-/**
-* @def MODE_DNNS
-* Dynamic Non-stationary Noise Suppression functionality
-* @see LVNV_ModeWord_bm
-*/
-#define MODE_DNNS ((LVNV_ModeWord_bm)32)
-/**
-* @def MODE_DES
-* Dynamic Echo Suppression functionality
-* @see LVNV_ModeWord_bm
-*/
-#define MODE_DES ((LVNV_ModeWord_bm)64)
-/**
-* @def MODE_NS
-* Stationary Noise Suppression functionality
-* @see LVNV_ModeWord_bm
-*/
-#define MODE_NS ((LVNV_ModeWord_bm)128)
-/**
-* @def MODE_NS_N
-* Non-stationary Noise Suppression functionality
-* @see LVNV_ModeWord_bm
-*/
-#define MODE_NS_N ((LVNV_ModeWord_bm)256)
-/**
-* @def MODE_CAL
-* Switch between initial or continuous calibration
-* @see LVNV_ModeWord_bm
-*/
-#define MODE_CAL ((LVNV_ModeWord_bm)2048)
-/**
-* @def MODE_HB
-* High Band mute/activated
-* @see LVNV_ModeWord_bm
-*/
-#define MODE_HB ((LVNV_ModeWord_bm)16384)
-/**
-* @def MODE_HS
-* Horn Suppressor functionality (if available)
-* @see LVNV_ModeWord_bm
-*/
-#define MODE_HS ((LVNV_ModeWord_bm)32768)
-/**
-* @def LVNV_MODEWORD_BM_MIN
-* Minimal value for LVNV_ModeWord_bm
-* @see LVNV_ModeWord_bm
-*/
-#define LVNV_MODEWORD_BM_MIN ((LVNV_ModeWord_bm)0)
-/**
-* @def LVNV_MODEWORD_BM_MAX
-* Maximal value for LVNV_ModeWord_bm
-* @see LVNV_ModeWord_bm
-*/
-#define MODE_NLMS0_FORMAX ((LVNV_ModeWord_bm)1)
-#define MODE_NLMS1_FORMAX ((LVNV_ModeWord_bm)2)
-#define MODE_BEAMFORMER_FORMAX ((LVNV_ModeWord_bm)4)
-#define MODE_PCD_FORMAX ((LVNV_ModeWord_bm)8)
-#define MODE_GSC_FORMAX ((LVNV_ModeWord_bm)16)
-#define MODE_DNNS_FORMAX ((LVNV_ModeWord_bm)32)
-#define MODE_DES_FORMAX ((LVNV_ModeWord_bm)64)
-#define MODE_NS_FORMAX ((LVNV_ModeWord_bm)128)
-#define MODE_NS_N_FORMAX ((LVNV_ModeWord_bm)256)
-#define MODE_CAL_FORMAX ((LVNV_ModeWord_bm)2048)
-#define MODE_HB_FORMAX ((LVNV_ModeWord_bm)16384)
-#define MODE_HS_FORMAX ((LVNV_ModeWord_bm)32768)
-#define LVNV_MODEWORD_BM_MAX (MODE_NLMS0_FORMAX | MODE_NLMS1_FORMAX | MODE_BEAMFORMER_FORMAX | MODE_PCD_FORMAX | MODE_GSC_FORMAX | MODE_DNNS_FORMAX | MODE_DES_FORMAX | MODE_NS_FORMAX | MODE_NS_N_FORMAX | MODE_CAL_FORMAX | MODE_HB_FORMAX | MODE_HS_FORMAX | ((LVNV_ModeWord_bm)0))
-/**
-<table border>
- <tr>
- <td><b>Name</b></td>
- <td><b>Value</b></td>
- <td><b>Description</b></td>
- </tr>
- <tr>
- <td>@ref MODE2_FSB_CARDIOID</td>
- <td>1</td>
- <td>FSB update based on speech detection in cardioid</td>
- </tr>
- <tr>
- <td>@ref MODE2_FSB_WITHINBEAM</td>
- <td>2</td>
- <td>FSB update based on withinbeam detection</td>
- </tr>
- <tr>
- <td>@ref MODE2_CAL_UPDATE</td>
- <td>4</td>
- <td>Switch for calibration functionality between updated or not-updated</td>
- </tr>
- <tr>
- <td>@ref MODE2_BEAMDAMAGE</td>
- <td>8</td>
- <td>Microphone coverage protection</td>
- </tr>
-</table> */
-typedef LVM_UINT16 LVNV_Mode2Word_bm;
-/**
-* @def MODE2_FSB_CARDIOID
-* FSB update based on speech detection in cardioid
-* @see LVNV_Mode2Word_bm
-*/
-#define MODE2_FSB_CARDIOID ((LVNV_Mode2Word_bm)1)
-/**
-* @def MODE2_FSB_WITHINBEAM
-* FSB update based on withinbeam detection
-* @see LVNV_Mode2Word_bm
-*/
-#define MODE2_FSB_WITHINBEAM ((LVNV_Mode2Word_bm)2)
-/**
-* @def MODE2_CAL_UPDATE
-* Switch for calibration functionality between updated or not-updated
-* @see LVNV_Mode2Word_bm
-*/
-#define MODE2_CAL_UPDATE ((LVNV_Mode2Word_bm)4)
-/**
-* @def MODE2_BEAMDAMAGE
-* Microphone coverage protection
-* @see LVNV_Mode2Word_bm
-*/
-#define MODE2_BEAMDAMAGE ((LVNV_Mode2Word_bm)8)
-/**
-* @def LVNV_MODE2WORD_BM_MIN
-* Minimal value for LVNV_Mode2Word_bm
-* @see LVNV_Mode2Word_bm
-*/
-#define LVNV_MODE2WORD_BM_MIN ((LVNV_Mode2Word_bm)0)
-/**
-* @def LVNV_MODE2WORD_BM_MAX
-* Maximal value for LVNV_Mode2Word_bm
-* @see LVNV_Mode2Word_bm
-*/
-#define MODE2_FSB_CARDIOID_FORMAX ((LVNV_Mode2Word_bm)1)
-#define MODE2_FSB_WITHINBEAM_FORMAX ((LVNV_Mode2Word_bm)2)
-#define MODE2_CAL_UPDATE_FORMAX ((LVNV_Mode2Word_bm)4)
-#define MODE2_BEAMDAMAGE_FORMAX ((LVNV_Mode2Word_bm)8)
-#define LVNV_MODE2WORD_BM_MAX (MODE2_FSB_CARDIOID_FORMAX | MODE2_FSB_WITHINBEAM_FORMAX | MODE2_CAL_UPDATE_FORMAX | MODE2_BEAMDAMAGE_FORMAX | ((LVNV_Mode2Word_bm)0))
-/**
-<table border>
- <tr>
- <td><b>Name</b></td>
- <td><b>Value</b></td>
- <td><b>Description</b></td>
- </tr>
- <tr>
- <td>@ref TUNING_MODE_NLMS1</td>
- <td>1</td>
- <td>NLMS1 output</td>
- </tr>
- <tr>
- <td>@ref TUNING_MODE_FSB</td>
- <td>2</td>
- <td>FSB noise reference output</td>
- </tr>
- <tr>
- <td>@ref TUNING_MODE_WITHINBEAM</td>
- <td>8</td>
- <td>Tuning beep when Withinbeam=1</td>
- </tr>
- <tr>
- <td>@ref TUNING_MODE_UPDATEONOFF</td>
- <td>16</td>
- <td>Tuning beep when FSB is updated</td>
- </tr>
- <tr>
- <td>@ref TUNING_MODE_CAL_MICPOW</td>
- <td>64</td>
- <td>Tuning beep when MicPow is lower than Cal_micPowFloorMin</td>
- </tr>
- <tr>
- <td>@ref TUNING_MODE_BROADSIDE</td>
- <td>128</td>
- <td>Tuning beep when broadside is detected</td>
- </tr>
-</table> */
-typedef LVM_UINT16 LVNV_TuningModeWord_bm;
-/**
-* @def TUNING_MODE_NLMS1
-* NLMS1 output
-* @see LVNV_TuningModeWord_bm
-*/
-#define TUNING_MODE_NLMS1 ((LVNV_TuningModeWord_bm)1)
-/**
-* @def TUNING_MODE_FSB
-* FSB noise reference output
-* @see LVNV_TuningModeWord_bm
-*/
-#define TUNING_MODE_FSB ((LVNV_TuningModeWord_bm)2)
-/**
-* @def TUNING_MODE_WITHINBEAM
-* Tuning beep when Withinbeam=1
-* @see LVNV_TuningModeWord_bm
-*/
-#define TUNING_MODE_WITHINBEAM ((LVNV_TuningModeWord_bm)8)
-/**
-* @def TUNING_MODE_UPDATEONOFF
-* Tuning beep when FSB is updated
-* @see LVNV_TuningModeWord_bm
-*/
-#define TUNING_MODE_UPDATEONOFF ((LVNV_TuningModeWord_bm)16)
-/**
-* @def TUNING_MODE_CAL_MICPOW
-* Tuning beep when MicPow is lower than Cal_micPowFloorMin
-* @see LVNV_TuningModeWord_bm
-*/
-#define TUNING_MODE_CAL_MICPOW ((LVNV_TuningModeWord_bm)64)
-/**
-* @def TUNING_MODE_BROADSIDE
-* Tuning beep when broadside is detected
-* @see LVNV_TuningModeWord_bm
-*/
-#define TUNING_MODE_BROADSIDE ((LVNV_TuningModeWord_bm)128)
-/**
-* @def LVNV_TUNINGMODEWORD_BM_MIN
-* Minimal value for LVNV_TuningModeWord_bm
-* @see LVNV_TuningModeWord_bm
-*/
-#define LVNV_TUNINGMODEWORD_BM_MIN ((LVNV_TuningModeWord_bm)0)
-/**
-* @def LVNV_TUNINGMODEWORD_BM_MAX
-* Maximal value for LVNV_TuningModeWord_bm
-* @see LVNV_TuningModeWord_bm
-*/
-#define TUNING_MODE_NLMS1_FORMAX ((LVNV_TuningModeWord_bm)1)
-#define TUNING_MODE_FSB_FORMAX ((LVNV_TuningModeWord_bm)2)
-#define TUNING_MODE_WITHINBEAM_FORMAX ((LVNV_TuningModeWord_bm)8)
-#define TUNING_MODE_UPDATEONOFF_FORMAX ((LVNV_TuningModeWord_bm)16)
-#define TUNING_MODE_CAL_MICPOW_FORMAX ((LVNV_TuningModeWord_bm)64)
-#define TUNING_MODE_BROADSIDE_FORMAX ((LVNV_TuningModeWord_bm)128)
-#define LVNV_TUNINGMODEWORD_BM_MAX (TUNING_MODE_NLMS1_FORMAX | TUNING_MODE_FSB_FORMAX | TUNING_MODE_WITHINBEAM_FORMAX | TUNING_MODE_UPDATEONOFF_FORMAX | TUNING_MODE_CAL_MICPOW_FORMAX | TUNING_MODE_BROADSIDE_FORMAX | ((LVNV_TuningModeWord_bm)0))
-/**
-<table border>
- <tr>
- <td><b>Name</b></td>
- <td><b>Value</b></td>
- <td><b>Description</b></td>
- </tr>
- <tr>
- <td>@ref LVNV_STATUS_LOST_BEAM</td>
- <td>1</td>
- <td>LostBeam detections</td>
- </tr>
- <tr>
- <td>@ref LVNV_STATUS_MIC_COV</td>
- <td>2</td>
- <td>Microphone Coverage detections</td>
- </tr>
- <tr>
- <td>@ref LVNV_STATUS_FSB_UPDATE</td>
- <td>4</td>
- <td>FSB updates</td>
- </tr>
- <tr>
- <td>@ref LVNV_STATUS_BEAM_DAMAGE</td>
- <td>8</td>
- <td>BeamDamage detections</td>
- </tr>
- <tr>
- <td>@ref LVNV_STATUS_GSC_UPDATE</td>
- <td>16</td>
- <td>GSC updates</td>
- </tr>
- <tr>
- <td>@ref LVNV_STATUS_DNNS_WBEAM</td>
- <td>32</td>
- <td>DNNS WithinBeam detections</td>
- </tr>
- <tr>
- <td>@ref LVNV_STATUS_DNNS_ACTIVITY</td>
- <td>64</td>
- <td>DNNS activity detections</td>
- </tr>
- <tr>
- <td>@ref LVNV_STATUS_CAL_MICPOW</td>
- <td>128</td>
- <td>Calibration Microphone Power</td>
- </tr>
- <tr>
- <td>@ref LVNV_STATUS_MICPOWSP</td>
- <td>256</td>
- <td>(LV1008) MicPow Speech detections</td>
- </tr>
- <tr>
- <td>@ref LVNV_STATUS_BROADSIDE_FLAG</td>
- <td>512</td>
- <td>(LV2370) Broadside detection flag</td>
- </tr>
- <tr>
- <td>@ref LVNV_STATUS_CAL_UPDATED</td>
- <td>1024</td>
- <td>(LV8237) Calibration updated flag</td>
- </tr>
- <tr>
- <td>@ref LVNV_STATUS_WBEAM_FIX</td>
- <td>2048</td>
- <td>WithinBeam detection for Fixed Beamformer (if available).</td>
- </tr>
-</table> */
-typedef LVM_UINT16 LVNV_StatusWord_bm;
-/**
-* @def LVNV_STATUS_LOST_BEAM
-* LostBeam detections
-* @see LVNV_StatusWord_bm
-*/
-#define LVNV_STATUS_LOST_BEAM ((LVNV_StatusWord_bm)1)
-/**
-* @def LVNV_STATUS_MIC_COV
-* Microphone Coverage detections
-* @see LVNV_StatusWord_bm
-*/
-#define LVNV_STATUS_MIC_COV ((LVNV_StatusWord_bm)2)
-/**
-* @def LVNV_STATUS_FSB_UPDATE
-* FSB updates
-* @see LVNV_StatusWord_bm
-*/
-#define LVNV_STATUS_FSB_UPDATE ((LVNV_StatusWord_bm)4)
-/**
-* @def LVNV_STATUS_BEAM_DAMAGE
-* BeamDamage detections
-* @see LVNV_StatusWord_bm
-*/
-#define LVNV_STATUS_BEAM_DAMAGE ((LVNV_StatusWord_bm)8)
-/**
-* @def LVNV_STATUS_GSC_UPDATE
-* GSC updates
-* @see LVNV_StatusWord_bm
-*/
-#define LVNV_STATUS_GSC_UPDATE ((LVNV_StatusWord_bm)16)
-/**
-* @def LVNV_STATUS_DNNS_WBEAM
-* DNNS WithinBeam detections
-* @see LVNV_StatusWord_bm
-*/
-#define LVNV_STATUS_DNNS_WBEAM ((LVNV_StatusWord_bm)32)
-/**
-* @def LVNV_STATUS_DNNS_ACTIVITY
-* DNNS activity detections
-* @see LVNV_StatusWord_bm
-*/
-#define LVNV_STATUS_DNNS_ACTIVITY ((LVNV_StatusWord_bm)64)
-/**
-* @def LVNV_STATUS_CAL_MICPOW
-* Calibration Microphone Power
-* @see LVNV_StatusWord_bm
-*/
-#define LVNV_STATUS_CAL_MICPOW ((LVNV_StatusWord_bm)128)
-/**
-* @def LVNV_STATUS_MICPOWSP
-* (LV1008) MicPow Speech detections
-* @see LVNV_StatusWord_bm
-*/
-#define LVNV_STATUS_MICPOWSP ((LVNV_StatusWord_bm)256)
-/**
-* @def LVNV_STATUS_BROADSIDE_FLAG
-* (LV2370) Broadside detection flag
-* @see LVNV_StatusWord_bm
-*/
-#define LVNV_STATUS_BROADSIDE_FLAG ((LVNV_StatusWord_bm)512)
-/**
-* @def LVNV_STATUS_CAL_UPDATED
-* (LV8237) Calibration updated flag
-* @see LVNV_StatusWord_bm
-*/
-#define LVNV_STATUS_CAL_UPDATED ((LVNV_StatusWord_bm)1024)
-/**
-* @def LVNV_STATUS_WBEAM_fix
-* WithinBeam detection for Fixed Beamformer (if available).
-* @see LVNV_StatusWord_bm
-*/
-#define LVNV_STATUS_WBEAM_FIX ((LVNV_StatusWord_bm)2048)
-/**
-* @def LVNV_STATUSWORD_BM_MIN
-* Minimal value for LVNV_StatusWord_bm
-* @see LVNV_StatusWord_bm
-*/
-#define LVNV_STATUSWORD_BM_MIN ((LVNV_StatusWord_bm)0)
-/**
-* @def LVNV_STATUSWORD_BM_MAX
-* Maximal value for LVNV_StatusWord_bm
-* @see LVNV_StatusWord_bm
-*/
-#define LVNV_STATUS_LOST_BEAM_FORMAX ((LVNV_StatusWord_bm)1)
-#define LVNV_STATUS_MIC_COV_FORMAX ((LVNV_StatusWord_bm)2)
-#define LVNV_STATUS_FSB_UPDATE_FORMAX ((LVNV_StatusWord_bm)4)
-#define LVNV_STATUS_BEAM_DAMAGE_FORMAX ((LVNV_StatusWord_bm)8)
-#define LVNV_STATUS_GSC_UPDATE_FORMAX ((LVNV_StatusWord_bm)16)
-#define LVNV_STATUS_DNNS_WBEAM_FORMAX ((LVNV_StatusWord_bm)32)
-#define LVNV_STATUS_DNNS_ACTIVITY_FORMAX ((LVNV_StatusWord_bm)64)
-#define LVNV_STATUS_CAL_MICPOW_FORMAX ((LVNV_StatusWord_bm)128)
-#define LVNV_STATUS_MICPOWSP_FORMAX ((LVNV_StatusWord_bm)256)
-#define LVNV_STATUS_BROADSIDE_FLAG_FORMAX ((LVNV_StatusWord_bm)512)
-#define LVNV_STATUS_CAL_UPDATED_FORMAX ((LVNV_StatusWord_bm)1024)
-#define LVNV_STATUS_WBEAM_FIX_FORMAX ((LVNV_StatusWord_bm)2048)
-#define LVNV_STATUSWORD_BM_MAX (LVNV_STATUS_LOST_BEAM_FORMAX | LVNV_STATUS_MIC_COV_FORMAX | LVNV_STATUS_FSB_UPDATE_FORMAX | LVNV_STATUS_BEAM_DAMAGE_FORMAX | LVNV_STATUS_GSC_UPDATE_FORMAX | LVNV_STATUS_DNNS_WBEAM_FORMAX | LVNV_STATUS_DNNS_ACTIVITY_FORMAX | LVNV_STATUS_CAL_MICPOW_FORMAX | LVNV_STATUS_MICPOWSP_FORMAX | LVNV_STATUS_BROADSIDE_FLAG_FORMAX | LVNV_STATUS_CAL_UPDATED_FORMAX | LVNV_STATUS_WBEAM_FIX_FORMAX | ((LVNV_StatusWord_bm)0))
-/**
-<table border>
- <tr>
- <td><b>Name</b></td>
- <td><b>Value</b></td>
- <td><b>Description</b></td>
- </tr>
- <tr>
- <td>@ref LVHF_CONTROL_TUNE_PATHCHANGE</td>
- <td>1</td>
- <td>PCD tuning beep</td>
- </tr>
- <tr>
- <td>@ref LVHF_CONTROL_TUNE_CLIP</td>
- <td>2</td>
- <td>SPDET_x_clip tuning beep</td>
- </tr>
- <tr>
- <td>@ref LVHF_CONTROL_TUNE_FAR_SPEAKS</td>
- <td>4</td>
- <td>SPDET_far tuning beep</td>
- </tr>
- <tr>
- <td>@ref LVHF_CONTROL_TUNE_MIC_SPEAKS</td>
- <td>8</td>
- <td>SPDET_mic tuning beep</td>
- </tr>
- <tr>
- <td>@ref LVHF_CONTROL_TUNE_HB_MUTE</td>
- <td>16</td>
- <td>Mute high band (4kHz-8kHz). Should be disabled by default.</td>
- </tr>
- <tr>
- <td>@ref LVHF_CONTROL_TUNE_TB_MUTE</td>
- <td>32</td>
- <td>Mute top band (above 8kHz). Should be disabled by default.</td>
- </tr>
-</table> */
-typedef LVM_UINT16 LVHF_TuningModeWord;
-/**
-* @def LVHF_CONTROL_TUNE_PATHCHANGE
-* PCD tuning beep
-* @see LVHF_TuningModeWord
-*/
-#define LVHF_CONTROL_TUNE_PATHCHANGE ((LVHF_TuningModeWord)1)
-/**
-* @def LVHF_CONTROL_TUNE_CLIP
-* SPDET_x_clip tuning beep
-* @see LVHF_TuningModeWord
-*/
-#define LVHF_CONTROL_TUNE_CLIP ((LVHF_TuningModeWord)2)
-/**
-* @def LVHF_CONTROL_TUNE_FAR_SPEAKS
-* SPDET_far tuning beep
-* @see LVHF_TuningModeWord
-*/
-#define LVHF_CONTROL_TUNE_FAR_SPEAKS ((LVHF_TuningModeWord)4)
-/**
-* @def LVHF_CONTROL_TUNE_MIC_SPEAKS
-* SPDET_mic tuning beep
-* @see LVHF_TuningModeWord
-*/
-#define LVHF_CONTROL_TUNE_MIC_SPEAKS ((LVHF_TuningModeWord)8)
-/**
-* @def LVHF_CONTROL_TUNE_HB_MUTE
-* Mute high band (4kHz-8kHz). Should be disabled by default.
-* @see LVHF_TuningModeWord
-*/
-#define LVHF_CONTROL_TUNE_HB_MUTE ((LVHF_TuningModeWord)16)
-/**
-* @def LVHF_CONTROL_TUNE_TB_MUTE
-* Mute top band (above 8kHz). Should be disabled by default.
-* @see LVHF_TuningModeWord
-*/
-#define LVHF_CONTROL_TUNE_TB_MUTE ((LVHF_TuningModeWord)32)
-/**
-* @def LVHF_TUNINGMODEWORD_MIN
-* Minimal value for LVHF_TuningModeWord
-* @see LVHF_TuningModeWord
-*/
-#define LVHF_TUNINGMODEWORD_MIN ((LVHF_TuningModeWord)0)
-/**
-* @def LVHF_TUNINGMODEWORD_MAX
-* Maximal value for LVHF_TuningModeWord
-* @see LVHF_TuningModeWord
-*/
-#define LVHF_CONTROL_TUNE_PATHCHANGE_FORMAX ((LVHF_TuningModeWord)1)
-#define LVHF_CONTROL_TUNE_CLIP_FORMAX ((LVHF_TuningModeWord)2)
-#define LVHF_CONTROL_TUNE_FAR_SPEAKS_FORMAX ((LVHF_TuningModeWord)4)
-#define LVHF_CONTROL_TUNE_MIC_SPEAKS_FORMAX ((LVHF_TuningModeWord)8)
-#define LVHF_CONTROL_TUNE_HB_MUTE_FORMAX ((LVHF_TuningModeWord)16)
-#define LVHF_CONTROL_TUNE_TB_MUTE_FORMAX ((LVHF_TuningModeWord)32)
-#define LVHF_TUNINGMODEWORD_MAX (LVHF_CONTROL_TUNE_PATHCHANGE_FORMAX | LVHF_CONTROL_TUNE_CLIP_FORMAX | LVHF_CONTROL_TUNE_FAR_SPEAKS_FORMAX | LVHF_CONTROL_TUNE_MIC_SPEAKS_FORMAX | LVHF_CONTROL_TUNE_HB_MUTE_FORMAX | LVHF_CONTROL_TUNE_TB_MUTE_FORMAX | ((LVHF_TuningModeWord)0))
-/**
-<table border>
- <tr>
- <td><b>Name</b></td>
- <td><b>Value</b></td>
- <td><b>Description</b></td>
- </tr>
- <tr>
- <td>@ref LVHF_MODE_NLMS</td>
- <td>1</td>
- <td>NLMS functionality</td>
- </tr>
- <tr>
- <td>@ref LVHF_MODE_DES</td>
- <td>2</td>
- <td>DES (Dynamic Echo Suppression)</td>
- </tr>
- <tr>
- <td>@ref LVHF_MODE_NS</td>
- <td>4</td>
- <td>NS (Noise Suppression)</td>
- </tr>
- <tr>
- <td>@ref LVHF_MODE_CNI</td>
- <td>8</td>
- <td>CNI (Comfort Noise Injection)</td>
- </tr>
- <tr>
- <td>@ref LVHF_MODE_NLES</td>
- <td>16</td>
- <td>NLES (Non Linear Echo Suppression)</td>
- </tr>
- <tr>
- <td>@ref LVHF_MODE_PCD_DT</td>
- <td>64</td>
- <td>DT (Double Talk) protection after PCD</td>
- </tr>
- <tr>
- <td>@ref LVHF_MODE_PCD</td>
- <td>128</td>
- <td>PCD (Path Change Detector)</td>
- </tr>
- <tr>
- <td>@ref LVHF_MODE_INIT_ES</td>
- <td>256</td>
- <td>Initial echo suppression setting by PCD_gamma_e_rescue</td>
- </tr>
- <tr>
- <td>@ref LVHF_MODE_HS</td>
- <td>512</td>
- <td>HornSuppression (if available)</td>
- </tr>
- <tr>
- <td>@ref LVHF_MODE_PRENLMS</td>
- <td>4096</td>
- <td>Pre-NLMS preprocessing</td>
- </tr>
-</table> */
-typedef LVM_UINT16 LVHF_ModeWord_bm;
-/**
-* @def LVHF_MODE_NLMS
-* NLMS functionality
-* @see LVHF_ModeWord_bm
-*/
-#define LVHF_MODE_NLMS ((LVHF_ModeWord_bm)1)
-/**
-* @def LVHF_MODE_DES
-* DES (Dynamic Echo Suppression)
-* @see LVHF_ModeWord_bm
-*/
-#define LVHF_MODE_DES ((LVHF_ModeWord_bm)2)
-/**
-* @def LVHF_MODE_NS
-* NS (Noise Suppression)
-* @see LVHF_ModeWord_bm
-*/
-#define LVHF_MODE_NS ((LVHF_ModeWord_bm)4)
-/**
-* @def LVHF_MODE_CNI
-* CNI (Comfort Noise Injection)
-* @see LVHF_ModeWord_bm
-*/
-#define LVHF_MODE_CNI ((LVHF_ModeWord_bm)8)
-/**
-* @def LVHF_MODE_NLES
-* NLES (Non Linear Echo Suppression)
-* @see LVHF_ModeWord_bm
-*/
-#define LVHF_MODE_NLES ((LVHF_ModeWord_bm)16)
-/**
-* @def LVHF_MODE_PCD_DT
-* DT (Double Talk) protection after PCD
-* @see LVHF_ModeWord_bm
-*/
-#define LVHF_MODE_PCD_DT ((LVHF_ModeWord_bm)64)
-/**
-* @def LVHF_MODE_PCD
-* PCD (Path Change Detector)
-* @see LVHF_ModeWord_bm
-*/
-#define LVHF_MODE_PCD ((LVHF_ModeWord_bm)128)
-/**
-* @def LVHF_MODE_INIT_ES
-* Initial echo suppression setting by PCD_gamma_e_rescue
-* @see LVHF_ModeWord_bm
-*/
-#define LVHF_MODE_INIT_ES ((LVHF_ModeWord_bm)256)
-/**
-* @def LVHF_MODE_HS
-* HornSuppression (if available)
-* @see LVHF_ModeWord_bm
-*/
-#define LVHF_MODE_HS ((LVHF_ModeWord_bm)512)
-/**
-* @def LVHF_MODE_PRENLMS
-* Pre-NLMS preprocessing
-* @see LVHF_ModeWord_bm
-*/
-#define LVHF_MODE_PRENLMS ((LVHF_ModeWord_bm)4096)
-/**
-* @def LVHF_MODEWORD_BM_MIN
-* Minimal value for LVHF_ModeWord_bm
-* @see LVHF_ModeWord_bm
-*/
-#define LVHF_MODEWORD_BM_MIN ((LVHF_ModeWord_bm)0)
-/**
-* @def LVHF_MODEWORD_BM_MAX
-* Maximal value for LVHF_ModeWord_bm
-* @see LVHF_ModeWord_bm
-*/
-#define LVHF_MODE_NLMS_FORMAX ((LVHF_ModeWord_bm)1)
-#define LVHF_MODE_DES_FORMAX ((LVHF_ModeWord_bm)2)
-#define LVHF_MODE_NS_FORMAX ((LVHF_ModeWord_bm)4)
-#define LVHF_MODE_CNI_FORMAX ((LVHF_ModeWord_bm)8)
-#define LVHF_MODE_NLES_FORMAX ((LVHF_ModeWord_bm)16)
-#define LVHF_MODE_PCD_DT_FORMAX ((LVHF_ModeWord_bm)64)
-#define LVHF_MODE_PCD_FORMAX ((LVHF_ModeWord_bm)128)
-#define LVHF_MODE_INIT_ES_FORMAX ((LVHF_ModeWord_bm)256)
-#define LVHF_MODE_HS_FORMAX ((LVHF_ModeWord_bm)512)
-#define LVHF_MODE_PRENLMS_FORMAX ((LVHF_ModeWord_bm)4096)
-#define LVHF_MODEWORD_BM_MAX (LVHF_MODE_NLMS_FORMAX | LVHF_MODE_DES_FORMAX | LVHF_MODE_NS_FORMAX | LVHF_MODE_CNI_FORMAX | LVHF_MODE_NLES_FORMAX | LVHF_MODE_PCD_DT_FORMAX | LVHF_MODE_PCD_FORMAX | LVHF_MODE_INIT_ES_FORMAX | LVHF_MODE_HS_FORMAX | LVHF_MODE_PRENLMS_FORMAX | ((LVHF_ModeWord_bm)0))
-/**
-<table border>
- <tr>
- <td><b>Name</b></td>
- <td><b>Value</b></td>
- <td><b>Description</b></td>
- </tr>
- <tr>
- <td>@ref LVHF_STATUS_FAR_SPEAKS</td>
- <td>1</td>
- <td>FarEnd is speaking</td>
- </tr>
- <tr>
- <td>@ref LVHF_STATUS_FAR_STARTS</td>
- <td>2</td>
- <td>FarEnd starts to speak</td>
- </tr>
- <tr>
- <td>@ref LVHF_STATUS_MIC_SPEAKS</td>
- <td>4</td>
- <td>Mic activity detected</td>
- </tr>
- <tr>
- <td>@ref LVHF_STATUS_CLIP</td>
- <td>8</td>
- <td>Clipping Detected</td>
- </tr>
- <tr>
- <td>@ref LVHF_STATUS_PATHCHANGE</td>
- <td>16</td>
- <td>Path Change detected</td>
- </tr>
-</table> */
-typedef LVM_UINT16 LVHF_StatusWord_bm;
-/**
-* @def LVHF_STATUS_FAR_SPEAKS
-* FarEnd is speaking
-* @see LVHF_StatusWord_bm
-*/
-#define LVHF_STATUS_FAR_SPEAKS ((LVHF_StatusWord_bm)1)
-/**
-* @def LVHF_STATUS_FAR_STARTS
-* FarEnd starts to speak
-* @see LVHF_StatusWord_bm
-*/
-#define LVHF_STATUS_FAR_STARTS ((LVHF_StatusWord_bm)2)
-/**
-* @def LVHF_STATUS_MIC_SPEAKS
-* Mic activity detected
-* @see LVHF_StatusWord_bm
-*/
-#define LVHF_STATUS_MIC_SPEAKS ((LVHF_StatusWord_bm)4)
-/**
-* @def LVHF_STATUS_CLIP
-* Clipping Detected
-* @see LVHF_StatusWord_bm
-*/
-#define LVHF_STATUS_CLIP ((LVHF_StatusWord_bm)8)
-/**
-* @def LVHF_STATUS_PATHCHANGE
-* Path Change detected
-* @see LVHF_StatusWord_bm
-*/
-#define LVHF_STATUS_PATHCHANGE ((LVHF_StatusWord_bm)16)
-/**
-* @def LVHF_STATUSWORD_BM_MIN
-* Minimal value for LVHF_StatusWord_bm
-* @see LVHF_StatusWord_bm
-*/
-#define LVHF_STATUSWORD_BM_MIN ((LVHF_StatusWord_bm)0)
-/**
-* @def LVHF_STATUSWORD_BM_MAX
-* Maximal value for LVHF_StatusWord_bm
-* @see LVHF_StatusWord_bm
-*/
-#define LVHF_STATUS_FAR_SPEAKS_FORMAX ((LVHF_StatusWord_bm)1)
-#define LVHF_STATUS_FAR_STARTS_FORMAX ((LVHF_StatusWord_bm)2)
-#define LVHF_STATUS_MIC_SPEAKS_FORMAX ((LVHF_StatusWord_bm)4)
-#define LVHF_STATUS_CLIP_FORMAX ((LVHF_StatusWord_bm)8)
-#define LVHF_STATUS_PATHCHANGE_FORMAX ((LVHF_StatusWord_bm)16)
-#define LVHF_STATUSWORD_BM_MAX (LVHF_STATUS_FAR_SPEAKS_FORMAX | LVHF_STATUS_FAR_STARTS_FORMAX | LVHF_STATUS_MIC_SPEAKS_FORMAX | LVHF_STATUS_CLIP_FORMAX | LVHF_STATUS_PATHCHANGE_FORMAX | ((LVHF_StatusWord_bm)0))
-
-#define LVVIDHEADER_LVVE_RX_MASK1_LVWIREFORMAT_LENGTH (2) ///< Number of bytes to encode @ref LVVIDHeader_LVVE_Rx_Mask1_bm in LVWireFormat.
-
-#define LVVIDHEADER_LVVE_RX_MASK2_LVWIREFORMAT_LENGTH (2) ///< Number of bytes to encode @ref LVVIDHeader_LVVE_Rx_Mask2_bm in LVWireFormat.
-
-#define LVVIDHEADER_LVVE_TX_MASK1_LVWIREFORMAT_LENGTH (2) ///< Number of bytes to encode @ref LVVIDHeader_LVVE_Tx_Mask1_bm in LVWireFormat.
-
-#define LVVIDHEADER_LVVE_TX_MASK2_LVWIREFORMAT_LENGTH (2) ///< Number of bytes to encode @ref LVVIDHeader_LVVE_Tx_Mask2_bm in LVWireFormat.
-
-#define LVVIDHEADER_CONFIGURATIONS_MASK1_LVWIREFORMAT_LENGTH (2) ///< Number of bytes to encode @ref LVVIDHeader_Configurations_Mask1_bm in LVWireFormat.
-
-#define LVVIDHEADER_CONFIGURATIONS_MASK2_LVWIREFORMAT_LENGTH (2) ///< Number of bytes to encode @ref LVVIDHeader_Configurations_Mask2_bm in LVWireFormat.
-
-#define LVVC_MODEWORD_LVWIREFORMAT_LENGTH (2) ///< Number of bytes to encode @ref LVVC_ModeWord_bm in LVWireFormat.
-
-#define LVFENS_MODEWORD_LVWIREFORMAT_LENGTH (2) ///< Number of bytes to encode @ref LVFENS_ModeWord_bm in LVWireFormat.
-
-#define LVWM_MODEWORD_LVWIREFORMAT_LENGTH (2) ///< Number of bytes to encode @ref LVWM_ModeWord_bm in LVWireFormat.
-
-#define LVNV_MODEWORD_LVWIREFORMAT_LENGTH (2) ///< Number of bytes to encode @ref LVNV_ModeWord_bm in LVWireFormat.
-
-#define LVNV_MODE2WORD_LVWIREFORMAT_LENGTH (2) ///< Number of bytes to encode @ref LVNV_Mode2Word_bm in LVWireFormat.
-
-#define LVNV_TUNINGMODEWORD_LVWIREFORMAT_LENGTH (2) ///< Number of bytes to encode @ref LVNV_TuningModeWord_bm in LVWireFormat.
-
-#define LVNV_STATUSWORD_LVWIREFORMAT_LENGTH (2) ///< Number of bytes to encode @ref LVNV_StatusWord_bm in LVWireFormat.
-
-#define LVHF_TUNINGMODEWORD_LVWIREFORMAT_LENGTH (2) ///< Number of bytes to encode @ref LVHF_TuningModeWord in LVWireFormat.
-
-#define LVHF_MODEWORD_LVWIREFORMAT_LENGTH (2) ///< Number of bytes to encode @ref LVHF_ModeWord_bm in LVWireFormat.
-
-#define LVHF_STATUSWORD_LVWIREFORMAT_LENGTH (2) ///< Number of bytes to encode @ref LVHF_StatusWord_bm in LVWireFormat.
-
-#define LVM_MODE_LVWIREFORMAT_LENGTH (4) ///< Number of bytes to encode @ref LVM_Mode_en in LVWireFormat.
-
-#define LVM_CONFIG_LVWIREFORMAT_LENGTH (4) ///< Number of bytes to encode @ref LVM_Config_en in LVWireFormat.
-
-#define LVM_FS_LVWIREFORMAT_LENGTH (4) ///< Number of bytes to encode @ref LVM_Fs_en in LVWireFormat.
-
-#define LVVIDHEADER_MESSAGEID_LVWIREFORMAT_LENGTH (4) ///< Number of bytes to encode @ref LVVIDHeader_MessageID_en in LVWireFormat.
-
-#define LVVIDHEADER_RETURNSTATUS_LVWIREFORMAT_LENGTH (4) ///< Number of bytes to encode @ref LVVIDHeader_ReturnStatus_en in LVWireFormat.
-
-#define LVVE_RX_MODE_LVWIREFORMAT_LENGTH (4) ///< Number of bytes to encode @ref LVVE_Rx_Mode_en in LVWireFormat.
-
-#define LVVE_TX_MODE_LVWIREFORMAT_LENGTH (4) ///< Number of bytes to encode @ref LVVE_Tx_Mode_en in LVWireFormat.
-
-#define LVVIDHEADER_CONTROLPARAMS_LVWIREFORMAT_LENGTH (7 \
- + LVVIDHEADER_LVVE_RX_MASK1_LVWIREFORMAT_LENGTH \
- + LVVIDHEADER_LVVE_RX_MASK2_LVWIREFORMAT_LENGTH \
- + LVVIDHEADER_LVVE_TX_MASK1_LVWIREFORMAT_LENGTH \
- + LVVIDHEADER_LVVE_TX_MASK2_LVWIREFORMAT_LENGTH \
- + LVVIDHEADER_CONFIGURATIONS_MASK1_LVWIREFORMAT_LENGTH \
- + LVVIDHEADER_CONFIGURATIONS_MASK2_LVWIREFORMAT_LENGTH \
- + LVVIDHEADER_MESSAGEID_LVWIREFORMAT_LENGTH \
- + LVM_FS_LVWIREFORMAT_LENGTH) ///< Number of bytes to encode LVVIDHeader ControlParameters in LVWireFormat.
-
-#define LVVC_CONTROLPARAMS_LVWIREFORMAT_LENGTH (22 \
- + LVM_MODE_LVWIREFORMAT_LENGTH \
- + LVVC_MODEWORD_LVWIREFORMAT_LENGTH) ///< Number of bytes to encode LVVC ControlParameters in LVWireFormat.
-
-#define LVFENS_CONTROLPARAMS_LVWIREFORMAT_LENGTH (2 \
- + LVM_MODE_LVWIREFORMAT_LENGTH \
- + LVFENS_MODEWORD_LVWIREFORMAT_LENGTH) ///< Number of bytes to encode LVFENS ControlParameters in LVWireFormat.
-
-#define LVWM_CONTROLPARAMS_LVWIREFORMAT_LENGTH (14 \
- + LVM_MODE_LVWIREFORMAT_LENGTH \
- + LVWM_MODEWORD_LVWIREFORMAT_LENGTH) ///< Number of bytes to encode LVWM ControlParameters in LVWireFormat.
-
-#define LVDRC_CONTROLPARAMS_LVWIREFORMAT_LENGTH (28 \
- + LVM_MODE_LVWIREFORMAT_LENGTH \
- + LVM_MODE_LVWIREFORMAT_LENGTH) ///< Number of bytes to encode LVDRC ControlParameters in LVWireFormat.
-
-#define LVNG_CONTROLPARAMS_LVWIREFORMAT_LENGTH (26 \
- + LVM_MODE_LVWIREFORMAT_LENGTH) ///< Number of bytes to encode LVNG ControlParameters in LVWireFormat.
-
-#define LVNLPP_CONTROLPARAMS_LVWIREFORMAT_LENGTH (4) ///< Number of bytes to encode LVNLPP ControlParameters in LVWireFormat.
-
-#define LVEQ_CONTROLPARAMS_LVWIREFORMAT_LENGTH (66) ///< Number of bytes to encode LVEQ ControlParameters in LVWireFormat.
-
-#define LVVOL_CONTROLPARAMS_LVWIREFORMAT_LENGTH (2 \
- + LVM_MODE_LVWIREFORMAT_LENGTH) ///< Number of bytes to encode LVVOL ControlParameters in LVWireFormat.
-
-#define LVHPF_CONTROLPARAMS_LVWIREFORMAT_LENGTH (2 \
- + LVM_MODE_LVWIREFORMAT_LENGTH) ///< Number of bytes to encode LVHPF ControlParameters in LVWireFormat.
-
-#define LVMUTE_CONTROLPARAMS_LVWIREFORMAT_LENGTH (LVM_MODE_LVWIREFORMAT_LENGTH) ///< Number of bytes to encode LVMUTE ControlParameters in LVWireFormat.
-
-#define LVVE_RX_CONTROLPARAMS_LVWIREFORMAT_LENGTH (4 \
- + LVVE_RX_MODE_LVWIREFORMAT_LENGTH \
- + LVM_MODE_LVWIREFORMAT_LENGTH \
- + LVM_MODE_LVWIREFORMAT_LENGTH \
- + LVFENS_CONTROLPARAMS_LVWIREFORMAT_LENGTH \
- + LVM_MODE_LVWIREFORMAT_LENGTH \
- + LVNLPP_CONTROLPARAMS_LVWIREFORMAT_LENGTH \
- + LVVC_CONTROLPARAMS_LVWIREFORMAT_LENGTH \
- + LVM_MODE_LVWIREFORMAT_LENGTH \
- + LVEQ_CONTROLPARAMS_LVWIREFORMAT_LENGTH \
- + LVDRC_CONTROLPARAMS_LVWIREFORMAT_LENGTH \
- + LVM_MODE_LVWIREFORMAT_LENGTH \
- + LVWM_CONTROLPARAMS_LVWIREFORMAT_LENGTH \
- + LVNG_CONTROLPARAMS_LVWIREFORMAT_LENGTH) ///< Number of bytes to encode LVVE_Rx ControlParameters in LVWireFormat.
-
-#define LVNV_CONTROLPARAMS_LVWIREFORMAT_LENGTH (122 \
- + LVM_MODE_LVWIREFORMAT_LENGTH \
- + LVNV_MODEWORD_LVWIREFORMAT_LENGTH \
- + LVNV_MODE2WORD_LVWIREFORMAT_LENGTH \
- + LVNV_TUNINGMODEWORD_LVWIREFORMAT_LENGTH) ///< Number of bytes to encode LVNV ControlParameters in LVWireFormat.
-
-#define LVHF_CONTROLPARAMS_LVWIREFORMAT_LENGTH (78 \
- + LVM_MODE_LVWIREFORMAT_LENGTH \
- + LVHF_MODEWORD_LVWIREFORMAT_LENGTH \
- + LVHF_TUNINGMODEWORD_LVWIREFORMAT_LENGTH) ///< Number of bytes to encode LVHF ControlParameters in LVWireFormat.
-
-#define LVBD_CONTROLPARAMS_LVWIREFORMAT_LENGTH (4 \
- + LVM_MODE_LVWIREFORMAT_LENGTH) ///< Number of bytes to encode LVBD ControlParameters in LVWireFormat.
-
-#define LVVE_TX_CONTROLPARAMS_LVWIREFORMAT_LENGTH (8 \
- + LVVE_TX_MODE_LVWIREFORMAT_LENGTH \
- + LVM_MODE_LVWIREFORMAT_LENGTH \
- + LVM_MODE_LVWIREFORMAT_LENGTH \
- + LVM_MODE_LVWIREFORMAT_LENGTH \
- + LVM_MODE_LVWIREFORMAT_LENGTH \
- + LVHF_CONTROLPARAMS_LVWIREFORMAT_LENGTH \
- + LVNV_CONTROLPARAMS_LVWIREFORMAT_LENGTH \
- + LVM_MODE_LVWIREFORMAT_LENGTH \
- + LVEQ_CONTROLPARAMS_LVWIREFORMAT_LENGTH \
- + LVDRC_CONTROLPARAMS_LVWIREFORMAT_LENGTH) ///< Number of bytes to encode LVVE_Tx ControlParameters in LVWireFormat.
-
-/**
-* @def LVVIDHEADER_HEADERVERSION_DEFAULT
-* Default of HeaderVersion
-* @see LVVIDHeader_ControlParams_st
-*/
-#define LVVIDHEADER_HEADERVERSION_DEFAULT (3)
-/**
-* @def LVVIDHEADER_HEADERVERSION_MIN
-* MinValue of HeaderVersion
-* @see LVVIDHeader_ControlParams_st
-*/
-#define LVVIDHEADER_HEADERVERSION_MIN (0)
-/**
-* @def LVVIDHEADER_HEADERVERSION_MAX
-* MaxValue of HeaderVersion
-* @see LVVIDHeader_ControlParams_st
-*/
-#define LVVIDHEADER_HEADERVERSION_MAX (255)
-
-/**
-* @def LVVIDHEADER_BASELINEVERSION_DEFAULT
-* Default of BaselineVersion
-* @see LVVIDHeader_ControlParams_st
-*/
-#define LVVIDHEADER_BASELINEVERSION_DEFAULT (51906816)
-/**
-* @def LVVIDHEADER_BASELINEVERSION_MIN
-* MinValue of BaselineVersion
-* @see LVVIDHeader_ControlParams_st
-*/
-#define LVVIDHEADER_BASELINEVERSION_MIN (1)
-/**
-* @def LVVIDHEADER_BASELINEVERSION_MAX
-* MaxValue of BaselineVersion
-* @see LVVIDHeader_ControlParams_st
-*/
-#define LVVIDHEADER_BASELINEVERSION_MAX (4294967295)
-
-/**
-* @def LVVIDHEADER_LVVE_RX_ALGOMASK1_DEFAULT
-* Default of LVVE_Rx_AlgoMask1
-* @see LVVIDHeader_ControlParams_st
-*/
-#define LVVIDHEADER_LVVE_RX_ALGOMASK1_DEFAULT (LVVIDHEADER_LVVE_RX_MASK1_BM_MAX)
-
-/**
-* @def LVVIDHEADER_LVVE_RX_ALGOMASK2_DEFAULT
-* Default of LVVE_Rx_AlgoMask2
-* @see LVVIDHeader_ControlParams_st
-*/
-#define LVVIDHEADER_LVVE_RX_ALGOMASK2_DEFAULT (LVVIDHEADER_LVVE_RX_MASK2_BM_MAX)
-
-/**
-* @def LVVIDHEADER_LVVE_TX_ALGOMASK1_DEFAULT
-* Default of LVVE_Tx_AlgoMask1
-* @see LVVIDHeader_ControlParams_st
-*/
-#define LVVIDHEADER_LVVE_TX_ALGOMASK1_DEFAULT (LVVIDHEADER_LVVE_TX_MASK1_BM_MAX)
-
-/**
-* @def LVVIDHEADER_LVVE_TX_ALGOMASK2_DEFAULT
-* Default of LVVE_Tx_AlgoMask2
-* @see LVVIDHeader_ControlParams_st
-*/
-#define LVVIDHEADER_LVVE_TX_ALGOMASK2_DEFAULT (LVVIDHEADER_LVVE_TX_MASK2_BM_MAX)
-
-/**
-* @def LVVIDHEADER_LVVE_CONFIG_ALGOMASK1_DEFAULT
-* Default of LVVE_Config_AlgoMask1
-* @see LVVIDHeader_ControlParams_st
-*/
-#define LVVIDHEADER_LVVE_CONFIG_ALGOMASK1_DEFAULT (LVVIDHEADER_CONFIGURATIONS_MASK1_BM_MAX)
-
-/**
-* @def LVVIDHEADER_LVVE_CONFIG_ALGOMASK2_DEFAULT
-* Default of LVVE_Config_AlgoMask2
-* @see LVVIDHeader_ControlParams_st
-*/
-#define LVVIDHEADER_LVVE_CONFIG_ALGOMASK2_DEFAULT (LVVIDHEADER_CONFIGURATIONS_MASK2_BM_MAX)
-
-/**
-* @def LVVIDHEADER_MESSAGEID_DEFAULT
-* Default of MessageID
-* @see LVVIDHeader_ControlParams_st
-*/
-#define LVVIDHEADER_MESSAGEID_DEFAULT (LVVE_RX_PRESET)
-
-/**
-* @def LVVIDHEADER_SAMPLERATE_DEFAULT
-* Default of SampleRate
-* @see LVVIDHeader_ControlParams_st
-*/
-#define LVVIDHEADER_SAMPLERATE_DEFAULT (LVM_FS_8000)
-
-/**
-* @def LVVIDHEADER_VOLUMEINDEX_DEFAULT
-* Default of VolumeIndex
-* @see LVVIDHeader_ControlParams_st
-*/
-#define LVVIDHEADER_VOLUMEINDEX_DEFAULT (0)
-/**
-* @def LVVIDHEADER_VOLUMEINDEX_MIN
-* MinValue of VolumeIndex
-* @see LVVIDHeader_ControlParams_st
-*/
-#define LVVIDHEADER_VOLUMEINDEX_MIN (0)
-/**
-* @def LVVIDHEADER_VOLUMEINDEX_MAX
-* MaxValue of VolumeIndex
-* @see LVVIDHeader_ControlParams_st
-*/
-#define LVVIDHEADER_VOLUMEINDEX_MAX (255)
-
-/**
-* @def LVVIDHEADER_NUMVOLUMES_DEFAULT
-* Default of NumVolumes
-* @see LVVIDHeader_ControlParams_st
-*/
-#define LVVIDHEADER_NUMVOLUMES_DEFAULT (1)
-/**
-* @def LVVIDHEADER_NUMVOLUMES_MIN
-* MinValue of NumVolumes
-* @see LVVIDHeader_ControlParams_st
-*/
-#define LVVIDHEADER_NUMVOLUMES_MIN (0)
-/**
-* @def LVVIDHEADER_NUMVOLUMES_MAX
-* MaxValue of NumVolumes
-* @see LVVIDHeader_ControlParams_st
-*/
-#define LVVIDHEADER_NUMVOLUMES_MAX (255)
-
-/**
-* @def LVVC_OPERATINGMODE_DEFAULT
-* Default of OperatingMode
-* @see LVVC_ControlParams_st
-*/
-#define LVVC_OPERATINGMODE_DEFAULT (LVM_MODE_OFF)
-
-/**
-* @def LVVC_MODE_DEFAULT
-* Default of mode
-* @see LVVC_ControlParams_st
-*/
-#define LVVC_MODE_DEFAULT (0)
-
-/**
-* @def LVVC_GAIN_LIN_MAX_DEFAULT
-* Default of Gain_Lin_Max
-* @see LVVC_ControlParams_st
-*/
-#define LVVC_GAIN_LIN_MAX_DEFAULT (1286)
-/**
-* @def LVVC_GAIN_LIN_MAX_MIN
-* MinValue of Gain_Lin_Max
-* @see LVVC_ControlParams_st
-*/
-#define LVVC_GAIN_LIN_MAX_MIN (512)
-/**
-* @def LVVC_GAIN_LIN_MAX_MAX
-* MaxValue of Gain_Lin_Max
-* @see LVVC_ControlParams_st
-*/
-#define LVVC_GAIN_LIN_MAX_MAX (32767)
-
-/**
-* @def LVVC_NOISE_SENSITIVITY_DEFAULT
-* Default of Noise_Sensitivity
-* @see LVVC_ControlParams_st
-*/
-#define LVVC_NOISE_SENSITIVITY_DEFAULT (20000)
-/**
-* @def LVVC_NOISE_SENSITIVITY_MIN
-* MinValue of Noise_Sensitivity
-* @see LVVC_ControlParams_st
-*/
-#define LVVC_NOISE_SENSITIVITY_MIN (-6709)
-/**
-* @def LVVC_NOISE_SENSITIVITY_MAX
-* MaxValue of Noise_Sensitivity
-* @see LVVC_ControlParams_st
-*/
-#define LVVC_NOISE_SENSITIVITY_MAX (32767)
-
-/**
-* @def LVVC_AVL_TARGET_LEVEL_LIN_DEFAULT
-* Default of AVL_Target_level_lin
-* @see LVVC_ControlParams_st
-*/
-#define LVVC_AVL_TARGET_LEVEL_LIN_DEFAULT (16384)
-/**
-* @def LVVC_AVL_TARGET_LEVEL_LIN_MIN
-* MinValue of AVL_Target_level_lin
-* @see LVVC_ControlParams_st
-*/
-#define LVVC_AVL_TARGET_LEVEL_LIN_MIN (0)
-/**
-* @def LVVC_AVL_TARGET_LEVEL_LIN_MAX
-* MaxValue of AVL_Target_level_lin
-* @see LVVC_ControlParams_st
-*/
-#define LVVC_AVL_TARGET_LEVEL_LIN_MAX (32767)
-
-/**
-* @def LVVC_AVL_MINGAINLIN_DEFAULT
-* Default of AVL_MinGainLin
-* @see LVVC_ControlParams_st
-*/
-#define LVVC_AVL_MINGAINLIN_DEFAULT (256)
-/**
-* @def LVVC_AVL_MINGAINLIN_MIN
-* MinValue of AVL_MinGainLin
-* @see LVVC_ControlParams_st
-*/
-#define LVVC_AVL_MINGAINLIN_MIN (0)
-/**
-* @def LVVC_AVL_MINGAINLIN_MAX
-* MaxValue of AVL_MinGainLin
-* @see LVVC_ControlParams_st
-*/
-#define LVVC_AVL_MINGAINLIN_MAX (512)
-
-/**
-* @def LVVC_AVL_MAXGAINLIN_DEFAULT
-* Default of AVL_MaxGainLin
-* @see LVVC_ControlParams_st
-*/
-#define LVVC_AVL_MAXGAINLIN_DEFAULT (8192)
-/**
-* @def LVVC_AVL_MAXGAINLIN_MIN
-* MinValue of AVL_MaxGainLin
-* @see LVVC_ControlParams_st
-*/
-#define LVVC_AVL_MAXGAINLIN_MIN (512)
-/**
-* @def LVVC_AVL_MAXGAINLIN_MAX
-* MaxValue of AVL_MaxGainLin
-* @see LVVC_ControlParams_st
-*/
-#define LVVC_AVL_MAXGAINLIN_MAX (32767)
-
-/**
-* @def LVVC_AVL_NOMINALGAIN_DEFAULT
-* Default of AVL_NominalGain
-* @see LVVC_ControlParams_st
-*/
-#define LVVC_AVL_NOMINALGAIN_DEFAULT (512)
-/**
-* @def LVVC_AVL_NOMINALGAIN_MIN
-* MinValue of AVL_NominalGain
-* @see LVVC_ControlParams_st
-*/
-#define LVVC_AVL_NOMINALGAIN_MIN (0)
-/**
-* @def LVVC_AVL_NOMINALGAIN_MAX
-* MaxValue of AVL_NominalGain
-* @see LVVC_ControlParams_st
-*/
-#define LVVC_AVL_NOMINALGAIN_MAX (32767)
-
-/**
-* @def LVVC_AVL_ATTACK_DEFAULT
-* Default of AVL_Attack
-* @see LVVC_ControlParams_st
-*/
-#define LVVC_AVL_ATTACK_DEFAULT (12055)
-/**
-* @def LVVC_AVL_ATTACK_MIN
-* MinValue of AVL_Attack
-* @see LVVC_ControlParams_st
-*/
-#define LVVC_AVL_ATTACK_MIN (0)
-/**
-* @def LVVC_AVL_ATTACK_MAX
-* MaxValue of AVL_Attack
-* @see LVVC_ControlParams_st
-*/
-#define LVVC_AVL_ATTACK_MAX (32767)
-
-/**
-* @def LVVC_AVL_RELEASE_DEFAULT
-* Default of AVL_Release
-* @see LVVC_ControlParams_st
-*/
-#define LVVC_AVL_RELEASE_DEFAULT (32604)
-/**
-* @def LVVC_AVL_RELEASE_MIN
-* MinValue of AVL_Release
-* @see LVVC_ControlParams_st
-*/
-#define LVVC_AVL_RELEASE_MIN (0)
-/**
-* @def LVVC_AVL_RELEASE_MAX
-* MaxValue of AVL_Release
-* @see LVVC_ControlParams_st
-*/
-#define LVVC_AVL_RELEASE_MAX (32767)
-
-/**
-* @def LVVC_AVL_RELEASEMAX_DEFAULT
-* Default of AVL_ReleaseMax
-* @see LVVC_ControlParams_st
-*/
-#define LVVC_AVL_RELEASEMAX_DEFAULT (32441)
-/**
-* @def LVVC_AVL_RELEASEMAX_MIN
-* MinValue of AVL_ReleaseMax
-* @see LVVC_ControlParams_st
-*/
-#define LVVC_AVL_RELEASEMAX_MIN (0)
-/**
-* @def LVVC_AVL_RELEASEMAX_MAX
-* MaxValue of AVL_ReleaseMax
-* @see LVVC_ControlParams_st
-*/
-#define LVVC_AVL_RELEASEMAX_MAX (32767)
-
-/**
-* @def LVVC_AVL_LIMIT_MAXOUTPUTLIN_DEFAULT
-* Default of AVL_Limit_MaxOutputLin
-* @see LVVC_ControlParams_st
-*/
-#define LVVC_AVL_LIMIT_MAXOUTPUTLIN_DEFAULT (23170)
-/**
-* @def LVVC_AVL_LIMIT_MAXOUTPUTLIN_MIN
-* MinValue of AVL_Limit_MaxOutputLin
-* @see LVVC_ControlParams_st
-*/
-#define LVVC_AVL_LIMIT_MAXOUTPUTLIN_MIN (0)
-/**
-* @def LVVC_AVL_LIMIT_MAXOUTPUTLIN_MAX
-* MaxValue of AVL_Limit_MaxOutputLin
-* @see LVVC_ControlParams_st
-*/
-#define LVVC_AVL_LIMIT_MAXOUTPUTLIN_MAX (32767)
-
-/**
-* @def LVVC_SPDETECT_THRESHOLD_DEFAULT
-* Default of SpDetect_Threshold
-* @see LVVC_ControlParams_st
-*/
-#define LVVC_SPDETECT_THRESHOLD_DEFAULT (1024)
-/**
-* @def LVVC_SPDETECT_THRESHOLD_MIN
-* MinValue of SpDetect_Threshold
-* @see LVVC_ControlParams_st
-*/
-#define LVVC_SPDETECT_THRESHOLD_MIN (0)
-/**
-* @def LVVC_SPDETECT_THRESHOLD_MAX
-* MaxValue of SpDetect_Threshold
-* @see LVVC_ControlParams_st
-*/
-#define LVVC_SPDETECT_THRESHOLD_MAX (32767)
-
-/**
-* @def LVFENS_OPERATINGMODE_DEFAULT
-* Default of OperatingMode
-* @see LVFENS_ControlParams_st
-*/
-#define LVFENS_OPERATINGMODE_DEFAULT (LVM_MODE_OFF)
-
-/**
-* @def LVFENS_FENS_LIMIT_NS_DEFAULT
-* Default of FENS_limit_NS
-* @see LVFENS_ControlParams_st
-*/
-#define LVFENS_FENS_LIMIT_NS_DEFAULT (10976)
-/**
-* @def LVFENS_FENS_LIMIT_NS_MIN
-* MinValue of FENS_limit_NS
-* @see LVFENS_ControlParams_st
-*/
-#define LVFENS_FENS_LIMIT_NS_MIN (0)
-/**
-* @def LVFENS_FENS_LIMIT_NS_MAX
-* MaxValue of FENS_limit_NS
-* @see LVFENS_ControlParams_st
-*/
-#define LVFENS_FENS_LIMIT_NS_MAX (32767)
-
-/**
-* @def LVFENS_MODE_DEFAULT
-* Default of Mode
-* @see LVFENS_ControlParams_st
-*/
-#define LVFENS_MODE_DEFAULT (0)
-
-/**
-* @def LVWM_OPERATINGMODE_DEFAULT
-* Default of OperatingMode
-* @see LVWM_ControlParams_st
-*/
-#define LVWM_OPERATINGMODE_DEFAULT (LVM_MODE_OFF)
-
-/**
-* @def LVWM_MODE_DEFAULT
-* Default of mode
-* @see LVWM_ControlParams_st
-*/
-#define LVWM_MODE_DEFAULT (7)
-
-/**
-* @def LVWM_AVL_TARGET_LEVEL_LIN_DEFAULT
-* Default of AVL_Target_level_lin
-* @see LVWM_ControlParams_st
-*/
-#define LVWM_AVL_TARGET_LEVEL_LIN_DEFAULT (16384)
-/**
-* @def LVWM_AVL_TARGET_LEVEL_LIN_MIN
-* MinValue of AVL_Target_level_lin
-* @see LVWM_ControlParams_st
-*/
-#define LVWM_AVL_TARGET_LEVEL_LIN_MIN (0)
-/**
-* @def LVWM_AVL_TARGET_LEVEL_LIN_MAX
-* MaxValue of AVL_Target_level_lin
-* @see LVWM_ControlParams_st
-*/
-#define LVWM_AVL_TARGET_LEVEL_LIN_MAX (32767)
-
-/**
-* @def LVWM_AVL_MINGAINLIN_DEFAULT
-* Default of AVL_MinGainLin
-* @see LVWM_ControlParams_st
-*/
-#define LVWM_AVL_MINGAINLIN_DEFAULT (128)
-/**
-* @def LVWM_AVL_MINGAINLIN_MIN
-* MinValue of AVL_MinGainLin
-* @see LVWM_ControlParams_st
-*/
-#define LVWM_AVL_MINGAINLIN_MIN (0)
-/**
-* @def LVWM_AVL_MINGAINLIN_MAX
-* MaxValue of AVL_MinGainLin
-* @see LVWM_ControlParams_st
-*/
-#define LVWM_AVL_MINGAINLIN_MAX (512)
-
-/**
-* @def LVWM_AVL_MAXGAINLIN_DEFAULT
-* Default of AVL_MaxGainLin
-* @see LVWM_ControlParams_st
-*/
-#define LVWM_AVL_MAXGAINLIN_DEFAULT (8189)
-/**
-* @def LVWM_AVL_MAXGAINLIN_MIN
-* MinValue of AVL_MaxGainLin
-* @see LVWM_ControlParams_st
-*/
-#define LVWM_AVL_MAXGAINLIN_MIN (512)
-/**
-* @def LVWM_AVL_MAXGAINLIN_MAX
-* MaxValue of AVL_MaxGainLin
-* @see LVWM_ControlParams_st
-*/
-#define LVWM_AVL_MAXGAINLIN_MAX (32767)
-
-/**
-* @def LVWM_AVL_ATTACK_DEFAULT
-* Default of AVL_Attack
-* @see LVWM_ControlParams_st
-*/
-#define LVWM_AVL_ATTACK_DEFAULT (25520)
-/**
-* @def LVWM_AVL_ATTACK_MIN
-* MinValue of AVL_Attack
-* @see LVWM_ControlParams_st
-*/
-#define LVWM_AVL_ATTACK_MIN (0)
-/**
-* @def LVWM_AVL_ATTACK_MAX
-* MaxValue of AVL_Attack
-* @see LVWM_ControlParams_st
-*/
-#define LVWM_AVL_ATTACK_MAX (32767)
-
-/**
-* @def LVWM_AVL_RELEASE_DEFAULT
-* Default of AVL_Release
-* @see LVWM_ControlParams_st
-*/
-#define LVWM_AVL_RELEASE_DEFAULT (32685)
-/**
-* @def LVWM_AVL_RELEASE_MIN
-* MinValue of AVL_Release
-* @see LVWM_ControlParams_st
-*/
-#define LVWM_AVL_RELEASE_MIN (0)
-/**
-* @def LVWM_AVL_RELEASE_MAX
-* MaxValue of AVL_Release
-* @see LVWM_ControlParams_st
-*/
-#define LVWM_AVL_RELEASE_MAX (32767)
-
-/**
-* @def LVWM_AVL_LIMIT_MAXOUTPUTLIN_DEFAULT
-* Default of AVL_Limit_MaxOutputLin
-* @see LVWM_ControlParams_st
-*/
-#define LVWM_AVL_LIMIT_MAXOUTPUTLIN_DEFAULT (23197)
-/**
-* @def LVWM_AVL_LIMIT_MAXOUTPUTLIN_MIN
-* MinValue of AVL_Limit_MaxOutputLin
-* @see LVWM_ControlParams_st
-*/
-#define LVWM_AVL_LIMIT_MAXOUTPUTLIN_MIN (0)
-/**
-* @def LVWM_AVL_LIMIT_MAXOUTPUTLIN_MAX
-* MaxValue of AVL_Limit_MaxOutputLin
-* @see LVWM_ControlParams_st
-*/
-#define LVWM_AVL_LIMIT_MAXOUTPUTLIN_MAX (32767)
-
-/**
-* @def LVWM_SPDETECT_THRESHOLD_DEFAULT
-* Default of SpDetect_Threshold
-* @see LVWM_ControlParams_st
-*/
-#define LVWM_SPDETECT_THRESHOLD_DEFAULT (9216)
-/**
-* @def LVWM_SPDETECT_THRESHOLD_MIN
-* MinValue of SpDetect_Threshold
-* @see LVWM_ControlParams_st
-*/
-#define LVWM_SPDETECT_THRESHOLD_MIN (0)
-/**
-* @def LVWM_SPDETECT_THRESHOLD_MAX
-* MaxValue of SpDetect_Threshold
-* @see LVWM_ControlParams_st
-*/
-#define LVWM_SPDETECT_THRESHOLD_MAX (32767)
-
-/**
-* @def LVDRC_OPERATINGMODE_DEFAULT
-* Default of OperatingMode
-* @see LVDRC_ControlParams_st
-*/
-#define LVDRC_OPERATINGMODE_DEFAULT (LVM_MODE_OFF)
-
-/**
-* @def LVDRC_NUMKNEES_DEFAULT
-* Default of NumKnees
-* @see LVDRC_ControlParams_st
-*/
-#define LVDRC_NUMKNEES_DEFAULT (5)
-/**
-* @def LVDRC_NUMKNEES_MIN
-* MinValue of NumKnees
-* @see LVDRC_ControlParams_st
-*/
-#define LVDRC_NUMKNEES_MIN (1)
-/**
-* @def LVDRC_NUMKNEES_MAX
-* MaxValue of NumKnees
-* @see LVDRC_ControlParams_st
-*/
-#define LVDRC_NUMKNEES_MAX (5)
-
-/**
-* @def LVDRC_COMPRESSORCURVEINPUTLEVELS_DEFAULT
-* Default of CompressorCurveInputLevels
-* @see LVDRC_ControlParams_st
-*/
-#define LVDRC_COMPRESSORCURVEINPUTLEVELS_DEFAULT {-96,-70,-50, -24, 0}
-/**
-* @def LVDRC_COMPRESSORCURVEINPUTLEVELS_MIN
-* MinValue of CompressorCurveInputLevels
-* @see LVDRC_ControlParams_st
-*/
-#define LVDRC_COMPRESSORCURVEINPUTLEVELS_MIN (-96)
-/**
-* @def LVDRC_COMPRESSORCURVEINPUTLEVELS_MAX
-* MaxValue of CompressorCurveInputLevels
-* @see LVDRC_ControlParams_st
-*/
-#define LVDRC_COMPRESSORCURVEINPUTLEVELS_MAX (0)
-/**
-* @def LVDRC_COMPRESSORCURVEINPUTLEVELS_LENGTH
-* Length of CompressorCurveInputLevels
-* @see LVDRC_ControlParams_st
-*/
-#define LVDRC_COMPRESSORCURVEINPUTLEVELS_LENGTH (5)
-
-/**
-* @def LVDRC_COMPRESSORCURVEOUTPUTLEVELS_DEFAULT
-* Default of CompressorCurveOutputLevels
-* @see LVDRC_ControlParams_st
-*/
-#define LVDRC_COMPRESSORCURVEOUTPUTLEVELS_DEFAULT {-96,-70,-38,-12,0}
-/**
-* @def LVDRC_COMPRESSORCURVEOUTPUTLEVELS_MIN
-* MinValue of CompressorCurveOutputLevels
-* @see LVDRC_ControlParams_st
-*/
-#define LVDRC_COMPRESSORCURVEOUTPUTLEVELS_MIN (-96)
-/**
-* @def LVDRC_COMPRESSORCURVEOUTPUTLEVELS_MAX
-* MaxValue of CompressorCurveOutputLevels
-* @see LVDRC_ControlParams_st
-*/
-#define LVDRC_COMPRESSORCURVEOUTPUTLEVELS_MAX (0)
-/**
-* @def LVDRC_COMPRESSORCURVEOUTPUTLEVELS_LENGTH
-* Length of CompressorCurveOutputLevels
-* @see LVDRC_ControlParams_st
-*/
-#define LVDRC_COMPRESSORCURVEOUTPUTLEVELS_LENGTH (5)
-
-/**
-* @def LVDRC_ATTACKTIME_DEFAULT
-* Default of AttackTime
-* @see LVDRC_ControlParams_st
-*/
-#define LVDRC_ATTACKTIME_DEFAULT (50)
-/**
-* @def LVDRC_ATTACKTIME_MIN
-* MinValue of AttackTime
-* @see LVDRC_ControlParams_st
-*/
-#define LVDRC_ATTACKTIME_MIN (0)
-/**
-* @def LVDRC_ATTACKTIME_MAX
-* MaxValue of AttackTime
-* @see LVDRC_ControlParams_st
-*/
-#define LVDRC_ATTACKTIME_MAX (32767)
-
-/**
-* @def LVDRC_RELEASETIME_DEFAULT
-* Default of ReleaseTime
-* @see LVDRC_ControlParams_st
-*/
-#define LVDRC_RELEASETIME_DEFAULT (50)
-/**
-* @def LVDRC_RELEASETIME_MIN
-* MinValue of ReleaseTime
-* @see LVDRC_ControlParams_st
-*/
-#define LVDRC_RELEASETIME_MIN (0)
-/**
-* @def LVDRC_RELEASETIME_MAX
-* MaxValue of ReleaseTime
-* @see LVDRC_ControlParams_st
-*/
-#define LVDRC_RELEASETIME_MAX (32767)
-
-/**
-* @def LVDRC_LIMITEROPERATINGMODE_DEFAULT
-* Default of LimiterOperatingMode
-* @see LVDRC_ControlParams_st
-*/
-#define LVDRC_LIMITEROPERATINGMODE_DEFAULT (LVM_MODE_OFF)
-
-/**
-* @def LVDRC_LIMITLEVEL_DEFAULT
-* Default of LimitLevel
-* @see LVDRC_ControlParams_st
-*/
-#define LVDRC_LIMITLEVEL_DEFAULT (0)
-/**
-* @def LVDRC_LIMITLEVEL_MIN
-* MinValue of LimitLevel
-* @see LVDRC_ControlParams_st
-*/
-#define LVDRC_LIMITLEVEL_MIN (-96)
-/**
-* @def LVDRC_LIMITLEVEL_MAX
-* MaxValue of LimitLevel
-* @see LVDRC_ControlParams_st
-*/
-#define LVDRC_LIMITLEVEL_MAX (0)
-
-/**
-* @def LVNG_OPERATINGMODE_DEFAULT
-* Default of OperatingMode
-* @see LVNG_ControlParams_st
-*/
-#define LVNG_OPERATINGMODE_DEFAULT (LVM_MODE_OFF)
-
-/**
-* @def LVNG_NUMKNEES_DEFAULT
-* Default of NumKnees
-* @see LVNG_ControlParams_st
-*/
-#define LVNG_NUMKNEES_DEFAULT (5)
-/**
-* @def LVNG_NUMKNEES_MIN
-* MinValue of NumKnees
-* @see LVNG_ControlParams_st
-*/
-#define LVNG_NUMKNEES_MIN (1)
-/**
-* @def LVNG_NUMKNEES_MAX
-* MaxValue of NumKnees
-* @see LVNG_ControlParams_st
-*/
-#define LVNG_NUMKNEES_MAX (5)
-
-/**
-* @def LVNG_COMPRESSORCURVEINPUTLEVELS_DEFAULT
-* Default of CompressorCurveInputLevels
-* @see LVNG_ControlParams_st
-*/
-#define LVNG_COMPRESSORCURVEINPUTLEVELS_DEFAULT {-80,-70,-50, -24, 0}
-/**
-* @def LVNG_COMPRESSORCURVEINPUTLEVELS_MIN
-* MinValue of CompressorCurveInputLevels
-* @see LVNG_ControlParams_st
-*/
-#define LVNG_COMPRESSORCURVEINPUTLEVELS_MIN (-96)
-/**
-* @def LVNG_COMPRESSORCURVEINPUTLEVELS_MAX
-* MaxValue of CompressorCurveInputLevels
-* @see LVNG_ControlParams_st
-*/
-#define LVNG_COMPRESSORCURVEINPUTLEVELS_MAX (0)
-/**
-* @def LVNG_COMPRESSORCURVEINPUTLEVELS_LENGTH
-* Length of CompressorCurveInputLevels
-* @see LVNG_ControlParams_st
-*/
-#define LVNG_COMPRESSORCURVEINPUTLEVELS_LENGTH (5)
-
-/**
-* @def LVNG_COMPRESSORCURVEOUTPUTLEVELS_DEFAULT
-* Default of CompressorCurveOutputLevels
-* @see LVNG_ControlParams_st
-*/
-#define LVNG_COMPRESSORCURVEOUTPUTLEVELS_DEFAULT {-96,-80,-50, -24, 0}
-/**
-* @def LVNG_COMPRESSORCURVEOUTPUTLEVELS_MIN
-* MinValue of CompressorCurveOutputLevels
-* @see LVNG_ControlParams_st
-*/
-#define LVNG_COMPRESSORCURVEOUTPUTLEVELS_MIN (-96)
-/**
-* @def LVNG_COMPRESSORCURVEOUTPUTLEVELS_MAX
-* MaxValue of CompressorCurveOutputLevels
-* @see LVNG_ControlParams_st
-*/
-#define LVNG_COMPRESSORCURVEOUTPUTLEVELS_MAX (0)
-/**
-* @def LVNG_COMPRESSORCURVEOUTPUTLEVELS_LENGTH
-* Length of CompressorCurveOutputLevels
-* @see LVNG_ControlParams_st
-*/
-#define LVNG_COMPRESSORCURVEOUTPUTLEVELS_LENGTH (5)
-
-/**
-* @def LVNG_ATTACKTIME_DEFAULT
-* Default of AttackTime
-* @see LVNG_ControlParams_st
-*/
-#define LVNG_ATTACKTIME_DEFAULT (50)
-/**
-* @def LVNG_ATTACKTIME_MIN
-* MinValue of AttackTime
-* @see LVNG_ControlParams_st
-*/
-#define LVNG_ATTACKTIME_MIN (0)
-/**
-* @def LVNG_ATTACKTIME_MAX
-* MaxValue of AttackTime
-* @see LVNG_ControlParams_st
-*/
-#define LVNG_ATTACKTIME_MAX (32767)
-
-/**
-* @def LVNG_RELEASETIME_DEFAULT
-* Default of ReleaseTime
-* @see LVNG_ControlParams_st
-*/
-#define LVNG_RELEASETIME_DEFAULT (50)
-/**
-* @def LVNG_RELEASETIME_MIN
-* MinValue of ReleaseTime
-* @see LVNG_ControlParams_st
-*/
-#define LVNG_RELEASETIME_MIN (0)
-/**
-* @def LVNG_RELEASETIME_MAX
-* MaxValue of ReleaseTime
-* @see LVNG_ControlParams_st
-*/
-#define LVNG_RELEASETIME_MAX (32767)
-
-/**
-* @def LVNLPP_NLPP_LIMIT_DEFAULT
-* Default of NLPP_Limit
-* @see LVNLPP_ControlParams_st
-*/
-#define LVNLPP_NLPP_LIMIT_DEFAULT (0)
-/**
-* @def LVNLPP_NLPP_LIMIT_MIN
-* MinValue of NLPP_Limit
-* @see LVNLPP_ControlParams_st
-*/
-#define LVNLPP_NLPP_LIMIT_MIN (-24)
-/**
-* @def LVNLPP_NLPP_LIMIT_MAX
-* MaxValue of NLPP_Limit
-* @see LVNLPP_ControlParams_st
-*/
-#define LVNLPP_NLPP_LIMIT_MAX (0)
-
-/**
-* @def LVNLPP_NLPP_HPF_CORNERFREQ_DEFAULT
-* Default of NLPP_HPF_CornerFreq
-* @see LVNLPP_ControlParams_st
-*/
-#define LVNLPP_NLPP_HPF_CORNERFREQ_DEFAULT (50)
-/**
-* @def LVNLPP_NLPP_HPF_CORNERFREQ_MIN
-* MinValue of NLPP_HPF_CornerFreq
-* @see LVNLPP_ControlParams_st
-*/
-#define LVNLPP_NLPP_HPF_CORNERFREQ_MIN (50)
-/**
-* @def LVNLPP_NLPP_HPF_CORNERFREQ_MAX
-* MaxValue of NLPP_HPF_CornerFreq
-* @see LVNLPP_ControlParams_st
-*/
-#define LVNLPP_NLPP_HPF_CORNERFREQ_MAX (1000)
-
-/**
-* @def LVEQ_EQ_LENGTH_DEFAULT
-* Default of EQ_Length
-* @see LVEQ_ControlParams_st
-*/
-#define LVEQ_EQ_LENGTH_DEFAULT (32)
-/**
-* @def LVEQ_EQ_LENGTH_MIN
-* MinValue of EQ_Length
-* @see LVEQ_ControlParams_st
-*/
-#define LVEQ_EQ_LENGTH_MIN (8)
-/**
-* @def LVEQ_EQ_LENGTH_MAX
-* MaxValue of EQ_Length
-* @see LVEQ_ControlParams_st
-*/
-#define LVEQ_EQ_LENGTH_MAX (32)
-
-/**
-* @def LVEQ_EQ_COEFS_DEFAULT
-* Default of EQ_Coefs
-* @see LVEQ_ControlParams_st
-*/
-#define LVEQ_EQ_COEFS_DEFAULT {4096,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}
-/**
-* @def LVEQ_EQ_COEFS_MIN
-* MinValue of EQ_Coefs
-* @see LVEQ_ControlParams_st
-*/
-#define LVEQ_EQ_COEFS_MIN (-32768)
-/**
-* @def LVEQ_EQ_COEFS_MAX
-* MaxValue of EQ_Coefs
-* @see LVEQ_ControlParams_st
-*/
-#define LVEQ_EQ_COEFS_MAX (32767)
-/**
-* @def LVEQ_EQ_COEFS_LENGTH
-* Length of EQ_Coefs
-* @see LVEQ_ControlParams_st
-*/
-#define LVEQ_EQ_COEFS_LENGTH (32)
-
-/**
-* @def LVVOL_VOL_OPERATINGMODE_DEFAULT
-* Default of VOL_OperatingMode
-* @see LVVOL_ControlParams_st
-*/
-#define LVVOL_VOL_OPERATINGMODE_DEFAULT (LVM_MODE_OFF)
-
-/**
-* @def LVVOL_VOL_GAIN_DEFAULT
-* Default of VOL_Gain
-* @see LVVOL_ControlParams_st
-*/
-#define LVVOL_VOL_GAIN_DEFAULT (0)
-/**
-* @def LVVOL_VOL_GAIN_MIN
-* MinValue of VOL_Gain
-* @see LVVOL_ControlParams_st
-*/
-#define LVVOL_VOL_GAIN_MIN (-96)
-/**
-* @def LVVOL_VOL_GAIN_MAX
-* MaxValue of VOL_Gain
-* @see LVVOL_ControlParams_st
-*/
-#define LVVOL_VOL_GAIN_MAX (24)
-
-/**
-* @def LVHPF_HPF_OPERATINGMODE_DEFAULT
-* Default of HPF_OperatingMode
-* @see LVHPF_ControlParams_st
-*/
-#define LVHPF_HPF_OPERATINGMODE_DEFAULT (LVM_MODE_OFF)
-
-/**
-* @def LVHPF_HPF_CORNERFREQ_DEFAULT
-* Default of HPF_CornerFreq
-* @see LVHPF_ControlParams_st
-*/
-#define LVHPF_HPF_CORNERFREQ_DEFAULT (50)
-/**
-* @def LVHPF_HPF_CORNERFREQ_MIN
-* MinValue of HPF_CornerFreq
-* @see LVHPF_ControlParams_st
-*/
-#define LVHPF_HPF_CORNERFREQ_MIN (50)
-/**
-* @def LVHPF_HPF_CORNERFREQ_MAX
-* MaxValue of HPF_CornerFreq
-* @see LVHPF_ControlParams_st
-*/
-#define LVHPF_HPF_CORNERFREQ_MAX (1500)
-
-/**
-* @def LVMUTE_MUTE_DEFAULT
-* Default of Mute
-* @see LVMUTE_ControlParams_st
-*/
-#define LVMUTE_MUTE_DEFAULT (LVM_MODE_OFF)
-
-/**
-* @def LVVE_RX_OPERATINGMODE_DEFAULT
-* Default of OperatingMode
-* @see LVVE_Rx_ControlParams_st
-*/
-#define LVVE_RX_OPERATINGMODE_DEFAULT (LVVE_RX_MODE_OFF)
-
-/**
-* @def LVVE_RX_MUTE_DEFAULT
-* Default of Mute
-* @see LVVE_Rx_ControlParams_st
-*/
-#define LVVE_RX_MUTE_DEFAULT (LVM_MODE_OFF)
-
-/**
-* @def LVVE_RX_VOL_OPERATINGMODE_DEFAULT
-* Default of VOL_OperatingMode
-* @see LVVE_Rx_ControlParams_st
-*/
-#define LVVE_RX_VOL_OPERATINGMODE_DEFAULT (LVM_MODE_OFF)
-
-/**
-* @def LVVE_RX_VOL_GAIN_DEFAULT
-* Default of VOL_Gain
-* @see LVVE_Rx_ControlParams_st
-*/
-#define LVVE_RX_VOL_GAIN_DEFAULT (0)
-/**
-* @def LVVE_RX_VOL_GAIN_MIN
-* MinValue of VOL_Gain
-* @see LVVE_Rx_ControlParams_st
-*/
-#define LVVE_RX_VOL_GAIN_MIN (-96)
-/**
-* @def LVVE_RX_VOL_GAIN_MAX
-* MaxValue of VOL_Gain
-* @see LVVE_Rx_ControlParams_st
-*/
-#define LVVE_RX_VOL_GAIN_MAX (24)
-
-
-/**
-* @def LVVE_RX_NLPP_OPERATINGMODE_DEFAULT
-* Default of NLPP_OperatingMode
-* @see LVVE_Rx_ControlParams_st
-*/
-#define LVVE_RX_NLPP_OPERATINGMODE_DEFAULT (LVM_MODE_OFF)
-
-
-
-/**
-* @def LVVE_RX_EQ_OPERATINGMODE_DEFAULT
-* Default of EQ_OperatingMode
-* @see LVVE_Rx_ControlParams_st
-*/
-#define LVVE_RX_EQ_OPERATINGMODE_DEFAULT (LVM_MODE_OFF)
-
-
-
-/**
-* @def LVVE_RX_HPF_OPERATINGMODE_DEFAULT
-* Default of HPF_OperatingMode
-* @see LVVE_Rx_ControlParams_st
-*/
-#define LVVE_RX_HPF_OPERATINGMODE_DEFAULT (LVM_MODE_OFF)
-
-/**
-* @def LVVE_RX_HPF_CORNERFREQ_DEFAULT
-* Default of HPF_CornerFreq
-* @see LVVE_Rx_ControlParams_st
-*/
-#define LVVE_RX_HPF_CORNERFREQ_DEFAULT (50)
-/**
-* @def LVVE_RX_HPF_CORNERFREQ_MIN
-* MinValue of HPF_CornerFreq
-* @see LVVE_Rx_ControlParams_st
-*/
-#define LVVE_RX_HPF_CORNERFREQ_MIN (50)
-/**
-* @def LVVE_RX_HPF_CORNERFREQ_MAX
-* MaxValue of HPF_CornerFreq
-* @see LVVE_Rx_ControlParams_st
-*/
-#define LVVE_RX_HPF_CORNERFREQ_MAX (1500)
-
-
-
-/**
-* @def LVNV_OPERATINGMODE_DEFAULT
-* Default of OperatingMode
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_OPERATINGMODE_DEFAULT (LVM_MODE_OFF)
-
-/**
-* @def LVNV_MODE_DEFAULT
-* Default of Mode
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_MODE_DEFAULT (18935)
-
-/**
-* @def LVNV_MODE2_DEFAULT
-* Default of Mode2
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_MODE2_DEFAULT (14)
-
-/**
-* @def LVNV_TUNING_MODE_DEFAULT
-* Default of Tuning_mode
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_TUNING_MODE_DEFAULT (0)
-
-/**
-* @def LVNV_INPUT_GAIN_MIC0_DEFAULT
-* Default of Input_Gain_Mic0
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_INPUT_GAIN_MIC0_DEFAULT (8192)
-/**
-* @def LVNV_INPUT_GAIN_MIC0_MIN
-* MinValue of Input_Gain_Mic0
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_INPUT_GAIN_MIC0_MIN (0)
-/**
-* @def LVNV_INPUT_GAIN_MIC0_MAX
-* MaxValue of Input_Gain_Mic0
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_INPUT_GAIN_MIC0_MAX (32767)
-
-/**
-* @def LVNV_INPUT_GAIN_MIC1_DEFAULT
-* Default of Input_Gain_Mic1
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_INPUT_GAIN_MIC1_DEFAULT (8192)
-/**
-* @def LVNV_INPUT_GAIN_MIC1_MIN
-* MinValue of Input_Gain_Mic1
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_INPUT_GAIN_MIC1_MIN (0)
-/**
-* @def LVNV_INPUT_GAIN_MIC1_MAX
-* MaxValue of Input_Gain_Mic1
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_INPUT_GAIN_MIC1_MAX (32767)
-
-/**
-* @def LVNV_OUTPUT_GAIN_DEFAULT
-* Default of Output_Gain
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_OUTPUT_GAIN_DEFAULT (2048)
-/**
-* @def LVNV_OUTPUT_GAIN_MIN
-* MinValue of Output_Gain
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_OUTPUT_GAIN_MIN (0)
-/**
-* @def LVNV_OUTPUT_GAIN_MAX
-* MaxValue of Output_Gain
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_OUTPUT_GAIN_MAX (32767)
-
-/**
-* @def LVNV_NLMS0_LB_TAPS_DEFAULT
-* Default of NLMS0_LB_taps
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_NLMS0_LB_TAPS_DEFAULT (32)
-/**
-* @def LVNV_NLMS0_LB_TAPS_MIN
-* MinValue of NLMS0_LB_taps
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_NLMS0_LB_TAPS_MIN (16)
-/**
-* @def LVNV_NLMS0_LB_TAPS_MAX
-* MaxValue of NLMS0_LB_taps
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_NLMS0_LB_TAPS_MAX (64)
-
-/**
-* @def LVNV_NLMS0_LB_TWOALPHA_DEFAULT
-* Default of NLMS0_LB_twoalpha
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_NLMS0_LB_TWOALPHA_DEFAULT (8192)
-/**
-* @def LVNV_NLMS0_LB_TWOALPHA_MIN
-* MinValue of NLMS0_LB_twoalpha
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_NLMS0_LB_TWOALPHA_MIN (0)
-/**
-* @def LVNV_NLMS0_LB_TWOALPHA_MAX
-* MaxValue of NLMS0_LB_twoalpha
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_NLMS0_LB_TWOALPHA_MAX (32767)
-
-/**
-* @def LVNV_NLMS0_LB_ERL_DEFAULT
-* Default of NLMS0_LB_erl
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_NLMS0_LB_ERL_DEFAULT (1000)
-/**
-* @def LVNV_NLMS0_LB_ERL_MIN
-* MinValue of NLMS0_LB_erl
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_NLMS0_LB_ERL_MIN (64)
-/**
-* @def LVNV_NLMS0_LB_ERL_MAX
-* MaxValue of NLMS0_LB_erl
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_NLMS0_LB_ERL_MAX (32767)
-
-/**
-* @def LVNV_NLMS0_HB_TAPS_DEFAULT
-* Default of NLMS0_HB_taps
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_NLMS0_HB_TAPS_DEFAULT (24)
-/**
-* @def LVNV_NLMS0_HB_TAPS_MIN
-* MinValue of NLMS0_HB_taps
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_NLMS0_HB_TAPS_MIN (16)
-/**
-* @def LVNV_NLMS0_HB_TAPS_MAX
-* MaxValue of NLMS0_HB_taps
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_NLMS0_HB_TAPS_MAX (64)
-
-/**
-* @def LVNV_NLMS0_HB_TWOALPHA_DEFAULT
-* Default of NLMS0_HB_twoalpha
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_NLMS0_HB_TWOALPHA_DEFAULT (8192)
-/**
-* @def LVNV_NLMS0_HB_TWOALPHA_MIN
-* MinValue of NLMS0_HB_twoalpha
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_NLMS0_HB_TWOALPHA_MIN (0)
-/**
-* @def LVNV_NLMS0_HB_TWOALPHA_MAX
-* MaxValue of NLMS0_HB_twoalpha
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_NLMS0_HB_TWOALPHA_MAX (32767)
-
-/**
-* @def LVNV_NLMS0_HB_ERL_DEFAULT
-* Default of NLMS0_HB_erl
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_NLMS0_HB_ERL_DEFAULT (1000)
-/**
-* @def LVNV_NLMS0_HB_ERL_MIN
-* MinValue of NLMS0_HB_erl
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_NLMS0_HB_ERL_MIN (64)
-/**
-* @def LVNV_NLMS0_HB_ERL_MAX
-* MaxValue of NLMS0_HB_erl
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_NLMS0_HB_ERL_MAX (32767)
-
-/**
-* @def LVNV_NLMS0_PRESET_COEFS_DEFAULT
-* Default of NLMS0_preset_coefs
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_NLMS0_PRESET_COEFS_DEFAULT (0)
-/**
-* @def LVNV_NLMS0_PRESET_COEFS_MIN
-* MinValue of NLMS0_preset_coefs
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_NLMS0_PRESET_COEFS_MIN (0)
-/**
-* @def LVNV_NLMS0_PRESET_COEFS_MAX
-* MaxValue of NLMS0_preset_coefs
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_NLMS0_PRESET_COEFS_MAX (2)
-
-/**
-* @def LVNV_NLMS0_OFFSET_DEFAULT
-* Default of NLMS0_offset
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_NLMS0_OFFSET_DEFAULT (776)
-/**
-* @def LVNV_NLMS0_OFFSET_MIN
-* MinValue of NLMS0_offset
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_NLMS0_OFFSET_MIN (0)
-/**
-* @def LVNV_NLMS0_OFFSET_MAX
-* MaxValue of NLMS0_offset
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_NLMS0_OFFSET_MAX (32767)
-
-/**
-* @def LVNV_NLMS1_LB_TAPS_DEFAULT
-* Default of NLMS1_LB_taps
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_NLMS1_LB_TAPS_DEFAULT (32)
-/**
-* @def LVNV_NLMS1_LB_TAPS_MIN
-* MinValue of NLMS1_LB_taps
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_NLMS1_LB_TAPS_MIN (16)
-/**
-* @def LVNV_NLMS1_LB_TAPS_MAX
-* MaxValue of NLMS1_LB_taps
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_NLMS1_LB_TAPS_MAX (32)
-
-/**
-* @def LVNV_NLMS1_LB_TWOALPHA_DEFAULT
-* Default of NLMS1_LB_twoalpha
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_NLMS1_LB_TWOALPHA_DEFAULT (8192)
-/**
-* @def LVNV_NLMS1_LB_TWOALPHA_MIN
-* MinValue of NLMS1_LB_twoalpha
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_NLMS1_LB_TWOALPHA_MIN (0)
-/**
-* @def LVNV_NLMS1_LB_TWOALPHA_MAX
-* MaxValue of NLMS1_LB_twoalpha
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_NLMS1_LB_TWOALPHA_MAX (32767)
-
-/**
-* @def LVNV_NLMS1_LB_ERL_DEFAULT
-* Default of NLMS1_LB_erl
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_NLMS1_LB_ERL_DEFAULT (1000)
-/**
-* @def LVNV_NLMS1_LB_ERL_MIN
-* MinValue of NLMS1_LB_erl
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_NLMS1_LB_ERL_MIN (64)
-/**
-* @def LVNV_NLMS1_LB_ERL_MAX
-* MaxValue of NLMS1_LB_erl
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_NLMS1_LB_ERL_MAX (32767)
-
-/**
-* @def LVNV_NLMS1_HB_TAPS_DEFAULT
-* Default of NLMS1_HB_taps
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_NLMS1_HB_TAPS_DEFAULT (24)
-/**
-* @def LVNV_NLMS1_HB_TAPS_MIN
-* MinValue of NLMS1_HB_taps
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_NLMS1_HB_TAPS_MIN (16)
-/**
-* @def LVNV_NLMS1_HB_TAPS_MAX
-* MaxValue of NLMS1_HB_taps
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_NLMS1_HB_TAPS_MAX (32)
-
-/**
-* @def LVNV_NLMS1_HB_TWOALPHA_DEFAULT
-* Default of NLMS1_HB_twoalpha
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_NLMS1_HB_TWOALPHA_DEFAULT (8192)
-/**
-* @def LVNV_NLMS1_HB_TWOALPHA_MIN
-* MinValue of NLMS1_HB_twoalpha
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_NLMS1_HB_TWOALPHA_MIN (0)
-/**
-* @def LVNV_NLMS1_HB_TWOALPHA_MAX
-* MaxValue of NLMS1_HB_twoalpha
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_NLMS1_HB_TWOALPHA_MAX (32767)
-
-/**
-* @def LVNV_NLMS1_HB_ERL_DEFAULT
-* Default of NLMS1_HB_erl
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_NLMS1_HB_ERL_DEFAULT (1000)
-/**
-* @def LVNV_NLMS1_HB_ERL_MIN
-* MinValue of NLMS1_HB_erl
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_NLMS1_HB_ERL_MIN (64)
-/**
-* @def LVNV_NLMS1_HB_ERL_MAX
-* MaxValue of NLMS1_HB_erl
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_NLMS1_HB_ERL_MAX (32767)
-
-/**
-* @def LVNV_NLMS1_PRESET_COEFS_DEFAULT
-* Default of NLMS1_preset_coefs
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_NLMS1_PRESET_COEFS_DEFAULT (0)
-/**
-* @def LVNV_NLMS1_PRESET_COEFS_MIN
-* MinValue of NLMS1_preset_coefs
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_NLMS1_PRESET_COEFS_MIN (0)
-/**
-* @def LVNV_NLMS1_PRESET_COEFS_MAX
-* MaxValue of NLMS1_preset_coefs
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_NLMS1_PRESET_COEFS_MAX (2)
-
-/**
-* @def LVNV_NLMS1_OFFSET_DEFAULT
-* Default of NLMS1_offset
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_NLMS1_OFFSET_DEFAULT (776)
-/**
-* @def LVNV_NLMS1_OFFSET_MIN
-* MinValue of NLMS1_offset
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_NLMS1_OFFSET_MIN (0)
-/**
-* @def LVNV_NLMS1_OFFSET_MAX
-* MaxValue of NLMS1_offset
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_NLMS1_OFFSET_MAX (32767)
-
-/**
-* @def LVNV_CAL_MICPOWFLOORMIN_DEFAULT
-* Default of CAL_micPowFloorMin
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_CAL_MICPOWFLOORMIN_DEFAULT (150)
-/**
-* @def LVNV_CAL_MICPOWFLOORMIN_MIN
-* MinValue of CAL_micPowFloorMin
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_CAL_MICPOWFLOORMIN_MIN (0)
-/**
-* @def LVNV_CAL_MICPOWFLOORMIN_MAX
-* MaxValue of CAL_micPowFloorMin
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_CAL_MICPOWFLOORMIN_MAX (32767)
-
-/**
-* @def LVNV_WGTHRESHOLD_DEFAULT
-* Default of WgThreshold
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_WGTHRESHOLD_DEFAULT (32767)
-/**
-* @def LVNV_WGTHRESHOLD_MIN
-* MinValue of WgThreshold
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_WGTHRESHOLD_MIN (0)
-/**
-* @def LVNV_WGTHRESHOLD_MAX
-* MaxValue of WgThreshold
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_WGTHRESHOLD_MAX (32767)
-
-/**
-* @def LVNV_MPTHRESHOLD_DEFAULT
-* Default of MpThreshold
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_MPTHRESHOLD_DEFAULT (6554)
-/**
-* @def LVNV_MPTHRESHOLD_MIN
-* MinValue of MpThreshold
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_MPTHRESHOLD_MIN (0)
-/**
-* @def LVNV_MPTHRESHOLD_MAX
-* MaxValue of MpThreshold
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_MPTHRESHOLD_MAX (32767)
-
-/**
-* @def LVNV_FSB_INIT_TABLE0_DEFAULT
-* Default of FSB_init_table0
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_FSB_INIT_TABLE0_DEFAULT {32767, 0, 0, 0, 0, 0, 0, 0}
-/**
-* @def LVNV_FSB_INIT_TABLE0_MIN
-* MinValue of FSB_init_table0
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_FSB_INIT_TABLE0_MIN (-32768)
-/**
-* @def LVNV_FSB_INIT_TABLE0_MAX
-* MaxValue of FSB_init_table0
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_FSB_INIT_TABLE0_MAX (32767)
-/**
-* @def LVNV_FSB_INIT_TABLE0_LENGTH
-* Length of FSB_init_table0
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_FSB_INIT_TABLE0_LENGTH (8)
-
-/**
-* @def LVNV_FSB_INIT_TABLE1_DEFAULT
-* Default of FSB_init_table1
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_FSB_INIT_TABLE1_DEFAULT {0, 0, 0, 0, 0, 0, 0, 0}
-/**
-* @def LVNV_FSB_INIT_TABLE1_MIN
-* MinValue of FSB_init_table1
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_FSB_INIT_TABLE1_MIN (-32768)
-/**
-* @def LVNV_FSB_INIT_TABLE1_MAX
-* MaxValue of FSB_init_table1
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_FSB_INIT_TABLE1_MAX (32767)
-/**
-* @def LVNV_FSB_INIT_TABLE1_LENGTH
-* Length of FSB_init_table1
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_FSB_INIT_TABLE1_LENGTH (8)
-
-/**
-* @def LVNV_FSB_TAPS_DEFAULT
-* Default of FSB_taps
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_FSB_TAPS_DEFAULT (16)
-/**
-* @def LVNV_FSB_TAPS_MIN
-* MinValue of FSB_taps
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_FSB_TAPS_MIN (8)
-/**
-* @def LVNV_FSB_TAPS_MAX
-* MaxValue of FSB_taps
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_FSB_TAPS_MAX (16)
-
-/**
-* @def LVNV_FSB_TWOALPHA_DEFAULT
-* Default of FSB_twoalpha
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_FSB_TWOALPHA_DEFAULT (655)
-/**
-* @def LVNV_FSB_TWOALPHA_MIN
-* MinValue of FSB_twoalpha
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_FSB_TWOALPHA_MIN (0)
-/**
-* @def LVNV_FSB_TWOALPHA_MAX
-* MaxValue of FSB_twoalpha
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_FSB_TWOALPHA_MAX (32767)
-
-/**
-* @def LVNV_FSB_REF_GAIN_DEFAULT
-* Default of FSB_ref_gain
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_FSB_REF_GAIN_DEFAULT (1024)
-/**
-* @def LVNV_FSB_REF_GAIN_MIN
-* MinValue of FSB_ref_gain
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_FSB_REF_GAIN_MIN (0)
-/**
-* @def LVNV_FSB_REF_GAIN_MAX
-* MaxValue of FSB_ref_gain
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_FSB_REF_GAIN_MAX (32767)
-
-/**
-* @def LVNV_GSC_TAPS_DEFAULT
-* Default of GSC_taps
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_GSC_TAPS_DEFAULT (16)
-/**
-* @def LVNV_GSC_TAPS_MIN
-* MinValue of GSC_taps
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_GSC_TAPS_MIN (8)
-/**
-* @def LVNV_GSC_TAPS_MAX
-* MaxValue of GSC_taps
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_GSC_TAPS_MAX (48)
-
-/**
-* @def LVNV_GSC_TWOALPHA_DEFAULT
-* Default of GSC_twoalpha
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_GSC_TWOALPHA_DEFAULT (1638)
-/**
-* @def LVNV_GSC_TWOALPHA_MIN
-* MinValue of GSC_twoalpha
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_GSC_TWOALPHA_MIN (0)
-/**
-* @def LVNV_GSC_TWOALPHA_MAX
-* MaxValue of GSC_twoalpha
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_GSC_TWOALPHA_MAX (32767)
-
-/**
-* @def LVNV_GSC_ERL_DEFAULT
-* Default of GSC_erl
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_GSC_ERL_DEFAULT (256)
-/**
-* @def LVNV_GSC_ERL_MIN
-* MinValue of GSC_erl
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_GSC_ERL_MIN (64)
-/**
-* @def LVNV_GSC_ERL_MAX
-* MaxValue of GSC_erl
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_GSC_ERL_MAX (32767)
-
-/**
-* @def LVNV_GSC_OFFSET_DEFAULT
-* Default of GSC_offset
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_GSC_OFFSET_DEFAULT (1638)
-/**
-* @def LVNV_GSC_OFFSET_MIN
-* MinValue of GSC_offset
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_GSC_OFFSET_MIN (0)
-/**
-* @def LVNV_GSC_OFFSET_MAX
-* MaxValue of GSC_offset
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_GSC_OFFSET_MAX (32767)
-
-/**
-* @def LVNV_DNNS_ECHOGAMMAHI_DEFAULT
-* Default of DNNS_EchoGammaHi
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_DNNS_ECHOGAMMAHI_DEFAULT (16384)
-/**
-* @def LVNV_DNNS_ECHOGAMMAHI_MIN
-* MinValue of DNNS_EchoGammaHi
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_DNNS_ECHOGAMMAHI_MIN (0)
-/**
-* @def LVNV_DNNS_ECHOGAMMAHI_MAX
-* MaxValue of DNNS_EchoGammaHi
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_DNNS_ECHOGAMMAHI_MAX (32767)
-
-/**
-* @def LVNV_DNNS_ECHOGAMMALO_DEFAULT
-* Default of DNNS_EchoGammaLo
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_DNNS_ECHOGAMMALO_DEFAULT (8192)
-/**
-* @def LVNV_DNNS_ECHOGAMMALO_MIN
-* MinValue of DNNS_EchoGammaLo
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_DNNS_ECHOGAMMALO_MIN (0)
-/**
-* @def LVNV_DNNS_ECHOGAMMALO_MAX
-* MaxValue of DNNS_EchoGammaLo
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_DNNS_ECHOGAMMALO_MAX (32767)
-
-/**
-* @def LVNV_DNNS_ECHOALPHAREV_DEFAULT
-* Default of DNNS_EchoAlphaRev
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_DNNS_ECHOALPHAREV_DEFAULT (12000)
-/**
-* @def LVNV_DNNS_ECHOALPHAREV_MIN
-* MinValue of DNNS_EchoAlphaRev
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_DNNS_ECHOALPHAREV_MIN (0)
-/**
-* @def LVNV_DNNS_ECHOALPHAREV_MAX
-* MaxValue of DNNS_EchoAlphaRev
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_DNNS_ECHOALPHAREV_MAX (32767)
-
-/**
-* @def LVNV_DNNS_ECHOTAILPORTION_DEFAULT
-* Default of DNNS_EchoTailPortion
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_DNNS_ECHOTAILPORTION_DEFAULT (7000)
-/**
-* @def LVNV_DNNS_ECHOTAILPORTION_MIN
-* MinValue of DNNS_EchoTailPortion
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_DNNS_ECHOTAILPORTION_MIN (0)
-/**
-* @def LVNV_DNNS_ECHOTAILPORTION_MAX
-* MaxValue of DNNS_EchoTailPortion
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_DNNS_ECHOTAILPORTION_MAX (32767)
-
-/**
-* @def LVNV_DNNS_NLATTEN_DEFAULT
-* Default of DNNS_NlAtten
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_DNNS_NLATTEN_DEFAULT (256)
-/**
-* @def LVNV_DNNS_NLATTEN_MIN
-* MinValue of DNNS_NlAtten
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_DNNS_NLATTEN_MIN (0)
-/**
-* @def LVNV_DNNS_NLATTEN_MAX
-* MaxValue of DNNS_NlAtten
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_DNNS_NLATTEN_MAX (2048)
-
-/**
-* @def LVNV_DNNS_NOISEGAMMAS_DEFAULT
-* Default of DNNS_NoiseGammaS
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_DNNS_NOISEGAMMAS_DEFAULT (11470)
-/**
-* @def LVNV_DNNS_NOISEGAMMAS_MIN
-* MinValue of DNNS_NoiseGammaS
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_DNNS_NOISEGAMMAS_MIN (0)
-/**
-* @def LVNV_DNNS_NOISEGAMMAS_MAX
-* MaxValue of DNNS_NoiseGammaS
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_DNNS_NOISEGAMMAS_MAX (32767)
-
-/**
-* @def LVNV_DNNS_NOISEGAMMAN_DEFAULT
-* Default of DNNS_NoiseGammaN
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_DNNS_NOISEGAMMAN_DEFAULT (16384)
-/**
-* @def LVNV_DNNS_NOISEGAMMAN_MIN
-* MinValue of DNNS_NoiseGammaN
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_DNNS_NOISEGAMMAN_MIN (0)
-/**
-* @def LVNV_DNNS_NOISEGAMMAN_MAX
-* MaxValue of DNNS_NoiseGammaN
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_DNNS_NOISEGAMMAN_MAX (32767)
-
-/**
-* @def LVNV_DNNS_NOISEGAINMINS_DEFAULT
-* Default of DNNS_NoiseGainMinS
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_DNNS_NOISEGAINMINS_DEFAULT (11140)
-/**
-* @def LVNV_DNNS_NOISEGAINMINS_MIN
-* MinValue of DNNS_NoiseGainMinS
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_DNNS_NOISEGAINMINS_MIN (0)
-/**
-* @def LVNV_DNNS_NOISEGAINMINS_MAX
-* MaxValue of DNNS_NoiseGainMinS
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_DNNS_NOISEGAINMINS_MAX (32767)
-
-/**
-* @def LVNV_DNNS_NOISEGAINMINN_DEFAULT
-* Default of DNNS_NoiseGainMinN
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_DNNS_NOISEGAINMINN_DEFAULT (6554)
-/**
-* @def LVNV_DNNS_NOISEGAINMINN_MIN
-* MinValue of DNNS_NoiseGainMinN
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_DNNS_NOISEGAINMINN_MIN (0)
-/**
-* @def LVNV_DNNS_NOISEGAINMINN_MAX
-* MaxValue of DNNS_NoiseGainMinN
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_DNNS_NOISEGAINMINN_MAX (32767)
-
-/**
-* @def LVNV_DNNS_NOISEBIASCOMP_DEFAULT
-* Default of DNNS_NoiseBiasComp
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_DNNS_NOISEBIASCOMP_DEFAULT (9830)
-/**
-* @def LVNV_DNNS_NOISEBIASCOMP_MIN
-* MinValue of DNNS_NoiseBiasComp
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_DNNS_NOISEBIASCOMP_MIN (0)
-/**
-* @def LVNV_DNNS_NOISEBIASCOMP_MAX
-* MaxValue of DNNS_NoiseBiasComp
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_DNNS_NOISEBIASCOMP_MAX (32767)
-
-/**
-* @def LVNV_DNNS_GAINETA_DEFAULT
-* Default of DNNS_GainEta
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_DNNS_GAINETA_DEFAULT (256)
-/**
-* @def LVNV_DNNS_GAINETA_MIN
-* MinValue of DNNS_GainEta
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_DNNS_GAINETA_MIN (0)
-/**
-* @def LVNV_DNNS_GAINETA_MAX
-* MaxValue of DNNS_GainEta
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_DNNS_GAINETA_MAX (32767)
-
-/**
-* @def LVNV_DNNS_ACTHRESHOLD_DEFAULT
-* Default of DNNS_AcThreshold
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_DNNS_ACTHRESHOLD_DEFAULT (12288)
-/**
-* @def LVNV_DNNS_ACTHRESHOLD_MIN
-* MinValue of DNNS_AcThreshold
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_DNNS_ACTHRESHOLD_MIN (0)
-/**
-* @def LVNV_DNNS_ACTHRESHOLD_MAX
-* MaxValue of DNNS_AcThreshold
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_DNNS_ACTHRESHOLD_MAX (32767)
-
-/**
-* @def LVNV_DNNS_WBTHRESHOLD_DEFAULT
-* Default of DNNS_WbThreshold
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_DNNS_WBTHRESHOLD_DEFAULT (9216)
-/**
-* @def LVNV_DNNS_WBTHRESHOLD_MIN
-* MinValue of DNNS_WbThreshold
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_DNNS_WBTHRESHOLD_MIN (0)
-/**
-* @def LVNV_DNNS_WBTHRESHOLD_MAX
-* MaxValue of DNNS_WbThreshold
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_DNNS_WBTHRESHOLD_MAX (32767)
-
-/**
-* @def LVNV_DNNS_LOSTBEAMTHRESHOLD_DEFAULT
-* Default of DNNS_LostBeamThreshold
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_DNNS_LOSTBEAMTHRESHOLD_DEFAULT (320)
-/**
-* @def LVNV_DNNS_LOSTBEAMTHRESHOLD_MIN
-* MinValue of DNNS_LostBeamThreshold
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_DNNS_LOSTBEAMTHRESHOLD_MIN (0)
-/**
-* @def LVNV_DNNS_LOSTBEAMTHRESHOLD_MAX
-* MaxValue of DNNS_LostBeamThreshold
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_DNNS_LOSTBEAMTHRESHOLD_MAX (32767)
-
-/**
-* @def LVNV_PCD_BETA_DEFAULT
-* Default of PCD_beta
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_PCD_BETA_DEFAULT (230)
-/**
-* @def LVNV_PCD_BETA_MIN
-* MinValue of PCD_beta
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_PCD_BETA_MIN (0)
-/**
-* @def LVNV_PCD_BETA_MAX
-* MaxValue of PCD_beta
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_PCD_BETA_MAX (32767)
-
-/**
-* @def LVNV_PCD_THRESHOLD_DEFAULT
-* Default of PCD_Threshold
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_PCD_THRESHOLD_DEFAULT (26213)
-/**
-* @def LVNV_PCD_THRESHOLD_MIN
-* MinValue of PCD_Threshold
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_PCD_THRESHOLD_MIN (0)
-/**
-* @def LVNV_PCD_THRESHOLD_MAX
-* MaxValue of PCD_Threshold
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_PCD_THRESHOLD_MAX (32767)
-
-/**
-* @def LVHF_OPERATINGMODE_DEFAULT
-* Default of OperatingMode
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_OPERATINGMODE_DEFAULT (LVM_MODE_OFF)
-
-/**
-* @def LVHF_MODE_DEFAULT
-* Default of Mode
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_MODE_DEFAULT (4607)
-
-/**
-* @def LVHF_TUNINGMODE_DEFAULT
-* Default of TuningMode
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_TUNINGMODE_DEFAULT (0)
-
-/**
-* @def LVHF_INPUTGAIN_DEFAULT
-* Default of InputGain
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_INPUTGAIN_DEFAULT (8192)
-/**
-* @def LVHF_INPUTGAIN_MIN
-* MinValue of InputGain
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_INPUTGAIN_MIN (0)
-/**
-* @def LVHF_INPUTGAIN_MAX
-* MaxValue of InputGain
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_INPUTGAIN_MAX (32767)
-
-/**
-* @def LVHF_OUTPUTGAIN_DEFAULT
-* Default of OutputGain
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_OUTPUTGAIN_DEFAULT (2048)
-/**
-* @def LVHF_OUTPUTGAIN_MIN
-* MinValue of OutputGain
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_OUTPUTGAIN_MIN (0)
-/**
-* @def LVHF_OUTPUTGAIN_MAX
-* MaxValue of OutputGain
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_OUTPUTGAIN_MAX (32767)
-
-/**
-* @def LVHF_NLMS_LIMIT_DEFAULT
-* Default of NLMS_limit
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_NLMS_LIMIT_DEFAULT (0)
-/**
-* @def LVHF_NLMS_LIMIT_MIN
-* MinValue of NLMS_limit
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_NLMS_LIMIT_MIN (-24)
-/**
-* @def LVHF_NLMS_LIMIT_MAX
-* MaxValue of NLMS_limit
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_NLMS_LIMIT_MAX (0)
-
-/**
-* @def LVHF_NLMS_LB_TAPS_DEFAULT
-* Default of NLMS_LB_taps
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_NLMS_LB_TAPS_DEFAULT (64)
-/**
-* @def LVHF_NLMS_LB_TAPS_MIN
-* MinValue of NLMS_LB_taps
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_NLMS_LB_TAPS_MIN (16)
-/**
-* @def LVHF_NLMS_LB_TAPS_MAX
-* MaxValue of NLMS_LB_taps
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_NLMS_LB_TAPS_MAX (200)
-
-/**
-* @def LVHF_NLMS_LB_TWO_ALPHA_DEFAULT
-* Default of NLMS_LB_two_alpha
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_NLMS_LB_TWO_ALPHA_DEFAULT (8192)
-/**
-* @def LVHF_NLMS_LB_TWO_ALPHA_MIN
-* MinValue of NLMS_LB_two_alpha
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_NLMS_LB_TWO_ALPHA_MIN (0)
-/**
-* @def LVHF_NLMS_LB_TWO_ALPHA_MAX
-* MaxValue of NLMS_LB_two_alpha
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_NLMS_LB_TWO_ALPHA_MAX (32767)
-
-/**
-* @def LVHF_NLMS_LB_ERL_DEFAULT
-* Default of NLMS_LB_erl
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_NLMS_LB_ERL_DEFAULT (128)
-/**
-* @def LVHF_NLMS_LB_ERL_MIN
-* MinValue of NLMS_LB_erl
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_NLMS_LB_ERL_MIN (64)
-/**
-* @def LVHF_NLMS_LB_ERL_MAX
-* MaxValue of NLMS_LB_erl
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_NLMS_LB_ERL_MAX (32767)
-
-/**
-* @def LVHF_NLMS_HB_TAPS_DEFAULT
-* Default of NLMS_HB_taps
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_NLMS_HB_TAPS_DEFAULT (64)
-/**
-* @def LVHF_NLMS_HB_TAPS_MIN
-* MinValue of NLMS_HB_taps
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_NLMS_HB_TAPS_MIN (16)
-/**
-* @def LVHF_NLMS_HB_TAPS_MAX
-* MaxValue of NLMS_HB_taps
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_NLMS_HB_TAPS_MAX (136)
-
-/**
-* @def LVHF_NLMS_HB_TWO_ALPHA_DEFAULT
-* Default of NLMS_HB_two_alpha
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_NLMS_HB_TWO_ALPHA_DEFAULT (8192)
-/**
-* @def LVHF_NLMS_HB_TWO_ALPHA_MIN
-* MinValue of NLMS_HB_two_alpha
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_NLMS_HB_TWO_ALPHA_MIN (0)
-/**
-* @def LVHF_NLMS_HB_TWO_ALPHA_MAX
-* MaxValue of NLMS_HB_two_alpha
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_NLMS_HB_TWO_ALPHA_MAX (32767)
-
-/**
-* @def LVHF_NLMS_HB_ERL_DEFAULT
-* Default of NLMS_HB_erl
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_NLMS_HB_ERL_DEFAULT (128)
-/**
-* @def LVHF_NLMS_HB_ERL_MIN
-* MinValue of NLMS_HB_erl
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_NLMS_HB_ERL_MIN (64)
-/**
-* @def LVHF_NLMS_HB_ERL_MAX
-* MaxValue of NLMS_HB_erl
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_NLMS_HB_ERL_MAX (32767)
-
-/**
-* @def LVHF_NLMS_PRESET_COEFS_DEFAULT
-* Default of NLMS_preset_coefs
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_NLMS_PRESET_COEFS_DEFAULT (1)
-/**
-* @def LVHF_NLMS_PRESET_COEFS_MIN
-* MinValue of NLMS_preset_coefs
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_NLMS_PRESET_COEFS_MIN (0)
-/**
-* @def LVHF_NLMS_PRESET_COEFS_MAX
-* MaxValue of NLMS_preset_coefs
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_NLMS_PRESET_COEFS_MAX (2)
-
-/**
-* @def LVHF_NLMS_OFFSET_DEFAULT
-* Default of NLMS_offset
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_NLMS_OFFSET_DEFAULT (767)
-/**
-* @def LVHF_NLMS_OFFSET_MIN
-* MinValue of NLMS_offset
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_NLMS_OFFSET_MIN (0)
-/**
-* @def LVHF_NLMS_OFFSET_MAX
-* MaxValue of NLMS_offset
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_NLMS_OFFSET_MAX (32767)
-
-/**
-* @def LVHF_DENS_TAIL_ALPHA_LB_DEFAULT
-* Default of DENS_tail_alpha_LB
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_DENS_TAIL_ALPHA_LB_DEFAULT (25395)
-/**
-* @def LVHF_DENS_TAIL_ALPHA_LB_MIN
-* MinValue of DENS_tail_alpha_LB
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_DENS_TAIL_ALPHA_LB_MIN (0)
-/**
-* @def LVHF_DENS_TAIL_ALPHA_LB_MAX
-* MaxValue of DENS_tail_alpha_LB
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_DENS_TAIL_ALPHA_LB_MAX (32767)
-
-/**
-* @def LVHF_DENS_TAIL_PORTION_LB_DEFAULT
-* Default of DENS_tail_portion_LB
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_DENS_TAIL_PORTION_LB_DEFAULT (29491)
-/**
-* @def LVHF_DENS_TAIL_PORTION_LB_MIN
-* MinValue of DENS_tail_portion_LB
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_DENS_TAIL_PORTION_LB_MIN (0)
-/**
-* @def LVHF_DENS_TAIL_PORTION_LB_MAX
-* MaxValue of DENS_tail_portion_LB
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_DENS_TAIL_PORTION_LB_MAX (32767)
-
-/**
-* @def LVHF_DENS_GAMMA_E_HIGH_LB_DEFAULT
-* Default of DENS_gamma_e_high_LB
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_DENS_GAMMA_E_HIGH_LB_DEFAULT (512)
-/**
-* @def LVHF_DENS_GAMMA_E_HIGH_LB_MIN
-* MinValue of DENS_gamma_e_high_LB
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_DENS_GAMMA_E_HIGH_LB_MIN (0)
-/**
-* @def LVHF_DENS_GAMMA_E_HIGH_LB_MAX
-* MaxValue of DENS_gamma_e_high_LB
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_DENS_GAMMA_E_HIGH_LB_MAX (32767)
-
-/**
-* @def LVHF_DENS_GAMMA_E_DT_LB_DEFAULT
-* Default of DENS_gamma_e_dt_LB
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_DENS_GAMMA_E_DT_LB_DEFAULT (256)
-/**
-* @def LVHF_DENS_GAMMA_E_DT_LB_MIN
-* MinValue of DENS_gamma_e_dt_LB
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_DENS_GAMMA_E_DT_LB_MIN (0)
-/**
-* @def LVHF_DENS_GAMMA_E_DT_LB_MAX
-* MaxValue of DENS_gamma_e_dt_LB
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_DENS_GAMMA_E_DT_LB_MAX (32767)
-
-/**
-* @def LVHF_DENS_GAMMA_E_LOW_LB_DEFAULT
-* Default of DENS_gamma_e_low_LB
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_DENS_GAMMA_E_LOW_LB_DEFAULT (256)
-/**
-* @def LVHF_DENS_GAMMA_E_LOW_LB_MIN
-* MinValue of DENS_gamma_e_low_LB
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_DENS_GAMMA_E_LOW_LB_MIN (0)
-/**
-* @def LVHF_DENS_GAMMA_E_LOW_LB_MAX
-* MaxValue of DENS_gamma_e_low_LB
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_DENS_GAMMA_E_LOW_LB_MAX (32767)
-
-/**
-* @def LVHF_DENS_NL_ATTEN_LB_DEFAULT
-* Default of DENS_NL_atten_LB
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_DENS_NL_ATTEN_LB_DEFAULT (0)
-/**
-* @def LVHF_DENS_NL_ATTEN_LB_MIN
-* MinValue of DENS_NL_atten_LB
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_DENS_NL_ATTEN_LB_MIN (0)
-/**
-* @def LVHF_DENS_NL_ATTEN_LB_MAX
-* MaxValue of DENS_NL_atten_LB
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_DENS_NL_ATTEN_LB_MAX (2048)
-
-/**
-* @def LVHF_DENS_TAIL_ALPHA_HB_DEFAULT
-* Default of DENS_tail_alpha_HB
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_DENS_TAIL_ALPHA_HB_DEFAULT (25395)
-/**
-* @def LVHF_DENS_TAIL_ALPHA_HB_MIN
-* MinValue of DENS_tail_alpha_HB
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_DENS_TAIL_ALPHA_HB_MIN (0)
-/**
-* @def LVHF_DENS_TAIL_ALPHA_HB_MAX
-* MaxValue of DENS_tail_alpha_HB
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_DENS_TAIL_ALPHA_HB_MAX (32767)
-
-/**
-* @def LVHF_DENS_TAIL_PORTION_HB_DEFAULT
-* Default of DENS_tail_portion_HB
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_DENS_TAIL_PORTION_HB_DEFAULT (29491)
-/**
-* @def LVHF_DENS_TAIL_PORTION_HB_MIN
-* MinValue of DENS_tail_portion_HB
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_DENS_TAIL_PORTION_HB_MIN (0)
-/**
-* @def LVHF_DENS_TAIL_PORTION_HB_MAX
-* MaxValue of DENS_tail_portion_HB
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_DENS_TAIL_PORTION_HB_MAX (32767)
-
-/**
-* @def LVHF_DENS_GAMMA_E_HIGH_HB_DEFAULT
-* Default of DENS_gamma_e_high_HB
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_DENS_GAMMA_E_HIGH_HB_DEFAULT (512)
-/**
-* @def LVHF_DENS_GAMMA_E_HIGH_HB_MIN
-* MinValue of DENS_gamma_e_high_HB
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_DENS_GAMMA_E_HIGH_HB_MIN (0)
-/**
-* @def LVHF_DENS_GAMMA_E_HIGH_HB_MAX
-* MaxValue of DENS_gamma_e_high_HB
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_DENS_GAMMA_E_HIGH_HB_MAX (32767)
-
-/**
-* @def LVHF_DENS_GAMMA_E_DT_HB_DEFAULT
-* Default of DENS_gamma_e_dt_HB
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_DENS_GAMMA_E_DT_HB_DEFAULT (256)
-/**
-* @def LVHF_DENS_GAMMA_E_DT_HB_MIN
-* MinValue of DENS_gamma_e_dt_HB
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_DENS_GAMMA_E_DT_HB_MIN (0)
-/**
-* @def LVHF_DENS_GAMMA_E_DT_HB_MAX
-* MaxValue of DENS_gamma_e_dt_HB
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_DENS_GAMMA_E_DT_HB_MAX (32767)
-
-/**
-* @def LVHF_DENS_GAMMA_E_LOW_HB_DEFAULT
-* Default of DENS_gamma_e_low_HB
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_DENS_GAMMA_E_LOW_HB_DEFAULT (256)
-/**
-* @def LVHF_DENS_GAMMA_E_LOW_HB_MIN
-* MinValue of DENS_gamma_e_low_HB
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_DENS_GAMMA_E_LOW_HB_MIN (0)
-/**
-* @def LVHF_DENS_GAMMA_E_LOW_HB_MAX
-* MaxValue of DENS_gamma_e_low_HB
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_DENS_GAMMA_E_LOW_HB_MAX (32767)
-
-/**
-* @def LVHF_DENS_NL_ATTEN_HB_DEFAULT
-* Default of DENS_NL_atten_HB
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_DENS_NL_ATTEN_HB_DEFAULT (0)
-/**
-* @def LVHF_DENS_NL_ATTEN_HB_MIN
-* MinValue of DENS_NL_atten_HB
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_DENS_NL_ATTEN_HB_MIN (0)
-/**
-* @def LVHF_DENS_NL_ATTEN_HB_MAX
-* MaxValue of DENS_NL_atten_HB
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_DENS_NL_ATTEN_HB_MAX (2048)
-
-/**
-* @def LVHF_DENS_GAMMA_E_ALPHA_DEFAULT
-* Default of DENS_gamma_e_alpha
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_DENS_GAMMA_E_ALPHA_DEFAULT (24000)
-/**
-* @def LVHF_DENS_GAMMA_E_ALPHA_MIN
-* MinValue of DENS_gamma_e_alpha
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_DENS_GAMMA_E_ALPHA_MIN (0)
-/**
-* @def LVHF_DENS_GAMMA_E_ALPHA_MAX
-* MaxValue of DENS_gamma_e_alpha
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_DENS_GAMMA_E_ALPHA_MAX (32767)
-
-/**
-* @def LVHF_DENS_GAMMA_N_DEFAULT
-* Default of DENS_gamma_n
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_DENS_GAMMA_N_DEFAULT (280)
-/**
-* @def LVHF_DENS_GAMMA_N_MIN
-* MinValue of DENS_gamma_n
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_DENS_GAMMA_N_MIN (0)
-/**
-* @def LVHF_DENS_GAMMA_N_MAX
-* MaxValue of DENS_gamma_n
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_DENS_GAMMA_N_MAX (32767)
-
-/**
-* @def LVHF_DENS_SPDET_NEAR_DEFAULT
-* Default of DENS_spdet_near
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_DENS_SPDET_NEAR_DEFAULT (512)
-/**
-* @def LVHF_DENS_SPDET_NEAR_MIN
-* MinValue of DENS_spdet_near
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_DENS_SPDET_NEAR_MIN (0)
-/**
-* @def LVHF_DENS_SPDET_NEAR_MAX
-* MaxValue of DENS_spdet_near
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_DENS_SPDET_NEAR_MAX (32767)
-
-/**
-* @def LVHF_DENS_SPDET_ACT_DEFAULT
-* Default of DENS_spdet_act
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_DENS_SPDET_ACT_DEFAULT (768)
-/**
-* @def LVHF_DENS_SPDET_ACT_MIN
-* MinValue of DENS_spdet_act
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_DENS_SPDET_ACT_MIN (0)
-/**
-* @def LVHF_DENS_SPDET_ACT_MAX
-* MaxValue of DENS_spdet_act
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_DENS_SPDET_ACT_MAX (32767)
-
-/**
-* @def LVHF_DENS_LIMIT_NS_DEFAULT
-* Default of DENS_limit_ns
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_DENS_LIMIT_NS_DEFAULT (10361)
-/**
-* @def LVHF_DENS_LIMIT_NS_MIN
-* MinValue of DENS_limit_ns
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_DENS_LIMIT_NS_MIN (0)
-/**
-* @def LVHF_DENS_LIMIT_NS_MAX
-* MaxValue of DENS_limit_ns
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_DENS_LIMIT_NS_MAX (32767)
-
-/**
-* @def LVHF_DENS_CNI_GAIN_DEFAULT
-* Default of DENS_CNI_Gain
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_DENS_CNI_GAIN_DEFAULT (16384)
-/**
-* @def LVHF_DENS_CNI_GAIN_MIN
-* MinValue of DENS_CNI_Gain
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_DENS_CNI_GAIN_MIN (0)
-/**
-* @def LVHF_DENS_CNI_GAIN_MAX
-* MaxValue of DENS_CNI_Gain
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_DENS_CNI_GAIN_MAX (32767)
-
-/**
-* @def LVHF_DENS_NFE_BLOCKSIZE_DEFAULT
-* Default of DENS_NFE_blocksize
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_DENS_NFE_BLOCKSIZE_DEFAULT (150)
-/**
-* @def LVHF_DENS_NFE_BLOCKSIZE_MIN
-* MinValue of DENS_NFE_blocksize
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_DENS_NFE_BLOCKSIZE_MIN (0)
-/**
-* @def LVHF_DENS_NFE_BLOCKSIZE_MAX
-* MaxValue of DENS_NFE_blocksize
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_DENS_NFE_BLOCKSIZE_MAX (32767)
-
-/**
-* @def LVHF_SPDET_FAR_DEFAULT
-* Default of SPDET_far
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_SPDET_FAR_DEFAULT (16384)
-/**
-* @def LVHF_SPDET_FAR_MIN
-* MinValue of SPDET_far
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_SPDET_FAR_MIN (0)
-/**
-* @def LVHF_SPDET_FAR_MAX
-* MaxValue of SPDET_far
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_SPDET_FAR_MAX (32767)
-
-/**
-* @def LVHF_SPDET_MIC_DEFAULT
-* Default of SPDET_mic
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_SPDET_MIC_DEFAULT (16384)
-/**
-* @def LVHF_SPDET_MIC_MIN
-* MinValue of SPDET_mic
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_SPDET_MIC_MIN (0)
-/**
-* @def LVHF_SPDET_MIC_MAX
-* MaxValue of SPDET_mic
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_SPDET_MIC_MAX (32767)
-
-/**
-* @def LVHF_SPDET_X_CLIP_DEFAULT
-* Default of SPDET_x_clip
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_SPDET_X_CLIP_DEFAULT (0)
-/**
-* @def LVHF_SPDET_X_CLIP_MIN
-* MinValue of SPDET_x_clip
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_SPDET_X_CLIP_MIN (0)
-/**
-* @def LVHF_SPDET_X_CLIP_MAX
-* MaxValue of SPDET_x_clip
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_SPDET_X_CLIP_MAX (32767)
-
-/**
-* @def LVHF_PCD_THRESHOLD_DEFAULT
-* Default of PCD_threshold
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_PCD_THRESHOLD_DEFAULT (20000)
-/**
-* @def LVHF_PCD_THRESHOLD_MIN
-* MinValue of PCD_threshold
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_PCD_THRESHOLD_MIN (0)
-/**
-* @def LVHF_PCD_THRESHOLD_MAX
-* MaxValue of PCD_threshold
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_PCD_THRESHOLD_MAX (32767)
-
-/**
-* @def LVHF_PCD_TAPS_DEFAULT
-* Default of PCD_taps
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_PCD_TAPS_DEFAULT (16)
-/**
-* @def LVHF_PCD_TAPS_MIN
-* MinValue of PCD_taps
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_PCD_TAPS_MIN (16)
-/**
-* @def LVHF_PCD_TAPS_MAX
-* MaxValue of PCD_taps
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_PCD_TAPS_MAX (64)
-
-/**
-* @def LVHF_PCD_ERL_DEFAULT
-* Default of PCD_erl
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_PCD_ERL_DEFAULT (64)
-/**
-* @def LVHF_PCD_ERL_MIN
-* MinValue of PCD_erl
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_PCD_ERL_MIN (64)
-/**
-* @def LVHF_PCD_ERL_MAX
-* MaxValue of PCD_erl
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_PCD_ERL_MAX (32767)
-
-/**
-* @def LVHF_PCD_MINIMUM_ERL_DEFAULT
-* Default of PCD_minimum_erl
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_PCD_MINIMUM_ERL_DEFAULT (64)
-/**
-* @def LVHF_PCD_MINIMUM_ERL_MIN
-* MinValue of PCD_minimum_erl
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_PCD_MINIMUM_ERL_MIN (64)
-/**
-* @def LVHF_PCD_MINIMUM_ERL_MAX
-* MaxValue of PCD_minimum_erl
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_PCD_MINIMUM_ERL_MAX (32767)
-
-/**
-* @def LVHF_PCD_ERL_STEP_DEFAULT
-* Default of PCD_erl_step
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_PCD_ERL_STEP_DEFAULT (16800)
-/**
-* @def LVHF_PCD_ERL_STEP_MIN
-* MinValue of PCD_erl_step
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_PCD_ERL_STEP_MIN (16384)
-/**
-* @def LVHF_PCD_ERL_STEP_MAX
-* MaxValue of PCD_erl_step
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_PCD_ERL_STEP_MAX (32767)
-
-/**
-* @def LVHF_PCD_GAMMA_E_RESCUE_DEFAULT
-* Default of PCD_gamma_e_rescue
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_PCD_GAMMA_E_RESCUE_DEFAULT (5000)
-/**
-* @def LVHF_PCD_GAMMA_E_RESCUE_MIN
-* MinValue of PCD_gamma_e_rescue
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_PCD_GAMMA_E_RESCUE_MIN (0)
-/**
-* @def LVHF_PCD_GAMMA_E_RESCUE_MAX
-* MaxValue of PCD_gamma_e_rescue
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_PCD_GAMMA_E_RESCUE_MAX (32767)
-
-/**
-* @def LVBD_BD_OPERATINGMODE_DEFAULT
-* Default of BD_OperatingMode
-* @see LVBD_ControlParams_st
-*/
-#define LVBD_BD_OPERATINGMODE_DEFAULT (LVM_MODE_OFF)
-
-/**
-* @def LVBD_BULKDELAY_DEFAULT
-* Default of BulkDelay
-* @see LVBD_ControlParams_st
-*/
-#define LVBD_BULKDELAY_DEFAULT (0)
-/**
-* @def LVBD_BULKDELAY_MIN
-* MinValue of BulkDelay
-* @see LVBD_ControlParams_st
-*/
-#define LVBD_BULKDELAY_MIN (0)
-/**
-* @def LVBD_BULKDELAY_MAX
-* MaxValue of BulkDelay
-* @see LVBD_ControlParams_st
-*/
-#define LVBD_BULKDELAY_MAX (6400)
-
-/**
-* @def LVBD_BD_GAIN_DEFAULT
-* Default of BD_Gain
-* @see LVBD_ControlParams_st
-*/
-#define LVBD_BD_GAIN_DEFAULT (8192)
-/**
-* @def LVBD_BD_GAIN_MIN
-* MinValue of BD_Gain
-* @see LVBD_ControlParams_st
-*/
-#define LVBD_BD_GAIN_MIN (0)
-/**
-* @def LVBD_BD_GAIN_MAX
-* MaxValue of BD_Gain
-* @see LVBD_ControlParams_st
-*/
-#define LVBD_BD_GAIN_MAX (32767)
-
-/**
-* @def LVVE_TX_OPERATINGMODE_DEFAULT
-* Default of OperatingMode
-* @see LVVE_Tx_ControlParams_st
-*/
-#define LVVE_TX_OPERATINGMODE_DEFAULT (LVVE_TX_MODE_OFF)
-
-/**
-* @def LVVE_TX_MUTE_DEFAULT
-* Default of Mute
-* @see LVVE_Tx_ControlParams_st
-*/
-#define LVVE_TX_MUTE_DEFAULT (LVM_MODE_OFF)
-
-/**
-* @def LVVE_TX_BD_OPERATINGMODE_DEFAULT
-* Default of BD_OperatingMode
-* @see LVVE_Tx_ControlParams_st
-*/
-#define LVVE_TX_BD_OPERATINGMODE_DEFAULT (LVM_MODE_OFF)
-
-/**
-* @def LVVE_TX_BULKDELAY_DEFAULT
-* Default of BulkDelay
-* @see LVVE_Tx_ControlParams_st
-*/
-#define LVVE_TX_BULKDELAY_DEFAULT (0)
-/**
-* @def LVVE_TX_BULKDELAY_MIN
-* MinValue of BulkDelay
-* @see LVVE_Tx_ControlParams_st
-*/
-#define LVVE_TX_BULKDELAY_MIN (0)
-/**
-* @def LVVE_TX_BULKDELAY_MAX
-* MaxValue of BulkDelay
-* @see LVVE_Tx_ControlParams_st
-*/
-#define LVVE_TX_BULKDELAY_MAX (6400)
-
-/**
-* @def LVVE_TX_BD_GAIN_DEFAULT
-* Default of BD_Gain
-* @see LVVE_Tx_ControlParams_st
-*/
-#define LVVE_TX_BD_GAIN_DEFAULT (8192)
-/**
-* @def LVVE_TX_BD_GAIN_MIN
-* MinValue of BD_Gain
-* @see LVVE_Tx_ControlParams_st
-*/
-#define LVVE_TX_BD_GAIN_MIN (0)
-/**
-* @def LVVE_TX_BD_GAIN_MAX
-* MaxValue of BD_Gain
-* @see LVVE_Tx_ControlParams_st
-*/
-#define LVVE_TX_BD_GAIN_MAX (32767)
-
-/**
-* @def LVVE_TX_VOL_OPERATINGMODE_DEFAULT
-* Default of VOL_OperatingMode
-* @see LVVE_Tx_ControlParams_st
-*/
-#define LVVE_TX_VOL_OPERATINGMODE_DEFAULT (LVM_MODE_OFF)
-
-/**
-* @def LVVE_TX_VOL_GAIN_DEFAULT
-* Default of VOL_Gain
-* @see LVVE_Tx_ControlParams_st
-*/
-#define LVVE_TX_VOL_GAIN_DEFAULT (0)
-/**
-* @def LVVE_TX_VOL_GAIN_MIN
-* MinValue of VOL_Gain
-* @see LVVE_Tx_ControlParams_st
-*/
-#define LVVE_TX_VOL_GAIN_MIN (-96)
-/**
-* @def LVVE_TX_VOL_GAIN_MAX
-* MaxValue of VOL_Gain
-* @see LVVE_Tx_ControlParams_st
-*/
-#define LVVE_TX_VOL_GAIN_MAX (24)
-
-/**
-* @def LVVE_TX_HPF_OPERATINGMODE_DEFAULT
-* Default of HPF_OperatingMode
-* @see LVVE_Tx_ControlParams_st
-*/
-#define LVVE_TX_HPF_OPERATINGMODE_DEFAULT (LVM_MODE_OFF)
-
-/**
-* @def LVVE_TX_MIC_HPF_CORNERFREQ_DEFAULT
-* Default of MIC_HPF_CornerFreq
-* @see LVVE_Tx_ControlParams_st
-*/
-#define LVVE_TX_MIC_HPF_CORNERFREQ_DEFAULT (50)
-/**
-* @def LVVE_TX_MIC_HPF_CORNERFREQ_MIN
-* MinValue of MIC_HPF_CornerFreq
-* @see LVVE_Tx_ControlParams_st
-*/
-#define LVVE_TX_MIC_HPF_CORNERFREQ_MIN (50)
-/**
-* @def LVVE_TX_MIC_HPF_CORNERFREQ_MAX
-* MaxValue of MIC_HPF_CornerFreq
-* @see LVVE_Tx_ControlParams_st
-*/
-#define LVVE_TX_MIC_HPF_CORNERFREQ_MAX (1500)
-
-
-
-/**
-* @def LVVE_TX_EQ_OPERATINGMODE_DEFAULT
-* Default of EQ_OperatingMode
-* @see LVVE_Tx_ControlParams_st
-*/
-#define LVVE_TX_EQ_OPERATINGMODE_DEFAULT (LVM_MODE_OFF)
-
-
-
-/**
-* @def LVVC_GAIN_DEFAULT
-* Default of Gain
-* @see LVVC_ControlParams_st
-*/
-#define LVVC_GAIN_DEFAULT (0)
-/**
-* @def LVVC_GAIN_MIN
-* MinValue of Gain
-* @see LVVC_ControlParams_st
-*/
-#define LVVC_GAIN_MIN (0)
-/**
-* @def LVVC_GAIN_MAX
-* MaxValue of Gain
-* @see LVVC_ControlParams_st
-*/
-#define LVVC_GAIN_MAX (32767)
-
-/**
-* @def LVVC_SPDETECTED_DEFAULT
-* Default of SpDetected
-* @see LVVC_ControlParams_st
-*/
-#define LVVC_SPDETECTED_DEFAULT (0)
-/**
-* @def LVVC_SPDETECTED_MIN
-* MinValue of SpDetected
-* @see LVVC_ControlParams_st
-*/
-#define LVVC_SPDETECTED_MIN (0)
-/**
-* @def LVVC_SPDETECTED_MAX
-* MaxValue of SpDetected
-* @see LVVC_ControlParams_st
-*/
-#define LVVC_SPDETECTED_MAX (1)
-
-/**
-* @def LVWM_AVL_GAIN_DEFAULT
-* Default of AVL_Gain
-* @see LVWM_ControlParams_st
-*/
-#define LVWM_AVL_GAIN_DEFAULT (0)
-/**
-* @def LVWM_AVL_GAIN_MIN
-* MinValue of AVL_Gain
-* @see LVWM_ControlParams_st
-*/
-#define LVWM_AVL_GAIN_MIN (0)
-/**
-* @def LVWM_AVL_GAIN_MAX
-* MaxValue of AVL_Gain
-* @see LVWM_ControlParams_st
-*/
-#define LVWM_AVL_GAIN_MAX (32767)
-
-
-
-/**
-* @def LVVE_RX_DUMMY_DEFAULT
-* Default of dummy
-* @see LVVE_Rx_ControlParams_st
-*/
-#define LVVE_RX_DUMMY_DEFAULT (0)
-/**
-* @def LVVE_RX_DUMMY_MIN
-* MinValue of dummy
-* @see LVVE_Rx_ControlParams_st
-*/
-#define LVVE_RX_DUMMY_MIN (-128)
-/**
-* @def LVVE_RX_DUMMY_MAX
-* MaxValue of dummy
-* @see LVVE_Rx_ControlParams_st
-*/
-#define LVVE_RX_DUMMY_MAX (127)
-
-/**
-* @def LVNV_STATUS_DEFAULT
-* Default of status
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_STATUS_DEFAULT (0)
-
-/**
-* @def LVNV_DUMMY_DEFAULT
-* Default of Dummy
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_DUMMY_DEFAULT (0)
-/**
-* @def LVNV_DUMMY_MIN
-* MinValue of Dummy
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_DUMMY_MIN (0)
-/**
-* @def LVNV_DUMMY_MAX
-* MaxValue of Dummy
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_DUMMY_MAX (0)
-
-/**
-* @def LVNV_PNLMS0_LB_COEFFS_DEFAULT
-* Default of pNLMS0_LB_Coeffs
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_PNLMS0_LB_COEFFS_DEFAULT (0)
-/**
-* @def LVNV_PNLMS0_LB_COEFFS_MIN
-* MinValue of pNLMS0_LB_Coeffs
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_PNLMS0_LB_COEFFS_MIN (-2147483648)
-/**
-* @def LVNV_PNLMS0_LB_COEFFS_MAX
-* MaxValue of pNLMS0_LB_Coeffs
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_PNLMS0_LB_COEFFS_MAX (2147483647)
-
-/**
-* @def LVNV_PNLMS0_HB_COEFFS_DEFAULT
-* Default of pNLMS0_HB_Coeffs
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_PNLMS0_HB_COEFFS_DEFAULT (0)
-/**
-* @def LVNV_PNLMS0_HB_COEFFS_MIN
-* MinValue of pNLMS0_HB_Coeffs
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_PNLMS0_HB_COEFFS_MIN (-2147483648)
-/**
-* @def LVNV_PNLMS0_HB_COEFFS_MAX
-* MaxValue of pNLMS0_HB_Coeffs
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_PNLMS0_HB_COEFFS_MAX (2147483647)
-
-/**
-* @def LVNV_PNLMS1_LB_COEFFS_DEFAULT
-* Default of pNLMS1_LB_Coeffs
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_PNLMS1_LB_COEFFS_DEFAULT (0)
-/**
-* @def LVNV_PNLMS1_LB_COEFFS_MIN
-* MinValue of pNLMS1_LB_Coeffs
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_PNLMS1_LB_COEFFS_MIN (-2147483648)
-/**
-* @def LVNV_PNLMS1_LB_COEFFS_MAX
-* MaxValue of pNLMS1_LB_Coeffs
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_PNLMS1_LB_COEFFS_MAX (2147483647)
-
-/**
-* @def LVNV_PNLMS1_HB_COEFFS_DEFAULT
-* Default of pNLMS1_HB_Coeffs
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_PNLMS1_HB_COEFFS_DEFAULT (0)
-/**
-* @def LVNV_PNLMS1_HB_COEFFS_MIN
-* MinValue of pNLMS1_HB_Coeffs
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_PNLMS1_HB_COEFFS_MIN (-2147483648)
-/**
-* @def LVNV_PNLMS1_HB_COEFFS_MAX
-* MaxValue of pNLMS1_HB_Coeffs
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_PNLMS1_HB_COEFFS_MAX (2147483647)
-
-/**
-* @def LVNV_PFSB_COEFFS_DEFAULT
-* Default of pFSB_Coeffs
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_PFSB_COEFFS_DEFAULT (0)
-/**
-* @def LVNV_PFSB_COEFFS_MIN
-* MinValue of pFSB_Coeffs
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_PFSB_COEFFS_MIN (-2147483648)
-/**
-* @def LVNV_PFSB_COEFFS_MAX
-* MaxValue of pFSB_Coeffs
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_PFSB_COEFFS_MAX (2147483647)
-
-/**
-* @def LVNV_PGSC_COEFFS_DEFAULT
-* Default of pGSC_Coeffs
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_PGSC_COEFFS_DEFAULT (0)
-/**
-* @def LVNV_PGSC_COEFFS_MIN
-* MinValue of pGSC_Coeffs
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_PGSC_COEFFS_MIN (-2147483648)
-/**
-* @def LVNV_PGSC_COEFFS_MAX
-* MaxValue of pGSC_Coeffs
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_PGSC_COEFFS_MAX (2147483647)
-
-/**
-* @def LVNV_PMICPOWSP_DEFAULT
-* Default of pMicPowSp
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_PMICPOWSP_DEFAULT (0)
-/**
-* @def LVNV_PMICPOWSP_MIN
-* MinValue of pMicPowSp
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_PMICPOWSP_MIN (0)
-/**
-* @def LVNV_PMICPOWSP_MAX
-* MaxValue of pMicPowSp
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_PMICPOWSP_MAX (1)
-
-/**
-* @def LVNV_PCALFACTOR_DEFAULT
-* Default of pCalFactor
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_PCALFACTOR_DEFAULT (0)
-/**
-* @def LVNV_PCALFACTOR_MIN
-* MinValue of pCalFactor
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_PCALFACTOR_MIN (0)
-/**
-* @def LVNV_PCALFACTOR_MAX
-* MaxValue of pCalFactor
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_PCALFACTOR_MAX (32767)
-
-/**
-* @def LVNV_PCALREADY_DEFAULT
-* Default of pCalReady
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_PCALREADY_DEFAULT (0)
-/**
-* @def LVNV_PCALREADY_MIN
-* MinValue of pCalReady
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_PCALREADY_MIN (0)
-/**
-* @def LVNV_PCALREADY_MAX
-* MaxValue of pCalReady
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_PCALREADY_MAX (2)
-
-/**
-* @def LVNV_PBROADSIDE_INTERCC_DEFAULT
-* Default of pBroadside_interCC
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_PBROADSIDE_INTERCC_DEFAULT (0)
-/**
-* @def LVNV_PBROADSIDE_INTERCC_MIN
-* MinValue of pBroadside_interCC
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_PBROADSIDE_INTERCC_MIN (0)
-/**
-* @def LVNV_PBROADSIDE_INTERCC_MAX
-* MaxValue of pBroadside_interCC
-* @see LVNV_ControlParams_st
-*/
-#define LVNV_PBROADSIDE_INTERCC_MAX (32767)
-
-/**
-* @def LVHF_GAMMAE_DEFAULT
-* Default of gammae
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_GAMMAE_DEFAULT (0)
-/**
-* @def LVHF_GAMMAE_MIN
-* MinValue of gammae
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_GAMMAE_MIN (0)
-/**
-* @def LVHF_GAMMAE_MAX
-* MaxValue of gammae
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_GAMMAE_MAX (32767)
-
-/**
-* @def LVHF_STATUS_DEFAULT
-* Default of status
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_STATUS_DEFAULT (0)
-
-/**
-* @def LVHF_PNLMS_LB_COEFS_DEFAULT
-* Default of pNLMS_LB_Coefs
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_PNLMS_LB_COEFS_DEFAULT (0)
-/**
-* @def LVHF_PNLMS_LB_COEFS_MIN
-* MinValue of pNLMS_LB_Coefs
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_PNLMS_LB_COEFS_MIN (-2147483648)
-/**
-* @def LVHF_PNLMS_LB_COEFS_MAX
-* MaxValue of pNLMS_LB_Coefs
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_PNLMS_LB_COEFS_MAX (2147483647)
-
-/**
-* @def LVHF_PNLMS_HB_COEFS_DEFAULT
-* Default of pNLMS_HB_Coefs
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_PNLMS_HB_COEFS_DEFAULT (0)
-/**
-* @def LVHF_PNLMS_HB_COEFS_MIN
-* MinValue of pNLMS_HB_Coefs
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_PNLMS_HB_COEFS_MIN (-2147483648)
-/**
-* @def LVHF_PNLMS_HB_COEFS_MAX
-* MaxValue of pNLMS_HB_Coefs
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_PNLMS_HB_COEFS_MAX (2147483647)
-
-/**
-* @def LVHF_PPCD_COEFS_DEFAULT
-* Default of pPCD_Coefs
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_PPCD_COEFS_DEFAULT (0)
-/**
-* @def LVHF_PPCD_COEFS_MIN
-* MinValue of pPCD_Coefs
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_PPCD_COEFS_MIN (-2147483648)
-/**
-* @def LVHF_PPCD_COEFS_MAX
-* MaxValue of pPCD_Coefs
-* @see LVHF_ControlParams_st
-*/
-#define LVHF_PPCD_COEFS_MAX (2147483647)
-
-
-
-/**
-* @def LVVE_TX_DUMMY_DEFAULT
-* Default of dummy
-* @see LVVE_Tx_ControlParams_st
-*/
-#define LVVE_TX_DUMMY_DEFAULT (0)
-/**
-* @def LVVE_TX_DUMMY_MIN
-* MinValue of dummy
-* @see LVVE_Tx_ControlParams_st
-*/
-#define LVVE_TX_DUMMY_MIN (-128)
-/**
-* @def LVVE_TX_DUMMY_MAX
-* MaxValue of dummy
-* @see LVVE_Tx_ControlParams_st
-*/
-#define LVVE_TX_DUMMY_MAX (127)
-
-/**
-* Enum type for LVVIDHeader_MessageID_en
-*/
-typedef enum
-{
- LVVE_RX_PRESET = 0, ///< VID header Message ID for LVVE_Rx presets
- LVVE_TX_PRESET = 1, ///< VID header Message ID for LVVE_Tx Presets
- LVVIDHEADER_MESSAGEID_EN_DUMMY = LVM_MAXENUM
-} LVVIDHeader_MessageID_en;
-
-/**
-* Enum type for LVVIDHeader_ReturnStatus_en
-*/
-typedef enum
-{
- LVVIDHEADER_NULLADDRESS = 0, ///< LVVIDHeader module returns NULL address error
- LVVIDHEADER_SUCCESS = 1, ///< LVVIDHeader module returns with success
- LVVIDHEADER_RETURNSTATUS_EN_DUMMY = LVM_MAXENUM
-} LVVIDHeader_ReturnStatus_en;
-
-/**
-* Enum type for LVVE_Rx_Mode_en
-*/
-typedef enum
-{
- LVVE_RX_MODE_OFF = 0, ///< Rx voice engine is turned off
- LVVE_RX_MODE_ON = 1, ///< Rx voice in will run
- LVVE_RX_MODE_BYPASS = 2, ///< Rx voice engine will run but output will be ignored
- LVVE_RX_MODE_EN_DUMMY = LVM_MAXENUM
-} LVVE_Rx_Mode_en;
-
-/**
-* Enum type for LVVE_Tx_Mode_en
-*/
-typedef enum
-{
- LVVE_TX_MODE_OFF = 0, ///< Tx in LVVE engine is disabled
- LVVE_TX_MODE_ON = 1, ///< TX in LVVE is enabled
- LVVE_TX_MODE_BYPASS_MIC0 = 2, ///< TX in LVVE engine will run but output will be Mic0 signal
- LVVE_TX_MODE_BYPASS_MIC1 = 3, ///< Tx in LVVE engine will run but output will be Mic1 signal
- LVVE_TX_MODE_BYPASS_REF = 4, ///< Tx in LVVE engine will run but output will be Ref signal
- LVVE_TX_MODE_EN_DUMMY = LVM_MAXENUM
-} LVVE_Tx_Mode_en;
-
-/****************************************************************************************/
-/* */
-/* Structures */
-/* */
-/****************************************************************************************/
-/**
-* The status parameters are used to retrieve the status of the module.
-* @see LVVC_GetStatusParameters
-*/
-typedef struct
-{
- /**
- The internal gain setting used by VoiceClarity.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>6.9</td>
- <td>@ref LVVC_GAIN_MIN (0)</td>
- <td>@ref LVVC_GAIN_DEFAULT (0)</td>
- <td>@ref LVVC_GAIN_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 Gain; ///< Gain
-
- /**
- 0 (no detection) or 1 (detection).
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>15.0</td>
- <td>@ref LVVC_SPDETECTED_MIN (0)</td>
- <td>@ref LVVC_SPDETECTED_DEFAULT (0)</td>
- <td>@ref LVVC_SPDETECTED_MAX (1)</td>
- </tr>
- </table> */
- LVM_INT16 SpDetected; ///< The speech detector flag.
-
-} LVVC_StatusParams_st;
-
-/**
-* The status parameters are used to retrieve the status of the module.
-* @see LVWM_GetStatusParameters
-*/
-typedef struct
-{
- /**
- The internal gain setting used by WhisperMode in dB.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>6.9</td>
- <td>@ref LVWM_AVL_GAIN_MIN (0)</td>
- <td>@ref LVWM_AVL_GAIN_DEFAULT (0)</td>
- <td>@ref LVWM_AVL_GAIN_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 AVL_Gain; ///< gain (dB)
-
-} LVWM_StatusParams_st;
-
-/**
-* The status parameters are used to retrieve the status of the module.
-* @see LVVE_Rx_GetStatusParameters
-*/
-typedef struct
-{
- /**
- Voice Clarity Status Parameter Structure.
- */
- LVVC_StatusParams_st VC_StatusParams; ///< Voice Clarity Status Parameter Structure
-
- /**
- Whisper Mode Status Parameter Structure.
- */
- LVWM_StatusParams_st WM_StatusParams; ///< Whisper Mode Status Parameter Structure
-
- /**
- Dummy Param.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>1.7</td>
- <td>@ref LVVE_RX_DUMMY_MIN (-128)</td>
- <td>@ref LVVE_RX_DUMMY_DEFAULT (0)</td>
- <td>@ref LVVE_RX_DUMMY_MAX (127)</td>
- </tr>
- </table> */
- LVM_INT8 dummy; ///< Dummy Param
-
-} LVVE_Rx_StatusParams_st;
-
-/**
-* The status parameters are used to retrieve the status of the module.
-* @see LVNV_GetStatusParameters
-*/
-typedef struct
-{
- /**
- Bit mask describing the current state of LVNV, used for debugging.
- */
- LVNV_StatusWord_bm status; ///< current state
-
- /**
- To keep correct memory alignment. To be removed when LVNV_StatusWord_bm has
- become int32 as it should.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>0.15</td>
- <td>@ref LVNV_DUMMY_MIN (0)</td>
- <td>@ref LVNV_DUMMY_DEFAULT (0)</td>
- <td>@ref LVNV_DUMMY_MAX (0)</td>
- </tr>
- </table> */
- LVM_INT16 Dummy; ///< Dummy for memory alignment.
-
- /**
- Pointer to the coefficients of the primary low-band (0-4kHz) NLMS filter
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>1.30</td>
- <td>@ref LVNV_PNLMS0_LB_COEFFS_MIN (-2147483648)</td>
- <td>@ref LVNV_PNLMS0_LB_COEFFS_DEFAULT (0)</td>
- <td>@ref LVNV_PNLMS0_LB_COEFFS_MAX (2147483647)</td>
- </tr>
- </table> */
- LVM_INT32* pNLMS0_LB_Coeffs; ///< NLMS0 lowband filter coefficients
-
- /**
- Pointer to the coefficients of the primary high-band (4-8kHz) NLMS filter
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>1.30</td>
- <td>@ref LVNV_PNLMS0_HB_COEFFS_MIN (-2147483648)</td>
- <td>@ref LVNV_PNLMS0_HB_COEFFS_DEFAULT (0)</td>
- <td>@ref LVNV_PNLMS0_HB_COEFFS_MAX (2147483647)</td>
- </tr>
- </table> */
- LVM_INT32* pNLMS0_HB_Coeffs; ///< NLMS0 highband filter coefficients
-
- /**
- Pointer to the coefficients of the secondary low-band (0-4kHz) NLMS filter
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>1.30</td>
- <td>@ref LVNV_PNLMS1_LB_COEFFS_MIN (-2147483648)</td>
- <td>@ref LVNV_PNLMS1_LB_COEFFS_DEFAULT (0)</td>
- <td>@ref LVNV_PNLMS1_LB_COEFFS_MAX (2147483647)</td>
- </tr>
- </table> */
- LVM_INT32* pNLMS1_LB_Coeffs; ///< NLMS1 lowband filter coefficients
-
- /**
- Pointer to the coefficients of the secondary high-band (4-8kHz) NLMS filter
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>1.30</td>
- <td>@ref LVNV_PNLMS1_HB_COEFFS_MIN (-2147483648)</td>
- <td>@ref LVNV_PNLMS1_HB_COEFFS_DEFAULT (0)</td>
- <td>@ref LVNV_PNLMS1_HB_COEFFS_MAX (2147483647)</td>
- </tr>
- </table> */
- LVM_INT32* pNLMS1_HB_Coeffs; ///< NLMS1 highband filter coefficients
-
- /**
- Pointer to the coefficients of the FSB0 and FSB1 filters
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>16.15</td>
- <td>@ref LVNV_PFSB_COEFFS_MIN (-2147483648)</td>
- <td>@ref LVNV_PFSB_COEFFS_DEFAULT (0)</td>
- <td>@ref LVNV_PFSB_COEFFS_MAX (2147483647)</td>
- </tr>
- </table> */
- LVM_INT32* pFSB_Coeffs; ///< FSB0 and FSB1 coefficients
-
- /**
- Pointer to the coefficients of the GSC filter
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>1.30</td>
- <td>@ref LVNV_PGSC_COEFFS_MIN (-2147483648)</td>
- <td>@ref LVNV_PGSC_COEFFS_DEFAULT (0)</td>
- <td>@ref LVNV_PGSC_COEFFS_MAX (2147483647)</td>
- </tr>
- </table> */
- LVM_INT32* pGSC_Coeffs; ///< GSC coefficients
-
- /**
- Pointer to the MicPowSp detection flag
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>15.0</td>
- <td>@ref LVNV_PMICPOWSP_MIN (0)</td>
- <td>@ref LVNV_PMICPOWSP_DEFAULT (0)</td>
- <td>@ref LVNV_PMICPOWSP_MAX (1)</td>
- </tr>
- </table> */
- LVM_INT16* pMicPowSp; ///< MicPow Speech detection flag
-
- /**
- Pointer to the variable of Calibration factor
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>2.13</td>
- <td>@ref LVNV_PCALFACTOR_MIN (0)</td>
- <td>@ref LVNV_PCALFACTOR_DEFAULT (0)</td>
- <td>@ref LVNV_PCALFACTOR_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16* pCalFactor; ///< Calibration factor value
-
- /**
- Pointer to the variable of Calibration ready
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>15.0</td>
- <td>@ref LVNV_PCALREADY_MIN (0)</td>
- <td>@ref LVNV_PCALREADY_DEFAULT (0)</td>
- <td>@ref LVNV_PCALREADY_MAX (2)</td>
- </tr>
- </table> */
- LVM_INT16* pCalReady; ///< Calibration ready value
-
- /**
- Pointer to the inter-channel correlation value used in broadside detection.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>0.15</td>
- <td>@ref LVNV_PBROADSIDE_INTERCC_MIN (0)</td>
- <td>@ref LVNV_PBROADSIDE_INTERCC_DEFAULT (0)</td>
- <td>@ref LVNV_PBROADSIDE_INTERCC_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16* pBroadside_interCC; ///< Broadside correlation
-
-} LVNV_StatusParams_st;
-
-/**
-* The status parameters are used to retrieve the status of the module.
-* @see LVHF_GetStatusParameters
-*/
-typedef struct
-{
- /**
- Current value of the echo subtraction factor.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>5.10</td>
- <td>@ref LVHF_GAMMAE_MIN (0)</td>
- <td>@ref LVHF_GAMMAE_DEFAULT (0)</td>
- <td>@ref LVHF_GAMMAE_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 gammae; ///< multiplicator factor of echo suppression
-
- /**
- Bit mask describing the current state of LVHF, used for debugging.
- */
- LVHF_StatusWord_bm status; ///< current state
-
- /**
- Pointer to the coefficients of the LB NLMS.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>1.30</td>
- <td>@ref LVHF_PNLMS_LB_COEFS_MIN (-2147483648)</td>
- <td>@ref LVHF_PNLMS_LB_COEFS_DEFAULT (0)</td>
- <td>@ref LVHF_PNLMS_LB_COEFS_MAX (2147483647)</td>
- </tr>
- </table> */
- LVM_INT32* pNLMS_LB_Coefs; ///< NLMS lowband filter coefficients
-
- /**
- Pointer to the coefficients of the HB NLMS.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>1.30</td>
- <td>@ref LVHF_PNLMS_HB_COEFS_MIN (-2147483648)</td>
- <td>@ref LVHF_PNLMS_HB_COEFS_DEFAULT (0)</td>
- <td>@ref LVHF_PNLMS_HB_COEFS_MAX (2147483647)</td>
- </tr>
- </table> */
- LVM_INT32* pNLMS_HB_Coefs; ///< NLMS highband filter coefficients
-
- /**
- Pointer to the coefficients of the PCD NLMS.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>1.30</td>
- <td>@ref LVHF_PPCD_COEFS_MIN (-2147483648)</td>
- <td>@ref LVHF_PPCD_COEFS_DEFAULT (0)</td>
- <td>@ref LVHF_PPCD_COEFS_MAX (2147483647)</td>
- </tr>
- </table> */
- LVM_INT32* pPCD_Coefs; ///< PCD NLMS filter coefficients
-
-} LVHF_StatusParams_st;
-
-/**
-* The status parameters are used to retrieve the status of the module.
-* @see LVVE_Tx_GetStatusParameters
-*/
-typedef struct
-{
- /**
- HandsFree Status Parameter Structure.
- */
- LVHF_StatusParams_st HF_StatusParams; ///< HandsFree Status Parameters Structure
-
- /**
- NoiseVoid Status Parameter Structure.
- */
- LVNV_StatusParams_st NV_StatusParams; ///< NoiseVoid Status Parameters Structrue
-
- /**
- Dummy Param.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>1.7</td>
- <td>@ref LVVE_TX_DUMMY_MIN (-128)</td>
- <td>@ref LVVE_TX_DUMMY_DEFAULT (0)</td>
- <td>@ref LVVE_TX_DUMMY_MAX (127)</td>
- </tr>
- </table> */
- LVM_INT8 dummy; ///< Dummy Param
-
-} LVVE_Tx_StatusParams_st;
-
-/**
-* The control parameters are used to control the overall module behavior. These parameters may
-* be changed at any time during processing using the LVVIDHeader_SetControlParameters function but they
-* will not take effect until the next call to the LVVIDHeader_Process function.
-*
-* @see LVVIDHeader_SetControlParameters
-* @see LVVIDHeader_Process
-*/
-typedef struct
-{
- /**
- This number always increments by one when there is change in the header format.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>8.0</td>
- <td>@ref LVVIDHEADER_HEADERVERSION_MIN (0)</td>
- <td>@ref LVVIDHEADER_HEADERVERSION_DEFAULT (3)</td>
- <td>@ref LVVIDHEADER_HEADERVERSION_MAX (255)</td>
- </tr>
- </table> */
- LVM_UINT8 HeaderVersion; ///< Header Format Version
-
- /**
- Initially This variable holds value of the baseline version. The value is in
- format of xxyyzzpp where xx is major number of the library, yy is minor number,
- zz is second minor number and pp is patch number of the baseline.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>32.0</td>
- <td>@ref LVVIDHEADER_BASELINEVERSION_MIN (1)</td>
- <td>@ref LVVIDHEADER_BASELINEVERSION_DEFAULT (51906816)</td>
- <td>@ref LVVIDHEADER_BASELINEVERSION_MAX (4294967295)</td>
- </tr>
- </table> */
- LVM_UINT32 BaselineVersion; ///< This is LVVE tagged version name
-
- /**
- First LVVE_Rx algorithm mask which holds information of which LVVE_Rx
- algorithms are present.
- */
- LVVIDHeader_LVVE_Rx_Mask1_bm LVVE_Rx_AlgoMask1; ///< This variable forms first part of LVVE_Rx algorithm mask
-
- /**
- Second LVVE_Rx algorithm mask which holds information of which LVVE_Rx
- algorithms are present.
- */
- LVVIDHeader_LVVE_Rx_Mask2_bm LVVE_Rx_AlgoMask2; ///< This variable forms second part of LVVE_Rx algorithm mask
-
- /**
- First LVVE_Tx algorithm mask which holds information of which LVVE_Tx
- algorithms are present.
- */
- LVVIDHeader_LVVE_Tx_Mask1_bm LVVE_Tx_AlgoMask1; ///< This variable forms first part of LVVE_Tx mask
-
- /**
- Second LVVE_Tx algorithm mask which holds information of which LVVE_Tx
- algorithms are present.
- */
- LVVIDHeader_LVVE_Tx_Mask2_bm LVVE_Tx_AlgoMask2; ///< This variable forms second part of LVVE_Tx mask
-
- /**
- First LVVE configuration mask which holds information of which configurations
- of LVVE_Tx and LVVE_Rx algorithm are present.
- */
- LVVIDHeader_Configurations_Mask1_bm LVVE_Config_AlgoMask1; ///< This variable forms first part of common LVVE_Tx and LVVE_Rx configuration mask
-
- /**
- Second LVVE configuration mask which holds information of which configurations
- of LVVE_Tx and LVVE_Rx algorithm are present.
- */
- LVVIDHeader_Configurations_Mask2_bm LVVE_Config_AlgoMask2; ///< This variable forms second part of common LVVE_Tx and LVVE_Rx configuration mask
-
- /**
- Messge ID is used to identify stream
- */
- LVVIDHeader_MessageID_en MessageID; ///< This param holds message ID of the buffer
-
- /**
- This parameter specifies the sample rate information of the buffer.
- */
- LVM_Fs_en SampleRate; ///< Sample rate information of the buffer.
-
- /**
- This parameter specifies the volume index corresponding to the subsequent data.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>8.0</td>
- <td>@ref LVVIDHEADER_VOLUMEINDEX_MIN (0)</td>
- <td>@ref LVVIDHEADER_VOLUMEINDEX_DEFAULT (0)</td>
- <td>@ref LVVIDHEADER_VOLUMEINDEX_MAX (255)</td>
- </tr>
- </table> */
- LVM_UINT8 VolumeIndex; ///< Volume index corresponding to the subsequent data.
-
- /**
- This parameter specifies how many volumes are present in the binary file.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>8.0</td>
- <td>@ref LVVIDHEADER_NUMVOLUMES_MIN (0)</td>
- <td>@ref LVVIDHEADER_NUMVOLUMES_DEFAULT (1)</td>
- <td>@ref LVVIDHEADER_NUMVOLUMES_MAX (255)</td>
- </tr>
- </table> */
- LVM_UINT8 NumVolumes; ///< Number of volumes present in the binary file.
-
-} LVVIDHeader_ControlParams_st;
-
-/**
-* The control parameters are used to control the overall module behavior. These parameters may
-* be changed at any time during processing using the LVVC_SetControlParameters function but they
-* will not take effect until the next call to the LVVC_Process function.
-*
-* @see LVVC_SetControlParameters
-* @see LVVC_Process
-*/
-typedef struct
-{
- /**
- Control the operating mode (ON/OFF) of the algorithm.
- */
- LVM_Mode_en OperatingMode; ///< Operating mode
-
- /**
- The mode word to enable/disable internal algorithm blocks of VoiceClarity.
- */
- LVVC_ModeWord_bm mode; ///< Mode word
-
- /**
- Maximum Gain applied to the signal.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>6.9</td>
- <td>@ref LVVC_GAIN_LIN_MAX_MIN (512)</td>
- <td>@ref LVVC_GAIN_LIN_MAX_DEFAULT (1286)</td>
- <td>@ref LVVC_GAIN_LIN_MAX_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 Gain_Lin_Max; ///< Maximum Gain.
-
- /**
- The Noise_Sensitivity parameter sets how sensitive VoiceClarity will be to the
- background noise level. The Noise_Sensitivity parameter allows adjusting the
- sensitivity of those processing blocks to the nearend noise level. For high
- values of the Noise_Sensitivity the effect of the mentioned processing blocks
- will be big, even at low to moderate nearend noise levels. For low values of
- the Noise_Sensitivity the effect of the processing blocks will be smaller, even
- for high nearend noise levels.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>0.15</td>
- <td>@ref LVVC_NOISE_SENSITIVITY_MIN (-6709)</td>
- <td>@ref LVVC_NOISE_SENSITIVITY_DEFAULT (20000)</td>
- <td>@ref LVVC_NOISE_SENSITIVITY_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 Noise_Sensitivity; ///< Noise Sensitivity.
-
- /**
- The desired output level of the AGC. <br>
- AVL_Target_level_lin = \f$32767*10^{Target_Level_dB/20}\f$
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>0.15</td>
- <td>@ref LVVC_AVL_TARGET_LEVEL_LIN_MIN (0)</td>
- <td>@ref LVVC_AVL_TARGET_LEVEL_LIN_DEFAULT (16384)</td>
- <td>@ref LVVC_AVL_TARGET_LEVEL_LIN_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 AVL_Target_level_lin; ///< The desired output level of the AGC.
-
- /**
- The maximal attenuation of the AGC. <br>
- AVL_MinGainLin = \f$512*10^{MinGain_dB/20}\f$
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>6.9</td>
- <td>@ref LVVC_AVL_MINGAINLIN_MIN (0)</td>
- <td>@ref LVVC_AVL_MINGAINLIN_DEFAULT (256)</td>
- <td>@ref LVVC_AVL_MINGAINLIN_MAX (512)</td>
- </tr>
- </table> */
- LVM_INT16 AVL_MinGainLin; ///< The maximal attenuation of the AGC.
-
- /**
- The maximal gain of the AGC. <br>
- AVL_MaxGainLin = \f$512*10^{MaxGain_dB/20}\f$
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>6.9</td>
- <td>@ref LVVC_AVL_MAXGAINLIN_MIN (512)</td>
- <td>@ref LVVC_AVL_MAXGAINLIN_DEFAULT (8192)</td>
- <td>@ref LVVC_AVL_MAXGAINLIN_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 AVL_MaxGainLin; ///< The maximal gain of the AGC.
-
- /**
- The nominal gain of the AGC.<br>
- AVL_NominalGain = \f$512*10^{NominalGain_dB/20}\f$
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>6.9</td>
- <td>@ref LVVC_AVL_NOMINALGAIN_MIN (0)</td>
- <td>@ref LVVC_AVL_NOMINALGAIN_DEFAULT (512)</td>
- <td>@ref LVVC_AVL_NOMINALGAIN_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 AVL_NominalGain; ///< The nominal gain of the AGC.
-
- /**
- The gain of the AGC is smoothed across time. The time constant of the smoothing
- depends on whether the gain is increasing or decreasing. When a sudden loud
- signal is encountered (e.g. attack of speech), the attack time is used. When
- the gain is increasing (e.g. long period of whispered speech), the release time
- is used. <br>
-
- AVL_Attack = \f$32767*\exp(-1/(100*AttackTimeSec))\f$
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>0.15</td>
- <td>@ref LVVC_AVL_ATTACK_MIN (0)</td>
- <td>@ref LVVC_AVL_ATTACK_DEFAULT (12055)</td>
- <td>@ref LVVC_AVL_ATTACK_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 AVL_Attack; ///< The attack time of the AGC.
-
- /**
- The gain of the AGC is smoothed across time. The time constant of the smoothing
- depends on whether the gain is increasing or decreasing. When a sudden loud
- signal is encountered (e.g. attack of speech), the attack time is used. When
- the gain is increasing (e.g. long period of whispered speech), the release time
- is used. <br>
-
- AVL_Release = \f$32767*\exp(-1/(100*ReleaseTimeSec))\f$
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>0.15</td>
- <td>@ref LVVC_AVL_RELEASE_MIN (0)</td>
- <td>@ref LVVC_AVL_RELEASE_DEFAULT (32604)</td>
- <td>@ref LVVC_AVL_RELEASE_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 AVL_Release; ///< The release time of the AGC.
-
- /**
- The release time at maximum noise level.<br>
-
- AVL_ReleaseMax = \f$32767*\exp(-1/(100*ReleaseMaxTimeSec))\f$
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>0.15</td>
- <td>@ref LVVC_AVL_RELEASEMAX_MIN (0)</td>
- <td>@ref LVVC_AVL_RELEASEMAX_DEFAULT (32441)</td>
- <td>@ref LVVC_AVL_RELEASEMAX_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 AVL_ReleaseMax; ///< The release time at maximum noise level.
-
- /**
- AVL_Limit_MaxOutputLin = \f$32767*10^{TargetLimiterLeveldB/20}\f$
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>0.15</td>
- <td>@ref LVVC_AVL_LIMIT_MAXOUTPUTLIN_MIN (0)</td>
- <td>@ref LVVC_AVL_LIMIT_MAXOUTPUTLIN_DEFAULT (23170)</td>
- <td>@ref LVVC_AVL_LIMIT_MAXOUTPUTLIN_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 AVL_Limit_MaxOutputLin; ///< The level to which the signal will be limited.
-
- /**
- The higher the value of the threshold, the less speech detections will occur.
- <br>
- SpDetect_Threshold = \f$512 * [0,64]\f$
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>6.9</td>
- <td>@ref LVVC_SPDETECT_THRESHOLD_MIN (0)</td>
- <td>@ref LVVC_SPDETECT_THRESHOLD_DEFAULT (1024)</td>
- <td>@ref LVVC_SPDETECT_THRESHOLD_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 SpDetect_Threshold; ///< The threshold used in the speech detector of VoiceClarity.
-
-} LVVC_ControlParams_st;
-
-/**
-* The control parameters are used to control the overall module behavior. These parameters may
-* be changed at any time during processing using the LVFENS_SetControlParameters function but they
-* will not take effect until the next call to the LVFENS_Process function.
-*
-* @see LVFENS_SetControlParameters
-* @see LVFENS_Process
-*/
-typedef struct
-{
- /**
- */
- LVM_Mode_en OperatingMode; ///< Operating Mode
-
- /**
- The maximum amount of noise suppression. <br>
- Unit: dB<br>
- FENS_limit_ns = \f$32767*10^{-max noise reduction[dB]/20}\f$
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>0.15</td>
- <td>@ref LVFENS_FENS_LIMIT_NS_MIN (0)</td>
- <td>@ref LVFENS_FENS_LIMIT_NS_DEFAULT (10976)</td>
- <td>@ref LVFENS_FENS_LIMIT_NS_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 FENS_limit_NS; ///< FENS Noise Suppression Limit
-
- /**
- The mode word to control the internal operation of FENS.
- */
- LVFENS_ModeWord_bm Mode; ///< Mode word
-
-} LVFENS_ControlParams_st;
-
-/**
-* The control parameters are used to control the overall module behavior. These parameters may
-* be changed at any time during processing using the LVWM_SetControlParameters function but they
-* will not take effect until the next call to the LVWM_Process function.
-*
-* @see LVWM_SetControlParameters
-* @see LVWM_Process
-*/
-typedef struct
-{
- /**
- Control the operating mode (ON/OFF) of the algorithm.
- */
- LVM_Mode_en OperatingMode; ///< Operating mode
-
- /**
- The mode word to enable/disable internal algorithm blocks of WhisperMode.
- */
- LVWM_ModeWord_bm mode; ///< Mode word
-
- /**
- The desired output level of the AGC. <br>
- AVL_Target_level_lin = \f$32767*10^{TargetLeveldB/20}\f$
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>0.15</td>
- <td>@ref LVWM_AVL_TARGET_LEVEL_LIN_MIN (0)</td>
- <td>@ref LVWM_AVL_TARGET_LEVEL_LIN_DEFAULT (16384)</td>
- <td>@ref LVWM_AVL_TARGET_LEVEL_LIN_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 AVL_Target_level_lin; ///< The desired output level of the AGC.
-
- /**
- The maximal attenuation of the AGC. <br>
- AVL_MinGainLin = \f$512*10^{MinGaindB/20}\f$
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>6.9</td>
- <td>@ref LVWM_AVL_MINGAINLIN_MIN (0)</td>
- <td>@ref LVWM_AVL_MINGAINLIN_DEFAULT (128)</td>
- <td>@ref LVWM_AVL_MINGAINLIN_MAX (512)</td>
- </tr>
- </table> */
- LVM_INT16 AVL_MinGainLin; ///< The maximal attenuation of the AGC.
-
- /**
- The maximal gain of the AGC. <br>
- AVL_MaxGainLin = \f$512*10^{MaxGaindB/20}\f$
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>6.9</td>
- <td>@ref LVWM_AVL_MAXGAINLIN_MIN (512)</td>
- <td>@ref LVWM_AVL_MAXGAINLIN_DEFAULT (8189)</td>
- <td>@ref LVWM_AVL_MAXGAINLIN_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 AVL_MaxGainLin; ///< The maximal gain of the AGC.
-
- /**
- The gain of the AGC is smoothed across time. The time constant of the smoothing
- depends on whether the gain is increasing or decreasing. When a sudden loud
- signal is encountered (e.g. attack of speech), the attack time is used. When
- the gain is increasing (e.g. long period of whispered speech), the release time
- is used. <br>
-
- AVL_Attack = \f$32767*\exp(-1/(100*AttackTimeSec))\f$
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>0.15</td>
- <td>@ref LVWM_AVL_ATTACK_MIN (0)</td>
- <td>@ref LVWM_AVL_ATTACK_DEFAULT (25520)</td>
- <td>@ref LVWM_AVL_ATTACK_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 AVL_Attack; ///< The attack time of the AGC.
-
- /**
- The gain of the AGC is smoothed across time. The time constant of the smoothing
- depends on whether the gain is increasing or decreasing. When a sudden loud
- signal is encountered (e.g. attack of speech), the attack time is used. When
- the gain is increasing (e.g. long period of whispered speech), the release time
- is used. <br>
-
- AVL_Release = \f$32767*\exp(-1/(100*ReleasTimeSec))\f$
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>0.15</td>
- <td>@ref LVWM_AVL_RELEASE_MIN (0)</td>
- <td>@ref LVWM_AVL_RELEASE_DEFAULT (32685)</td>
- <td>@ref LVWM_AVL_RELEASE_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 AVL_Release; ///< The release time of the AGC.
-
- /**
- AVL_Limit_MaxOutputLin = \f$32767*10^{TargetLimiterLeveldB/20}\f$
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>0.15</td>
- <td>@ref LVWM_AVL_LIMIT_MAXOUTPUTLIN_MIN (0)</td>
- <td>@ref LVWM_AVL_LIMIT_MAXOUTPUTLIN_DEFAULT (23197)</td>
- <td>@ref LVWM_AVL_LIMIT_MAXOUTPUTLIN_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 AVL_Limit_MaxOutputLin; ///< The level to which the signal will be limited.
-
- /**
- The higher the value of the threshold, the less speech detections will occur.
- <br>
- SpDetect_Threshold = \f$512 * [0,64]\f$
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>6.9</td>
- <td>@ref LVWM_SPDETECT_THRESHOLD_MIN (0)</td>
- <td>@ref LVWM_SPDETECT_THRESHOLD_DEFAULT (9216)</td>
- <td>@ref LVWM_SPDETECT_THRESHOLD_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 SpDetect_Threshold; ///< The threshold used in the speech detector of WhisperMode.
-
-} LVWM_ControlParams_st;
-
-/**
-* The control parameters are used to control the overall module behavior. These parameters may
-* be changed at any time during processing using the LVDRC_SetControlParameters function but they
-* will not take effect until the next call to the LVDRC_Process function.
-*
-* @see LVDRC_SetControlParameters
-* @see LVDRC_Process
-*/
-typedef struct
-{
- /**
- Operating mode for DRC
- */
- LVM_Mode_en OperatingMode; ///< Operating mode
-
- /**
- Sets the number of sections (knee points) in the compressor curve
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>16.0</td>
- <td>@ref LVDRC_NUMKNEES_MIN (1)</td>
- <td>@ref LVDRC_NUMKNEES_DEFAULT (5)</td>
- <td>@ref LVDRC_NUMKNEES_MAX (5)</td>
- </tr>
- </table> */
- LVM_UINT16 NumKnees; ///< Number of Knee points in compressor curve
-
- /**
- An array of size 5(maximum) containing the knee points specified by the
- compression curve in dBFs. The number of knee points in use is limited by the
- NumKnees parameter. Th input level for the first knee should be equal to or
- larger than -96dB, and the input level for the last knee should be 0dB.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>15.0</td>
- <td>@ref LVDRC_COMPRESSORCURVEINPUTLEVELS_MIN (-96)</td>
- <td>@ref LVDRC_COMPRESSORCURVEINPUTLEVELS_DEFAULT {-96,-70,-50, -24, 0}</td>
- <td>@ref LVDRC_COMPRESSORCURVEINPUTLEVELS_MAX (0)</td>
- </tr>
- </table> */
- LVM_INT16 CompressorCurveInputLevels[LVDRC_COMPRESSORCURVEINPUTLEVELS_LENGTH]; ///< Compressor Curve Input Levels
-
- /**
- An array of size 5(maximum) containing the knee points specified by the
- compression curve in dBFs. The number of knee points in use is limited by the
- NumKnees parameter. The output level for the first knee should be equal to or
- larger than -96dB, and the output level for the last knee should be equal to or
- smaller than 0dB.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>15.0</td>
- <td>@ref LVDRC_COMPRESSORCURVEOUTPUTLEVELS_MIN (-96)</td>
- <td>@ref LVDRC_COMPRESSORCURVEOUTPUTLEVELS_DEFAULT {-96,-70,-38,-12,0}</td>
- <td>@ref LVDRC_COMPRESSORCURVEOUTPUTLEVELS_MAX (0)</td>
- </tr>
- </table> */
- LVM_INT16 CompressorCurveOutputLevels[LVDRC_COMPRESSORCURVEOUTPUTLEVELS_LENGTH]; ///< Compressor Curve Output Levels
-
- /**
- The AttackTime parameter is the time constant controlling the rate of reaction
- to increase in signal level. The AttackTime is specified in increments of 100µs
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>15.0</td>
- <td>@ref LVDRC_ATTACKTIME_MIN (0)</td>
- <td>@ref LVDRC_ATTACKTIME_DEFAULT (50)</td>
- <td>@ref LVDRC_ATTACKTIME_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 AttackTime; ///< Attack Time
-
- /**
- The ReleaseTime parameter is the time constant controlling the rate of reaction
- to decrease in signal level. The ReleaseTime is specified in increments of
- 100µs.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>15.0</td>
- <td>@ref LVDRC_RELEASETIME_MIN (0)</td>
- <td>@ref LVDRC_RELEASETIME_DEFAULT (50)</td>
- <td>@ref LVDRC_RELEASETIME_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 ReleaseTime; ///< Release Time
-
- /**
- Enable or Disable limiter with soft clipping.
- */
- LVM_Mode_en LimiterOperatingMode; ///< Enable or Disable limiter with soft clipping
-
- /**
- Sets the limit level of the compressor in dB.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>15.0</td>
- <td>@ref LVDRC_LIMITLEVEL_MIN (-96)</td>
- <td>@ref LVDRC_LIMITLEVEL_DEFAULT (0)</td>
- <td>@ref LVDRC_LIMITLEVEL_MAX (0)</td>
- </tr>
- </table> */
- LVM_INT16 LimitLevel; ///< Sets the limit level of the compressor in dB
-
-} LVDRC_ControlParams_st;
-
-/**
-* The control parameters are used to control the overall module behavior. These parameters may
-* be changed at any time during processing using the LVNG_SetControlParameters function but they
-* will not take effect until the next call to the LVNG_Process function.
-*
-* @see LVNG_SetControlParameters
-* @see LVNG_Process
-*/
-typedef struct
-{
- /**
- Operating mode for Noise Gate
- */
- LVM_Mode_en OperatingMode; ///< Operating mode
-
- /**
- Sets the number of sections (knee points) in the compressor curve
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>16.0</td>
- <td>@ref LVNG_NUMKNEES_MIN (1)</td>
- <td>@ref LVNG_NUMKNEES_DEFAULT (5)</td>
- <td>@ref LVNG_NUMKNEES_MAX (5)</td>
- </tr>
- </table> */
- LVM_UINT16 NumKnees; ///< Number of Knee points in compressor curve
-
- /**
- An array of size 5(maximum) containing the knee points specified by the
- compression curve in dBFs. The number of knee points in use is limited by the
- NumKnees parameter. The input level for the first knee should be equal to or
- larger than -96dB, and the input level for the last knee should be 0dB.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>15.0</td>
- <td>@ref LVNG_COMPRESSORCURVEINPUTLEVELS_MIN (-96)</td>
- <td>@ref LVNG_COMPRESSORCURVEINPUTLEVELS_DEFAULT {-80,-70,-50, -24, 0}</td>
- <td>@ref LVNG_COMPRESSORCURVEINPUTLEVELS_MAX (0)</td>
- </tr>
- </table> */
- LVM_INT16 CompressorCurveInputLevels[LVNG_COMPRESSORCURVEINPUTLEVELS_LENGTH]; ///< Compressor Curve Input Levels
-
- /**
- An array of size 5(maximum) containing the knee points specified by the
- compression curve in dBFs. The number of knee points in use is limited by the
- NumKnees parameter. The output level for the first knee should be equal to or
- larger than -96dB, and the output level for the last knee should be equal to or
- smaller than 0dB.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>15.0</td>
- <td>@ref LVNG_COMPRESSORCURVEOUTPUTLEVELS_MIN (-96)</td>
- <td>@ref LVNG_COMPRESSORCURVEOUTPUTLEVELS_DEFAULT {-96,-80,-50, -24, 0}</td>
- <td>@ref LVNG_COMPRESSORCURVEOUTPUTLEVELS_MAX (0)</td>
- </tr>
- </table> */
- LVM_INT16 CompressorCurveOutputLevels[LVNG_COMPRESSORCURVEOUTPUTLEVELS_LENGTH]; ///< Compressor Curve Output Levels
-
- /**
- The AttackTime parameter is the time constant controlling the rate of reaction
- to increase in signal level. The AttackTime is specified in increments of 100µs
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>15.0</td>
- <td>@ref LVNG_ATTACKTIME_MIN (0)</td>
- <td>@ref LVNG_ATTACKTIME_DEFAULT (50)</td>
- <td>@ref LVNG_ATTACKTIME_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 AttackTime; ///< Attack Time
-
- /**
- The ReleaseTime parameter is the time constant controlling the rate of reaction
- to decrease in signal level. The ReleaseTime is specified in increments of
- 100µs.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>15.0</td>
- <td>@ref LVNG_RELEASETIME_MIN (0)</td>
- <td>@ref LVNG_RELEASETIME_DEFAULT (50)</td>
- <td>@ref LVNG_RELEASETIME_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 ReleaseTime; ///< Release Time
-
-} LVNG_ControlParams_st;
-
-/**
-* The control parameters are used to control the overall module behavior. These parameters may
-* be changed at any time during processing using the LVNLPP_SetControlParameters function but they
-* will not take effect until the next call to the LVNLPP_Process function.
-*
-* @see LVNLPP_SetControlParameters
-* @see LVNLPP_Process
-*/
-typedef struct
-{
- /**
- Limits the signal level compared to digital full scale in dB.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>15.0</td>
- <td>@ref LVNLPP_NLPP_LIMIT_MIN (-24)</td>
- <td>@ref LVNLPP_NLPP_LIMIT_DEFAULT (0)</td>
- <td>@ref LVNLPP_NLPP_LIMIT_MAX (0)</td>
- </tr>
- </table> */
- LVM_INT16 NLPP_Limit; ///< NLPP Limit
-
- /**
- Sets the -3dB corner frequency of the high-pass filter in Hz.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>16.0</td>
- <td>@ref LVNLPP_NLPP_HPF_CORNERFREQ_MIN (50)</td>
- <td>@ref LVNLPP_NLPP_HPF_CORNERFREQ_DEFAULT (50)</td>
- <td>@ref LVNLPP_NLPP_HPF_CORNERFREQ_MAX (1000)</td>
- </tr>
- </table> */
- LVM_UINT16 NLPP_HPF_CornerFreq; ///< NLPP HPF Corner Frequency
-
-} LVNLPP_ControlParams_st;
-
-/**
-* The control parameters are used to control the overall module behavior. These parameters may
-* be changed at any time during processing using the LVEQ_SetControlParameters function but they
-* will not take effect until the next call to the LVEQ_Process function.
-*
-* @see LVEQ_SetControlParameters
-* @see LVEQ_Process
-*/
-typedef struct
-{
- /**
- Sets the length of the Equalizer impulse response. This must never be more than
- the value of EQ_MaxLength set at initialization time. The EQ_Length must be a
- multiple of 8.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>16.0</td>
- <td>@ref LVEQ_EQ_LENGTH_MIN (8)</td>
- <td>@ref LVEQ_EQ_LENGTH_DEFAULT (32)</td>
- <td>@ref LVEQ_EQ_LENGTH_MAX (32)</td>
- </tr>
- </table> */
- LVM_UINT16 EQ_Length; ///< EQ Tap Length
-
- /**
- Pointer to an array containing the samples of the Equalizer impulse response.
- The format of the array content is specified below. The samples of the
- Equalizer impulse response must be in Q3.12 format.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>3.12</td>
- <td>@ref LVEQ_EQ_COEFS_MIN (-32768)</td>
- <td>@ref LVEQ_EQ_COEFS_DEFAULT {4096,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}</td>
- <td>@ref LVEQ_EQ_COEFS_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 *pEQ_Coefs; ///< Equalizer impulse response
-
-} LVEQ_ControlParams_st;
-
-/**
-* The control parameters are used to control the overall module behavior. These parameters may
-* be changed at any time during processing using the LVVOL_SetControlParameters function but they
-* will not take effect until the next call to the LVVOL_Process function.
-*
-* @see LVVOL_SetControlParameters
-* @see LVVOL_Process
-*/
-typedef struct
-{
- /**
- Turns on/off VOL_Gain.
- */
- LVM_Mode_en VOL_OperatingMode; ///< Turns on/off VOL_Gain
-
- /**
- The volume control gain can be used to set the overall volume level of the
- signal. The gain is set in dB with steps of 1dB.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>15.0</td>
- <td>@ref LVVOL_VOL_GAIN_MIN (-96)</td>
- <td>@ref LVVOL_VOL_GAIN_DEFAULT (0)</td>
- <td>@ref LVVOL_VOL_GAIN_MAX (24)</td>
- </tr>
- </table> */
- LVM_INT16 VOL_Gain; ///< Apply Gain to Input signal
-
-} LVVOL_ControlParams_st;
-
-/**
-* The control parameters are used to control the overall module behavior. These parameters may
-* be changed at any time during processing using the LVHPF_SetControlParameters function but they
-* will not take effect until the next call to the LVHPF_Process function.
-*
-* @see LVHPF_SetControlParameters
-* @see LVHPF_Process
-*/
-typedef struct
-{
- /**
- Turns on/off High Pass filter.
- */
- LVM_Mode_en HPF_OperatingMode; ///< Turns on/off High Pass filter
-
- /**
- Sets the 3dB corner frequency of the high-pass filter. In case NoiseVoid is
- enabled, the same high-pass filter will be applied to the second microphone
- channel.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>16.0</td>
- <td>@ref LVHPF_HPF_CORNERFREQ_MIN (50)</td>
- <td>@ref LVHPF_HPF_CORNERFREQ_DEFAULT (50)</td>
- <td>@ref LVHPF_HPF_CORNERFREQ_MAX (1500)</td>
- </tr>
- </table> */
- LVM_UINT16 HPF_CornerFreq; ///< High Pass Filter Corner Frequency in Hz
-
-} LVHPF_ControlParams_st;
-
-/**
-* The control parameters are used to control the overall module behavior. These parameters may
-* be changed at any time during processing using the LVMUTE_SetControlParameters function but they
-* will not take effect until the next call to the LVMUTE_Process function.
-*
-* @see LVMUTE_SetControlParameters
-* @see LVMUTE_Process
-*/
-typedef struct
-{
- /**
- This param can mute unmute the Rx/Tx engine output.
- */
- LVM_Mode_en Mute; ///< This param can mute unmute the Rx/Tx engine output
-
-} LVMUTE_ControlParams_st;
-
-/**
-* The control parameters are used to control the overall module behavior. These parameters may
-* be changed at any time during processing using the LVVE_Rx_SetControlParameters function but they
-* will not take effect until the next call to the LVVE_Rx_Process function.
-*
-* @see LVVE_Rx_SetControlParameters
-* @see LVVE_Rx_Process
-*/
-typedef struct
-{
- /**
- This enumerated type is used to set the operating mode of the Rx path. The
- processing can be separately set to enable all processing modules (i.e., ON),
- to disable all processing modules (i.e., OFF) or to bypass all processing
- modules (i.e., BYPASS). When bypassed, all processing modules keep on running,
- but their output is not used.
- */
- LVVE_Rx_Mode_en OperatingMode; ///< This param controls the on/off of RX voice engine.
-
- /**
- This param can mute unmute the Rx/Tx engine output.
- */
- LVM_Mode_en Mute; ///< This param can mute unmute the Rx/Tx engine output
-
- /**
- Turns on/off VOL_Gain.
- */
- LVM_Mode_en VOL_OperatingMode; ///< Turns on/off VOL_Gain
-
- /**
- The volume control gain can be used to set the overall volume level of the
- signal. The gain is set in dB with steps of 1dB.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>15.0</td>
- <td>@ref LVVE_RX_VOL_GAIN_MIN (-96)</td>
- <td>@ref LVVE_RX_VOL_GAIN_DEFAULT (0)</td>
- <td>@ref LVVE_RX_VOL_GAIN_MAX (24)</td>
- </tr>
- </table> */
- LVM_INT16 VOL_Gain; ///< Apply Gain to Input signal
-
- /**
- Far End Noise Suppression Control Parameter Structure.
- */
- LVFENS_ControlParams_st FENS_ControlParams; ///< Far End Noise Suppression Control Parameter Structure
-
- /**
- Turns on/off NLPP.
- */
- LVM_Mode_en NLPP_OperatingMode; ///< Turns on/off NLPP
-
- /**
- NLPP Control Parameter Structure.
- */
- LVNLPP_ControlParams_st NLPP_ControlParams; ///< NLPP Control Parameter Structure
-
- /**
- Voice Clarity Control Parameter Structure.
- */
- LVVC_ControlParams_st VC_ControlParams; ///< Voice Clarity Control Parameter Structure
-
- /**
- Equalizer Operating mode.
- */
- LVM_Mode_en EQ_OperatingMode; ///< Equalizer Operating mode
-
- /**
- Equalizer Control Parameters Structure.
- */
- LVEQ_ControlParams_st EQ_ControlParams; ///< Equalizer Control Parameters Structure
-
- /**
- DRC Control Parameter Strcuture.
- */
- LVDRC_ControlParams_st DRC_ControlParams; ///< DRC Control Parameter Strcuture
-
- /**
- Turns on/off High Pass filter.
- */
- LVM_Mode_en HPF_OperatingMode; ///< Turns on/off High Pass filter
-
- /**
- Sets the 3dB corner frequency of the high-pass filter. In case NoiseVoid is
- enabled, the same high-pass filter will be applied to the second microphone
- channel.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>16.0</td>
- <td>@ref LVVE_RX_HPF_CORNERFREQ_MIN (50)</td>
- <td>@ref LVVE_RX_HPF_CORNERFREQ_DEFAULT (50)</td>
- <td>@ref LVVE_RX_HPF_CORNERFREQ_MAX (1500)</td>
- </tr>
- </table> */
- LVM_UINT16 HPF_CornerFreq; ///< High Pass Filter Corner Frequency in Hz
-
- /**
- Whisper Mode Control Parameter Strcuture.
- */
- LVWM_ControlParams_st WM_ControlParams; ///< Whisper Mode Control Parameter Strcuture
-
- /**
- Noise Gate Control Parameter Structure.
- */
- LVNG_ControlParams_st NG_ControlParams; ///< Noise Gate Control Parameter Structure
-
-} LVVE_Rx_ControlParams_st;
-
-/**
-* The control parameters are used to control the overall module behavior. These parameters may
-* be changed at any time during processing using the LVNV_SetControlParameters function but they
-* will not take effect until the next call to the LVNV_Process function.
-*
-* @see LVNV_SetControlParameters
-* @see LVNV_Process
-*/
-typedef struct
-{
- /**
- */
- LVM_Mode_en OperatingMode; ///< Operating Mode
-
- /**
- The mode word to enable/disable internal algorithm blocks of LVNV.
- */
- LVNV_ModeWord_bm Mode; ///< Mode word
-
- /**
- The mode2 word to allow switching or combining different blocks inside LVNV.
- */
- LVNV_Mode2Word_bm Mode2; ///< Mode2 word
-
- /**
- The tuning mode word to enable/disable internal algorithm tuning capabilities
- in the different blocks of LVNV. Only one bit is allowed to be enabled at a
- time.
- */
- LVNV_TuningModeWord_bm Tuning_mode; ///< Tuning mode word
-
- /**
- Gain applied at the primary channel in the Tx input. Used to scale the
- microphone signal in order to give the NLMS0_LB and NLMS0_HB filters headroom
- for correct operation.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>2.13</td>
- <td>@ref LVNV_INPUT_GAIN_MIC0_MIN (0)</td>
- <td>@ref LVNV_INPUT_GAIN_MIC0_DEFAULT (8192)</td>
- <td>@ref LVNV_INPUT_GAIN_MIC0_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 Input_Gain_Mic0; ///< The primary input gain.
-
- /**
- Gain applied at the secondary channel in the Tx input. Used to scale the
- microphone signal in order to give the NLMS1_LB and NLMS1_HB filters headroom
- for correct operation.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>2.13</td>
- <td>@ref LVNV_INPUT_GAIN_MIC1_MIN (0)</td>
- <td>@ref LVNV_INPUT_GAIN_MIC1_DEFAULT (8192)</td>
- <td>@ref LVNV_INPUT_GAIN_MIC1_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 Input_Gain_Mic1; ///< The secondary input gain.
-
- /**
- Gain applied at the Tx output of LVNV. Compensates the applied Input_Gain_Mic0
- in order to preserve the overall Tx gain.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>4.11</td>
- <td>@ref LVNV_OUTPUT_GAIN_MIN (0)</td>
- <td>@ref LVNV_OUTPUT_GAIN_DEFAULT (2048)</td>
- <td>@ref LVNV_OUTPUT_GAIN_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 Output_Gain; ///< The output gain.
-
- /**
- Length of the low-band (0-4kHz) adaptive echo cancellation filter for the
- primary channel. The Length should be chosen such that most of the energy of
- the impulse response is covered by the filter. The length should be a multiple
- of 8.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>16.0</td>
- <td>@ref LVNV_NLMS0_LB_TAPS_MIN (16)</td>
- <td>@ref LVNV_NLMS0_LB_TAPS_DEFAULT (32)</td>
- <td>@ref LVNV_NLMS0_LB_TAPS_MAX (64)</td>
- </tr>
- </table> */
- LVM_UINT16 NLMS0_LB_taps; ///< Number of NLMS0 low-band taps.
-
- /**
- Step size for the update of the low-band adaptive filter coefficients for the
- primary channel. It is recommended not to change the default value.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>0.15</td>
- <td>@ref LVNV_NLMS0_LB_TWOALPHA_MIN (0)</td>
- <td>@ref LVNV_NLMS0_LB_TWOALPHA_DEFAULT (8192)</td>
- <td>@ref LVNV_NLMS0_LB_TWOALPHA_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 NLMS0_LB_twoalpha; ///< NLMS0 low-band step size
-
- /**
- Adaptive step-size control for the low-band adaptive echo cancellation filter
- for the primary channel. This parameter is used to slow down the update speed
- of the adaptive filter during double talk situations.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>9.6</td>
- <td>@ref LVNV_NLMS0_LB_ERL_MIN (64)</td>
- <td>@ref LVNV_NLMS0_LB_ERL_DEFAULT (1000)</td>
- <td>@ref LVNV_NLMS0_LB_ERL_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 NLMS0_LB_erl; ///< NLMS0 low-band erl
-
- /**
- Length of the high-band (4-8kHz) adaptive echo cancellation filter for the
- primary channel. The Length should be chosen such that most of the energy of
- the impulse response is covered by the filter. The length should be a multiple
- of 8.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>16.0</td>
- <td>@ref LVNV_NLMS0_HB_TAPS_MIN (16)</td>
- <td>@ref LVNV_NLMS0_HB_TAPS_DEFAULT (24)</td>
- <td>@ref LVNV_NLMS0_HB_TAPS_MAX (64)</td>
- </tr>
- </table> */
- LVM_UINT16 NLMS0_HB_taps; ///< Number of NLMS0 high-band taps.
-
- /**
- Step size for the update of the high-band adaptive filter coefficients for the
- primary channel. It is recommended not to change the default value.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>0.15</td>
- <td>@ref LVNV_NLMS0_HB_TWOALPHA_MIN (0)</td>
- <td>@ref LVNV_NLMS0_HB_TWOALPHA_DEFAULT (8192)</td>
- <td>@ref LVNV_NLMS0_HB_TWOALPHA_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 NLMS0_HB_twoalpha; ///< NLMS0 high-band step size
-
- /**
- Adaptive step-size control for the high-band adaptive echo cancellation filter
- for the primary channel. This parameter is used to slow down the update speed
- of the adaptive filter during double talk situations.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>9.6</td>
- <td>@ref LVNV_NLMS0_HB_ERL_MIN (64)</td>
- <td>@ref LVNV_NLMS0_HB_ERL_DEFAULT (1000)</td>
- <td>@ref LVNV_NLMS0_HB_ERL_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 NLMS0_HB_erl; ///< NLMS0 high-band erl
-
- /**
- Indicates whether a preset of adaptive filter coefficients should be done.<br>
- 0 = No preset (coefficients as they are).<br>
- 1 = Preset with internally calculated coefficients.<br>
- 2 = Preset with zero coefficients.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>15.0</td>
- <td>@ref LVNV_NLMS0_PRESET_COEFS_MIN (0)</td>
- <td>@ref LVNV_NLMS0_PRESET_COEFS_DEFAULT (0)</td>
- <td>@ref LVNV_NLMS0_PRESET_COEFS_MAX (2)</td>
- </tr>
- </table> */
- LVM_INT16 NLMS0_preset_coefs; ///< NLMS0 preset
-
- /**
- Offset added to the normalization of the adaptation of the filter.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>0.15</td>
- <td>@ref LVNV_NLMS0_OFFSET_MIN (0)</td>
- <td>@ref LVNV_NLMS0_OFFSET_DEFAULT (776)</td>
- <td>@ref LVNV_NLMS0_OFFSET_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 NLMS0_offset; ///< NLMS0 offset
-
- /**
- Length of the low-band (0-4kHz) adaptive echo cancellation filter for the
- secondary channel. The Length should be chosen such that most of the energy of
- the impulse response is covered by the filter. The length should be a multiple
- of 8.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>16.0</td>
- <td>@ref LVNV_NLMS1_LB_TAPS_MIN (16)</td>
- <td>@ref LVNV_NLMS1_LB_TAPS_DEFAULT (32)</td>
- <td>@ref LVNV_NLMS1_LB_TAPS_MAX (32)</td>
- </tr>
- </table> */
- LVM_UINT16 NLMS1_LB_taps; ///< Number of NLMS1 low-band taps.
-
- /**
- Step size for the update of the low-band adaptive filter coefficients for the
- secondary channel. It is recommended not to change the default value.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>0.15</td>
- <td>@ref LVNV_NLMS1_LB_TWOALPHA_MIN (0)</td>
- <td>@ref LVNV_NLMS1_LB_TWOALPHA_DEFAULT (8192)</td>
- <td>@ref LVNV_NLMS1_LB_TWOALPHA_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 NLMS1_LB_twoalpha; ///< NLMS1 low-band step size
-
- /**
- Adaptive step-size control for the low-band adaptive echo cancellation filter
- for the secondary channel. This parameter is used to slow down the update speed
- of the adaptive filter during double talk situations.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>9.6</td>
- <td>@ref LVNV_NLMS1_LB_ERL_MIN (64)</td>
- <td>@ref LVNV_NLMS1_LB_ERL_DEFAULT (1000)</td>
- <td>@ref LVNV_NLMS1_LB_ERL_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 NLMS1_LB_erl; ///< NLMS1 low-band erl
-
- /**
- Length of the high-band (4-8kHz) adaptive echo cancellation filter for the
- secondary channel. The Length should be chosen such that most of the energy of
- the impulse response is covered by the filter. The length should be a multiple
- of 8.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>16.0</td>
- <td>@ref LVNV_NLMS1_HB_TAPS_MIN (16)</td>
- <td>@ref LVNV_NLMS1_HB_TAPS_DEFAULT (24)</td>
- <td>@ref LVNV_NLMS1_HB_TAPS_MAX (32)</td>
- </tr>
- </table> */
- LVM_UINT16 NLMS1_HB_taps; ///< Number of NLMS1 high-band taps.
-
- /**
- Step size for the update of the high-band adaptive filter coefficients for the
- secondary channel. It is recommended not to change the default value.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>0.15</td>
- <td>@ref LVNV_NLMS1_HB_TWOALPHA_MIN (0)</td>
- <td>@ref LVNV_NLMS1_HB_TWOALPHA_DEFAULT (8192)</td>
- <td>@ref LVNV_NLMS1_HB_TWOALPHA_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 NLMS1_HB_twoalpha; ///< NLMS1 high-band step size
-
- /**
- Adaptive step-size control for the high-band adaptive echo cancellation filter
- for the secondary channel. This parameter is used to slow down the update speed
- of the adaptive filter during double talk situations.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>9.6</td>
- <td>@ref LVNV_NLMS1_HB_ERL_MIN (64)</td>
- <td>@ref LVNV_NLMS1_HB_ERL_DEFAULT (1000)</td>
- <td>@ref LVNV_NLMS1_HB_ERL_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 NLMS1_HB_erl; ///< NLMS1 high-band erl
-
- /**
- Indicates whether a preset of adaptive filter coefficients should be done.<br>
- 0 = No preset (coefficients as they are).<br>
- 1 = Preset with internally calculated coefficients.<br>
- 2 = Preset with zero coefficients.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>15.0</td>
- <td>@ref LVNV_NLMS1_PRESET_COEFS_MIN (0)</td>
- <td>@ref LVNV_NLMS1_PRESET_COEFS_DEFAULT (0)</td>
- <td>@ref LVNV_NLMS1_PRESET_COEFS_MAX (2)</td>
- </tr>
- </table> */
- LVM_INT16 NLMS1_preset_coefs; ///< NLMS1 preset
-
- /**
- Offset added to the normalization of the adaptation of the filter.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>0.15</td>
- <td>@ref LVNV_NLMS1_OFFSET_MIN (0)</td>
- <td>@ref LVNV_NLMS1_OFFSET_DEFAULT (776)</td>
- <td>@ref LVNV_NLMS1_OFFSET_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 NLMS1_offset; ///< NLMS1 offset
-
- /**
- A parameter representing a threshold for the detection of instrumental noise.
- The higher the value for this parameter, the lower noise suppression
- performance.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>0.15</td>
- <td>@ref LVNV_CAL_MICPOWFLOORMIN_MIN (0)</td>
- <td>@ref LVNV_CAL_MICPOWFLOORMIN_DEFAULT (150)</td>
- <td>@ref LVNV_CAL_MICPOWFLOORMIN_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 CAL_micPowFloorMin; ///< Instrumental noise threshold
-
- /**
- Threshold for Windgush detector. The higher the value, the less sensitive the
- detection.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>6.9</td>
- <td>@ref LVNV_WGTHRESHOLD_MIN (0)</td>
- <td>@ref LVNV_WGTHRESHOLD_DEFAULT (32767)</td>
- <td>@ref LVNV_WGTHRESHOLD_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 WgThreshold; ///< Windgush threshold
-
- /**
- Threshold for speech detector based on power comparison between primary and
- secondary microphones. The higher the value, the less sensitive the detection.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>3.12</td>
- <td>@ref LVNV_MPTHRESHOLD_MIN (0)</td>
- <td>@ref LVNV_MPTHRESHOLD_DEFAULT (6554)</td>
- <td>@ref LVNV_MPTHRESHOLD_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 MpThreshold; ///< MicPow threshold
-
- /**
- Set of first 8 coefficients for adaptive filter FSB0. These values should be
- determined for the given microphone configuration
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>0.15</td>
- <td>@ref LVNV_FSB_INIT_TABLE0_MIN (-32768)</td>
- <td>@ref LVNV_FSB_INIT_TABLE0_DEFAULT {32767, 0, 0, 0, 0, 0, 0, 0}</td>
- <td>@ref LVNV_FSB_INIT_TABLE0_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 FSB_init_table0[LVNV_FSB_INIT_TABLE0_LENGTH]; ///< FSB0 initial coefficients.
-
- /**
- Set of first 8 coefficients for adaptive filter FSB1. These values should be
- determined for the given microphone configuration
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>0.15</td>
- <td>@ref LVNV_FSB_INIT_TABLE1_MIN (-32768)</td>
- <td>@ref LVNV_FSB_INIT_TABLE1_DEFAULT {0, 0, 0, 0, 0, 0, 0, 0}</td>
- <td>@ref LVNV_FSB_INIT_TABLE1_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 FSB_init_table1[LVNV_FSB_INIT_TABLE1_LENGTH]; ///< FSB1 initial coefficients.
-
- /**
- Length of the FSB to model the acoustical paths between the speech source and
- two microphones. The length must be equal to 16 for the handset application.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>16.0</td>
- <td>@ref LVNV_FSB_TAPS_MIN (8)</td>
- <td>@ref LVNV_FSB_TAPS_DEFAULT (16)</td>
- <td>@ref LVNV_FSB_TAPS_MAX (16)</td>
- </tr>
- </table> */
- LVM_UINT16 FSB_taps; ///< Number of FSB taps
-
- /**
- Step-size to update the coefficients of the adaptive filters. A higher value
- leads to a faster speed of the adaptation, while a lower value provides more
- stability, but a slow adaption speed.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>0.15</td>
- <td>@ref LVNV_FSB_TWOALPHA_MIN (0)</td>
- <td>@ref LVNV_FSB_TWOALPHA_DEFAULT (655)</td>
- <td>@ref LVNV_FSB_TWOALPHA_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 FSB_twoalpha; ///< FSB step size control
-
- /**
- Gain applied on the samples of the second FSB reference signal (fsbref[1]).
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>5.10</td>
- <td>@ref LVNV_FSB_REF_GAIN_MIN (0)</td>
- <td>@ref LVNV_FSB_REF_GAIN_DEFAULT (1024)</td>
- <td>@ref LVNV_FSB_REF_GAIN_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 FSB_ref_gain; ///< FSB ref gain
-
- /**
- Length of the GSC to model the transfer function between the noise reference
- and the residual signal, in order to reduce the noise and interfering sounds
- from the desired signal. This number should be a multiple of 8.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>16.0</td>
- <td>@ref LVNV_GSC_TAPS_MIN (8)</td>
- <td>@ref LVNV_GSC_TAPS_DEFAULT (16)</td>
- <td>@ref LVNV_GSC_TAPS_MAX (48)</td>
- </tr>
- </table> */
- LVM_UINT16 GSC_taps; ///< Number of GSC taps
-
- /**
- Step-size to update the coefficients of the adaptive filter. A higher value
- leads to a faster speed of the adaptation, while a lower value provides more
- stability, but a slow adaption speed.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>0.15</td>
- <td>@ref LVNV_GSC_TWOALPHA_MIN (0)</td>
- <td>@ref LVNV_GSC_TWOALPHA_DEFAULT (1638)</td>
- <td>@ref LVNV_GSC_TWOALPHA_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 GSC_twoalpha; ///< GSC step size control
-
- /**
- Adaptive step-size control for GSC to avoid divergence of the adaptive filter
- during desired speech. In general, GSC_erl is lower than NLMS_erl and ranges
- between 0 and 30 dB.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>9.6</td>
- <td>@ref LVNV_GSC_ERL_MIN (64)</td>
- <td>@ref LVNV_GSC_ERL_DEFAULT (256)</td>
- <td>@ref LVNV_GSC_ERL_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 GSC_erl; ///< GSC erl
-
- /**
- Offset added to the computation of the power of the noise reference to avoid
- that the power converges towards zero when the input is low.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>0.15</td>
- <td>@ref LVNV_GSC_OFFSET_MIN (0)</td>
- <td>@ref LVNV_GSC_OFFSET_DEFAULT (1638)</td>
- <td>@ref LVNV_GSC_OFFSET_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 GSC_offset; ///< GSC offset
-
- /**
- Echo subtraction factor applied during farend-only.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>2.13</td>
- <td>@ref LVNV_DNNS_ECHOGAMMAHI_MIN (0)</td>
- <td>@ref LVNV_DNNS_ECHOGAMMAHI_DEFAULT (16384)</td>
- <td>@ref LVNV_DNNS_ECHOGAMMAHI_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 DNNS_EchoGammaHi; ///< High echo subtraction factor
-
- /**
- Echo subtraction factor applied during double talk and nearend-only.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>2.13</td>
- <td>@ref LVNV_DNNS_ECHOGAMMALO_MIN (0)</td>
- <td>@ref LVNV_DNNS_ECHOGAMMALO_DEFAULT (8192)</td>
- <td>@ref LVNV_DNNS_ECHOGAMMALO_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 DNNS_EchoGammaLo; ///< Low echo subtraction factor
-
- /**
- Parameter related to the reverberation time of the acoustical environment,
- which represents the decay in energy over time of the echo tail of the impulse
- response.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>0.15</td>
- <td>@ref LVNV_DNNS_ECHOALPHAREV_MIN (0)</td>
- <td>@ref LVNV_DNNS_ECHOALPHAREV_DEFAULT (12000)</td>
- <td>@ref LVNV_DNNS_ECHOALPHAREV_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 DNNS_EchoAlphaRev; ///< Echo reverberation factor
-
- /**
- Parameter representing the portion of the echo tail (estimated by the NLMS
- filter) that has to be extrapolated in time.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>0.15</td>
- <td>@ref LVNV_DNNS_ECHOTAILPORTION_MIN (0)</td>
- <td>@ref LVNV_DNNS_ECHOTAILPORTION_DEFAULT (7000)</td>
- <td>@ref LVNV_DNNS_ECHOTAILPORTION_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 DNNS_EchoTailPortion; ///< Echo tail portion
-
- /**
- Non-linear echo subtraction factor applied during double talk and nearend-only.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>4.11</td>
- <td>@ref LVNV_DNNS_NLATTEN_MIN (0)</td>
- <td>@ref LVNV_DNNS_NLATTEN_DEFAULT (256)</td>
- <td>@ref LVNV_DNNS_NLATTEN_MAX (2048)</td>
- </tr>
- </table> */
- LVM_INT16 DNNS_NlAtten; ///< Non-linear echo subtraction factor
-
- /**
- Gain factor for stationary noise oversubtraction.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>2.13</td>
- <td>@ref LVNV_DNNS_NOISEGAMMAS_MIN (0)</td>
- <td>@ref LVNV_DNNS_NOISEGAMMAS_DEFAULT (11470)</td>
- <td>@ref LVNV_DNNS_NOISEGAMMAS_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 DNNS_NoiseGammaS; ///< Stationary noise oversubtraction factor
-
- /**
- Gain factor for non-stationary noise oversubtraction.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>2.13</td>
- <td>@ref LVNV_DNNS_NOISEGAMMAN_MIN (0)</td>
- <td>@ref LVNV_DNNS_NOISEGAMMAN_DEFAULT (16384)</td>
- <td>@ref LVNV_DNNS_NOISEGAMMAN_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 DNNS_NoiseGammaN; ///< Non-stationary noise oversubtraction factor
-
- /**
- The maximum amount of stationary noise suppression.<br>
- DNNS_NoiseGainMinS = \f$2*32767*10^{MaxNoiseReductiondB/20}\f$
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>-1.16</td>
- <td>@ref LVNV_DNNS_NOISEGAINMINS_MIN (0)</td>
- <td>@ref LVNV_DNNS_NOISEGAINMINS_DEFAULT (11140)</td>
- <td>@ref LVNV_DNNS_NOISEGAINMINS_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 DNNS_NoiseGainMinS; ///< Maximum stationary noise suppression.
-
- /**
- The maximum amount of non-stationary noise suppression.<br>
- DNNS_NoiseGainMinN = \f$2*32767*10^{MaxNoiseReductiondB/20}\f$
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>-1.16</td>
- <td>@ref LVNV_DNNS_NOISEGAINMINN_MIN (0)</td>
- <td>@ref LVNV_DNNS_NOISEGAINMINN_DEFAULT (6554)</td>
- <td>@ref LVNV_DNNS_NOISEGAINMINN_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 DNNS_NoiseGainMinN; ///< Maximum non-stationary noise suppression.
-
- /**
- Bias compensation factor for stationary noise estimation.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>2.13</td>
- <td>@ref LVNV_DNNS_NOISEBIASCOMP_MIN (0)</td>
- <td>@ref LVNV_DNNS_NOISEBIASCOMP_DEFAULT (9830)</td>
- <td>@ref LVNV_DNNS_NOISEBIASCOMP_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 DNNS_NoiseBiasComp; ///< Bias compensation factor.
-
- /**
- Echo oversubtraction factor applied to the estimated non-stationary noise
- floor.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>3.12</td>
- <td>@ref LVNV_DNNS_GAINETA_MIN (0)</td>
- <td>@ref LVNV_DNNS_GAINETA_DEFAULT (256)</td>
- <td>@ref LVNV_DNNS_GAINETA_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 DNNS_GainEta; ///< Echo oversubtraction factor.
-
- /**
- Detection threshold for microphone activity.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>3.12</td>
- <td>@ref LVNV_DNNS_ACTHRESHOLD_MIN (0)</td>
- <td>@ref LVNV_DNNS_ACTHRESHOLD_DEFAULT (12288)</td>
- <td>@ref LVNV_DNNS_ACTHRESHOLD_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 DNNS_AcThreshold; ///< Activity threshold.
-
- /**
- Detection threshold for activity within the beam of FSB.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>3.12</td>
- <td>@ref LVNV_DNNS_WBTHRESHOLD_MIN (0)</td>
- <td>@ref LVNV_DNNS_WBTHRESHOLD_DEFAULT (9216)</td>
- <td>@ref LVNV_DNNS_WBTHRESHOLD_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 DNNS_WbThreshold; ///< WithinBeam threshold.
-
- /**
- Detection threshold for lost beam where the nearend speaker is speaking outside
- the beam of the FSB.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>9.6</td>
- <td>@ref LVNV_DNNS_LOSTBEAMTHRESHOLD_MIN (0)</td>
- <td>@ref LVNV_DNNS_LOSTBEAMTHRESHOLD_DEFAULT (320)</td>
- <td>@ref LVNV_DNNS_LOSTBEAMTHRESHOLD_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 DNNS_LostBeamThreshold; ///< Lost beam threshold.
-
- /**
- Smoothing factor applied to get a smoothed value of the inter-channel
- correlation.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>9.6</td>
- <td>@ref LVNV_PCD_BETA_MIN (0)</td>
- <td>@ref LVNV_PCD_BETA_DEFAULT (230)</td>
- <td>@ref LVNV_PCD_BETA_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 PCD_beta; ///< ICC smoothing factor.
-
- /**
- Detection threshold for broadside when the nearend speaker is not in end-fire
- position with respect to the microphone configuration.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>9.6</td>
- <td>@ref LVNV_PCD_THRESHOLD_MIN (0)</td>
- <td>@ref LVNV_PCD_THRESHOLD_DEFAULT (26213)</td>
- <td>@ref LVNV_PCD_THRESHOLD_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 PCD_Threshold; ///< Broadside detection threshold.
-
-} LVNV_ControlParams_st;
-
-/**
-* The control parameters are used to control the overall module behavior. These parameters may
-* be changed at any time during processing using the LVHF_SetControlParameters function but they
-* will not take effect until the next call to the LVHF_Process function.
-*
-* @see LVHF_SetControlParameters
-* @see LVHF_Process
-*/
-typedef struct
-{
- /**
- */
- LVM_Mode_en OperatingMode; ///< Operating Mode
-
- /**
- The mode word to enable/disable internal algorithm blocks of HandsFree
- */
- LVHF_ModeWord_bm Mode; ///< Mode Word
-
- /**
- The tuning mode is used to enable/disable internal algorithm tuning
- capabilities in the different blocks of HandsFree. Only one bit allowed to be
- enabled at a time.
- */
- LVHF_TuningModeWord TuningMode; ///< Tuning Mode
-
- /**
- Gain applied at the Tx input of LVHF. Used to scale the microphone signal in
- order to give the NLMS filter headroom for correct operation.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>2.13</td>
- <td>@ref LVHF_INPUTGAIN_MIN (0)</td>
- <td>@ref LVHF_INPUTGAIN_DEFAULT (8192)</td>
- <td>@ref LVHF_INPUTGAIN_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 InputGain; ///< Input Gain
-
- /**
- Gain applied at the Tx output of LVHF. Compensates the applied InputGain in
- order to preserve the overall Tx gain.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>4.11</td>
- <td>@ref LVHF_OUTPUTGAIN_MIN (0)</td>
- <td>@ref LVHF_OUTPUTGAIN_DEFAULT (2048)</td>
- <td>@ref LVHF_OUTPUTGAIN_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 OutputGain; ///< Output Gain
-
- /**
- Limit the NLMS reference signal. Value in dB Full Scale.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>15.0</td>
- <td>@ref LVHF_NLMS_LIMIT_MIN (-24)</td>
- <td>@ref LVHF_NLMS_LIMIT_DEFAULT (0)</td>
- <td>@ref LVHF_NLMS_LIMIT_MAX (0)</td>
- </tr>
- </table> */
- LVM_INT16 NLMS_limit; ///< Limit the NLMS reference signal.
-
- /**
- Length of the low-band (0-4kHz) adaptive echo cancellation filter. The Length
- should be chosen such that most of the energy of the impulse response is
- covered by the filter. The length should be a multiple of 8.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>16.0</td>
- <td>@ref LVHF_NLMS_LB_TAPS_MIN (16)</td>
- <td>@ref LVHF_NLMS_LB_TAPS_DEFAULT (64)</td>
- <td>@ref LVHF_NLMS_LB_TAPS_MAX (200)</td>
- </tr>
- </table> */
- LVM_UINT16 NLMS_LB_taps; ///< Number of taps for LB NLMS.
-
- /**
- Step size for the update of the low-band (0-4kHz) adaptive filter coefficients.
- It is recommended not to change the default value.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>0.15</td>
- <td>@ref LVHF_NLMS_LB_TWO_ALPHA_MIN (0)</td>
- <td>@ref LVHF_NLMS_LB_TWO_ALPHA_DEFAULT (8192)</td>
- <td>@ref LVHF_NLMS_LB_TWO_ALPHA_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 NLMS_LB_two_alpha; ///< Step Size of LB NLMS
-
- /**
- Adaptive step size control for the low-band (0-4kHz) adaptive echo cancellation
- filter. This parameter is used to slow down the update speed of the adaptive
- filter during double talk situations.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>9.6</td>
- <td>@ref LVHF_NLMS_LB_ERL_MIN (64)</td>
- <td>@ref LVHF_NLMS_LB_ERL_DEFAULT (128)</td>
- <td>@ref LVHF_NLMS_LB_ERL_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 NLMS_LB_erl; ///< ERL of LB NLMS
-
- /**
- Length of the high-band (4-8kHz) adaptive echo cancellation filter. The Length
- should be chosen such that most of the energy of the impulse response is
- covered by the filter. The length should be a multiple of 8. In case of
- narrowband processing, this parameter has no effect.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>16.0</td>
- <td>@ref LVHF_NLMS_HB_TAPS_MIN (16)</td>
- <td>@ref LVHF_NLMS_HB_TAPS_DEFAULT (64)</td>
- <td>@ref LVHF_NLMS_HB_TAPS_MAX (136)</td>
- </tr>
- </table> */
- LVM_UINT16 NLMS_HB_taps; ///< Number of taps for HB NLMS.
-
- /**
- Step size for the update of the high-band (4-8kHz) adaptive filter
- coefficients. It is recommended not to change the default value. In case of
- narrowband processing, this parameter has no effect.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>0.15</td>
- <td>@ref LVHF_NLMS_HB_TWO_ALPHA_MIN (0)</td>
- <td>@ref LVHF_NLMS_HB_TWO_ALPHA_DEFAULT (8192)</td>
- <td>@ref LVHF_NLMS_HB_TWO_ALPHA_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 NLMS_HB_two_alpha; ///< Step Size of HB NLMS
-
- /**
- Adaptive step size control for the high-band (4-8kHz) adaptive echo
- cancellation filter. This parameter is used to slow down the update speed of
- the adaptive filter during double talk situations. In case of narrowband
- processing, this parameter has no effect.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>9.6</td>
- <td>@ref LVHF_NLMS_HB_ERL_MIN (64)</td>
- <td>@ref LVHF_NLMS_HB_ERL_DEFAULT (128)</td>
- <td>@ref LVHF_NLMS_HB_ERL_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 NLMS_HB_erl; ///< ERL of HB NLMS
-
- /**
- Indicates whether a preset of adaptive filter coefficients should be done. <br>
- 0 = No preset (Coefficients as they are)<br>
- 1= Preset with internally calculated coefficients.<br>
- 2= Preset with zero coefficients.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>15.0</td>
- <td>@ref LVHF_NLMS_PRESET_COEFS_MIN (0)</td>
- <td>@ref LVHF_NLMS_PRESET_COEFS_DEFAULT (1)</td>
- <td>@ref LVHF_NLMS_PRESET_COEFS_MAX (2)</td>
- </tr>
- </table> */
- LVM_INT16 NLMS_preset_coefs; ///< Coefficient preset.
-
- /**
- Offset added to the normalization of the adaptation of the filter.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>0.15</td>
- <td>@ref LVHF_NLMS_OFFSET_MIN (0)</td>
- <td>@ref LVHF_NLMS_OFFSET_DEFAULT (767)</td>
- <td>@ref LVHF_NLMS_OFFSET_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 NLMS_offset; ///< NLMS offset
-
- /**
- Parameter related to the reverberation of the acoustic environment. It
- represents the decay in time of the energy of the echo tail of the impulse
- response for the LB.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>0.15</td>
- <td>@ref LVHF_DENS_TAIL_ALPHA_LB_MIN (0)</td>
- <td>@ref LVHF_DENS_TAIL_ALPHA_LB_DEFAULT (25395)</td>
- <td>@ref LVHF_DENS_TAIL_ALPHA_LB_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 DENS_tail_alpha_LB;
- /**
- Parameter related to the portion of the echo tail that has to be extrapolated
- in time for LB.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>0.15</td>
- <td>@ref LVHF_DENS_TAIL_PORTION_LB_MIN (0)</td>
- <td>@ref LVHF_DENS_TAIL_PORTION_LB_DEFAULT (29491)</td>
- <td>@ref LVHF_DENS_TAIL_PORTION_LB_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 DENS_tail_portion_LB;
- /**
- Echo subtraction factor applied during farend-only for the LB.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>7.8</td>
- <td>@ref LVHF_DENS_GAMMA_E_HIGH_LB_MIN (0)</td>
- <td>@ref LVHF_DENS_GAMMA_E_HIGH_LB_DEFAULT (512)</td>
- <td>@ref LVHF_DENS_GAMMA_E_HIGH_LB_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 DENS_gamma_e_high_LB; ///< FE Echo subtraction LB
-
- /**
- Echo subtraction factor applied during double talk for the LB.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>7.8</td>
- <td>@ref LVHF_DENS_GAMMA_E_DT_LB_MIN (0)</td>
- <td>@ref LVHF_DENS_GAMMA_E_DT_LB_DEFAULT (256)</td>
- <td>@ref LVHF_DENS_GAMMA_E_DT_LB_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 DENS_gamma_e_dt_LB; ///< DT Echo subtraction factor LB
-
- /**
- Echo subtraction factor applied during nearend-only for the LB.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>7.8</td>
- <td>@ref LVHF_DENS_GAMMA_E_LOW_LB_MIN (0)</td>
- <td>@ref LVHF_DENS_GAMMA_E_LOW_LB_DEFAULT (256)</td>
- <td>@ref LVHF_DENS_GAMMA_E_LOW_LB_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 DENS_gamma_e_low_LB; ///< NE Echo subtraction factor LB
-
- /**
- The amount of extra non-linear suppression relative to the maximum linear echo
- suppression for the LB. The use of these non-linear echo suppression mechanisms
- should be avoided as much as possible since it affects the double talk
- performance.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>4.11</td>
- <td>@ref LVHF_DENS_NL_ATTEN_LB_MIN (0)</td>
- <td>@ref LVHF_DENS_NL_ATTEN_LB_DEFAULT (0)</td>
- <td>@ref LVHF_DENS_NL_ATTEN_LB_MAX (2048)</td>
- </tr>
- </table> */
- LVM_INT16 DENS_NL_atten_LB; ///< LB Non linear attenuation
-
- /**
- Parameter related to the reverberation of the acoustic environment. It
- represents the decay in time of the energy of the echo tail of the impulse
- response for the HB.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>0.15</td>
- <td>@ref LVHF_DENS_TAIL_ALPHA_HB_MIN (0)</td>
- <td>@ref LVHF_DENS_TAIL_ALPHA_HB_DEFAULT (25395)</td>
- <td>@ref LVHF_DENS_TAIL_ALPHA_HB_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 DENS_tail_alpha_HB;
- /**
- Parameter related to the portion of the echo tail that has to be extrapolated
- in time for HB.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>0.15</td>
- <td>@ref LVHF_DENS_TAIL_PORTION_HB_MIN (0)</td>
- <td>@ref LVHF_DENS_TAIL_PORTION_HB_DEFAULT (29491)</td>
- <td>@ref LVHF_DENS_TAIL_PORTION_HB_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 DENS_tail_portion_HB;
- /**
- Echo subtraction factor applied during farend-only for the HB.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>7.8</td>
- <td>@ref LVHF_DENS_GAMMA_E_HIGH_HB_MIN (0)</td>
- <td>@ref LVHF_DENS_GAMMA_E_HIGH_HB_DEFAULT (512)</td>
- <td>@ref LVHF_DENS_GAMMA_E_HIGH_HB_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 DENS_gamma_e_high_HB; ///< FE Echo subtraction HB
-
- /**
- Echo subtraction factor applied during double talk for the HB.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>7.8</td>
- <td>@ref LVHF_DENS_GAMMA_E_DT_HB_MIN (0)</td>
- <td>@ref LVHF_DENS_GAMMA_E_DT_HB_DEFAULT (256)</td>
- <td>@ref LVHF_DENS_GAMMA_E_DT_HB_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 DENS_gamma_e_dt_HB; ///< DT Echo subtraction factor HB
-
- /**
- Echo subtraction factor applied during nearend-only for the HB.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>7.8</td>
- <td>@ref LVHF_DENS_GAMMA_E_LOW_HB_MIN (0)</td>
- <td>@ref LVHF_DENS_GAMMA_E_LOW_HB_DEFAULT (256)</td>
- <td>@ref LVHF_DENS_GAMMA_E_LOW_HB_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 DENS_gamma_e_low_HB; ///< NE Echo subtraction factor HB
-
- /**
- The amount of extra non-linear suppression relative to the maximum linear echo
- suppression. for the HB. The use of these non-linear echo suppression
- mechanisms should be avoided as much as possible since it affects the double
- talk performance.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>4.11</td>
- <td>@ref LVHF_DENS_NL_ATTEN_HB_MIN (0)</td>
- <td>@ref LVHF_DENS_NL_ATTEN_HB_DEFAULT (0)</td>
- <td>@ref LVHF_DENS_NL_ATTEN_HB_MAX (2048)</td>
- </tr>
- </table> */
- LVM_INT16 DENS_NL_atten_HB; ///< NE Echo subtraction factor HB
-
- /**
- Smoothing factor applied when switching between gamma_e values.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>0.15</td>
- <td>@ref LVHF_DENS_GAMMA_E_ALPHA_MIN (0)</td>
- <td>@ref LVHF_DENS_GAMMA_E_ALPHA_DEFAULT (24000)</td>
- <td>@ref LVHF_DENS_GAMMA_E_ALPHA_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 DENS_gamma_e_alpha; ///< Smoothing factor for gamma_e
-
- /**
- Gain factor for Noise subtraction.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>7.8</td>
- <td>@ref LVHF_DENS_GAMMA_N_MIN (0)</td>
- <td>@ref LVHF_DENS_GAMMA_N_DEFAULT (280)</td>
- <td>@ref LVHF_DENS_GAMMA_N_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 DENS_gamma_n; ///< Gain factor
-
- /**
- Threshold for nearend activity detection.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>7.8</td>
- <td>@ref LVHF_DENS_SPDET_NEAR_MIN (0)</td>
- <td>@ref LVHF_DENS_SPDET_NEAR_DEFAULT (512)</td>
- <td>@ref LVHF_DENS_SPDET_NEAR_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 DENS_spdet_near;
- /**
- Threshold for microphone activity detection.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>7.8</td>
- <td>@ref LVHF_DENS_SPDET_ACT_MIN (0)</td>
- <td>@ref LVHF_DENS_SPDET_ACT_DEFAULT (768)</td>
- <td>@ref LVHF_DENS_SPDET_ACT_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 DENS_spdet_act;
- /**
- The maximum amount of noise suppression. <br>
- DENS_limit_ns = \f$32767*10^{-MaxNoiseReduction[dB]/20}\f$
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>0.15</td>
- <td>@ref LVHF_DENS_LIMIT_NS_MIN (0)</td>
- <td>@ref LVHF_DENS_LIMIT_NS_DEFAULT (10361)</td>
- <td>@ref LVHF_DENS_LIMIT_NS_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 DENS_limit_ns; ///< Maximum noise suppression.
-
- /**
- The amount of comfort noise insertion.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>1.14</td>
- <td>@ref LVHF_DENS_CNI_GAIN_MIN (0)</td>
- <td>@ref LVHF_DENS_CNI_GAIN_DEFAULT (16384)</td>
- <td>@ref LVHF_DENS_CNI_GAIN_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 DENS_CNI_Gain; ///< CNI gain
-
- /**
- The window length (expressed in integer multiples of 10ms) for the estimation
- of the noise components. It is recommended to keep this parameter at its
- default value.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>0.15</td>
- <td>@ref LVHF_DENS_NFE_BLOCKSIZE_MIN (0)</td>
- <td>@ref LVHF_DENS_NFE_BLOCKSIZE_DEFAULT (150)</td>
- <td>@ref LVHF_DENS_NFE_BLOCKSIZE_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 DENS_NFE_blocksize; ///< NFE blocksize
-
- /**
- Threshold for farend activity detection.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>0.15</td>
- <td>@ref LVHF_SPDET_FAR_MIN (0)</td>
- <td>@ref LVHF_SPDET_FAR_DEFAULT (16384)</td>
- <td>@ref LVHF_SPDET_FAR_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 SPDET_far;
- /**
- Threshold for microphone activity detection.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>0.15</td>
- <td>@ref LVHF_SPDET_MIC_MIN (0)</td>
- <td>@ref LVHF_SPDET_MIC_DEFAULT (16384)</td>
- <td>@ref LVHF_SPDET_MIC_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 SPDET_mic;
- /**
- Threshold to activate the non-linear echo-suppression.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>0.15</td>
- <td>@ref LVHF_SPDET_X_CLIP_MIN (0)</td>
- <td>@ref LVHF_SPDET_X_CLIP_DEFAULT (0)</td>
- <td>@ref LVHF_SPDET_X_CLIP_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 SPDET_x_clip;
- /**
- Threshold to detect acoustical path changes.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>0.15</td>
- <td>@ref LVHF_PCD_THRESHOLD_MIN (0)</td>
- <td>@ref LVHF_PCD_THRESHOLD_DEFAULT (20000)</td>
- <td>@ref LVHF_PCD_THRESHOLD_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 PCD_threshold; ///< PCD threshold
-
- /**
- Length of the background adaptive filter. The length should be chosen such that
- only the main peak of the impulse response is covered by the filter. The length
- should be a multiple of 8.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>16.0</td>
- <td>@ref LVHF_PCD_TAPS_MIN (16)</td>
- <td>@ref LVHF_PCD_TAPS_DEFAULT (16)</td>
- <td>@ref LVHF_PCD_TAPS_MAX (64)</td>
- </tr>
- </table> */
- LVM_INT16 PCD_taps; ///< Number of taps of background NLMS.
-
- /**
- Adaptive step size control for the background adaptive filter.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>9.6</td>
- <td>@ref LVHF_PCD_ERL_MIN (64)</td>
- <td>@ref LVHF_PCD_ERL_DEFAULT (64)</td>
- <td>@ref LVHF_PCD_ERL_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 PCD_erl; ///< Step size of background NLMS.
-
- /**
- If a path change is detected, NLMS_erl of the NLMS is set to this value, to
- ensure a fast adapting filter.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>9.6</td>
- <td>@ref LVHF_PCD_MINIMUM_ERL_MIN (64)</td>
- <td>@ref LVHF_PCD_MINIMUM_ERL_DEFAULT (64)</td>
- <td>@ref LVHF_PCD_MINIMUM_ERL_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 PCD_minimum_erl; ///< Step size of NLMS after PCD.
-
- /**
- After a path change the NLMS_erl of the NLMS increases back to the nominal
- value. The speed to increase can be controlled by this parameter.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>1.14</td>
- <td>@ref LVHF_PCD_ERL_STEP_MIN (16384)</td>
- <td>@ref LVHF_PCD_ERL_STEP_DEFAULT (16800)</td>
- <td>@ref LVHF_PCD_ERL_STEP_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 PCD_erl_step; ///< Step of ERL increase after PCD.
-
- /**
- Gain factor applied to the echo subtraction during acoustical path change.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>7.8</td>
- <td>@ref LVHF_PCD_GAMMA_E_RESCUE_MIN (0)</td>
- <td>@ref LVHF_PCD_GAMMA_E_RESCUE_DEFAULT (5000)</td>
- <td>@ref LVHF_PCD_GAMMA_E_RESCUE_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 PCD_gamma_e_rescue; ///< gamma_e after PCD
-
-} LVHF_ControlParams_st;
-
-/**
-* The control parameters are used to control the overall module behavior. These parameters may
-* be changed at any time during processing using the LVBD_SetControlParameters function but they
-* will not take effect until the next call to the LVBD_Process function.
-*
-* @see LVBD_SetControlParameters
-* @see LVBD_Process
-*/
-typedef struct
-{
- /**
- Set Bulk Delay operating mode on/off.
- */
- LVM_Mode_en BD_OperatingMode; ///< Set Bulk Delay operating mode on/off
-
- /**
- This parameter compensates for the fixed delay in the echo path and can be
- measured in advance. This delay is caused by the audio I/O buffering, AD/DA
- converter and propagation time between the loudspeaker and microphone. The unit
- of 'BulkDelay' is [number of samples] at the respective sampling rate.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>16.0</td>
- <td>@ref LVBD_BULKDELAY_MIN (0)</td>
- <td>@ref LVBD_BULKDELAY_DEFAULT (0)</td>
- <td>@ref LVBD_BULKDELAY_MAX (6400)</td>
- </tr>
- </table> */
- LVM_UINT16 BulkDelay; ///< Sets Bulk Delay
-
- /**
- This param sets the gain for the Echo reference signal. Value 8192 belong to
- 0dB
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>2.13</td>
- <td>@ref LVBD_BD_GAIN_MIN (0)</td>
- <td>@ref LVBD_BD_GAIN_DEFAULT (8192)</td>
- <td>@ref LVBD_BD_GAIN_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 BD_Gain; ///< Apply Gain to Echo reference signal
-
-} LVBD_ControlParams_st;
-
-/**
-* The control parameters are used to control the overall module behavior. These parameters may
-* be changed at any time during processing using the LVVE_Tx_SetControlParameters function but they
-* will not take effect until the next call to the LVVE_Tx_Process function.
-*
-* @see LVVE_Tx_SetControlParameters
-* @see LVVE_Tx_Process
-*/
-typedef struct
-{
- /**
- This enumerated type is used to set the operating mode of the Tx path. The
- processing can be separately set to enable all processing modules (i.e., ON),
- to disable all processing modules (i.e., OFF) or to bypass all processing
- modules (i.e., BYPASS). When bypassed, all processing modules keep on running,
- but their output is not used. When bypassing the Tx processing, the user can
- select which buffer should be copied to the output buffer, if required: @li
- Input microphone signal (or secondary microphone signal in case of
- two-microphone setups); @li Rx reference signal; These operations ensure that
- the input data is correctly transferred to the output buffer for all
- combinations of input and output buffer types and input format. When OFF, the
- input is copied to the output and the LVVE can be provided with invalid
- parameters for modules. The sub module functions are not executed in this
- scenario. Their combined functionality is summarized in follwoing table. <br>
- <div align="center"> <table cellspacing="1" cellpadding="4" border="3">
- <caption>LVVE Tx operating mode in combination with LVVE microphone routing
- mode</caption> <tr> <th></th> <th colspan="2">MICROUTING_MODE_DEFAULT</th> <th
- colspan="2">MICROUTING_MODE_SWAPPED</th> </tr> <tr> <th width="70"></th> <th
- width="70">Process</th> <th width="70">Output</th> <th width="70">Process</th>
- <th width="70">Output</th> </tr> <tr align="left"> <td>LVVE_TX_MODE_OFF</td>
- <td>None</td> <td>Tx input 0</td> <td>None</td> <td>Tx input 1</td> </tr> <tr
- align="left"> <td>LVVE_TX_MODE_ON</td> <td>Tx input 0</td> <td>Tx output</td>
- <td>Tx input 1</td> <td>Tx output</td> </tr> <tr align="left">
- <td>LVVE_TX_MODE_BYPASS_MIC0</td> <td>Tx input 0</td> <td>Tx input 0</td>
- <td>Tx input 1</td> <td>Tx input 1</td> </tr> <tr align="left">
- <td>LVVE_TX_MODE_BYPASS_MIC1</td> <td>Tx input 0</td> <td>Tx input 1</td>
- <td>Tx input 1</td> <td>Tx input 0</td> </tr> <tr align="left">
- <td>LVVE_TX_MODE_BYPASS_REF</td> <td>Tx input 0</td> <td>Tx ref input</td>
- <td>Tx input 1</td> <td>Tx ref input</td> </tr> </table> </div>
- */
- LVVE_Tx_Mode_en OperatingMode; ///< TX Operating mode
-
- /**
- This param can mute unmute the Rx/Tx engine output.
- */
- LVM_Mode_en Mute; ///< This param can mute unmute the Rx/Tx engine output
-
- /**
- Set Bulk Delay operating mode on/off.
- */
- LVM_Mode_en BD_OperatingMode; ///< Set Bulk Delay operating mode on/off
-
- /**
- This parameter compensates for the fixed delay in the echo path and can be
- measured in advance. This delay is caused by the audio I/O buffering, AD/DA
- converter and propagation time between the loudspeaker and microphone. The unit
- of 'BulkDelay' is [number of samples] at the respective sampling rate.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>16.0</td>
- <td>@ref LVVE_TX_BULKDELAY_MIN (0)</td>
- <td>@ref LVVE_TX_BULKDELAY_DEFAULT (0)</td>
- <td>@ref LVVE_TX_BULKDELAY_MAX (6400)</td>
- </tr>
- </table> */
- LVM_UINT16 BulkDelay; ///< Sets Bulk Delay
-
- /**
- This param sets the gain for the Echo reference signal. Value 8192 belong to
- 0dB
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>2.13</td>
- <td>@ref LVVE_TX_BD_GAIN_MIN (0)</td>
- <td>@ref LVVE_TX_BD_GAIN_DEFAULT (8192)</td>
- <td>@ref LVVE_TX_BD_GAIN_MAX (32767)</td>
- </tr>
- </table> */
- LVM_INT16 BD_Gain; ///< Apply Gain to Echo reference signal
-
- /**
- Turns on/off VOL_Gain.
- */
- LVM_Mode_en VOL_OperatingMode; ///< Turns on/off VOL_Gain
-
- /**
- The volume control gain can be used to set the overall volume level of the
- signal. The gain is set in dB with steps of 1dB.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>15.0</td>
- <td>@ref LVVE_TX_VOL_GAIN_MIN (-96)</td>
- <td>@ref LVVE_TX_VOL_GAIN_DEFAULT (0)</td>
- <td>@ref LVVE_TX_VOL_GAIN_MAX (24)</td>
- </tr>
- </table> */
- LVM_INT16 VOL_Gain; ///< Apply Gain to Input signal
-
- /**
- Turns on/off High Pass filter.
- */
- LVM_Mode_en HPF_OperatingMode; ///< Turns on/off High Pass filter
-
- /**
- Sets the 3dB corner frequency of the high-pass filter. In case NoiseVoid is
- enabled, the same high-pass filter will be applied to the second microphone
- channel.
- <table border>
- <tr>
- <td><b>Q-format</b></td>
- <td><b>Min</b></td>
- <td><b>Default</b></td>
- <td><b>Max</b></td>
- </tr>
- <tr>
- <td>16.0</td>
- <td>@ref LVVE_TX_MIC_HPF_CORNERFREQ_MIN (50)</td>
- <td>@ref LVVE_TX_MIC_HPF_CORNERFREQ_DEFAULT (50)</td>
- <td>@ref LVVE_TX_MIC_HPF_CORNERFREQ_MAX (1500)</td>
- </tr>
- </table> */
- LVM_UINT16 MIC_HPF_CornerFreq; ///< High Pass Filter Corner Frequency in Hz
-
- /**
- HandsFree Control Parameter Strcuture.
- */
- LVHF_ControlParams_st HF_ControlParams; ///< HandsFree Control Parameter Structure
-
- /**
- NoiseVoid Control Parameter Structure.
- */
- LVNV_ControlParams_st NV_ControlParams; ///< NoiseVoid Control Parameter Structure
-
- /**
- Equalizer Operating mode.
- */
- LVM_Mode_en EQ_OperatingMode; ///< Equalizer Operating mode
-
- /**
- Equalizer Control Parameter Structure.
- */
- LVEQ_ControlParams_st EQ_ControlParams; ///< Equalizer Control Parameters Structure
-
- /**
- DRC Control Parameter Structure.
- */
- LVDRC_ControlParams_st DRC_ControlParams; ///< DRC Control Parameter Structure
-
-} LVVE_Tx_ControlParams_st;
-
-//adb by xuxinqiang 20150519
-#define LVVE_MAX_EQ_LENGTH_NB 32 /* Maximum equaliser length for narrowband configuration */
-#define LVVE_MAX_EQ_LENGTH_WB 64 /* Maximum equaliser length for wideband configuration */
-/*[Begin] [lvwenhua-2013/10/21]*/
-typedef struct
-{
- LVM_INT16 EqCoefs[LVVE_MAX_EQ_LENGTH_NB];
-} LVEQ_Coefs_st;
-/*[End] [lvwenhua-2013/10/21]*/
-/*[Begin] [lvwenhua-2012/3/12]*/
-#define LVVC_VOLUME_NUM 12
-
-typedef struct
-{
- LVM_INT16 NoiseSensitivity[LVVC_VOLUME_NUM];
-} LVVC_NoiseSens_st;
-/*[End] [lvwenhua-2012/3/12]*/
-
-/*[Begin] [lvwenhua-2011/8/23]*/
-typedef struct
-{
- LVVE_Tx_ControlParams_st Tx_ControlParams;
- LVVE_Rx_ControlParams_st Rx_ControlParams;
- LVEQ_Coefs_st TxEqCoefs;
- LVEQ_Coefs_st RxEqCoefs;
- /*[Begin] [lvwenhua-2012/3/12]*/
- LVVC_NoiseSens_st RxVcNoiseSens;
- /*[End] [lvwenhua-2012/3/12]*/
-} LVVE_ControlParams_st;
-typedef struct
-{
- LVM_UINT32 isVpParamInNv;
- LVVE_ControlParams_st Handset_ControlParams;
- LVVE_ControlParams_st Handsfree_ControlParams;
- LVVE_ControlParams_st Headset_ControlParams;
- LVVE_ControlParams_st Bluetooth_ControlParams;
-} LVVE_ControlParams_All_st;
-/*[End] [lvwenhua-2011/8/23]*/
-
-
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#endif /* __REL_LVVE_HF_NV1_VC_AGC_RX_DRC_RX_VIDPP_H__ */
-
-/* End of file */
diff --git a/Uboot/cp/ps/driver/src/chipsets/src/audio_base/nxp/uclinux/PARAM_Default.h b/Uboot/cp/ps/driver/src/chipsets/src/audio_base/nxp/uclinux/PARAM_Default.h
deleted file mode 100755
index 0153e82..0000000
--- a/Uboot/cp/ps/driver/src/chipsets/src/audio_base/nxp/uclinux/PARAM_Default.h
+++ /dev/null
@@ -1,178 +0,0 @@
-static LVM_CHAR LVVE_Tx_Preset_Buffer_Voice_Tool[] ={
-0x03, 0x00, 0x09, 0x18, 0x03, 0xD5, 0x07, 0x00, 0x00, 0xB5, 0x02, 0x00, 0x00, 0x01, 0x00, 0x00,
-0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x32, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0x11, 0x00, 0x00, 0x00,
-0x20, 0x00, 0x08, 0x00, 0x00, 0x40, 0x00, 0x00, 0x20, 0x80, 0x00, 0x40, 0x00, 0x00, 0x20, 0x80,
-0x00, 0x01, 0x00, 0xFF, 0x02, 0x33, 0x63, 0x33, 0x73, 0x00, 0x02, 0x00, 0x01, 0x00, 0x01, 0x00,
-0x00, 0x33, 0x63, 0x33, 0x73, 0x00, 0x02, 0x00, 0x01, 0x00, 0x01, 0x00, 0x00, 0xC0, 0x5D, 0x18,
-0x01, 0x00, 0x02, 0x00, 0x03, 0x79, 0x28, 0x00, 0x40, 0x96, 0x00, 0x00, 0x40, 0x00, 0x40, 0x00,
-0x00, 0x20, 0x4E, 0x10, 0x00, 0x40, 0x00, 0x40, 0x00, 0xA0, 0x41, 0x88, 0x13, 0x00, 0x00, 0x00,
-0x00, 0xF7, 0x49, 0x0E, 0x00, 0x00, 0x00, 0x00, 0x20, 0x00, 0x20, 0x00, 0x08, 0x20, 0x00, 0x00,
-0x20, 0xE8, 0x03, 0x18, 0x00, 0x00, 0x20, 0xE8, 0x03, 0x00, 0x00, 0x08, 0x03, 0x20, 0x00, 0x00,
-0x20, 0xE8, 0x03, 0x18, 0x00, 0x00, 0x20, 0xE8, 0x03, 0x00, 0x00, 0x08, 0x03, 0x96, 0x00, 0xFF,
-0x7F, 0x9A, 0x19, 0xFF, 0x7F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x10, 0x00, 0x8F, 0x02, 0x00, 0x04, 0x10, 0x00, 0x66, 0x06, 0x00, 0x01, 0x66,
-0x06, 0x00, 0x40, 0x00, 0x20, 0xE0, 0x2E, 0x58, 0x1B, 0x00, 0x01, 0xCE, 0x2C, 0x00, 0x40, 0x84,
-0x2B, 0x9A, 0x19, 0x66, 0x26, 0x00, 0x01, 0x00, 0x30, 0x00, 0x24, 0x40, 0x01, 0xE6, 0x00, 0x65,
-0x66, 0x00, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0xA0, 0xFF, 0xBA,
-0xFF, 0xCE, 0xFF, 0xE8, 0xFF, 0x00, 0x00, 0xA0, 0xFF, 0xBA, 0xFF, 0xDA, 0xFF, 0xF4, 0xFF, 0x00,
-0x00, 0x32, 0x00, 0x32, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
-};
-static LVM_CHAR LVVE_Rx_Preset_Buffer_Voice_Tool []={
-0x03, 0x00, 0x09, 0x18, 0x03, 0xD5, 0x07, 0x00, 0x00, 0xB5, 0x02, 0x00, 0x00, 0x01, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x01, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xE0, 0x2A, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x32, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06,
-0x05, 0x20, 0x4E, 0x00, 0x40, 0x00, 0x01, 0x00, 0x20, 0x00, 0x02, 0x17, 0x2F, 0x5C, 0x7F, 0xB9,
-0x7E, 0x82, 0x5A, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05,
-0x00, 0xA0, 0xFF, 0xBA, 0xFF, 0xCE, 0xFF, 0xE8, 0xFF, 0x00, 0x00, 0xA0, 0xFF, 0xBA, 0xFF, 0xDA,
-0xFF, 0xF4, 0xFF, 0x00, 0x00, 0x32, 0x00, 0x32, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x32, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x40, 0x80, 0x00, 0xFD,
-0x1F, 0xB0, 0x63, 0xAD, 0x7F, 0x9D, 0x5A, 0x00, 0x24, 0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0xB0,
-0xFF, 0xBA, 0xFF, 0xCE, 0xFF, 0xE8, 0xFF, 0x00, 0x00, 0xA0, 0xFF, 0xB0, 0xFF, 0xCE, 0xFF, 0xE8,
-0xFF, 0x00, 0x00, 0x32, 0x00, 0x32, 0x00, 0x03, 0x00, 0x09, 0x18, 0x03, 0xD5, 0x07, 0x00, 0x00,
-0xB5, 0x02, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x01, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0xE0, 0x2A, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x32, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x05, 0x20, 0x4E, 0x00, 0x40, 0x00, 0x01, 0x00, 0x20,
-0x00, 0x02, 0x17, 0x2F, 0x5C, 0x7F, 0xB9, 0x7E, 0x82, 0x5A, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00,
-0x20, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0xA0, 0xFF, 0xBA, 0xFF, 0xCE, 0xFF, 0xE8, 0xFF,
-0x00, 0x00, 0xA0, 0xFF, 0xBA, 0xFF, 0xDA, 0xFF, 0xF4, 0xFF, 0x00, 0x00, 0x32, 0x00, 0x32, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x32, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x07, 0x00, 0x00, 0x40, 0x80, 0x00, 0xFD, 0x1F, 0xB0, 0x63, 0xAD, 0x7F, 0x9D, 0x5A, 0x00, 0x24,
-0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0xB0, 0xFF, 0xBA, 0xFF, 0xCE, 0xFF, 0xE8, 0xFF, 0x00, 0x00,
-0xA0, 0xFF, 0xB0, 0xFF, 0xCE, 0xFF, 0xE8, 0xFF, 0x00, 0x00, 0x32, 0x00, 0x32, 0x00, 0x03, 0x00,
-0x09, 0x18, 0x03, 0xD5, 0x07, 0x00, 0x00, 0xB5, 0x02, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xE0, 0x2A, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x32, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x05, 0x20,
-0x4E, 0x00, 0x40, 0x00, 0x01, 0x00, 0x20, 0x00, 0x02, 0x17, 0x2F, 0x5C, 0x7F, 0xB9, 0x7E, 0x82,
-0x5A, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0xA0,
-0xFF, 0xBA, 0xFF, 0xCE, 0xFF, 0xE8, 0xFF, 0x00, 0x00, 0xA0, 0xFF, 0xBA, 0xFF, 0xDA, 0xFF, 0xF4,
-0xFF, 0x00, 0x00, 0x32, 0x00, 0x32, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x32, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x40, 0x80, 0x00, 0xFD, 0x1F, 0xB0,
-0x63, 0xAD, 0x7F, 0x9D, 0x5A, 0x00, 0x24, 0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0xB0, 0xFF, 0xBA,
-0xFF, 0xCE, 0xFF, 0xE8, 0xFF, 0x00, 0x00, 0xA0, 0xFF, 0xB0, 0xFF, 0xCE, 0xFF, 0xE8, 0xFF, 0x00,
-0x00, 0x32, 0x00, 0x32, 0x00, 0x03, 0x00, 0x09, 0x18, 0x03, 0xD5, 0x07, 0x00, 0x00, 0xB5, 0x02,
-0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x06,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0xE0, 0x2A, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x32, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x06, 0x05, 0x20, 0x4E, 0x00, 0x40, 0x00, 0x01, 0x00, 0x20, 0x00, 0x02,
-0x17, 0x2F, 0x5C, 0x7F, 0xB9, 0x7E, 0x82, 0x5A, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0x20, 0x00,
-0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0xA0, 0xFF, 0xBA, 0xFF, 0xCE, 0xFF, 0xE8, 0xFF, 0x00, 0x00,
-0xA0, 0xFF, 0xBA, 0xFF, 0xDA, 0xFF, 0xF4, 0xFF, 0x00, 0x00, 0x32, 0x00, 0x32, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x32, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x00,
-0x00, 0x40, 0x80, 0x00, 0xFD, 0x1F, 0xB0, 0x63, 0xAD, 0x7F, 0x9D, 0x5A, 0x00, 0x24, 0x00, 0x00,
-0x00, 0x00, 0x05, 0x00, 0xB0, 0xFF, 0xBA, 0xFF, 0xCE, 0xFF, 0xE8, 0xFF, 0x00, 0x00, 0xA0, 0xFF,
-0xB0, 0xFF, 0xCE, 0xFF, 0xE8, 0xFF, 0x00, 0x00, 0x32, 0x00, 0x32, 0x00, 0x03, 0x00, 0x09, 0x18,
-0x03, 0xD5, 0x07, 0x00, 0x00, 0xB5, 0x02, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xE0, 0x2A, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x32, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x05, 0x20, 0x4E, 0x00,
-0x40, 0x00, 0x01, 0x00, 0x20, 0x00, 0x02, 0x17, 0x2F, 0x5C, 0x7F, 0xB9, 0x7E, 0x82, 0x5A, 0x00,
-0x04, 0x00, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0xA0, 0xFF, 0xBA,
-0xFF, 0xCE, 0xFF, 0xE8, 0xFF, 0x00, 0x00, 0xA0, 0xFF, 0xBA, 0xFF, 0xDA, 0xFF, 0xF4, 0xFF, 0x00,
-0x00, 0x32, 0x00, 0x32, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x32,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x40, 0x80, 0x00, 0xFD, 0x1F, 0xB0, 0x63, 0xAD,
-0x7F, 0x9D, 0x5A, 0x00, 0x24, 0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0xB0, 0xFF, 0xBA, 0xFF, 0xCE,
-0xFF, 0xE8, 0xFF, 0x00, 0x00, 0xA0, 0xFF, 0xB0, 0xFF, 0xCE, 0xFF, 0xE8, 0xFF, 0x00, 0x00, 0x32,
-0x00, 0x32, 0x00, 0x03, 0x00, 0x09, 0x18, 0x03, 0xD5, 0x07, 0x00, 0x00, 0xB5, 0x02, 0x00, 0x00,
-0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x06, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0xE0, 0x2A, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x32, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x06, 0x05, 0x20, 0x4E, 0x00, 0x40, 0x00, 0x01, 0x00, 0x20, 0x00, 0x02, 0x17, 0x2F,
-0x5C, 0x7F, 0xB9, 0x7E, 0x82, 0x5A, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x10,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x05, 0x00, 0xA0, 0xFF, 0xBA, 0xFF, 0xCE, 0xFF, 0xE8, 0xFF, 0x00, 0x00, 0xA0, 0xFF,
-0xBA, 0xFF, 0xDA, 0xFF, 0xF4, 0xFF, 0x00, 0x00, 0x32, 0x00, 0x32, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x32, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x40,
-0x80, 0x00, 0xFD, 0x1F, 0xB0, 0x63, 0xAD, 0x7F, 0x9D, 0x5A, 0x00, 0x24, 0x00, 0x00, 0x00, 0x00,
-0x05, 0x00, 0xB0, 0xFF, 0xBA, 0xFF, 0xCE, 0xFF, 0xE8, 0xFF, 0x00, 0x00, 0xA0, 0xFF, 0xB0, 0xFF,
-0xCE, 0xFF, 0xE8, 0xFF, 0x00, 0x00, 0x32, 0x00, 0x32, 0x00
-};
-const static LVM_CHAR LVVE_Tx_Mute_File_Buffer[] ={
-0x03, 0x00, 0x09, 0x18, 0x03, 0xD5, 0x07, 0x00, 0x00, 0xB5, 0x02, 0x00, 0x00, 0x01, 0x00, 0x00,
-0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x00, 0x00, 0x00, 0x01,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x32, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0x11, 0x00, 0x00, 0x00,
-0x20, 0x00, 0x08, 0x00, 0x00, 0x40, 0x00, 0x00, 0x20, 0x80, 0x00, 0x40, 0x00, 0x00, 0x20, 0x80,
-0x00, 0x01, 0x00, 0xFF, 0x02, 0x33, 0x63, 0x33, 0x73, 0x00, 0x02, 0x00, 0x01, 0x00, 0x01, 0x00,
-0x00, 0x33, 0x63, 0x33, 0x73, 0x00, 0x02, 0x00, 0x01, 0x00, 0x01, 0x00, 0x00, 0xC0, 0x5D, 0x18,
-0x01, 0x00, 0x02, 0x00, 0x03, 0x79, 0x28, 0x00, 0x40, 0x96, 0x00, 0x00, 0x40, 0x00, 0x40, 0x00,
-0x00, 0x20, 0x4E, 0x10, 0x00, 0x40, 0x00, 0x40, 0x00, 0xA0, 0x41, 0x88, 0x13, 0x00, 0x00, 0x00,
-0x00, 0xF7, 0x49, 0x0E, 0x00, 0x00, 0x00, 0x00, 0x20, 0x00, 0x20, 0x00, 0x08, 0x20, 0x00, 0x00,
-0x20, 0xE8, 0x03, 0x18, 0x00, 0x00, 0x20, 0xE8, 0x03, 0x00, 0x00, 0x08, 0x03, 0x20, 0x00, 0x00,
-0x20, 0xE8, 0x03, 0x18, 0x00, 0x00, 0x20, 0xE8, 0x03, 0x00, 0x00, 0x08, 0x03, 0x96, 0x00, 0xFF,
-0x7F, 0x9A, 0x19, 0xFF, 0x7F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x10, 0x00, 0x8F, 0x02, 0x00, 0x04, 0x10, 0x00, 0x66, 0x06, 0x00, 0x01, 0x66,
-0x06, 0x00, 0x40, 0x00, 0x20, 0xE0, 0x2E, 0x58, 0x1B, 0x00, 0x01, 0xCE, 0x2C, 0x00, 0x40, 0x84,
-0x2B, 0x9A, 0x19, 0x66, 0x26, 0x00, 0x01, 0x00, 0x30, 0x00, 0x24, 0x40, 0x01, 0xE6, 0x00, 0x65,
-0x66, 0x00, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0xA0, 0xFF, 0xBA,
-0xFF, 0xCE, 0xFF, 0xE8, 0xFF, 0x00, 0x00, 0xA0, 0xFF, 0xBA, 0xFF, 0xDA, 0xFF, 0xF4, 0xFF, 0x00,
-0x00, 0x32, 0x00, 0x32, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
-};
-const static LVM_CHAR LVVE_Tx_Wb_Mute_File_Buffer[] ={
-0x03, 0x00, 0x09, 0x18, 0x03, 0xD5, 0x07, 0x00, 0x00, 0xBD, 0x02, 0x00, 0x00, 0x02, 0x00, 0x00,
-0x00, 0x01, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x00, 0x00, 0x00, 0x01,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x32, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0x11, 0x00, 0x00, 0x00,
-0x20, 0x00, 0x08, 0x00, 0x00, 0x40, 0x00, 0x00, 0x20, 0x80, 0x00, 0x40, 0x00, 0x00, 0x20, 0x80,
-0x00, 0x01, 0x00, 0xFF, 0x02, 0x33, 0x63, 0x33, 0x73, 0x00, 0x02, 0x00, 0x01, 0x00, 0x01, 0x00,
-0x00, 0x33, 0x63, 0x33, 0x73, 0x00, 0x02, 0x00, 0x01, 0x00, 0x01, 0x00, 0x00, 0xC0, 0x5D, 0x18,
-0x01, 0x00, 0x02, 0x00, 0x03, 0x79, 0x28, 0x00, 0x40, 0x96, 0x00, 0x00, 0x40, 0x00, 0x40, 0x00,
-0x00, 0x20, 0x4E, 0x10, 0x00, 0x40, 0x00, 0x40, 0x00, 0xA0, 0x41, 0x88, 0x13, 0x00, 0x00, 0x00,
-0x00, 0xF7, 0x49, 0x0E, 0x00, 0x00, 0x00, 0x00, 0x20, 0x00, 0x20, 0x00, 0x08, 0x20, 0x00, 0x00,
-0x20, 0xE8, 0x03, 0x18, 0x00, 0x00, 0x20, 0xE8, 0x03, 0x00, 0x00, 0x08, 0x03, 0x20, 0x00, 0x00,
-0x20, 0xE8, 0x03, 0x18, 0x00, 0x00, 0x20, 0xE8, 0x03, 0x00, 0x00, 0x08, 0x03, 0x96, 0x00, 0xFF,
-0x7F, 0x9A, 0x19, 0xFF, 0x7F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x10, 0x00, 0x8F, 0x02, 0x00, 0x04, 0x10, 0x00, 0x66, 0x06, 0x00, 0x01, 0x66,
-0x06, 0x00, 0x40, 0x00, 0x20, 0xE0, 0x2E, 0x58, 0x1B, 0x00, 0x01, 0xCE, 0x2C, 0x00, 0x40, 0x84,
-0x2B, 0x9A, 0x19, 0x66, 0x26, 0x00, 0x01, 0x00, 0x30, 0x00, 0x24, 0x40, 0x01, 0xE6, 0x00, 0x65,
-0x66, 0x00, 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x40, 0x80, 0x00, 0xFD, 0x1F, 0xB0, 0x63, 0xAD,
-0x7F, 0x9D, 0x5A, 0x00, 0x24, 0x00, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05,
-0x00, 0xA0, 0xFF, 0xBA, 0xFF, 0xCE, 0xFF, 0xE8, 0xFF, 0x00, 0x00, 0xA0, 0xFF, 0xBA, 0xFF, 0xDA,
-0xFF, 0xF4, 0xFF, 0x00, 0x00, 0x32, 0x00, 0x32, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
-};
diff --git a/Uboot/cp/ps/driver/src/chipsets/src/audio_base/nxp/uclinux/audio_process.a b/Uboot/cp/ps/driver/src/chipsets/src/audio_base/nxp/uclinux/audio_process.a
deleted file mode 100755
index 449febf..0000000
--- a/Uboot/cp/ps/driver/src/chipsets/src/audio_base/nxp/uclinux/audio_process.a
+++ /dev/null
Binary files differ
diff --git a/Uboot/cp/ps/driver/src/chipsets/src/audio_base/nxp/uclinux/nxp_DrvNvData.h b/Uboot/cp/ps/driver/src/chipsets/src/audio_base/nxp/uclinux/nxp_DrvNvData.h
deleted file mode 100755
index ce95a87..0000000
--- a/Uboot/cp/ps/driver/src/chipsets/src/audio_base/nxp/uclinux/nxp_DrvNvData.h
+++ /dev/null
@@ -1,10 +0,0 @@
-//6 level volume
-//#define LVWM_TX_FILE_SIZE 463 //×Ö½ÚÊý
-//#define LVWM_RX_FILE_SIZE 1866
-//uc actual size
-//#define LVWM_TX_FILE_SIZE 379 //×Ö½ÚÊý
-//#define LVWM_RX_FILE_SIZE 1482
-
-
-
-//const static LVM_CHAR LVVE_Param_Test[] ={};
diff --git a/Uboot/cp/ps/driver/src/chipsets/src/audio_base/tdm/hal_tdm.c b/Uboot/cp/ps/driver/src/chipsets/src/audio_base/tdm/hal_tdm.c
index 50e28da..322aea4 100755
--- a/Uboot/cp/ps/driver/src/chipsets/src/audio_base/tdm/hal_tdm.c
+++ b/Uboot/cp/ps/driver/src/chipsets/src/audio_base/tdm/hal_tdm.c
@@ -54,7 +54,6 @@
#define TDM_DRIVER_VERSION 1
//#define ARM_TDM_LOOP_SET *((volatile unsigned int *)(ZX_SOC_SYS_BASE + 0x60))
-#define ARM_TDM_LOOP_CFG *((volatile UINT32 *)(SOC_SYS_REG_BASE+0x60))
/* version register */
#define TDM_VERSION 0x0104 /*TDM Version V1.4*/
@@ -2416,12 +2415,7 @@
memset(temp, 0, sizeof(temp));
tdmDmaState[TDM_RX].channel = DMA_CH_TDM_RX0;
tdmDmaState[TDM_RX].ch = dma_request_channel(mask, zx29_dma_filter_fn, (void*)(tdmDmaState[TDM_RX].channel));
- if(!tdmDmaState[TDM_RX].ch){
-
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO,"%s: dma_request_channel fail, dma_id(%d).\n",__func__,tdmDmaState[TDM_RX].channel);
- return DRV_ERR_BUSY;
-
- }
+
for (i = 0; i < TDM_OUT_BUF_NUM; i++) {
temp[i].dest_addr = tdmDmaState[TDM_RX].dma_phyaddr + (tdmStream->rxLen) * i;
temp[i].src_addr = ZX29_TDM_PHYS + 0x24;
@@ -2490,12 +2484,6 @@
memset(temp, 0, sizeof(temp));
tdmDmaState[TDM_TX].channel = DMA_CH_TDM_TX0;
tdmDmaState[TDM_TX].ch = dma_request_channel(mask, zx29_dma_filter_fn, (void*)(tdmDmaState[TDM_TX].channel));
- if(!tdmDmaState[TDM_TX].ch){
-
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO,"%s: dma_request_channel fail, dma_id(%d).\n",__func__,tdmDmaState[TDM_TX].channel);
- return DRV_ERR_BUSY;
-
- }
for (i = 0; i < TDM_OUT_BUF_NUM; i++) {
temp[i].src_addr = tdmDmaState[TDM_TX].dma_phyaddr + (txStream->txLen) * i;
@@ -2852,7 +2840,6 @@
SINT32 ret = DRV_SUCCESS;
ret = tdm_Reset();
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "zDrvTDM_Reset , ret=%d",ret);
return ret;
}
@@ -3764,21 +3751,6 @@
VOID vp_SetTopTdmConfig(VOID)
{
- UINT32 AmrRegBit = 0;
-
- /* inter loop */
- AmrRegBit = ARM_TDM_LOOP_CFG;
-
- AmrRegBit &= 0xfffffe07;
- AmrRegBit |= 0x000000a8; /* 0x000000a8 loop dsp afe(loop i2s1)--arm i2s2(loop i2s2) 0x00000150 loop dsp arm(loop i2s1)--afe i2s2(loop i2s2)*/
-
- ARM_TDM_LOOP_CFG = AmrRegBit;
-
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "vp_SetTopTDMConfig ARM_TDM_LOOP_CFG=0x%x\n", ARM_TDM_LOOP_CFG);
-
-
-
-
#if 0
UINT32 AmrRegBit = 0;
int ret = 0;
diff --git a/Uboot/cp/ps/driver/src/chipsets/src/audio_base/voiceprocess/hal_voicebuffer.c b/Uboot/cp/ps/driver/src/chipsets/src/audio_base/voiceprocess/hal_voicebuffer.c
deleted file mode 100755
index 8d0e5f7..0000000
--- a/Uboot/cp/ps/driver/src/chipsets/src/audio_base/voiceprocess/hal_voicebuffer.c
+++ /dev/null
@@ -1,1065 +0,0 @@
-/*******************************************************************************
- * Copyright (C) 2007, ZTE Corporation.
- *
- * File Name:hal_voicebuffer.c
- * File Mark:
- * Description: voice buffer function.
- * Others:
- * Version:
- * Author: xxq
- * Date: 2024-07-03
- * History 1:
- * Date:
- * Version:
- * Author:
- * Modification: edit for union version
- * History 2:
- ********************************************************************************/
-
-/****************************************************************************
-* Include files
-****************************************************************************/
-#include "drvs_general.h"
-#include "drvs_volte.h"
-#include "drvs_i2s.h"
-#include "drvs_voiceprocess.h"
-#include "hal_voiceprocess.h"
-#include "drvs_voice_config.h"
-//#include "hal_pcmmixer.h"
-#include "NvParam_drv.h"
-#include "drvs_io_voice.h"
-#include "hal_ringdata.h"
-#include "drvs_tdm.h"
-#include "hal_dtmf_detect.h"
-#include "hal_audio_data.h"
-//#define TEST_WHITE_NOISE
-
-//#define VB_DATA_LOSS_TEST
-#ifdef TEST_WHITE_NOISE
-#include "Fs8000_WhiteNoise_Mon.h"
-//#include "Fs8000_Sine_440Hz_Mon.h"
-#endif
-
-#include "drvs_icp.h"
-#include "drvs_rpmsg.h"
-//#include <linux/completion.h>
-#include "hal_voicebuffer.h"
-
-/****************************************************************************
-* Local Macros
-****************************************************************************/
-//#define USE_AUDIO_RING
-//#define VP_GET_TX_ALL_DATA
-
-
-/****************************************************************************
-* Local Types
-****************************************************************************/
-
-
-/****************************************************************************
-* Local Constants
-****************************************************************************/
-static SINT32 vp_Get_Add_RpMsg_Vbuffer(VOID);
-
-/****************************************************************************
-* Local Function Prototypes
-****************************************************************************/
-
-/****************************************************************************
-* Global Constants
-****************************************************************************/
-
-
-/****************************************************************************
-* Global Variables
-****************************************************************************/
-//static T_zDrvVp_SpeechState *s_pSpeechState = NULL;
-extern T_zDrvVp_SpeechState s_speechState; //104 bytes
-extern T_zDrvVoice_GbVar g_voiceVar;
-extern T_zDrvVp_State s_vpState;
-
-
-#ifdef ECALL_SUPPORT
-extern int eWrErr;
-extern UINT8 e_reg_flag;
-
-#endif
-
-//for test whiteNoise
-#ifdef TEST_WHITE_NOISE
-extern UINT32 tempCount;
-extern UINT8 *pVoiceTempBuf;
-#endif
-
-
-extern T_ZDrv_VpInOutBuffer vpInOutBuffer;
-
-extern T_HalMixerToneInfo mixerToneInfo;
-
-static int vbuffer_init_flag = 0;
-
-/****************************************************************************
-* Global Function Prototypes
-****************************************************************************/
-//aduvoice config code
-
-
-
-
-
-
-extern SINT32 voice_ToneMixerData(UINT8 *pvdata, UINT32 size, UINT8 *pmixdata);//xiu gai chu sheng ming
-extern SINT32 zDrvI2S_Read_Start(T_ZDrvI2S_Id tId, T_ZDrvI2s_Params *params, T_ZDrvI2S_Cfg *ptCfg);//xiu gai chu sheng ming
-extern SINT32 zDrvI2S_Write_Start(T_ZDrvI2S_Id tId, T_ZDrvI2s_Params *params, T_ZDrvI2S_Cfg *ptCfg);//xiu gai chu sheng ming
-
-
-
-/****************************************************************************
-* Function Definitions
-****************************************************************************/
-ZOSS_TIMER_ID s_voiceTimerId ;
-ZOSS_SEMAPHORE_ID s_voiceRdSema;
-ZOSS_SEMAPHORE_ID s_voiceWrSema;
-
-//#ifdef CONFIG_VOICE_BUFFER_DRV
-//#ifdef _VBUFF_IN_MULTI_CORE
-//voice buffer use in multi core
-//#define RPMSG_CAP_ID 1
-
-
-
-int timer_cb_count = 0;
-int first_full_flag = 0;
-int first_empty_flag = 0;
-
-int vb_read_count = 0;
-int vb_write_count = 0;
-
-
-
-struct voice_ring_buffer *voice_buff[2] = {NULL,NULL};
-
-
-
-static bool voice_buff_is_full(int read_pos, int write_pos)
-{
-
-
- if ((write_pos - read_pos) >= 20000000) {
- write_pos = write_pos - 20000000;
- //voice_buff[UP_LINK]->write_pos = write_pos;
- voice_buff[DOWN_LINK]->write_pos = write_pos;
- }
- return ((write_pos - read_pos) == MAX_BUF_NUM);
-}
-static bool voice_buff_is_empty(int read_pos, int write_pos)
-{
-
- return (write_pos == read_pos);
-}
-static int voice_buffer_write( char *buf, int count)
-{
- int read_pos, write_pos;
-
-
- read_pos = voice_buff[DOWN_LINK]->read_pos;
- write_pos = voice_buff[DOWN_LINK]->write_pos;
- if(vb_write_count == 0){
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO,"%s: first read_pos=%d write_pos=%d \n",__FUNCTION__,read_pos,write_pos);
- }
-
-
- if(voice_buff_is_full(read_pos, write_pos)){
- //zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "voice_buffer_read readbuffer is full \n");
- first_full_flag++;
- VB_INT_OVERFLOW(first_full_flag);
- if(first_full_flag == 1)
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "%s: writebuffer is full read_pos %d,write_pos %d,vb_write_count %d,count %d\n",__FUNCTION__,read_pos,write_pos,vb_write_count,count);
- return DRV_ERROR_FULL;
- }
- else {
- vb_write_count++;
-
- VB_INT_OVERFLOW(vb_write_count);
- first_full_flag = 0;
- zOss_Memcpy(&(voice_buff[DOWN_LINK]->data[(write_pos%MAX_BUF_NUM)*MAX_BUF_SIZE]), buf, count);
-
- write_pos++;
-
- voice_buff[DOWN_LINK]->write_pos = write_pos;
-
- }
-
- return DRV_SUCCESS;
-}
-static int voice_buffer_read(char *buf, size_t count)
-{
- int read_pos, write_pos;
- int* buf_int;
- int i;
-
- read_pos = voice_buff[UP_LINK]->read_pos;
- write_pos = voice_buff[UP_LINK]->write_pos;
- if(vb_read_count == 0){
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO,"%s: first read_pos=%d write_pos=%d \n",__FUNCTION__,read_pos,write_pos);
- }
-
- if ((count > 0) && (count <= MAX_BUF_SIZE)) {
- if(voice_buff_is_empty(read_pos, write_pos)){
- first_empty_flag++;
- VB_INT_OVERFLOW(first_empty_flag);
- if(first_empty_flag ==1)
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO,"%s: readbuffer is empty,read_pos %d,write_pos %d,vb_read_count %d,count %d\n",__FUNCTION__,read_pos,write_pos,vb_read_count,count);
- //add memset,del return . edit for far end hear near end repreat voice pcm, FROM MBB TEST
-
- #ifndef VB_DATA_LOSS_TEST
- zOss_Memset(&(voice_buff[UP_LINK]->data[(read_pos%MAX_BUF_NUM)*MAX_BUF_SIZE]),0, count);
- zOss_Memset(buf,0, count);
- #endif
- //return DRV_ERROR_EMPTY;
-
-
- }
- else {
-
- vb_read_count++;
- VB_INT_OVERFLOW(vb_read_count);
- first_empty_flag = 0;
-
- zOss_Memcpy(buf, &(voice_buff[UP_LINK]->data[(read_pos%MAX_BUF_NUM)*MAX_BUF_SIZE]), count);
- //zOss_Memset(&(voice_buff[UP_LINK]->data[(read_pos%MAX_BUF_NUM)*MAX_BUF_SIZE]),0, count);
-
-#ifdef VB_DATA_LOSS_TEST
-
-
- if(vb_read_count < 5){
- pr_info("ps :count=%d vb_read_count=%d,read_pos=%d,write_pos=%d\n",count,vb_read_count,read_pos,write_pos);
-
-
- buf_int =( int*) &voice_buff[UP_LINK]->data[(write_pos%MAX_BUF_NUM)*MAX_BUF_SIZE];
-
- for(i=0;i<(count/4);i++){
- //*(buf_int+i) = i;
- //buf_int[i] = i;
- if(i>0x1f)
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO,"ps: *(buf_int+%d)=%d\n",i,*(buf_int+i));
- }
-
- }
-#endif
- read_pos++;
- if(read_pos == 20000000)
- read_pos = 0;
- voice_buff[UP_LINK]->read_pos = read_pos;
- }
-
-
- }
-
-
- return DRV_SUCCESS;
-}
-
-
-//voice buffer use in single core
-extern int voicebuffer_ulqueue_read(void *buf, unsigned int size);
-extern int voicebuffer_dlqueue_write(void *buf, unsigned int size);
-extern void voice_inform_to_app(void);
-//static DECLARE_COMPLETION(s_voice_completion);
-//ZOSS_TIMER_ID s_voiceTimerId ;
-//ZOSS_SEMAPHORE_ID s_voiceRdSema;
-//ZOSS_SEMAPHORE_ID s_voiceWrSema;
-static void voiceTimerCallBack(SINT32 para)
-{
-
-
- if (g_voiceVar.voiceBufferType == 1)//multi core
- {
-
-
- T_ZDrvRpMsg_Msg icp_pMsg = {0};
-
- UINT8 s = 1;
- icp_pMsg.actorID = RPMSG_CAP_ID;
-
- icp_pMsg.chID = channel_41;
- icp_pMsg.flag |= RPMSG_WRITE_INT;
- icp_pMsg.buf = (void *)&s;
- icp_pMsg.len = 1;
-
-
- zOss_PutSemaphore(s_voiceWrSema);
- zOss_PutSemaphore(s_voiceRdSema);
- //zDrvRpMsg_Write(&icp_pMsg);
-#ifdef _USE_VEHICLE_DC
- zDrvRpMsg_Write_Cap(&icp_pMsg);
-#endif
- timer_cb_count++;
- VB_INT_OVERFLOW(timer_cb_count);
-#ifdef VB_DATA_LOSS_TEST
-
- if((timer_cb_count%1000 ) == 0){
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "%s:timer_cb_count(%d)\n",__FUNCTION__,timer_cb_count);
- if(timer_cb_count> 10000000)
- timer_cb_count=0;
- }
-
-#endif
-
-
- }
- else{
-
-
-
- // complete_all(&s_voice_completion);
- zOss_PutSemaphore(s_voiceWrSema);
- zOss_PutSemaphore(s_voiceRdSema);
- voice_inform_to_app();
- // zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "voiceTimerCallBack timer=%u\n", cpu_clock(0)>>10);
- }
-
-
-}
-
-
-
-
-
-static SINT32 vp_rxsem_count_Init(void)
-{
- UINT32 i = 0;
- UINT32 semCount = 0;
- SINT32 Count = 0;
-
- semCount = zOss_GetSemaphoreCount(s_voiceRdSema);
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "vp_rxsem_count_Init rxSem count=%d\n", semCount);
-
- Count = semCount;
- if(Count > 0) {
- for(i = 0; i < Count; i++) {
- zOss_GetSemaphore(s_voiceRdSema, ZOSS_NO_WAIT);
- }
- }
-
- return DRV_SUCCESS;
-}
-
-static SINT32 vp_txsem_count_Init(void)
-{
- UINT32 i = 0;
- UINT32 semCount = 0;
- SINT32 Count = 0;
-
- semCount = zOss_GetSemaphoreCount(s_voiceWrSema);
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "vp_txsem_count_Init txSem count=%d \n", semCount);
-
- Count = 3 - semCount;
- if(Count > 0) {
- for(i = 0; i < Count; i++) {
- zOss_PutSemaphore(s_voiceWrSema);
- }
- } else if(Count < 0) {
- Count = 0 - Count;
- for(i = 0; i < Count; i++) {
- zOss_GetSemaphore(s_voiceWrSema, ZOSS_NO_WAIT);
- }
- }
-
- return DRV_SUCCESS;
-}
-
-
-
-
-
-SINT32 vp_Open_Vbuffer(void)
-{
- SINT32 ret = DRV_SUCCESS;
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "%s: start \n", __func__);
- if (g_voiceVar.voiceBufferType == 1)//multi core
- {
- vp_Get_Add_RpMsg_Vbuffer();
-
- vp_rxsem_count_Init();
- vp_txsem_count_Init();
- voice_buff[UP_LINK]->read_pos = 0;
- voice_buff[UP_LINK]->write_pos = 0;
- voice_buff[DOWN_LINK]->read_pos = 0;
- voice_buff[DOWN_LINK]->write_pos = 0;
- zOss_Memset(&(voice_buff[DOWN_LINK]->data[0]),0, MAX_BUF_NUM*MAX_BUF_SIZE);
- zOss_Memset(&(voice_buff[UP_LINK]->data[0]),0, MAX_BUF_NUM*MAX_BUF_SIZE);
- //for debug
- timer_cb_count = 0;
- first_full_flag = 0;
- first_empty_flag = 0;
-
- vb_read_count = 0;
- vb_write_count = 0;
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "vp_Open_Vbuffer init voice buffer val!\n");
-
-
- }else{
-
- // INIT_COMPLETION(s_voice_copletion);
- vp_rxsem_count_Init();
- vp_txsem_count_Init();
- }
-
- return DRV_SUCCESS;
-
-}
-
-
-SINT32 vp_Close_Vbuffer(void)
-{
- SINT32 ret = DRV_SUCCESS;
-
- if (g_voiceVar.voiceBufferType == 1)//multi core
- {
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "%s: timer_cb_count %d,first_full_flag %d,first_empty_flag %d,vb_read_count %d,vb_write_count %d!\n",__FUNCTION__,timer_cb_count,first_full_flag,first_empty_flag,vb_read_count,vb_write_count);
- }
-
- return DRV_SUCCESS;
-}
-
-SINT32 vp_VoiceI2sStart_Vbuffer(VOID)
-{
- SINT32 ret = DRV_SUCCESS;
-
- UINT8 *read_buf = NULL;
- UINT8 *write_buf = NULL;
- UINT32 read_len = 0;
- UINT32 write_len = 0;
-
-
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "%s: start.\n",__func__);
-
-
- ret = zDrvI2S_Read_Start(I2S_2, &s_speechState.i2sReadParam, s_vpState.pVpInnerI2sCfg);
- if (ret != DRV_SUCCESS)
- {
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "vp_VoiceI2sStart_Vbuffer failed ret is %d .\n", ret);
- return DRV_ERROR;
- }
-
- zOss_StartTimer(s_voiceTimerId, 20, voiceTimerCallBack, 0);
-
-
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "vp_VoiceI2sStart_Vbuffer VB zOss_StartTimer\n");
-
- ret = zDrvI2S_Write_Start(I2S_2, &s_speechState.i2sWriteParam, s_vpState.pVpInnerI2sCfg);
-
- ret += zDrvI2S_GetBuf(I2S_2, &write_buf, &write_len);
- if (ret != DRV_SUCCESS)
- {
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "vp_VoiceI2sStart_Vbuffer error7:zDrvI2S_GetBuf I2S_2 ret=%d", ret);
- return DRV_ERROR;
- }
- zOss_Memset(write_buf, 0, write_len);
- ret = zDrvI2S_Write(I2S_2, write_buf, write_len);
- if (ret != DRV_SUCCESS)
- {
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "vp_VoiceI2sStart_Vbuffer error12:zDrvI2S_Write I2S_2 ret=%d", ret);
- }
-
- ret += zDrvI2S_GetBuf(I2S_2, &write_buf, &write_len);
- if (ret != DRV_SUCCESS)
- {
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "vp_VoiceI2sStart_Vbuffer error13:zDrvI2S_GetBuf I2S_2 ret=%d", ret);
- return DRV_ERROR;
- }
- zOss_Memset(write_buf, 0, write_len);
- ret = zDrvI2S_Write(I2S_2, write_buf, write_len);
- if (ret != DRV_SUCCESS)
- {
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "vp_VoiceI2sStart_Vbuffer error14:zDrvI2S_Write I2S_2 ret=%d", ret);
- }
-
- if (g_voiceVar.voiceBufferType == 1)//multi core
- {
-
- voice_buffer_write(s_speechState.pVpTempRxOutPutBuffer, s_speechState.totalFrameBufSize);
-
- }else{
- voicebuffer_dlqueue_write(s_speechState.pVpTempRxOutPutBuffer, s_speechState.totalFrameBufSize);
- }
-
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "%s: end.\n",__func__);
- return ret;
-}
-VOID vp_VoiceI2sStop_Vbuffer(VOID)
-{
- SINT32 ret = DRV_SUCCESS;
- return ret;
-}
-
-
-
-SINT32 zDrvVp_VoiceWorkStop_Vbuffer(VOID)
-{
- SINT32 ret = DRV_SUCCESS;
-
- //complete_all(&s_voice_completion);
- zOss_PutSemaphore(s_voiceRdSema);
- zOss_PutSemaphore(s_voiceWrSema);
- zOss_StopTimer(s_voiceTimerId);
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "%s: zOss_StopTimer\n",__func__);
-
-
-
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "%s: success",__func__);
- return DRV_SUCCESS;
-}
-
-
-SINT32 vp_VolteReadStart_Vbuffer(VOID)
-{
- SINT32 ret = DRV_SUCCESS;
-
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "vp_VolteReadStart_Vbuffer start\n");
-
- zOss_StartTimer(s_voiceTimerId, 20, voiceTimerCallBack, 0);
-
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "vp_VolteReadStart_Vbuffer zOss_StartTimer start\n");
-
- return DRV_SUCCESS;
-}
-//whole replace
-SINT32 vp_VolteReadStop_Vbuffer(VOID)
-{
- SINT32 ret = DRV_SUCCESS;
-
- if (g_voiceVar.useVoiceBuffer == 1)
- {
- zOss_PutSemaphore(s_voiceRdSema);
-
- }
- else
- {
-
-#ifdef CONFIG_VOICE_BUFFER_DRV
- zOss_PutSemaphore(s_voiceRdSema);
-#else
-
- //zDrvI2s_RxRlsSemaBeforeStop(I2S_1);
- zDrvExtAudio_RxRlsSemaBeforeStop();
-
-#if 0//move to close lvwenhua 20150910
- ret = zDrvExtAudio_Read_Stop();
- if (ret != DRV_SUCCESS)
- {
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "zDrvVolte_ReadStop I2S1 Stop wrong ret=%d", ret);
- }
-#endif
-#endif
-
- }
-
- if (s_speechState.volteVpCfgEnFlag == 1)
- {
- ret = halVpCfg_Disable();
- if (ret != DRV_SUCCESS)
- {
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "%s: halVpCfg_Enable err ret=%x !\n",__func__, ret);
- }
- else
- {
- s_speechState.volteVpCfgEnFlag = 0;
- }
- }
-
- s_speechState.volteVpReadStopFlag = 1;//together control vp s_speechState
- if ((s_speechState.volteVpWriteStopFlag == 1) && (s_speechState.volteVpReadStopFlag == 1))
- {
- g_voiceVar.vpI2sStatus = VP_I2S_OPEN;
-
- if (g_voiceVar.useVoiceBuffer == 1)
- {
- zOss_StopTimer(s_voiceTimerId);
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "%s: zOss_StopTimer\n",__func__);
-
- }
- else
- {
-#ifdef CONFIG_VOICE_BUFFER_DRV
- zOss_StopTimer(s_voiceTimerId);
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "vp_VolteReadStop_Vbuffer zOss_StopTimer\n");
-#endif
- }
- }
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "%s: end\n",__func__);
- return ret;
-}
-
-SINT32 vp_VolteWriteStart_Vbuffer(VOID)
-{
- SINT32 ret = DRV_SUCCESS;
-
- //???? for check
- if (g_voiceVar.voiceBufferType == 1)//multi core
- {
- voice_buffer_write(s_speechState.pVpTempRxOutPutBuffer, s_speechState.totalFrameBufSize);
- }
- else
- {
- voicebuffer_dlqueue_write(s_speechState.pVpTempRxOutPutBuffer, s_speechState.totalFrameBufSize);
- }
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "%s:end \n",__func__);
-
- return ret;
-}
-//whole replace
-SINT32 vp_VolteWriteStop_Vbuffer(VOID)
-{
- SINT32 ret = DRV_SUCCESS;
- if (g_voiceVar.useVoiceBuffer == 1)
- {
- zOss_PutSemaphore(s_voiceWrSema);
-
- }
- else
- {
-
-#ifdef CONFIG_VOICE_BUFFER_DRV
- //complete_all(&s_voice_completion);
- zOss_PutSemaphore(s_voiceWrSema);
-#else
- //zDrvI2s_TxRlsSemaBeforeStop(I2S_1);
- zDrvExtAudio_TxRlsSemaBeforeStop();
-#endif
- }
-#if 0//move to close lvwenhua 20150910
- //wait for write drain semaphore
-#ifdef VOICE_TONE_MIXER_FUNCTION
- voice_ToneMixerStop();
-#endif
-
- ret = zDrvExtAudio_Write_Stop();
- if (ret != DRV_SUCCESS)
- {
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "zDrvVolte_WriteStop I2S1 Stop wrong ret=%d", ret);
- }
-
- //s_VolteWriteSema = 0;
-#endif
-
- if (s_speechState.volteVpCfgEnFlag == 1)
- {
- ret = halVpCfg_Disable();
- if (ret != DRV_SUCCESS)
- {
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "vp_VolteWriteStop_Vbuffer halVpCfg_Enable err ret=%x !\n", ret);
- }
- else
- {
- s_speechState.volteVpCfgEnFlag = 0;
- }
- }
-
- s_speechState.volteVpWriteStopFlag = 1;//together control vp s_speechState
- if ((s_speechState.volteVpWriteStopFlag == 1) && (s_speechState.volteVpReadStopFlag == 1))
- {
- g_voiceVar.vpI2sStatus = VP_I2S_OPEN;
-
- if (g_voiceVar.useVoiceBuffer == 1)
- {
-
- zOss_StopTimer(s_voiceTimerId);
-
- }
- else
- {
-
-#ifdef CONFIG_VOICE_BUFFER_DRV
- zOss_StopTimer(s_voiceTimerId);
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "vp_VolteWriteStop_Vbuffer zOss_StopTimer\n");
-#endif
- }
- }
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "vp_VolteWriteStop_Vbuffer \n");
- return ret;
-}
-
-
-/*******************************************************************************
- * For union version
- * Others:
- ********************************************************************************/
-SINT32 vp_WriteDataToCodec_Vbuffer(UINT8 *pBuf, UINT32 count)
-{
- SINT32 ret = DRV_SUCCESS;
- SINT32 e_ret = DRV_SUCCESS;
- UINT8 *write_buf = NULL;
- UINT32 write_len = 0;
- UINT8 *e_write_buf = NULL;
- UINT32 e_write_len = 0;
- UINT32 i = 0, j = 0;
-#ifdef TEST_WHITE_NOISE
- // UINT32 tempCount = 0;
- //zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "test the white noise");
- //UINT8 *pVoiceTempBuf = s_voiceTempBuffer;
-#endif
-
-
-
- if (pBuf == NULL)
- {
- return DRV_ERR_INVALID_PARAM;
- }
-
- if (count != s_speechState.i2sWriteParam.buffersize)
- {
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "vp_WriteDataToCodec_Vbuffer write data length err,count=%d,writebuffersize=%d \n", count, s_speechState.i2sWriteParam.buffersize);
- return DRV_ERR_INVALID_PARAM;
- }
- #ifdef ECALL_SUPPORT
-
- if(e_reg_flag == 1)
- {
- e_ret = update_ecall_state(DIR_RX);
- if (e_ret == DRV_ERR_NOT_SUPPORTED)
- {
- zOss_Printf(SUBMDL_HAL, PRINT_LEVEL_NORMAL, "vp_WriteDataToCodec_Vbuffer get__ecall_state fun not register or invalid para,e_ret=%d !\n",e_ret);
-
- }
- }
- #endif
-
-
-
- #ifdef TEST_WHITE_NOISE
-
- zOss_Memcpy(s_speechState.pVpTempRxInBuffer, pVoiceTempBuf, s_speechState.totalFrameBufSize);
-
- pVoiceTempBuf += s_speechState.totalFrameBufSize;
- tempCount += s_speechState.totalFrameBufSize;
- if (tempCount >= 0x4df80) //307200
- //if(tempCount >= 0x4e200) //320000
- {
- pVoiceTempBuf = s_voiceTempBuffer;
- tempCount = 0;
- }
- #endif
-
- #ifdef VOICE_TONE_MIXER_FUNCTION
-
- if (mixerToneInfo.StartMixer == TRUE)
- {
- //voice_ToneMixerData( s_speechState.pVpTempRxInBuffer);
- if ((g_voiceVar.voiceInVolteMode == 1) && (g_voiceVar.volteIsWb == 1))
- {
- voice_ToneMixerData(s_speechState.pVpTempRxInBuffer, 640, s_speechState.pVpTempRxInBuffer);
- }
- else
- {
- voice_ToneMixerData(s_speechState.pVpTempRxInBuffer, 320, s_speechState.pVpTempRxInBuffer);
- }
-
- }
-
- #endif
- if (pBuf != s_speechState.pVpTempRxInBuffer)
- {
- zOss_Memcpy(s_speechState.pVpTempRxInBuffer, pBuf, s_speechState.totalFrameBufSize);
- }
-
- if (g_voiceVar.vProcIsNormal == TRUE)
- {
- VoiceProc_RxProcess(& s_speechState.pVpTempRxInBuffer, & s_speechState.pVpTempRxOutPutBuffer, s_speechState.frameCount);
- }
- else
- {
- zOss_Memcpy((VOID *)(s_speechState.pVpTempRxOutPutBuffer), (VOID *) s_speechState.pVpTempRxInBuffer, s_speechState.totalFrameBufSize);
- }
- //wait_for_completion_timeout(&s_voice_completion, 60);
- zOss_GetSemaphore(s_voiceWrSema, 60);
- //#ifdef _VBUFF_IN_MULTI_CORE
- if (g_voiceVar.voiceBufferType == 1)
- {
- voice_buffer_write(s_speechState.pVpTempRxOutPutBuffer, s_speechState.totalFrameBufSize);
- }
- else
- {
- voicebuffer_dlqueue_write(s_speechState.pVpTempRxOutPutBuffer, s_speechState.totalFrameBufSize);
- }
- if (g_voiceVar.voiceInVolteMode == 1)
- {
- s_speechState.rxSaveLen += s_speechState.totalFrameBufSize;
- if (s_speechState.rxSaveLen >= s_speechState.inOutBufUseSize)
- {
- s_speechState.rxSaveLen = 0;
- }
- s_speechState.pVpTempRxInBuffer = s_vpState.pVpRxInBuffer + s_speechState.rxSaveLen;
- #ifdef _USE_VP_OUTPUT_RXOUT_DATA
- s_speechState.pVpTempRxOutPutBuffer = s_vpState.pVpRxOutPutBuffer + s_speechState.rxSaveLen;
- #else
- s_speechState.pVpTempRxOutPutBuffer = s_vpState.pVpRxOutPutBuffer;
- #endif
- }
-
-
- if (s_speechState.firstWriteDataFlag == FALSE)
- {
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "vp_WriteDataToCodec_Vbuffer first write ret=%d,tick=%d.\n", ret, zOss_GetTickCount());
- s_speechState.firstWriteDataFlag = TRUE;
- }
-
- return ret;
-}
-
-
-
-SINT32 vp_ReadDataFromCodec_Vbuffer(UINT8 *pBuf, UINT32 count)
-{
- SINT32 ret = DRV_SUCCESS;
- UINT8 *read_buf = NULL;
- UINT32 read_len = 0;
-
- UINT32 i = 0, j = 0;
-#ifdef CONFIG_ARCH_ZX297520V3_CPE_SWITCH
- UINT8 temp8bit = 0;
- UINT8 *ptemp8bit = NULL;
-#endif
-
- if (pBuf == NULL)
- {
- return DRV_ERR_INVALID_PARAM;
- }
-
- if (count != s_speechState.i2sReadParam.buffersize)
- {
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "%s: read data length err,count=%d,readbuffersize=%d \n",__func__, count, s_speechState.i2sReadParam.buffersize);
- return DRV_ERR_INVALID_PARAM;
- }
-#ifdef ECALL_SUPPORT
-
- if(e_reg_flag == 1)
- {
- ret = update_ecall_state(DIR_TX);
- if (ret == DRV_ERR_NOT_SUPPORTED)
- {
- zOss_Printf(SUBMDL_HAL, PRINT_LEVEL_NORMAL, "vp_ReadDataFromCodecvp_ReadDataFromCodec get__ecall_state fun not register,ret=%d !\n",ret);
-
- }
- }
-#endif
-
-
-// wait_for_completion_timeout(&s_voice_completion, 60);
- zOss_GetSemaphore(s_voiceRdSema, 60);
- if (g_voiceVar.voiceBufferType == 1)
- {
- voice_buffer_read(s_speechState.pVpTempTxInBuffer, s_speechState.totalFrameBufSize);
-
- }
- else
- {
- voicebuffer_ulqueue_read(s_speechState.pVpTempTxInBuffer, s_speechState.totalFrameBufSize);
- }
- if (g_voiceVar.vProcIsNormal == TRUE)
- {
- VoiceProc_TxProcess(&s_speechState.pVpTempTxInBuffer, NULL, &s_speechState.pVpTempTxOutPutBuffer, s_speechState.frameCount);
- }
- else
- {
- zOss_Memcpy((VOID *)(s_speechState.pVpTempTxOutPutBuffer), (VOID *) s_speechState.pVpTempTxInBuffer, s_speechState.totalFrameBufSize);
- }
-
- if (pBuf != s_speechState.pVpTempTxOutPutBuffer)
- {
- zOss_Memcpy(pBuf, s_speechState.pVpTempTxOutPutBuffer, s_speechState.totalFrameBufSize);
- }
-
- if (g_voiceVar.voiceInVolteMode == 1)
- {
- // s_speechState.txSaveLen += VP_FRAME_BUFFER_SIZE;
- s_speechState.txSaveLen += s_speechState.totalFrameBufSize;
- if (s_speechState.txSaveLen >= s_speechState.inOutBufUseSize)
- {
- s_speechState.txSaveLen = 0;
- }
- s_speechState.pVpTempTxInBuffer = s_vpState.pVpTxInBuffer + s_speechState.txSaveLen;
- s_speechState.pVpTempTxOutPutBuffer = s_vpState.pVpTxOutPutBuffer + s_speechState.txSaveLen;
- }
-
-
- if (s_speechState.firstReadDataFlag == FALSE)
- {
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "vp_ReadDataFromCodec first read tick=%d.\n", zOss_GetTickCount());
- s_speechState.firstReadDataFlag = TRUE;
- }
-
- return ret;
-}
-
-
-
-
-SINT32 vp_CreateThreadSemaph_Vbuffer(VOID)
-{
- SINT32 ret = 0;
-//#ifdef CONFIG_VOICE_BUFFER_DRV
-// init_completion(&s_voice_completion);
- /*
- if(vbuffer_init_flag == 1){
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "vbuffer already init,return! \n");
- return DRV_SUCCESS;
-
- }
- */
- s_voiceRdSema = zOss_CreateSemaphore("voice_rx_sem", 0);
- if(NULL == s_voiceRdSema) {
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "create voice_rx_sem err \n");
- return DRV_ERROR;
- }
-
- s_voiceWrSema = zOss_CreateSemaphore("voice_tx_sem", 0);
- if(NULL == s_voiceWrSema) {
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "create voice_tx_sem err \n");
- return DRV_ERROR;
- }
-
-
-
- s_voiceTimerId = zOss_CreateTimer("voice_frameTimer", voiceTimerCallBack, 0, TRUE);
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "s_voiceTimerId=%p\n", s_voiceTimerId);
- if(!s_voiceTimerId)
- {
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "voice_frameTimer failed\n");
- return DRV_ERROR;
- }
-
-
-
-
- //ret = zDrvRpMsg_CreateChannel(IPC_MSG_ACTOR_A9,channel_41,0x10);
-#ifdef _USE_VEHICLE_DC
- ret = zDrvRpMsg_CreateChannel_Cap(RPMSG_CAP_ID,channel_41,0x10);
-
- if(DRV_SUCCESS != ret) {
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "create rpmsg err(%d) \n",ret);
- return DRV_ERROR;
- }
-/*
- volatile T_ZDrvRpMsg_Msg icp_pMsg = {0};
- volatile unsigned int rpMsgBuf[2] = {0,0};
- //printk( "vir_buf1:0x%x, vir_buf2:0x%x, phy_buf1:0x%x, phy_buf2:0x%x,\n",voice_buff[0],voice_buff[1],rpMsgBuf[0],rpMsgBuf[1]);
- icp_pMsg.actorID = RPMSG_CAP_ID;
- icp_pMsg.chID = channel_41;
- icp_pMsg.flag &= ~RPMSG_READ_POLL;
- icp_pMsg.buf = rpMsgBuf;
- icp_pMsg.len = 8;
-
-
- ret = zDrvRpMsg_Read_Cap(&icp_pMsg);
- if(ret <= 0){
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "voice buffer rpmsg addr read fail,ret=%d \n",ret);
- zOss_Printf(SUBMDL_HAL, PRINT_LEVEL_NORMAL, "ps voice buffer rpmsg addr read fail,ret=%d \n",ret);
-
-
- }
- else{
- #if 0
-
- voice_buff[UP_LINK] = (struct voice_ring_buffer *)(rpMsgBuf[0]);
- voice_buff[DOWN_LINK] = (struct voice_ring_buffer *)(rpMsgBuf[1]);
- #else
-
- voice_buff[UP_LINK] = (struct voice_ring_buffer *)ioremap_wc(rpMsgBuf[0], (sizeof(struct voice_ring_buffer) + MAX_BUF_SIZE*MAX_BUF_NUM));
- voice_buff[DOWN_LINK] = (struct voice_ring_buffer *)ioremap_wc(rpMsgBuf[1],(sizeof(struct voice_ring_buffer) + MAX_BUF_SIZE*MAX_BUF_NUM));
- #endif
-
- zOss_Printf(SUBMDL_HAL, PRINT_LEVEL_NORMAL, "ps rpmsg voice buffer addr,up vir buf=0x%x, down vir buf=0x%x ,up phy buf=0x%x, down phy buf=0x%x,size=%d \n" \
- ,voice_buff[0],voice_buff[1],rpMsgBuf[0],rpMsgBuf[1],(sizeof(struct voice_ring_buffer) + MAX_BUF_SIZE*MAX_BUF_NUM));
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "voice buffer addr,up vir buf=0x%x, down vir buf=0x%x ,up phy buf=0x%x, down phy buf=0x%x,size=%d \n" \
- ,voice_buff[0],voice_buff[1],rpMsgBuf[0],rpMsgBuf[1],(sizeof(struct voice_ring_buffer) + MAX_BUF_SIZE*MAX_BUF_NUM));
- }
-*/
-
-
-#endif
- //vbuffer_init_flag = 1;
-
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "vp_CreateThreadSemaph success. \r\n");
- return DRV_SUCCESS;
-}
-
-
-
-
-static SINT32 vp_Get_Add_RpMsg_Vbuffer(VOID)
-{
- SINT32 ret = 0;
-//#ifdef CONFIG_VOICE_BUFFER_DRV
-// init_completion(&s_voice_completion);
-
- if(vbuffer_init_flag == 1){
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "vbuffer already init,return! \n");
- return DRV_SUCCESS;
-
- }
-
- //ret = zDrvRpMsg_CreateChannel(IPC_MSG_ACTOR_A9,channel_41,0x10);
-#ifdef _USE_VEHICLE_DC
-
- volatile T_ZDrvRpMsg_Msg icp_pMsg = {0};
- volatile unsigned int rpMsgBuf[2] = {0,0};
- //printk( "vir_buf1:0x%x, vir_buf2:0x%x, phy_buf1:0x%x, phy_buf2:0x%x,\n",voice_buff[0],voice_buff[1],rpMsgBuf[0],rpMsgBuf[1]);
- icp_pMsg.actorID = RPMSG_CAP_ID;
- icp_pMsg.chID = channel_41;
- icp_pMsg.flag &= ~RPMSG_READ_POLL;
- icp_pMsg.buf = rpMsgBuf;
- icp_pMsg.len = 8;
-
-
- ret = zDrvRpMsg_Read_Cap(&icp_pMsg);
- if(ret <= 0){
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "voice buffer rpmsg addr read fail,ret=%d \n",ret);
- zOss_Printf(SUBMDL_HAL, PRINT_LEVEL_NORMAL, "ps voice buffer rpmsg addr read fail,ret=%d \n",ret);
-
-
- }
- else{
- #if 0
-
- voice_buff[UP_LINK] = (struct voice_ring_buffer *)(rpMsgBuf[0]);
- voice_buff[DOWN_LINK] = (struct voice_ring_buffer *)(rpMsgBuf[1]);
- #else
-
- voice_buff[UP_LINK] = (struct voice_ring_buffer *)ioremap_wc(rpMsgBuf[0], (sizeof(struct voice_ring_buffer) + MAX_BUF_SIZE*MAX_BUF_NUM));
- voice_buff[DOWN_LINK] = (struct voice_ring_buffer *)ioremap_wc(rpMsgBuf[1],(sizeof(struct voice_ring_buffer) + MAX_BUF_SIZE*MAX_BUF_NUM));
- #endif
-
- zOss_Printf(SUBMDL_HAL, PRINT_LEVEL_NORMAL, "ps rpmsg voice buffer addr,up vir buf=0x%x, down vir buf=0x%x ,up phy buf=0x%x, down phy buf=0x%x,size=%d \n" \
- ,voice_buff[0],voice_buff[1],rpMsgBuf[0],rpMsgBuf[1],(sizeof(struct voice_ring_buffer) + MAX_BUF_SIZE*MAX_BUF_NUM));
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "voice buffer addr,up vir buf=0x%x, down vir buf=0x%x ,up phy buf=0x%x, down phy buf=0x%x,size=%d \n" \
- ,voice_buff[0],voice_buff[1],rpMsgBuf[0],rpMsgBuf[1],(sizeof(struct voice_ring_buffer) + MAX_BUF_SIZE*MAX_BUF_NUM));
-
- vbuffer_init_flag = 1;
-
- }
-
-
-
-#endif
-
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "%s: success. \r\n",__func__);
- return DRV_SUCCESS;
-}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/Uboot/cp/ps/driver/src/chipsets/src/audio_base/voiceprocess/hal_voiceprocess.c b/Uboot/cp/ps/driver/src/chipsets/src/audio_base/voiceprocess/hal_voiceprocess.c
index 3296dad..f34d0b7 100755
--- a/Uboot/cp/ps/driver/src/chipsets/src/audio_base/voiceprocess/hal_voiceprocess.c
+++ b/Uboot/cp/ps/driver/src/chipsets/src/audio_base/voiceprocess/hal_voiceprocess.c
@@ -34,7 +34,9 @@
#include "drvs_tdm.h"
#include "hal_dtmf_detect.h"
#include "hal_audio_data.h"
+//#define TEST_WHITE_NOISE
+//#define VB_DATA_LOSS_TEST
#ifdef TEST_WHITE_NOISE
#include "Fs8000_WhiteNoise_Mon.h"
//#include "Fs8000_Sine_440Hz_Mon.h"
@@ -43,19 +45,40 @@
#include "drvs_icp.h"
#include "drvs_rpmsg.h"
//#include <linux/completion.h>
-
-#include "hal_voicebuffer.h"
-
/****************************************************************************
* Local Macros
****************************************************************************/
//#define USE_AUDIO_RING
//#define VP_GET_TX_ALL_DATA
+#define VP_BUF_LENGTH 0x7FF80 //0xFFD80 //0x7FE40 //0x4df80// (0.5M 0x80000)
+#define VP_FRAME_BUFFER_SIZE 320 //20ms 800KHZ
+#define VP_I2S_BUFFER_SIZE 320
+#define VOICE_SYNC_TIMEOUT_TIME 100
+
+#define VP_INOUT_BAK_BUFFER_SIZE 0x30000 // 0x60000
+#define VP_INOUT_NOBAK_BUFSIZE 640
+#define VB_MAX_INT 0x7fffffff
+#define VB_MIN_INT 0 //(0-2<<31)//0x80000000
+
+#define VB_INT_OVERFLOW(x) if((x < VB_MIN_INT)||(x > VB_MAX_INT)) x = 0;
/****************************************************************************
* Local Types
****************************************************************************/
+ typedef enum
+ {
+ VBUF_SEM = 0,//voice buffer
+ ECALL_SEM,
+ SEM_MAX
+ } T_Sem_Owner;
+ typedef enum
+ {
+ DIR_RX,
+ DIR_TX,
+ DIR_ALL,
+ DIR_MAX
+ } T_Data_Dir_Type;
/****************************************************************************
* Local Constants
@@ -81,46 +104,7 @@
* Global Variables
****************************************************************************/
//static T_zDrvVp_SpeechState *s_pSpeechState = NULL;
-#if 0
static T_zDrvVp_SpeechState s_speechState = {0}; //104 bytes
-#else
-T_zDrvVp_SpeechState s_speechState = {
- //use for vp data process
- .pVpTempRxInBuffer = NULL,
- .pVpTempTxInBuffer = NULL,
- .pVpTempRxOutPutBuffer = NULL,
- .pVpTempTxOutPutBuffer = NULL,
-
- .pVpI2sCfg = NULL,
-
- .vpCfgParam = {0},
-
- .i2sWriteParam = {0},
- .i2sReadParam = {0},
-
- .frameCount = 0,
- .totalFrameBufSize = 0,
- .inOutBufUseSize = 0,
- .rxSaveLen = 0,
- .txSaveLen = 0,
- .saveLen = 0,
-
- .pcmSlotNum = 0,
- .pcmWbSecDataPosition = 0,
-
- .volteVpWriteStopFlag = 0,
- .volteVpReadStopFlag = 0,
- . volteVpCfgEnFlag = 0,
- .firstWriteDataFlag = FALSE,
- .firstReadDataFlag = FALSE,
- .i2sIsRstFlag = FALSE,
-
-};
-
-
-#endif
-
-#if 0
T_zDrvVoice_GbVar g_voiceVar =
{
@@ -154,104 +138,32 @@
#endif
0 //27 voice_nv_update
};
-#else
-T_zDrvVoice_GbVar g_voiceVar =
-{
- .volteIsWb = 0, //volteIsWb
- .isUseSlicCodec = 0, //isUseSlicCodec
- .g_isUseTdm = 0, //g_isUseTdm
- .voiceInGsmTdMode = 0, //voiceInGsmTdMode
- .voiceInVolteMode = 0, //voiceInVolteMode
- .innerI2sIsMaster = FALSE, //innerI2sIsMaster
- .innerI2sIsI2sMode = TRUE, //innerI2sIsI2sMode
- .vpLoopRuning = FALSE, //vpLoopRunning
- .muteEn = FALSE, //muteEn
- .vProcIsNormal = FALSE, //vProcIsNormal
- .vpI2sStatus = VP_I2S_IDLE, //vpI2sStatus
- .vpPath = VP_PATH_HANDSET, //vpPath
- .vpLoopPath = VP_PATH_HANDSET, //vpLoopPath
- .vpVol = VP_VOL_3, //vpVol
- .voiceMode = MAX_VOICE_MODE, //voiceMode
- .vpInitGain = -1, //vpInitGain
- .audio_ctrlFlag = {0}, //audio_ctrlFlag
-
- .dtmfDirSel = DTMF_IDLE, //dtmfDirSel
- .sample_rate = 0, //sample_rate
- .useDtmfLoop = 0, //useDtmfLoop
- .muteCount = 0, //muteCount
- .vpLoopBkRunning = FALSE, //vpLoopBkRunning
- .rxMuteEn = FALSE, //rxMuteEn
- .firstRegZCATFlag = FALSE,
-#ifdef ECALL_SUPPORT
- .ecallData = {0}, //ecallData
-#endif
- .voice_nv_update = 0, // voice_nv_update
- .useVoiceBuffer = 0,// 0 not use,1 use
- .voiceBufferType = 0, //0 single core, 1 dual core
-
-};
-
-#endif
-
-#if 0
-
static T_zDrvVp_State s_vpState =
{
- NULL,//1 pVpRxInBuffer
- NULL,//2 pVpTxInBuffer
- NULL,//3 pVpRxOutPutBuffer
- NULL,//4 pVpTxOutPutBuffer
- 0,//5 inOutBufSize
- NULL,//6 pVpInnerI2sCfg
- NULL,//7 pVpExtI2sCfg
- NULL,//8 pVpExtI2sWbCfg
- NULL,//9 s_pVpTdmCfg
- NULL,//10 s_pVpTdmWbCfg
- NULL,//11 pVpTdmCfg
- {0},//12 pMsg
- {0},//13 pMsgBuf[2]
- //0,//14
- NULL,//15 vpThread
- NULL,//16 rcvDtmfThread
- NULL,//17 vpSemaphore
- NULL,//18 vpThreadQuitSema
- NULL,//19 vpLoopThread
- NULL,//20 vpLoopSemaphore
- NULL//21 vpState
+ NULL,
+ NULL,
+ NULL,
+ NULL,
+ 0,
+ NULL,
+ NULL,
+ NULL,
+ NULL,
+ NULL,
+ NULL,
+ {0},
+ {0},
+ 0,
+ NULL,
+ NULL,
+ NULL,
+ NULL,
+ NULL,
+ NULL,
+ NULL
// {0}
};
-#else
-T_zDrvVp_State s_vpState =
-{
- .pVpRxInBuffer = NULL,//1
- .pVpTxInBuffer = NULL,//2
- .pVpRxOutPutBuffer = NULL,//3
- .pVpTxOutPutBuffer = NULL,//4
- .inOutBufSize = 0,//5
- .pVpInnerI2sCfg = NULL,//6
- .pVpExtI2sCfg = NULL,//7
- .pVpExtI2sWbCfg = NULL,//8
- .s_pVpTdmCfg = NULL,//9
- .s_pVpTdmWbCfg = NULL,//10
- .pVpTdmCfg = NULL,//11
- .pMsg = {0},//12
- .pMsgBuf = {0},//13
- .vpThread = NULL,//14
- .rcvDtmfThread = NULL,//15
- .vpSemaphore = NULL,//16
- .vpThreadQuitSema = NULL,//17
- .vpLoopThread = NULL,//18
- .vpLoopSemaphore = NULL,//19
-
- .vpState = NULL,//
-// {0}
-};
-
-
-#endif
-
-
//for test whiteNoise
#ifdef TEST_WHITE_NOISE
@@ -359,8 +271,8 @@
****************************************************************************/
#ifdef CONFIG_VOICE_BUFFER_DRV
#ifdef _VBUFF_IN_MULTI_CORE
-//#define RPMSG_CAP_ID 1
-#if 0
+#define RPMSG_CAP_ID 1
+
ZOSS_TIMER_ID s_voiceTimerId ;
ZOSS_SEMAPHORE_ID s_voiceRdSema;
ZOSS_SEMAPHORE_ID s_voiceWrSema;
@@ -371,22 +283,9 @@
int vb_read_count = 0;
int vb_write_count = 0;
-#else
-//define in hal_voicebuffer.c
-extern ZOSS_TIMER_ID s_voiceTimerId ;
-extern ZOSS_SEMAPHORE_ID s_voiceRdSema;
-extern ZOSS_SEMAPHORE_ID s_voiceWrSema;
-extern int timer_cb_count;
-extern int first_full_flag;
-extern int first_empty_flag;
-extern int vb_read_count;
-extern int vb_write_count;
-
-#endif
-
-static void voiceTimerCallBack(SINT32 para)
+void voiceTimerCallBack(SINT32 para)
{
T_ZDrvRpMsg_Msg icp_pMsg = {0};
@@ -417,8 +316,22 @@
// zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "voiceTimerCallBack timer=%u\n", cpu_clock(0)>>10);
}
+#define MAX_BUF_SIZE 640
+#define MAX_BUF_NUM 3
-extern struct voice_ring_buffer *voice_buff[2];
+
+enum{
+ UP_LINK,
+ DOWN_LINK
+};
+
+struct voice_ring_buffer {
+ volatile uint read_pos;
+ volatile uint write_pos;
+ volatile char data[];
+
+};
+struct voice_ring_buffer *voice_buff[2] = {NULL,NULL};
@@ -547,10 +460,10 @@
extern int voicebuffer_dlqueue_write(void *buf, unsigned int size);
extern void voice_inform_to_app(void);
//static DECLARE_COMPLETION(s_voice_completion);
-extern ZOSS_TIMER_ID s_voiceTimerId ;
-extern ZOSS_SEMAPHORE_ID s_voiceRdSema;
-extern ZOSS_SEMAPHORE_ID s_voiceWrSema;
-static void voiceTimerCallBack(SINT32 para)
+ZOSS_TIMER_ID s_voiceTimerId ;
+ZOSS_SEMAPHORE_ID s_voiceRdSema;
+ZOSS_SEMAPHORE_ID s_voiceWrSema;
+void voiceTimerCallBack(SINT32 para)
{
// complete_all(&s_voice_completion);
zOss_PutSemaphore(s_voiceWrSema);
@@ -563,7 +476,7 @@
#endif
-static SINT32 vp_rxsem_count_Init(void)
+SINT32 vp_rxsem_count_Init(void)
{
UINT32 i = 0;
UINT32 semCount = 0;
@@ -582,7 +495,7 @@
return DRV_SUCCESS;
}
-static SINT32 vp_txsem_count_Init(void)
+SINT32 vp_txsem_count_Init(void)
{
UINT32 i = 0;
UINT32 semCount = 0;
@@ -609,7 +522,6 @@
#endif
-
#ifdef ECALL_SUPPORT
int eWrErr = 0;
UINT8 e_reg_flag = 0;
@@ -621,7 +533,6 @@
T_Ecall_State preEcallRxSta = 0;
T_Ecall_State preEcallTxSta = 0;
-
//tx
SINT32 rdsem_count_Init(T_Sem_Owner owner)
{
@@ -795,7 +706,7 @@
e_startCount = 0;
e_stopCount = 0;
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "ecall_Open bufsize=%d end!\n",bufsize);
+ zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "ecall_Open end!\n");
return DRV_SUCCESS;
@@ -847,7 +758,7 @@
{
SINT32 ret = DRV_SUCCESS;
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "%s: start e_startCount=%d \n",__FUNCTION__,e_startCount);
+ zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "%s start e_startCount=%d \n",__FUNCTION__,e_startCount);
if(g_voiceVar.ecallData.ecallSta == ECALL_ST_START)
{
zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "ecall_Start repeat ecallSta=%d\n",g_voiceVar.ecallData.ecallSta);
@@ -874,7 +785,7 @@
SINT32 ecall_Stop(VOID)
{
SINT32 ret = DRV_SUCCESS;
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "%s: start e_stopCount=%d \n",__FUNCTION__,e_stopCount);
+ zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "%s start e_stopCount=%d \n",__FUNCTION__,e_stopCount);
if((g_voiceVar.ecallData.ecallSta == ECALL_ST_STOP)||(g_voiceVar.ecallData.ecallSta == ECALL_ST_CLOSE))
{
@@ -922,7 +833,7 @@
{
if(dir == DIR_RX)
{
-
+
preEcallRxSta = g_voiceVar.ecallData.ecallRxSta;
g_voiceVar.ecallData.ecallRxSta = ECALL_ST_RX_INUSE;
//zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "update_ecall_state rx state change to ecallRxSta = %d\n", g_voiceVar.ecallData.ecallRxSta);
@@ -1053,15 +964,9 @@
return DRV_SUCCESS;
}
-
SINT32 zDrvExtAudio_Open(T_ZDrvI2s_TransMode i2sTransMode)
{
-
int ret = 0;
- if (g_voiceVar.useVoiceBuffer == 1){
- return ret;
- }
-
#ifdef CONFIG_VOICE_BUFFER_DRV
#else
if (g_voiceVar.g_isUseTdm != 1)
@@ -1079,9 +984,6 @@
SINT32 zDrvExtAudio_Reset()
{
int ret = 0;
- if (g_voiceVar.useVoiceBuffer == 1){
- return ret;
- }
#ifdef CONFIG_VOICE_BUFFER_DRV
#else
if (g_voiceVar.g_isUseTdm != 1)
@@ -1098,9 +1000,6 @@
SINT32 zDrvExtAudio_Close()
{
int ret = 0;
- if (g_voiceVar.useVoiceBuffer == 1){
- return ret;
- }
#ifdef CONFIG_VOICE_BUFFER_DRV
#else
if (g_voiceVar.g_isUseTdm != 1)
@@ -1118,9 +1017,6 @@
SINT32 zDrvExtAudio_Write_Prepare(T_ZDrvI2S_Cfg *i2sCfg, T_ZDrvTdm_Cfg *tdmCfg)
{
int ret = 0;
- if (g_voiceVar.useVoiceBuffer == 1){
- return ret;
- }
#ifdef CONFIG_VOICE_BUFFER_DRV
#else
if (g_voiceVar.g_isUseTdm != 1)
@@ -1139,9 +1035,6 @@
T_ZDrvTdm_Params *tdmParams, T_ZDrvTdm_Cfg *tdmCfg)
{
int ret = 0;
- if (g_voiceVar.useVoiceBuffer == 1){
- return ret;
- }
#ifdef CONFIG_VOICE_BUFFER_DRV
#else
if (g_voiceVar.g_isUseTdm != 1)
@@ -1159,9 +1052,6 @@
T_ZDrvTdm_Params *tdmParams, T_ZDrvTdm_Cfg *tdmCfg)
{
int ret = 0;
- if (g_voiceVar.useVoiceBuffer == 1){
- return ret;
- }
#ifdef CONFIG_VOICE_BUFFER_DRV
#else
if (g_voiceVar.g_isUseTdm != 1)
@@ -1178,9 +1068,6 @@
SINT32 zDrvExtAudio_Read_Prepare(T_ZDrvI2S_Cfg *i2sCfg, T_ZDrvTdm_Cfg *tdmCfg)
{
int ret = 0;
- if (g_voiceVar.useVoiceBuffer == 1){
- return ret;
- }
#ifdef CONFIG_VOICE_BUFFER_DRV
#else
if (g_voiceVar.g_isUseTdm != 1)
@@ -1199,9 +1086,6 @@
T_ZDrvTdm_Params *tdmParams, T_ZDrvTdm_Cfg *tdmCfg)
{
int ret = 0;
- if (g_voiceVar.useVoiceBuffer == 1){
- return ret;
- }
#ifdef CONFIG_VOICE_BUFFER_DRV
#else
if (g_voiceVar.g_isUseTdm != 1)
@@ -1219,9 +1103,6 @@
T_ZDrvTdm_Params *tdmParams, T_ZDrvTdm_Cfg *tdmCfg)
{
int ret = 0;
- if (g_voiceVar.useVoiceBuffer == 1){
- return ret;
- }
#ifdef CONFIG_VOICE_BUFFER_DRV
#else
if (g_voiceVar.g_isUseTdm != 1)
@@ -1238,9 +1119,6 @@
SINT32 zDrvExtAudio_Write(const UINT8 *pBuf, UINT32 uiLen)
{
int ret = 0;
- if (g_voiceVar.useVoiceBuffer == 1){
- return ret;
- }
#ifdef CONFIG_VOICE_BUFFER_DRV
#else
if (g_voiceVar.g_isUseTdm != 1)
@@ -1258,9 +1136,6 @@
SINT32 zDrvExtAudio_Read(const UINT8 **pBuf, UINT32 *uiLen)
{
int ret = 0;
- if (g_voiceVar.useVoiceBuffer == 1){
- return ret;
- }
#ifdef CONFIG_VOICE_BUFFER_DRV
#else
if (g_voiceVar.g_isUseTdm != 1)
@@ -1320,13 +1195,9 @@
return ret;
}
#endif
-
SINT32 zDrvExtAudio_Write_Stop()
{
int ret = 0;
- if (g_voiceVar.useVoiceBuffer == 1){
- return ret;
- }
#ifdef CONFIG_VOICE_BUFFER_DRV
#else
if (g_voiceVar.g_isUseTdm != 1)
@@ -1344,9 +1215,6 @@
SINT32 zDrvExtAudio_Read_Stop()
{
int ret = 0;
- if (g_voiceVar.useVoiceBuffer == 1){
- return ret;
- }
#ifdef CONFIG_VOICE_BUFFER_DRV
#else
if (g_voiceVar.g_isUseTdm != 1)
@@ -1364,9 +1232,6 @@
SINT32 zDrvExtAudio_GetBuf(UINT8 **pBuf, UINT32 *uiLen)
{
int ret = 0;
- if (g_voiceVar.useVoiceBuffer == 1){
- return ret;
- }
#ifdef CONFIG_VOICE_BUFFER_DRV
#else
if (g_voiceVar.g_isUseTdm != 1)
@@ -1398,9 +1263,6 @@
SINT32 zDrvExtAudio_FreeBuf(UINT8 *pBuf)
{
int ret = 0;
- if (g_voiceVar.useVoiceBuffer == 1){
- return ret;
- }
#ifdef CONFIG_VOICE_BUFFER_DRV
#else
if (g_voiceVar.g_isUseTdm != 1)
@@ -1417,10 +1279,6 @@
void zDrvExtAudio_RlsAllSemaBeforeStop(void)
{
- if (g_voiceVar.useVoiceBuffer == 1){
- return;
- }
-
#ifdef CONFIG_VOICE_BUFFER_DRV
#else
if (g_voiceVar.g_isUseTdm == 1)
@@ -1438,10 +1296,6 @@
void zDrvExtAudio_RxRlsSemaBeforeStop(void)
{
- if (g_voiceVar.useVoiceBuffer == 1){
- return;
- }
-
#ifdef CONFIG_VOICE_BUFFER_DRV
#else
if (g_voiceVar.g_isUseTdm == 1)
@@ -1457,10 +1311,6 @@
void zDrvExtAudio_TxRlsSemaBeforeStop(void)
{
- if (g_voiceVar.useVoiceBuffer == 1){
- return;
- }
-
#ifdef CONFIG_VOICE_BUFFER_DRV
#else
if (g_voiceVar.g_isUseTdm == 1)
@@ -1745,19 +1595,7 @@
ext_aRdCount = 0;
ext_aRdFBufCount = 0;
-
-
- if (g_voiceVar.useVoiceBuffer == 1)
- {
- ret = vp_Open_Vbuffer();
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "vp_Open_Vbuffer ret=%d!\n",ret);
- }
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "vp_Open_Vbuffer useVoiceBuffer=%d voiceBufferType=%d!\n",g_voiceVar.useVoiceBuffer,g_voiceVar.voiceBufferType);
-
-
-
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "vp_Open end!\n");
return DRV_SUCCESS;
@@ -2444,7 +2282,7 @@
ret = ecall_Close();
if (ret != DRV_SUCCESS)
{
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "%s:ecall_Close error,ret=%d",__func__,ret);
+ zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "ecall_Open error,ret=%d", ret);
}
e_reg_flag = 0;
}
@@ -2467,12 +2305,6 @@
zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "%s: timer_cb_count %d,first_full_flag %d,first_empty_flag %d,vb_read_count %d,vb_write_count %d!\n",__FUNCTION__,timer_cb_count,first_full_flag,first_empty_flag,vb_read_count,vb_write_count);
#endif
- if(g_voiceVar.useVoiceBuffer == 1)
- {
- ret = vp_Close_Vbuffer();
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "vp_Close_Vbuffer ret=%d!\n",ret);
-
- }
zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "%s: ext_aRdCount %d,ext_aRdFBufCount %d!\n",__FUNCTION__,ext_aRdCount,ext_aRdFBufCount);
@@ -2505,185 +2337,176 @@
// {
// zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "is the i2s loopback mode");
// }
-
- if (g_voiceVar.useVoiceBuffer == 1)
- {
- ret = vp_VoiceI2sStart_Vbuffer();
- }
- else
- {
-
#ifdef CONFIG_VOICE_BUFFER_DRV
- ret = zDrvI2S_Read_Start(I2S_2, &s_speechState.i2sReadParam, s_vpState.pVpInnerI2sCfg);
- if (ret != DRV_SUCCESS)
- {
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "zDrvI2S2_Read_Start failed ret is %d .\n", ret);
- return DRV_ERROR;
- }
-
- zOss_StartTimer(s_voiceTimerId, 20, voiceTimerCallBack, 0);
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "vp_VoiceI2sStart VB zOss_StartTimer\n");
+ ret = zDrvI2S_Read_Start(I2S_2, &s_speechState.i2sReadParam, s_vpState.pVpInnerI2sCfg);
+ if (ret != DRV_SUCCESS)
+ {
+ zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "zDrvI2S2_Read_Start failed ret is %d .\n", ret);
+ return DRV_ERROR;
+ }
+
+ zOss_StartTimer(s_voiceTimerId, 20, voiceTimerCallBack, 0);
+ zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "vp_VoiceI2sStart VB zOss_StartTimer\n");
- ret = zDrvI2S_Write_Start(I2S_2, &s_speechState.i2sWriteParam, s_vpState.pVpInnerI2sCfg);
+ ret = zDrvI2S_Write_Start(I2S_2, &s_speechState.i2sWriteParam, s_vpState.pVpInnerI2sCfg);
- ret += zDrvI2S_GetBuf(I2S_2, &write_buf, &write_len);
- if (ret != DRV_SUCCESS)
- {
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "vp_VoiceI2sStart error7:zDrvI2S_GetBuf I2S_2 ret=%d", ret);
- return DRV_ERROR;
- }
- zOss_Memset(write_buf, 0, write_len);
- ret = zDrvI2S_Write(I2S_2, write_buf, write_len);
- if (ret != DRV_SUCCESS)
- {
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "vp_VoiceI2sStart error12:zDrvI2S_Write I2S_2 ret=%d", ret);
- }
-
- ret += zDrvI2S_GetBuf(I2S_2, &write_buf, &write_len);
- if (ret != DRV_SUCCESS)
- {
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "vp_VoiceI2sStart error13:zDrvI2S_GetBuf I2S_2 ret=%d", ret);
- return DRV_ERROR;
- }
- zOss_Memset(write_buf, 0, write_len);
- ret = zDrvI2S_Write(I2S_2, write_buf, write_len);
- if (ret != DRV_SUCCESS)
- {
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "vp_VoiceI2sStart error14:zDrvI2S_Write I2S_2 ret=%d", ret);
- }
+ ret += zDrvI2S_GetBuf(I2S_2, &write_buf, &write_len);
+ if (ret != DRV_SUCCESS)
+ {
+ zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "vp_VoiceI2sStart error7:zDrvI2S_GetBuf I2S_2 ret=%d", ret);
+ return DRV_ERROR;
+ }
+ zOss_Memset(write_buf, 0, write_len);
+ ret = zDrvI2S_Write(I2S_2, write_buf, write_len);
+ if (ret != DRV_SUCCESS)
+ {
+ zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "vp_VoiceI2sStart error12:zDrvI2S_Write I2S_2 ret=%d", ret);
+ }
+
+ ret += zDrvI2S_GetBuf(I2S_2, &write_buf, &write_len);
+ if (ret != DRV_SUCCESS)
+ {
+ zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "vp_VoiceI2sStart error13:zDrvI2S_GetBuf I2S_2 ret=%d", ret);
+ return DRV_ERROR;
+ }
+ zOss_Memset(write_buf, 0, write_len);
+ ret = zDrvI2S_Write(I2S_2, write_buf, write_len);
+ if (ret != DRV_SUCCESS)
+ {
+ zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "vp_VoiceI2sStart error14:zDrvI2S_Write I2S_2 ret=%d", ret);
+ }
#ifdef _VBUFF_IN_MULTI_CORE
- voice_buffer_write(s_speechState.pVpTempRxOutPutBuffer, s_speechState.totalFrameBufSize);
+ voice_buffer_write(s_speechState.pVpTempRxOutPutBuffer, s_speechState.totalFrameBufSize);
#else
- voicebuffer_dlqueue_write(s_speechState.pVpTempRxOutPutBuffer, s_speechState.totalFrameBufSize);
+ voicebuffer_dlqueue_write(s_speechState.pVpTempRxOutPutBuffer, s_speechState.totalFrameBufSize);
#endif
#else
- if (g_voiceVar.isUseSlicCodec == 1)
- {
+ if (g_voiceVar.isUseSlicCodec == 1)
+ {
- if (s_speechState.i2sIsRstFlag == FALSE)
+ if (s_speechState.i2sIsRstFlag == FALSE)
+ {
+ ret = zDrvExtAudio_Reset();
+ if (ret != DRV_SUCCESS)
{
- ret = zDrvExtAudio_Reset();
- if (ret != DRV_SUCCESS)
- {
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "vp_VoiceI2sStart zDrvExtAudio_Reset() err ret=%d ", ret);
- return DRV_ERROR;
- }
- s_speechState.i2sIsRstFlag = TRUE;
+ zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "vp_VoiceI2sStart zDrvExtAudio_Reset() err ret=%d ", ret);
+ return DRV_ERROR;
}
-
+ s_speechState.i2sIsRstFlag = TRUE;
}
- ret = zDrvI2S_Read_Start(I2S_2, &s_speechState.i2sReadParam, s_vpState.pVpInnerI2sCfg);
- if (ret != DRV_SUCCESS)
- {
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "zDrvI2S2_Read_Start failed ret is %d .\n", ret);
- return DRV_ERROR;
- }
+ }
- ret += zDrvExtAudio_Read_Start(&s_speechState.i2sReadParam, s_speechState.pVpI2sCfg, &s_vpTdmReadParam, s_vpState.pVpTdmCfg);
+ ret = zDrvI2S_Read_Start(I2S_2, &s_speechState.i2sReadParam, s_vpState.pVpInnerI2sCfg);
+ if (ret != DRV_SUCCESS)
+ {
+ zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "zDrvI2S2_Read_Start failed ret is %d .\n", ret);
+ return DRV_ERROR;
+ }
- if (ret != DRV_SUCCESS)
- {
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "zDrvI2S1_Read_Start failed ret is %d .\n", ret);
- zDrvI2S_Read_Stop(I2S_2);
- return DRV_ERROR;
- }
+ ret += zDrvExtAudio_Read_Start(&s_speechState.i2sReadParam, s_speechState.pVpI2sCfg, &s_vpTdmReadParam, s_vpState.pVpTdmCfg);
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "vp_VoiceI2sStart zDrvI2S_Read_Start ret=%d", ret);
+ if (ret != DRV_SUCCESS)
+ {
+ zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "zDrvI2S1_Read_Start failed ret is %d .\n", ret);
+ zDrvI2S_Read_Stop(I2S_2);
+ return DRV_ERROR;
+ }
- ret = zDrvI2S_Read(I2S_2, &read_buf, &read_len);
- if (ret != DRV_SUCCESS)
- {
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "vp_VoiceI2sStart error:zDrvI2S_Read I2S_2 ret=%d", ret);
- return DRV_ERROR;
- }
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "vp_VoiceI2sStart zDrvI2S_Read I2S_2 ret=%d", ret);
+ zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "vp_VoiceI2sStart zDrvI2S_Read_Start ret=%d", ret);
- ret = zDrvExtAudio_Read(&read_buf, &read_len);
- if (ret != DRV_SUCCESS)
- {
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "vp_VoiceI2sStart error:zDrvI2S_Read ret=%d", ret);
- return DRV_ERROR;
- }
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "vp_VoiceI2sStart zDrvI2S_Read I2S_1 ret=%d", ret);
+ ret = zDrvI2S_Read(I2S_2, &read_buf, &read_len);
+ if (ret != DRV_SUCCESS)
+ {
+ zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "vp_VoiceI2sStart error:zDrvI2S_Read I2S_2 ret=%d", ret);
+ return DRV_ERROR;
+ }
+ zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "vp_VoiceI2sStart zDrvI2S_Read I2S_2 ret=%d", ret);
- ret += zDrvExtAudio_Read_Stop();
- ret += zDrvI2S_Read_Stop(I2S_2);
- if (ret != DRV_SUCCESS)
- {
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "vp_VoiceI2sStart error:zDrvI2S_Read ret=%d", ret);
- return DRV_ERROR;
- }
+ ret = zDrvExtAudio_Read(&read_buf, &read_len);
+ if (ret != DRV_SUCCESS)
+ {
+ zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "vp_VoiceI2sStart error:zDrvI2S_Read ret=%d", ret);
+ return DRV_ERROR;
+ }
+ zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "vp_VoiceI2sStart zDrvI2S_Read I2S_1 ret=%d", ret);
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "vp_VoiceI2sStart first read/write stop ret=%d", ret);
+ ret += zDrvExtAudio_Read_Stop();
+ ret += zDrvI2S_Read_Stop(I2S_2);
+ if (ret != DRV_SUCCESS)
+ {
+ zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "vp_VoiceI2sStart error:zDrvI2S_Read ret=%d", ret);
+ return DRV_ERROR;
+ }
- ret += zDrvExtAudio_Read_Start(&s_speechState.i2sReadParam, s_speechState.pVpI2sCfg, &s_vpTdmReadParam, s_vpState.pVpTdmCfg);
+ zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "vp_VoiceI2sStart first read/write stop ret=%d", ret);
- ret += zDrvI2S_Read_Start(I2S_2, &s_speechState.i2sReadParam, s_vpState.pVpInnerI2sCfg);
+ ret += zDrvExtAudio_Read_Start(&s_speechState.i2sReadParam, s_speechState.pVpI2sCfg, &s_vpTdmReadParam, s_vpState.pVpTdmCfg);
- ret += zDrvExtAudio_Write_Start(&s_speechState.i2sWriteParam, s_speechState.pVpI2sCfg, &s_VpTdmWriteParam, s_vpState.pVpTdmCfg);
- if (ret != DRV_SUCCESS)
- {
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "vp_VoiceI2sStart error4:zDrvI2S_Write_Start ret=%d", ret);
- return DRV_ERROR;
- }
- ret += zDrvExtAudio_GetBuf(&write_buf, &write_len);
- if (ret != DRV_SUCCESS)
- {
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "vp_VoiceI2sStart error5:zDrvI2S_GetBuf ret=%d", ret);
- return DRV_ERROR;
- }
+ ret += zDrvI2S_Read_Start(I2S_2, &s_speechState.i2sReadParam, s_vpState.pVpInnerI2sCfg);
- zOss_Memset(write_buf, 0, write_len);
- ret += zDrvExtAudio_Write(write_buf, write_len);
- if (ret != DRV_SUCCESS)
- {
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "vp_VoiceI2sStart error6:zDrvI2S_Write ret=%d", ret);
- return DRV_ERROR;
- }
- ret = zDrvI2S_Write_Start(I2S_2, &s_speechState.i2sWriteParam, s_vpState.pVpInnerI2sCfg);
- ret += zDrvI2S_GetBuf(I2S_2, &write_buf, &write_len);
- if (ret != DRV_SUCCESS)
- {
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "vp_VoiceI2sStart error7:zDrvI2S_GetBuf I2S_2 ret=%d", ret);
- return DRV_ERROR;
- }
- zOss_Memset(write_buf, 0, write_len);
- ret = zDrvI2S_Write(I2S_2, write_buf, write_len);
- if (ret != DRV_SUCCESS)
- {
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "vp_VoiceI2sStart error8:zDrvI2S_Write I2S_2 ret=%d", ret);
- return DRV_ERROR;
- }
- ret += zDrvExtAudio_GetBuf(&write_buf, &write_len);
- if (ret != DRV_SUCCESS)
- {
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "vp_VoiceI2sStart error9:zDrvI2S_GetBuf ret=%d", ret);
- return DRV_ERROR;
- }
- zOss_Memset(write_buf, 0, write_len);
- ret += zDrvExtAudio_Write(write_buf, write_len);
- if (ret != DRV_SUCCESS)
- {
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "vp_VoiceI2sStart error10:zDrvI2S_Write ret=%d", ret);
- return DRV_ERROR;
- }
- ret += zDrvI2S_GetBuf(I2S_2, &write_buf, &write_len);
- if (ret != DRV_SUCCESS)
- {
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "vp_VoiceI2sStart error11:zDrvI2S_GetBuf I2S_2 ret=%d", ret);
- return DRV_ERROR;
- }
- zOss_Memset(write_buf, 0, write_len);
- ret = zDrvI2S_Write(I2S_2, write_buf, write_len);
- if (ret != DRV_SUCCESS)
- {
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "vp_VoiceI2sStart error12:zDrvI2S_Write I2S_2 ret=%d", ret);
- }
+ ret += zDrvExtAudio_Write_Start(&s_speechState.i2sWriteParam, s_speechState.pVpI2sCfg, &s_VpTdmWriteParam, s_vpState.pVpTdmCfg);
+ if (ret != DRV_SUCCESS)
+ {
+ zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "vp_VoiceI2sStart error4:zDrvI2S_Write_Start ret=%d", ret);
+ return DRV_ERROR;
+ }
+ ret += zDrvExtAudio_GetBuf(&write_buf, &write_len);
+ if (ret != DRV_SUCCESS)
+ {
+ zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "vp_VoiceI2sStart error5:zDrvI2S_GetBuf ret=%d", ret);
+ return DRV_ERROR;
+ }
+
+ zOss_Memset(write_buf, 0, write_len);
+ ret += zDrvExtAudio_Write(write_buf, write_len);
+ if (ret != DRV_SUCCESS)
+ {
+ zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "vp_VoiceI2sStart error6:zDrvI2S_Write ret=%d", ret);
+ return DRV_ERROR;
+ }
+ ret = zDrvI2S_Write_Start(I2S_2, &s_speechState.i2sWriteParam, s_vpState.pVpInnerI2sCfg);
+ ret += zDrvI2S_GetBuf(I2S_2, &write_buf, &write_len);
+ if (ret != DRV_SUCCESS)
+ {
+ zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "vp_VoiceI2sStart error7:zDrvI2S_GetBuf I2S_2 ret=%d", ret);
+ return DRV_ERROR;
+ }
+ zOss_Memset(write_buf, 0, write_len);
+ ret = zDrvI2S_Write(I2S_2, write_buf, write_len);
+ if (ret != DRV_SUCCESS)
+ {
+ zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "vp_VoiceI2sStart error8:zDrvI2S_Write I2S_2 ret=%d", ret);
+ return DRV_ERROR;
+ }
+ ret += zDrvExtAudio_GetBuf(&write_buf, &write_len);
+ if (ret != DRV_SUCCESS)
+ {
+ zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "vp_VoiceI2sStart error9:zDrvI2S_GetBuf ret=%d", ret);
+ return DRV_ERROR;
+ }
+ zOss_Memset(write_buf, 0, write_len);
+ ret += zDrvExtAudio_Write(write_buf, write_len);
+ if (ret != DRV_SUCCESS)
+ {
+ zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "vp_VoiceI2sStart error10:zDrvI2S_Write ret=%d", ret);
+ return DRV_ERROR;
+ }
+ ret += zDrvI2S_GetBuf(I2S_2, &write_buf, &write_len);
+ if (ret != DRV_SUCCESS)
+ {
+ zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "vp_VoiceI2sStart error11:zDrvI2S_GetBuf I2S_2 ret=%d", ret);
+ return DRV_ERROR;
+ }
+ zOss_Memset(write_buf, 0, write_len);
+ ret = zDrvI2S_Write(I2S_2, write_buf, write_len);
+ if (ret != DRV_SUCCESS)
+ {
+ zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "vp_VoiceI2sStart error12:zDrvI2S_Write I2S_2 ret=%d", ret);
+ }
#endif
- }
#ifdef ECALL_SUPPORT
if((g_voiceVar.audio_ctrlFlag.isUseEcall == 1)&&(e_reg_flag == 1))
{
@@ -2834,27 +2657,18 @@
zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "zDrvVp_VoiceWorkStop call voice_ToneMixerStop !\n");
g_voiceVar.vpI2sStatus = VP_I2S_OPEN;
-
-
-
- if (g_voiceVar.useVoiceBuffer == 1)
- {
- ret = zDrvVp_VoiceWorkStop_Vbuffer();
- }
- else
- {
#ifdef CONFIG_VOICE_BUFFER_DRV
- //complete_all(&s_voice_completion);
- zOss_PutSemaphore(s_voiceRdSema);
- zOss_PutSemaphore(s_voiceWrSema);
- zOss_StopTimer(s_voiceTimerId);
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "zDrvVp_VoiceWorkStop zOss_StopTimer\n");
+ //complete_all(&s_voice_completion);
+ zOss_PutSemaphore(s_voiceRdSema);
+ zOss_PutSemaphore(s_voiceWrSema);
+ zOss_StopTimer(s_voiceTimerId);
+ zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "zDrvVp_VoiceWorkStop zOss_StopTimer\n");
#else
- //zDrvI2s_RxRlsSemaBeforeStop(I2S_1);
- //zDrvI2s_TxRlsSemaBeforeStop(I2S_1);
- zDrvExtAudio_RlsAllSemaBeforeStop();
+ //zDrvI2s_RxRlsSemaBeforeStop(I2S_1);
+ //zDrvI2s_TxRlsSemaBeforeStop(I2S_1);
+ zDrvExtAudio_RlsAllSemaBeforeStop();
#endif
- }
+
zDrvI2s_RxRlsSemaBeforeStop(I2S_2);
zDrvI2s_TxRlsSemaBeforeStop(I2S_2);
@@ -2922,19 +2736,10 @@
}
g_voiceVar.vpI2sStatus = VP_I2S_INUSE;
-
-
- if (g_voiceVar.useVoiceBuffer == 1)
- {
- ret = vp_VolteReadStart_Vbuffer();
- }
- else
- {
#ifdef CONFIG_VOICE_BUFFER_DRV
- zOss_StartTimer(s_voiceTimerId, 20, voiceTimerCallBack, 0);
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "vp_VolteReadStart zOss_StartTimer start\n");
-#endif
- }
+ zOss_StartTimer(s_voiceTimerId, 20, voiceTimerCallBack, 0);
+ zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "vp_VolteReadStart zOss_StartTimer start\n");
+#endif
zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "vp_VolteReadStart \n");
return DRV_SUCCESS;
@@ -2943,15 +2748,6 @@
SINT32 vp_VolteReadStop(VOID)
{
SINT32 ret = DRV_SUCCESS;
-
-
- if (g_voiceVar.useVoiceBuffer == 1)
- {
- ret = vp_VolteReadStop_Vbuffer();
- return ret;
- }
-
-
#ifdef CONFIG_VOICE_BUFFER_DRV
zOss_PutSemaphore(s_voiceRdSema);
#else
@@ -3048,54 +2844,46 @@
}
g_voiceVar.vpI2sStatus = VP_I2S_INUSE;
-
- if (g_voiceVar.useVoiceBuffer == 1)
- {
- vp_VolteWriteStart_Vbuffer();
- }
- else
- {
#ifdef CONFIG_VOICE_BUFFER_DRV
#ifdef _VBUFF_IN_MULTI_CORE
- voice_buffer_write(s_speechState.pVpTempRxOutPutBuffer, s_speechState.totalFrameBufSize);
+ voice_buffer_write(s_speechState.pVpTempRxOutPutBuffer, s_speechState.totalFrameBufSize);
#else
- voicebuffer_dlqueue_write(s_speechState.pVpTempRxOutPutBuffer, s_speechState.totalFrameBufSize);
+ voicebuffer_dlqueue_write(s_speechState.pVpTempRxOutPutBuffer, s_speechState.totalFrameBufSize);
#endif
#else
- ret = zDrvExtAudio_GetBuf(&write_buf, &write_len);
- if (ret != DRV_SUCCESS)
- {
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "vp_VolteWriteStart error1:zDrvI2S_GetBuf I2S_1 ret=%d", ret);
- zDrvExtAudio_Write_Stop();
- return DRV_ERROR;
- }
- zOss_Memset(write_buf, 0, write_len);
- ret = zDrvExtAudio_Write(write_buf, write_len);
- if (ret != DRV_SUCCESS)
- {
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "vp_VolteWriteStart error2:zDrvI2S_Write I2S_1 ret=%d", ret);
- zDrvExtAudio_Write_Stop();
- return DRV_ERROR;
- }
- ret = zDrvExtAudio_GetBuf(&write_buf, &write_len);
- if (ret != DRV_SUCCESS)
- {
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "vp_VolteWriteStart error3:zDrvI2S_GetBuf I2S_1 ret=%d", ret);
- zDrvExtAudio_Write_Stop();
- return DRV_ERROR;
- }
- zOss_Memset(write_buf, 0, write_len);
- ret = zDrvExtAudio_Write(write_buf, write_len);
- if (ret != DRV_SUCCESS)
- {
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "vp_VolteWriteStart error4:zDrvI2S_Write I2S_1 ret=%d", ret);
- zDrvExtAudio_Write_Stop();
- return DRV_ERROR;
- }
-#endif
+ ret = zDrvExtAudio_GetBuf(&write_buf, &write_len);
+ if (ret != DRV_SUCCESS)
+ {
+ zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "vp_VolteWriteStart error1:zDrvI2S_GetBuf I2S_1 ret=%d", ret);
+ zDrvExtAudio_Write_Stop();
+ return DRV_ERROR;
}
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "vp_VolteWriteStart end\n");
+ zOss_Memset(write_buf, 0, write_len);
+ ret = zDrvExtAudio_Write(write_buf, write_len);
+ if (ret != DRV_SUCCESS)
+ {
+ zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "vp_VolteWriteStart error2:zDrvI2S_Write I2S_1 ret=%d", ret);
+ zDrvExtAudio_Write_Stop();
+ return DRV_ERROR;
+ }
+ ret = zDrvExtAudio_GetBuf(&write_buf, &write_len);
+ if (ret != DRV_SUCCESS)
+ {
+ zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "vp_VolteWriteStart error3:zDrvI2S_GetBuf I2S_1 ret=%d", ret);
+ zDrvExtAudio_Write_Stop();
+ return DRV_ERROR;
+ }
+ zOss_Memset(write_buf, 0, write_len);
+ ret = zDrvExtAudio_Write(write_buf, write_len);
+ if (ret != DRV_SUCCESS)
+ {
+ zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "vp_VolteWriteStart error4:zDrvI2S_Write I2S_1 ret=%d", ret);
+ zDrvExtAudio_Write_Stop();
+ return DRV_ERROR;
+ }
+#endif
+ zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "vp_VolteWriteStart \n");
return DRV_SUCCESS;
}
@@ -3103,13 +2891,6 @@
SINT32 vp_VolteWriteStop(VOID)
{
SINT32 ret = DRV_SUCCESS;
- if (g_voiceVar.useVoiceBuffer == 1)
- {
- ret = vp_VolteWriteStop_Vbuffer();
- return ret;
- }
-
-
#ifdef CONFIG_VOICE_BUFFER_DRV
//complete_all(&s_voice_completion);
@@ -3180,11 +2961,6 @@
//UINT8 *pVoiceTempBuf = s_voiceTempBuffer;
#endif
- if (g_voiceVar.useVoiceBuffer == 1)
- {
- ret = vp_WriteDataToCodec_Vbuffer(pBuf, count);
- return ret;
- }
if (pBuf == NULL)
@@ -3509,14 +3285,6 @@
UINT8 *ptemp8bit = NULL;
#endif
- if (g_voiceVar.useVoiceBuffer == 1)
- {
- ret = vp_ReadDataFromCodec_Vbuffer(pBuf, count);
- return ret;
- }
-
-
-
if (pBuf == NULL)
{
return DRV_ERR_INVALID_PARAM;
@@ -3545,8 +3313,6 @@
// wait_for_completion_timeout(&s_voice_completion, 60);
zOss_GetSemaphore(s_voiceRdSema, 60);
#ifdef _VBUFF_IN_MULTI_CORE
-
-
voice_buffer_read(s_speechState.pVpTempTxInBuffer, s_speechState.totalFrameBufSize);
#else
@@ -4145,14 +3911,11 @@
SINT32 vp_CreateThreadSemaph(VOID)
{
- SINT32 ret = 0;
-
s_vpState.vpSemaphore = zOss_CreateSemaphore("VpI2sReadWriteSemaphore", 0);
#ifdef _USE_WEBRTC_AUD
s_vpState.vpThread = zOss_CreateThread("vp_DataProcessThreadEntry", vp_DataProcessThreadEntry, 0, 8192, 15, 0, 1);
#else
- //s_vpState.vpThread = zOss_CreateThread("vp_DataProcessThreadEntry", vp_DataProcessThreadEntry, 0, 1024, 15, 0, 1);
- s_vpState.vpThread = zOss_CreateThread("vp_DataProcessThreadEntry", vp_DataProcessThreadEntry, 0, 8192, 15, 0, 1);
+ s_vpState.vpThread = zOss_CreateThread("vp_DataProcessThreadEntry", vp_DataProcessThreadEntry, 0, 1024, 15, 0, 1);
#endif
#ifdef _OS_TOS
@@ -4174,9 +3937,6 @@
zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "create vp Thread sem err s_vpState.vpThread=%p,s_vpState.vpSemaphore=%p !\r\n", s_vpState.vpThread, s_vpState.vpSemaphore);
return DRV_ERROR;
}
-
-
-
#ifdef CONFIG_VOICE_BUFFER_DRV
// init_completion(&s_voice_completion);
s_voiceRdSema = zOss_CreateSemaphore("voice_rx_sem", 0);
@@ -4199,57 +3959,50 @@
return DRV_ERROR;
}
#ifdef _VBUFF_IN_MULTI_CORE
- //SINT32 ret = 0;
+ SINT32 ret = 0;
- //ret = zDrvRpMsg_CreateChannel(IPC_MSG_ACTOR_A9,channel_41,0x10);
- ret = zDrvRpMsg_CreateChannel_Cap(RPMSG_CAP_ID,channel_41,0x10);
+ //ret = zDrvRpMsg_CreateChannel(IPC_MSG_ACTOR_A9,channel_41,0x10);
+ ret = zDrvRpMsg_CreateChannel_Cap(RPMSG_CAP_ID,channel_41,0x10);
- if(DRV_SUCCESS != ret) {
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "create rpmsg err(%d) \n",ret);
- return DRV_ERROR;
- }
-
- volatile T_ZDrvRpMsg_Msg icp_pMsg = {0};
- volatile unsigned int rpMsgBuf[2] = {0,0};
- //printk( "vir_buf1:0x%x, vir_buf2:0x%x, phy_buf1:0x%x, phy_buf2:0x%x,\n",voice_buff[0],voice_buff[1],rpMsgBuf[0],rpMsgBuf[1]);
- icp_pMsg.actorID = RPMSG_CAP_ID;
- icp_pMsg.chID = channel_41;
- icp_pMsg.flag &= ~RPMSG_READ_POLL;
- icp_pMsg.buf = rpMsgBuf;
- icp_pMsg.len = 8;
- ret = zDrvRpMsg_Read_Cap(&icp_pMsg);
- if(ret <= 0){
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "voice buffer rpmsg addr read fail,ret=%d \n",ret);
- zOss_Printf(SUBMDL_HAL, PRINT_LEVEL_NORMAL, "ps voice buffer rpmsg addr read fail,ret=%d \n",ret);
+ if(DRV_SUCCESS != ret) {
+ zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "create rpmsg err(%d) \n",ret);
+ return DRV_ERROR;
+ }
+ volatile T_ZDrvRpMsg_Msg icp_pMsg = {0};
+ volatile unsigned int rpMsgBuf[2] = {0,0};
+ //printk( "vir_buf1:0x%x, vir_buf2:0x%x, phy_buf1:0x%x, phy_buf2:0x%x,\n",voice_buff[0],voice_buff[1],rpMsgBuf[0],rpMsgBuf[1]);
+ icp_pMsg.actorID = RPMSG_CAP_ID;
+ icp_pMsg.chID = channel_41;
+ icp_pMsg.flag &= ~RPMSG_READ_POLL;
+ icp_pMsg.buf = rpMsgBuf;
+ icp_pMsg.len = 8;
+ ret = zDrvRpMsg_Read_Cap(&icp_pMsg);
+ if(ret <= 0){
+ zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "voice buffer rpmsg addr read fail,ret=%d \n",ret);
+ zOss_Printf(SUBMDL_HAL, PRINT_LEVEL_NORMAL, "ps voice buffer rpmsg addr read fail,ret=%d \n",ret);
+
- }
- else{
- #if 0
+ }
+ else{
+ #if 0
- voice_buff[UP_LINK] = (struct voice_ring_buffer *)(rpMsgBuf[0]);
- voice_buff[DOWN_LINK] = (struct voice_ring_buffer *)(rpMsgBuf[1]);
- #else
+ voice_buff[UP_LINK] = (struct voice_ring_buffer *)(rpMsgBuf[0]);
+ voice_buff[DOWN_LINK] = (struct voice_ring_buffer *)(rpMsgBuf[1]);
+ #else
- voice_buff[UP_LINK] = (struct voice_ring_buffer *)ioremap_wc(rpMsgBuf[0], (sizeof(struct voice_ring_buffer) + MAX_BUF_SIZE*MAX_BUF_NUM));
- voice_buff[DOWN_LINK] = (struct voice_ring_buffer *)ioremap_wc(rpMsgBuf[1],(sizeof(struct voice_ring_buffer) + MAX_BUF_SIZE*MAX_BUF_NUM));
- #endif
-
- zOss_Printf(SUBMDL_HAL, PRINT_LEVEL_NORMAL, "ps rpmsg voice buffer addr,up vir buf=0x%x, down vir buf=0x%x ,up phy buf=0x%x, down phy buf=0x%x,size=%d \n" \
- ,voice_buff[0],voice_buff[1],rpMsgBuf[0],rpMsgBuf[1],(sizeof(struct voice_ring_buffer) + MAX_BUF_SIZE*MAX_BUF_NUM));
- zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "voice buffer addr,up vir buf=0x%x, down vir buf=0x%x ,up phy buf=0x%x, down phy buf=0x%x,size=%d \n" \
+ voice_buff[UP_LINK] = (struct voice_ring_buffer *)ioremap_wc(rpMsgBuf[0], (sizeof(struct voice_ring_buffer) + MAX_BUF_SIZE*MAX_BUF_NUM));
+ voice_buff[DOWN_LINK] = (struct voice_ring_buffer *)ioremap_wc(rpMsgBuf[1],(sizeof(struct voice_ring_buffer) + MAX_BUF_SIZE*MAX_BUF_NUM));
+ #endif
+
+ zOss_Printf(SUBMDL_HAL, PRINT_LEVEL_NORMAL, "ps rpmsg voice buffer addr,up vir buf=0x%x, down vir buf=0x%x ,up phy buf=0x%x, down phy buf=0x%x,size=%d \n" \
,voice_buff[0],voice_buff[1],rpMsgBuf[0],rpMsgBuf[1],(sizeof(struct voice_ring_buffer) + MAX_BUF_SIZE*MAX_BUF_NUM));
- }
+ zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "voice buffer addr,up vir buf=0x%x, down vir buf=0x%x ,up phy buf=0x%x, down phy buf=0x%x,size=%d \n" \
+ ,voice_buff[0],voice_buff[1],rpMsgBuf[0],rpMsgBuf[1],(sizeof(struct voice_ring_buffer) + MAX_BUF_SIZE*MAX_BUF_NUM));
+ }
#endif
-
-#else
- //flag ctrl voicebuffer func
- vp_CreateThreadSemaph_Vbuffer();
-
-
#endif
-
-
+
zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "vp_CreateThreadSemaph success. \r\n");
return DRV_SUCCESS;
}
diff --git a/Uboot/cp/ps/modem/com/src/appstart/inc/version_number.h b/Uboot/cp/ps/modem/com/src/appstart/inc/version_number.h
index 28fa775..072f131 100755
--- a/Uboot/cp/ps/modem/com/src/appstart/inc/version_number.h
+++ b/Uboot/cp/ps/modem/com/src/appstart/inc/version_number.h
@@ -1,9 +1,9 @@
#if defined _CHIP_ZX297520
-#define VERSION_NUMBER "7520SCV2.01.01.02P56U08"
+#define VERSION_NUMBER "7520SCV2.01.01.02P56U06"
#endif
#if defined _CHIP_ZX297520V2
-#define VERSION_NUMBER "7520V2SCV2.01.01.02P56U08"
+#define VERSION_NUMBER "7520V2SCV2.01.01.02P56U06"
#endif
#if defined _CHIP_ZX297520V3
-#define VERSION_NUMBER "7520V3SCV2.01.01.02P56U08"
+#define VERSION_NUMBER "7520V3SCV2.01.01.02P56U06"
#endif
diff --git a/Uboot/cp/ps/modem/ps/inc/apuiccint.h b/Uboot/cp/ps/modem/ps/inc/apuiccint.h
index 6d07534..57d364f 100755
--- a/Uboot/cp/ps/modem/ps/inc/apuiccint.h
+++ b/Uboot/cp/ps/modem/ps/inc/apuiccint.h
@@ -1614,11 +1614,6 @@
#define Z_APUICC_EID_LEN (BYTE)10
-#define Z_UICC_CARD_READY (BYTE)0
-#define Z_UICC_CARD_PWROFF (BYTE)1
-#define Z_UICC_CARD_REMOVE (BYTE)2
-#define Z_UICC_CARD_ERROR (BYTE)3
-
/**************************************************************************
* È«¾ÖÊý¾ÝÀàÐͶ¨Òå *
**************************************************************************/
diff --git a/Uboot/cp/ps/modem/ps/inc/atipscom.h b/Uboot/cp/ps/modem/ps/inc/atipscom.h
index 19bf907..72560ba 100755
--- a/Uboot/cp/ps/modem/ps/inc/atipscom.h
+++ b/Uboot/cp/ps/modem/ps/inc/atipscom.h
@@ -429,15 +429,6 @@
#define Z_DEV_NV_RAT_VERSION_GSM_PRIORITY (BYTE)3
#define Z_DEV_NV_RAT_VERSION_DEFAULT (BYTE)4
-/*************************CEER¼Ç¼ģ¿éÃû*******************/
-#define Z_CEER_MM_ID (BYTE)0
-#define Z_CEER_SM_ID (BYTE)1
-#define Z_CEER_UICCMNG_ID (BYTE)2
-#define Z_CEER_ATI_ID (BYTE)3
-#define Z_CEER_CC_ID (BYTE)4
-#define Z_CEER_SMS_ID (BYTE)5
-#define Z_CEER_SS_ID (BYTE)6
-
/*V2-V3Ãû×Ö¼æÈÝend*/
#define Z_SUBMDL_NUM (BYTE)((SUBMDL_PSEND - SUBMDL_PSBASE) + 1)
diff --git a/Uboot/cp/ps/modem/ps/inc/atipsint.h b/Uboot/cp/ps/modem/ps/inc/atipsint.h
index 90aac9e..5a79eba 100755
--- a/Uboot/cp/ps/modem/ps/inc/atipsint.h
+++ b/Uboot/cp/ps/modem/ps/inc/atipsint.h
@@ -258,14 +258,8 @@
#define Z_ATIUMM_MsgNormalWithNewCell_Err (BYTE)180 //retry upon entry into a new cell
#define Z_ATIUMM_UeSecurityCapaMismatch (BYTE)181 //UE security capabilities mismatch
#define Z_ATIUMM_Securitymoderejected (BYTE)182 //Security mode rejected, unspecified
-#define Z_ATIUMM_TemperatureStart (BYTE)183 //οؿªÊ¼
-#define Z_ATIUMM_TemperatureStop (BYTE)184 //οؽáÊø
-#define Z_ATIUMM_GsmRfOnFail (BYTE)190 //GSM¿ªÉäÆµÊ§°Ü
-#define Z_ATIUMM_GsmRfOffFail (BYTE)191 //GSM¹ØÉäÆµÊ§°Ü
-#define Z_ATIUMM_WRfOnFail (BYTE)192 //W¿ªÉäÆµÊ§°Ü
-#define Z_ATIUMM_WRfOffFail (BYTE)193 //W¹ØÉäÆµÊ§°Ü
-#define Z_ATIUMM_LteRfOnFail (BYTE)194 //LTE¿ªÉäÆµÊ§°Ü
-#define Z_ATIUMM_LteRfOffFail (BYTE)195 //LTE¹ØÉäÆµÊ§°Ü
+#define Z_ATIUMM_TemperatureStart (BYTE)183 //οؿªÊ¼
+#define Z_ATIUMM_TemperatureStop (BYTE)184 //οؽáÊø
/*============MMÄ£¿éCEER´íÎóÂë=============================== */
#define Z_ATIMM_ImsiUnknownInHlr (BYTE)2 //IMSI unknown in HLR
@@ -321,17 +315,7 @@
#define Z_ATIMM_MsgNotCompatProtocolState (BYTE)101 //Message not compatible with protocol state
#define Z_ATIMM_ProtocolError (BYTE)111 //Protocol error, unspecified
-#define Z_ATIMM_UnspecifiedFail (BYTE)120 //Unspecified Failure
-#define Z_ATIMM_RrcFailUnspecifiedFail (BYTE)121 //RRCÁ´Â·Ê§°Ü£¬·ÇÌØÊâÔÒò
-
-#define Z_ATIMM_T3210Exipre (BYTE)123 //3210³¬Ê±
-#define Z_ATIMM_T3213Exipre (BYTE)123 //3213³¬Ê±
-#define Z_ATIMM_T3214_16Exipre (BYTE)124 //3214/3216³¬Ê±
-#define Z_ATIMM_T3220Exipre (BYTE)125 //3220³¬Ê±
-#define Z_ATIMM_T3230Exipre (BYTE)126 //3230³¬Ê±
-#define Z_ATIMM_T3225Exipre (BYTE)127 //3225³¬Ê±
-#define Z_ATIMM_T3231Exipre (BYTE)128 //3231³¬Ê±
-#define Z_ATIMM_TwpgrExipre (BYTE)129 //Twpgr³¬Ê±
+#define Z_ATIMM_UnspecifiedFail (BYTE)120 //Unspecified Failure
/*================ Ë«¿¨Ë«´ýÅжÏÁ½ÕÅ¿¨ÊÇ·ñÐèÒª½»»»===============================*/
#define Z_NO_NEED_CHANGE (BYTE)0
@@ -9056,8 +9040,5 @@
extern int get_cid_state(unsigned char cid);
extern BYTE zAti_GetS0Value(VOID);
extern DWORD zAti_GetUlRateIndTimerVal(BYTE bInsIdx);
-
-extern VOID zAs_AddNasTraceInfo(BYTE bRat, WORD bCeer, BYTE ModeId, BYTE bDomain);
-
#endif
diff --git a/Uboot/cp/ps/modem/ps/src/nas/ati/src/zati_fnc.c b/Uboot/cp/ps/modem/ps/src/nas/ati/src/zati_fnc.c
index 55236e0..ab3a03f 100755
--- a/Uboot/cp/ps/modem/ps/src/nas/ati/src/zati_fnc.c
+++ b/Uboot/cp/ps/modem/ps/src/nas/ati/src/zati_fnc.c
@@ -3152,17 +3152,6 @@
}
/**************************************************************************
-*º¯ÊýÃû³Æ:zAt_AddAtiTraceInfo
-*º¯Êý¹¦ÄÜ:ͨµÀ¶ÂÈûÐÅÏ¢¼ÓÈëά²âÐÅÏ¢
-**************************************************************************/
-VOID zAt_AddAtiTraceInfo(WORD wCmdId, BYTE bChnelID)
-{
- BYTE bCurAct = zAti_GetCurAct_ByIndex(g_zAti_CurInstance);
-
- zAs_AddNasTraceInfo(bCurAct, wCmdId, Z_CEER_ATI_ID, bChnelID);
-}
-
-/**************************************************************************
* º¯ÊýÃû³Æ : zAti_ProcessCmd
* ¹¦ÄÜÃèÊö : ´¦ÀíÉϲ㷢À´µÄÃüÁî
* ²ÎÊý˵Ã÷£º (IN)£º
@@ -3189,10 +3178,6 @@
if ( ZAT2_NO_COMMAND != pChnelNode->cmd_id && ZAT2_CO_INVALID != pChnelNode->cmd_op)
{
- CHAR abStr[30] = {0};
- sprintf(abStr, "Conflict Cmd id=%d\n", pChnelNode->cmd_id);
- zAti_SendExpt2TraceAgt(ERR_InvalidMsg, TRACE_ERR_LEVEL_NORMAL, abStr);
- zAt_AddAtiTraceInfo(pChnelNode->cmd_id, pChnelNode->iChnelId);
zAti_ProcChnelConflict(pChnelNode);
return;
}
diff --git a/Uboot/cp/ps/plat/inc/oss/oss_sup.h b/Uboot/cp/ps/plat/inc/oss/oss_sup.h
index 313ccd4..686c318 100755
--- a/Uboot/cp/ps/plat/inc/oss/oss_sup.h
+++ b/Uboot/cp/ps/plat/inc/oss/oss_sup.h
@@ -462,7 +462,7 @@
VOID zOss_RamPrintf(VOID);
/* ά²â */
-UINT32 zOss_DebugInfoRecord(char *id, const VOID *pFormat, ...);
+UINT32 zOss_DebugInfoRecord(UINT32 id, const VOID *pFormat, ...);
/* shellÄ£¿é */
UINT32 zOss_AddShellCmd(const CHAR *cmd_name, const Shell_Func func, const CHAR *description);
diff --git a/Uboot/cp/ps/plat/src/oss/sup/src/sup_except.c b/Uboot/cp/ps/plat/src/oss/sup/src/sup_except.c
index 8c87a48..fd355b2 100755
--- a/Uboot/cp/ps/plat/src/oss/sup/src/sup_except.c
+++ b/Uboot/cp/ps/plat/src/oss/sup/src/sup_except.c
@@ -371,7 +371,7 @@
* ·µ »Ø Öµ£º ³É¹¦: дÈ볤¶È; ʧ°Ü: ZOSS_ERROR
* ÆäËü˵Ã÷£º
**************************************************************************/
-UINT32 zOss_DebugInfoRecord(char *id, const VOID *pFormat, ...)
+UINT32 zOss_DebugInfoRecord(UINT32 id, const VOID *pFormat, ...)
{
#ifdef _OS_WIN
return ZOSS_ERROR;
@@ -387,7 +387,7 @@
#endif
}
#else
-UINT32 zOss_DebugInfoRecord(char *id, const VOID *pFormat, ...)
+UINT32 zOss_DebugInfoRecord(UINT32 id, const VOID *pFormat, ...)
{
return ZOSS_SUCCESS;
}
diff --git a/Uboot/pub/include/infra/pub_debug_info.h b/Uboot/pub/include/infra/pub_debug_info.h
index 95a480f..10357aa 100755
--- a/Uboot/pub/include/infra/pub_debug_info.h
+++ b/Uboot/pub/include/infra/pub_debug_info.h
@@ -6,43 +6,62 @@
#define DEBUG_INFO_DEV_PATH "/dev/debug_info"
/* AP²àºÍCAP²àµÄPS\KERNEL\DRIVER\FS\APP ÒÔSTART~ENDÎªÇø¼ä£¬¸÷²¿·ÖÔ¤ÁôÁË100¸öID */
+#define MODULE_ID_PS_START (1)
+#define MODULE_ID_PS_NAS (1)
+#define MODULE_ID_PS_RRC (2)
+#define MODULE_ID_PS_L2 (3)
+#define MODULE_ID_PS_UICC (99)
+#define MODULE_ID_PS_END (100)
-#define MODULE_ID_PS_NAS ("ps_nas")
-#define MODULE_ID_PS_RRC ("ps_rrc")
-#define MODULE_ID_PS_L2 ("ps_l2")
-#define MODULE_ID_PS_UICC ("ps_uicc")
-#define MODULE_ID_AP_USB ("ap_usb")
-#define MODULE_ID_AP_REBOOT ("ap_reboot")
-#define MODULE_ID_AP_TSC ("ap_tsc")
-#define MODULE_ID_AP_PSM ("ap_psm")
-#define MODULE_ID_AP_NAND ("ap_nand")
-#define MODULE_ID_AP_MMC ("ap_mmc")
-#define MODULE_ID_AP_WIFI ("ap_wifi")
+#define MODULE_ID_AP_KERNEL_START (101)
+#define MODULE_ID_AP_KERNEL_END (200)
+#define MODULE_ID_CAP_KERNEL_START (201)
+#define MODULE_ID_CAP_KERNEL_END (300)
-#define MODULE_ID_CAP_USB ("cap_usb")
-#define MODULE_ID_CAP_TSC ("cap_tsc")
-#define MODULE_ID_CAP_PSM ("cap_psm")
-#define MODULE_ID_CAP_NAND ("cap_nand")
-#define MODULE_ID_CAP_SPI ("cap_spi")
-#define MODULE_ID_CAP_MMC ("cap_mmc")
-#define MODULE_ID_CAP_UART ("cap_uart")
-#define MODULE_ID_CAP_PM ("cap_pm")
+#define MODULE_ID_AP_DRIVES_START (301)
+#define MODULE_ID_AP_USB (301)
+#define MODULE_ID_AP_REBOOT (302)
+#define MODULE_ID_AP_TSC (303)
+#define MODULE_ID_AP_PSM (304)
+#define MODULE_ID_AP_NAND (305)
+#define MODULE_ID_AP_MMC (306)
+#define MODULE_ID_AP_WIFI (307)
+#define MODULE_ID_AP_DRIVES_END (400)
+#define MODULE_ID_CAP_DRIVES_START (401)
+#define MODULE_ID_CAP_USB (401)
+#define MODULE_ID_CAP_TSC (402)
+#define MODULE_ID_CAP_PSM (403)
+#define MODULE_ID_CAP_NAND (404)
+#define MODULE_ID_CAP_SPI (405)
+#define MODULE_ID_CAP_MMC (406)
+#define MODULE_ID_CAP_UART (407)
+#define MODULE_ID_CAP_DRIVES_END (500)
-#define MODULE_ID_AP_JFFS2 ("ap_jffs2")
-#define MODULE_ID_AP_FOTA ("ap_fota")
-#define MODULE_ID_AP_FS_CHECK ("ap_fs_check")
+#define MODULE_ID_AP_FS_START (501)
+#define MODULE_ID_AP_JFFS2 (501)
+#define MODULE_ID_AP_FS_END (600)
-#define MODULE_ID_CAP_FOTA ("cap_fota")
-#define MODULE_ID_CAP_FS_CHECK ("cap_fs_check")
-
-#if defined(_USE_ZXIC_DEBUG_INFO)
-int sc_debug_info_vrecord(char *id, const char *format, va_list args);
-int sc_debug_info_record(char *id, const char *format, ...);
+#define MODULE_ID_CAP_FS_START (601)
+#define MODULE_ID_CAP_FS_END (700)
+
+#define MODULE_ID_AP_APP_START (701)
+#define MODULE_ID_AP_FOTA (701)
+#define MODULE_ID_AP_FS_CHECK (702)
+#define MODULE_ID_AP_APP_END (800)
+
+#define MODULE_ID_CAP_APP_START (801)
+#define MODULE_ID_CAP_FOTA (801)
+#define MODULE_ID_CAP_FS_CHECK (802)
+#define MODULE_ID_CAP_APP_END (900)
+
+#if defined(_USE_ZXIC_DEBUG_INFO) && !defined(CONFIG_SYSTEM_RECOVERY)
+int sc_debug_info_vrecord(unsigned int id, const char *format, va_list args);
+int sc_debug_info_record(unsigned int id, const char *format, ...);
#else
-static inline int sc_debug_info_vrecord(char *id, const char *format, va_list args) { return 0; }
-static inline int sc_debug_info_record(char *id, const char *format, ...) { return 0; }
+static inline int sc_debug_info_vrecord(unsigned int id, const char *format, va_list args) { return 0; }
+static inline int sc_debug_info_record(unsigned int id, const char *format, ...) { return 0; }
#endif
#endif
\ No newline at end of file
diff --git a/Uboot/pub/project/zx297520v3/include/drv/NvParam_drv.h b/Uboot/pub/project/zx297520v3/include/drv/NvParam_drv.h
index 95c3158..66c6f6d 100755
--- a/Uboot/pub/project/zx297520v3/include/drv/NvParam_drv.h
+++ b/Uboot/pub/project/zx297520v3/include/drv/NvParam_drv.h
@@ -214,10 +214,8 @@
UINT8 isUseTxDtmfDet;
UINT8 isUseRxMixData;
UINT8 isUseTxMixData;//12
- UINT8 isUseEcall; //13
- UINT8 isUseVoiceBuffer; //14 0 not use,1 use
- UINT8 selVoiceBufferType; //15 0 single core, 1 dual core
- UINT8 reserved[17];//32-15
+ UINT8 isUseEcall;
+ UINT8 reserved[19];//32-13
} T_Audio_NvFlag;
diff --git a/Uboot/pub/project/zx297520v3/include/infra/ram_base_config_7520v3.h b/Uboot/pub/project/zx297520v3/include/infra/ram_base_config_7520v3.h
index edb3bfb..6a1626d 100755
--- a/Uboot/pub/project/zx297520v3/include/infra/ram_base_config_7520v3.h
+++ b/Uboot/pub/project/zx297520v3/include/infra/ram_base_config_7520v3.h
@@ -163,7 +163,7 @@
#define DDR_BASE_OFF_CAP (DDR_BASE_OFF_CAP_BUF + DDR_BASE_LEN_CAP_BUF)
/* capºËµÄdtbµØÖ·¹©ubootºËcap kernelʹÓà */
-#define DDR_BASE_CAP_DTB_ADDR (DDR_BASE_ADDR_CAP_BUF + (0x00194000UL>>CPU_SHIFT))
+#define DDR_BASE_CAP_DTB_ADDR (DDR_BASE_ADDR_CAP_BUF + (0x00100000UL>>CPU_SHIFT))
#else
/* 42.75M£¬AP¹²ºË°æ±¾(´Ë´óСÊǰ´ÕÕº¬CAPºËµÄ64MÄÚ´æÅäÖö¨Ò壬¸Ãºê±ð´¦²»»á±»Ê¹ÓÃ) */
#define DDR_BASE_ADDR_AP (DDR_BASE_ADDR_RAMDUMP + DDR_BASE_LEN_RAMDUMP)
@@ -253,13 +253,6 @@
#define TEE_SHARE_BUF_ADDR (RAMDUMP_AP_TO_CAP_BUF_ADDR + RAMDUMP_AP_TO_CAP_BUF_LEN)
#define TEE_SHARE_BUF_LEN ((384 * 1024UL)>>CPU_SHIFT)
-/* psά²â¿Õ¼ä(Êý¾Ý + ¿ØÖÆ)¸´ÓÃAP_TO_CAPµÄramdump´æ´¢¿Õ¼ä */
-#define PS_DEBUG_INFO_LEN_ADDR (RAMDUMP_AP_TO_CAP_BUF_ADDR + ((4 * 1024UL)>>CPU_SHIFT))
-#define PS_DEBUG_INFO_LEN_SIZE ((4 * 1024UL)>>CPU_SHIFT)
-
-#define PS_DEBUG_INFO_ADDR (PS_DEBUG_INFO_LEN_ADDR + PS_DEBUG_INFO_LEN_SIZE)
-#define PS_DEBUG_INFO_SIZE ((64 * 1024UL)>>CPU_SHIFT)
-
#define ICP_CAP_BUF_ADDR_PA DDR_BASE_CAPBUF_ADDR_PA
#define TOOL_CAP_BUF_ADDR_PA (ICP_CAP_BUF_ADDR_PA + ICP_CAP_BUF_LEN)
#define RINGBUF_CAP_TO_AP_ADDR_PA (TOOL_CAP_BUF_ADDR_PA + TOOL_CAP_BUF_LEN)
@@ -269,9 +262,6 @@
#define TOOL_ZSP_TO_CAP_LOG_ADDR_PA (RINGBUF_AP_TO_CAP_ADDR_PA + RINGBUF_AP_TO_CAP_LEN)
#define RAMDUMP_AP_TO_CAP_BUF_ADDR_PA (TOOL_ZSP_TO_CAP_LOG_ADDR_PA + TOOL_ZSP_TO_CAP_LOG_LEN)
#define TEE_SHARE_BUF_ADDR_PA (RAMDUMP_AP_TO_CAP_BUF_ADDR_PA + RAMDUMP_AP_TO_CAP_BUF_LEN)
-
-#define PS_DEBUG_INFO_LEN_ADDR_PA (RAMDUMP_AP_TO_CAP_BUF_ADDR_PA + ((4 * 1024UL)>>CPU_SHIFT))
-#define PS_DEBUG_INFO_ADDR_PA (PS_DEBUG_INFO_LEN_ADDR_PA + PS_DEBUG_INFO_LEN_SIZE)
#endif
/* 7520V3оƬIRAM0ѹËõ£¬ÐÒéÕ»ÎïÀí²ã½»»¥¿Õ¼äÒÆ¶¯µ½DDR£¬¸´ÓÃRamdump¿Õ¼ä */