blob: 2238b6b2eaeb77591e4eb8970d8d2ab7db609e0d [file] [log] [blame]
/*
* Copyright (C) 2019 ZTE, China
*
* This is the header file for the voice lib.
*
*/
#ifndef __VOICE_LIB_H
#define __VOICE_LIB_H
#include <linux/volte_drv.h>
#define AVOICE_TEAK_2G_3G_DEV_NUM 2
#define AVOICE_SOFT_3G_DEV_NUM 4
#define AVOICE_4G_DEV_NUM 1
#define AVOICE_5G_DEV_NUM 1
#define VOICE_DEV_NAME "/dev/voice_device"
typedef enum
{
AVOICE_TEAK_2G_3G = 0,
AVOICE_SOFT_3G_NB,
AVOICE_SOFT_3G_WB,
AVOICE_4G_NB,
AVOICE_4G_WB,
AVOICE_5G_NB,
AVOICE_5G_WB,
MAX_AVOICE_MODE
}T_Alsa_Voice_Mode;
#ifdef _USE_VOICE_ALSA
int alsa_voice_open(int vmode);
int alsa_voice_close(int vmode);
#endif
/* Voice process channel selection. */
typedef enum
{
VP_PATH_HANDSET = 0,
VP_PATH_SPEAKER,
VP_PATH_HEADSET,
VP_PATH_BLUETOOTH,
VP_PATH_BLUETOOTH_NO_NR,
VP_PATH_HSANDSPK,
VP_PATH_OFF = 255,
MAX_VP_PATH = VP_PATH_OFF
} T_ZDrv_VpPath;
int voice_close(T_Voice_Para *para);
int voice_open(T_Voice_Para *para);
int voice_Vploop(int *path);
int zDrvVolte_PreOpen(T_ZDrvVolte_Cfg *cfgParam);
void zDrvVolte_PreClose(void);
int voice_SetVoiceProcess(int *vp);
int voice_GetVoiceProcess(void);
#ifdef _VBUFF_IN_SINGLE_CORE
int vbuffer_stream_start(void);
int vbuffer_stream_stop(void);
#endif
#endif