Initial import of NFC GNSS SDK project
This commit is contained in:
@@ -0,0 +1,86 @@
|
||||
/*================================================================
|
||||
Copyright (c) 2022, Quectel Wireless Solutions Co., Ltd. All rights reserved.
|
||||
Quectel Wireless Solutions Proprietary and Confidential.
|
||||
=================================================================*/
|
||||
/**
|
||||
******************************************************************************
|
||||
* @file example_tts.c
|
||||
* @author august.yang
|
||||
* @version V1.0.0
|
||||
* @date 2022/04/15
|
||||
* @brief This file tests TTS APIs
|
||||
******************************************************************************
|
||||
*/
|
||||
|
||||
|
||||
#include <stdio.h>
|
||||
#include "ql_rtos.h"
|
||||
#include "ql_application.h"
|
||||
#include "ql_audio.h"
|
||||
#include "ql_tts.h"
|
||||
#include "ql_fs.h"
|
||||
#include "ql_spi_nor.h"
|
||||
|
||||
//#define TTS_SEPARATE_TEST
|
||||
|
||||
|
||||
void test_cb(QL_TTS_ENVENT_E event, char *str)
|
||||
{
|
||||
printf("user_cb :event = %d,str = %s\n",event,str);
|
||||
}
|
||||
|
||||
#ifdef TTS_SEPARATE_TEST
|
||||
static unsigned int tts_address = 0;
|
||||
int read_cb(void *pParameter, void * pBuffer, unsigned long iPos, unsigned long nSize)
|
||||
{
|
||||
ql_spi_nor_read_fifo(EXTERNAL_NORFLASH_PORT33_36, pBuffer, tts_address+iPos, nSize);
|
||||
return 1;
|
||||
}
|
||||
#endif
|
||||
static void quec_tts_test(void * argv)
|
||||
{
|
||||
int port_index = EXTERNAL_NORFLASH_PORT33_36;
|
||||
int clk = _APBC_SSP_FNCLKSEL_26MHZ_;
|
||||
unsigned char *id = NULL;
|
||||
int i =0,ret = 0;
|
||||
unsigned int tts_size = 0;
|
||||
//等待audio初始化好
|
||||
while(!ql_get_audio_state()){
|
||||
ql_rtos_task_sleep_ms(50);
|
||||
}
|
||||
|
||||
ql_set_audio_path_receiver();
|
||||
|
||||
ql_codec_choose(AUD_INTERNAL_CODEC, NULL);
|
||||
#ifdef TTS_SEPARATE_TEST
|
||||
ql_spi_nor_init(port_index, clk);
|
||||
ql_norflash_get_addr("quectel_resource_tts", &tts_address, &tts_size);
|
||||
tts_address &= 0x0FFFFFFF;
|
||||
if(tts_address == NULL){
|
||||
printf("error!! no tts resource \r\n");
|
||||
while(1);
|
||||
}
|
||||
printf("quectel_resource_tts adress:0x%x, size:%d \r\n",tts_address, tts_size);
|
||||
|
||||
ql_tts_separate_callback(read_cb);
|
||||
#endif
|
||||
ql_tts_init(test_cb);
|
||||
ql_set_volume(8);
|
||||
AUDIO_PLAY_OPTION prop = {0};
|
||||
//查询tts播放选项
|
||||
prop.option = ql_get_tts_play_option();
|
||||
printf(">>>>>>>>>>>>>option=0x%016llX\r\n",prop.option);
|
||||
//设置tts播放选项,以下是举例,以实际开发需求为准
|
||||
prop.dest_end = 1;//TTS播放到远端
|
||||
ql_set_tts_play_option(prop.option);
|
||||
printf(">>>>>>>>>>>>>option=0x%016llX\r\n",prop.option);
|
||||
|
||||
ql_tts_set_volume(0); //设置tts音量,参数范围-32768~32767
|
||||
while(1)
|
||||
{
|
||||
ql_tts_play(2,"支付宝到账一百万元"); //mode2,使用GBK编码方式
|
||||
ql_rtos_task_sleep_s(7); //等待5S,由于tts为异步播放,连续调用会直接打断
|
||||
}
|
||||
}
|
||||
//application_init(quec_tts_test, "quec_tts_test", 2, 0);
|
||||
|
||||
Reference in New Issue
Block a user