Files
banban/ql-kernel/threadx/common/include/quec_tts.h
T

54 lines
1.5 KiB
C

/*================================================================
Copyright (c) 2022, Quectel Wireless Solutions Co., Ltd. All rights reserved.
Quectel Wireless Solutions Proprietary and Confidential.
=================================================================*/
#ifndef _QUEC_TTS_H
#define _QUEC_TTS_H
typedef struct
{
char name[8];
int offset;
int size;
}quec_tts_file;
typedef enum
{
QUEC_TTS_NO_ERROR,
QUEC_TTS_MAGIC_ERROR,
QUEC_TTS_MALLOC_ERROR,
}QUEC_TTS_RESULT;
typedef enum {
QUEC_TTS_EVT_INIT,
QUEC_TTS_EVT_DEINIT,
QUEC_TTS_EVT_PLAY_START,
QUEC_TTS_EVT_PLAY_STOP,
QUEC_TTS_EVT_PLAY_FINISH,
QUEC_TTS_EVT_PLAY_FAILED,
QUEC_TTS_EVT_PLAY_INTERRUPT,
QUEC_TTS_EVT_PLAY_PREAPARED,
QUEC_TTS_EVT_PLAY_PCMDATA,
} QUEC_TTS_ENVENT_E;
typedef void (*quec_tts_cb_type)(QUEC_TTS_ENVENT_E event, char *str);
typedef int (*quec_tts_readbuf_cb)(void *pParameter, void * pBuffer, unsigned long iPos, unsigned long nSize);
int quec_tts_init(quec_tts_cb_type usr_cb);
int quec_tts_deinit(void);
int quec_tts_play(int mode, const char* string);
int quect_tts_stop(void);
int quec_tts_state(void);
int quec_tts_set_volume(int volume);
int quec_tts_get_volume(void);
int quec_tts_set_speed(int speed);
int quec_tts_get_speed(void);
int quec_tts_digit_mode(int mode);
int quec_get_tts_digit_mode(void);
void ql_tts_separate_callback(quec_tts_readbuf_cb read_cb);
int quec_tts_set_language(int language);
int quec_tts_get_language(void);
#endif