114 lines
3.4 KiB
C
114 lines
3.4 KiB
C
/*--------------------------------------------------------------------------------------------------------------------
|
|
(C) Copyright 2020 ASR Ltd. All Rights Reserved
|
|
-------------------------------------------------------------------------------------------------------------------*/
|
|
|
|
#pragma once
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
#include "gbl_types.h"
|
|
|
|
|
|
//ICAT EXPORTED ENUM
|
|
typedef enum
|
|
{
|
|
ACM_RC_OK = 1,
|
|
ACM_RC_DEVICE_ALREADY_ENABLED,
|
|
ACM_RC_DEVICE_ALREADY_DISABLED,
|
|
ACM_RC_NO_MUTE_CHANGE_NEEDED,
|
|
ACM_RC_INVALID_VOLUME_CHANGE,
|
|
ACM_RC_DEVICE_NOT_FOUND,
|
|
ACM_RC_BUFFER_GET_FUNC_INVALID,
|
|
ACM_RC_STREAM_OUT_NOT_PERFORMED,
|
|
ACM_RC_STREAM_IN_NOT_PERFORMED,
|
|
ACM_RC_STREAM_OUT_TO_BE_STOPPED_NOT_ACTIVE,
|
|
ACM_RC_STREAM_IN_TO_BE_STOPPED_NOT_ACTIVE,
|
|
ACM_RC_I2S_INVALID_DATA_POINTER,
|
|
ACM_RC_I2S_INVALID_DATA_SIZE,
|
|
ACM_RC_I2S_INVALID_NOTIFICATION_THRESHOLD,
|
|
ACM_RC_I2S_MESSAGE_QUEUE_IS_FULL,
|
|
ACM_RC_MEMORY_ALREADY_INITIALISED,
|
|
|
|
////Jackie add
|
|
ACM_RC_NEED_DISABLE_PATH, // need APPS to disable codec path
|
|
ACM_RC_MALLOC_ERROR, // memory error
|
|
ACM_RC_OUTOF_RANGE,
|
|
|
|
/* Must be at the end */
|
|
ACM_RC_ENUM_32_BIT = 0x7FFFFFFF //32bit enum compiling enforcement
|
|
} ACM_ReturnCode;
|
|
|
|
/*0x01 Volume Control Message*/
|
|
ACM_ReturnCode ATCVolumeCtrl(UINT8 direction,
|
|
UINT32 gain,
|
|
UINT32 misc,
|
|
UINT32 confirm_id);
|
|
|
|
/*0x02 Mute Control Message*/
|
|
ACM_ReturnCode ATCMuteCtrl(UINT8 direction,
|
|
UINT8 mute,
|
|
UINT32 confirm_id);
|
|
|
|
/*0x03 Path Control Message*/
|
|
ACM_ReturnCode ATCPathCtrl(UINT32 path,
|
|
UINT32 confirm_id);
|
|
|
|
/*0x04 EQ Control Message*/
|
|
ACM_ReturnCode ATCEQCtrl(UINT16 para[15],
|
|
UINT32 confirm_id);
|
|
|
|
/*0x05 Loopback Control Message*/
|
|
ACM_ReturnCode ATCLoopbackCtrl(UINT8 loopback_test_mode,
|
|
UINT32 path,
|
|
UINT32 confirm_id);
|
|
|
|
/*0x06 PCM Recording Control Message*/
|
|
ACM_ReturnCode ATCPCMRecCtrl(UINT8 on_off,
|
|
UINT8 near_far_end,
|
|
UINT8 near_codec_or_vocoder,
|
|
UINT32 callback,
|
|
UINT32 confirm_id);
|
|
|
|
/*0x07 PCM Playback Control Message*/
|
|
ACM_ReturnCode ATCPCMPlayCtrl(UINT8 on_off,
|
|
UINT8 near_far_end,
|
|
UINT8 near_codec_or_vocoder,
|
|
UINT8 comb_with_call,
|
|
UINT32 callback,
|
|
UINT32 confirm_id);
|
|
|
|
/*0x0a Ecall Control Message*/
|
|
ACM_ReturnCode ATCECallCtrl(char* ecall_data,
|
|
unsigned long ecall_len,
|
|
UINT32 confirm_id);
|
|
|
|
/*0x0b PCM Control Message*/
|
|
ACM_ReturnCode ATCPCMCtrl(UINT16 on_off,
|
|
UINT32 confirm_id);
|
|
|
|
/*0x0c DTMF detection Control Message*/
|
|
ACM_ReturnCode ATCDTMFDetectionCtrl(UINT16 onoff,
|
|
UINT16 dialToneToOthersTones,
|
|
UINT16 dialTonesToOthersDialTones,
|
|
UINT16 dialVadDuration,
|
|
UINT32 callback,
|
|
UINT32 confirm_id);
|
|
|
|
/*0x0d PCM Config Message*/
|
|
ACM_ReturnCode ATCPCMCfg(UINT16 pcm,
|
|
UINT32 confirm_id);
|
|
|
|
/*0x0e PCM Expert Config Message*/
|
|
ACM_ReturnCode ATCPCMExpertCfg(UINT16 pcm,
|
|
UINT32 confirm_id);
|
|
|
|
/*0x0f DTMF Control Message*/
|
|
ACM_ReturnCode ATCDTMFControl(UINT16 onoff,
|
|
UINT16 tone1_index,
|
|
UINT16 tone2_index,
|
|
UINT32 confirm_id);
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|