| luat_soc_sdk_2024 V1.0
    | 
| 结构体 | |
| struct | luat_audio_play_info_t | 
| audio播放控制参数  更多... | |
| 函数 | |
| void | luat_audio_play_file_default_fun (void *param) | 
| void | luat_audio_play_tts_default_fun (void *param) | 
| void | luat_audio_play_global_init (audio_play_event_cb_fun_t event_cb, audio_play_data_cb_fun_t data_cb, audio_play_default_fun_t play_file_fun, audio_play_default_fun_t play_tts_fun, void *user_param) | 
| 音频播放初始化,可以选择是否启用TTS,文件播放功能,用来节省flash空间 | |
| void | luat_audio_play_global_init_with_task_priority (audio_play_event_cb_fun_t event_cb, audio_play_data_cb_fun_t data_cb, audio_play_default_fun_t play_file_fun, audio_play_default_fun_t play_tts_fun, void *user_param, uint8_t priority) | 
| 音频播放初始化,可以选择是否启用TTS,文件播放功能,用来节省flash空间,可以配置audio任务优先级 | |
| int | luat_audio_play_multi_files (uint8_t multimedia_id, luat_audio_play_info_t info[], uint32_t files_num) | 
| 播放指定数量的文件或者ROM数组(文件数据直接写成数组形式) | |
| uint8_t | luat_audio_play_is_finish (uint8_t multimedia_id) | 
| 是否播放完全部数据 | |
| int | luat_audio_play_fast_stop (uint8_t multimedia_id) | 
| 强制停止播放文件,如果音频解码已经完成了,会停止已经输出到底层驱动的数据播放 | |
| int | luat_audio_play_clear_stop_flag (uint8_t multimedia_id) | 
| 清除强制停止播放文件的标识,可以在误操作stop时不影响下一次播放 | |
| int | luat_audio_play_pause_raw (uint8_t multimedia_id, uint8_t is_pause) | 
| 暂停/恢复播放 | |
| int | luat_audio_play_get_last_error (uint8_t multimedia_id) | 
| 获取上一次播放结果,在MULTIMEDIA_CB_AUDIO_DONE回调时调用最佳 | |
| int | luat_audio_play_write_blank_raw (uint8_t multimedia_id, uint8_t cnt, uint8_t add_font) | 
| 在开头或者结尾插入多段空白数据,每段数据约100ms | |
| int | luat_audio_play_start_raw (uint8_t multimedia_id, uint8_t audio_format, uint8_t num_channels, uint32_t sample_rate, uint8_t bits_per_sample, uint8_t is_signed) | 
| 立刻初始化播放未编码的原始音频数据流 | |
| int | luat_audio_play_write_raw (uint8_t multimedia_id, uint8_t *data, uint32_t len) | 
| 向底层驱动传入一段原始音频数据 | |
| int | luat_audio_play_stop_raw (uint8_t multimedia_id) | 
| 强制停止所有播放,同时底层驱动也会停止输出,不要用于播放文件的结束 | |
| void | luat_audio_play_tts_set_resource (void *address, void *sdk_id, void *tts_resource_read_fun) | 
| 设置TTS的资源和对应SDKID,TTS资源有很多种。 | |
| void * | luat_audio_play_get_stream (uint8_t multimedia_id) | 
| 获取底层播放的stream指针 | |
| void | luat_audio_play_set_user_lock (uint8_t multimedia_id, uint8_t onoff) | 
| 控制底层播放是否允许结束 | |
| void | luat_audio_inter_amr_init (uint8_t is_wb, uint8_t quality) | 
| int | luat_audio_inter_amr_encode (const uint16_t *pcm_buf, uint8_t *amr_buf, uint8_t *amr_len) | 
| int | luat_audio_inter_amr_decode (uint16_t *pcm_buf, const uint8_t *amr_buf, uint8_t *amr_len) | 
| void | luat_audio_inter_amr_deinit (void) | 
| void * | luat_audio_inter_amr_pcm_address (void) | 
| int luat_audio_inter_amr_decode | ( | uint16_t * | pcm_buf, | 
| const uint8_t * | amr_buf, | ||
| uint8_t * | amr_len ) | 
| void luat_audio_inter_amr_deinit | ( | void | ) | 
| int luat_audio_inter_amr_encode | ( | const uint16_t * | pcm_buf, | 
| uint8_t * | amr_buf, | ||
| uint8_t * | amr_len ) | 
| void luat_audio_inter_amr_init | ( | uint8_t | is_wb, | 
| uint8_t | quality ) | 
| void * luat_audio_inter_amr_pcm_address | ( | void | ) | 
| int luat_audio_play_clear_stop_flag | ( | uint8_t | multimedia_id | ) | 
清除强制停止播放文件的标识,可以在误操作stop时不影响下一次播放
| multimedia_id | multimedia_id 多媒体通道,目前只有0 | 
| int luat_audio_play_fast_stop | ( | uint8_t | multimedia_id | ) | 
强制停止播放文件,如果音频解码已经完成了,会停止已经输出到底层驱动的数据播放
| multimedia_id | multimedia_id 多媒体通道,目前只有0 | 
| void luat_audio_play_file_default_fun | ( | void * | param | ) | 
| int luat_audio_play_get_last_error | ( | uint8_t | multimedia_id | ) | 
获取上一次播放结果,在MULTIMEDIA_CB_AUDIO_DONE回调时调用最佳
| multimedia_id | multimedia_id 多媒体通道,目前只有0 | 
| void * luat_audio_play_get_stream | ( | uint8_t | multimedia_id | ) | 
获取底层播放的stream指针
| multimedia_id | multimedia_id 多媒体通道,目前只有0 | 
| void luat_audio_play_global_init | ( | audio_play_event_cb_fun_t | event_cb, | 
| audio_play_data_cb_fun_t | data_cb, | ||
| audio_play_default_fun_t | play_file_fun, | ||
| audio_play_default_fun_t | play_tts_fun, | ||
| void * | user_param ) | 
音频播放初始化,可以选择是否启用TTS,文件播放功能,用来节省flash空间
| event_cb | 播放时event回调函数 | 
| data_cb | 数据解码回调函数,如果是直接播放原始数据流就不会用到 | 
| play_file_fun | 播放文件的具体处理函数,选择luat_audio_play_file_default_fun进行处理,或者写NULL不启用播放文件的功能 | 
| play_tts_fun | 播放TTS的具体处理函数,选择luat_audio_play_tts_default_fun进行处理,或者写NULL不启用播放TTS的功能 | 
| user_param | 回调函数的用户参数 | 
| void luat_audio_play_global_init_with_task_priority | ( | audio_play_event_cb_fun_t | event_cb, | 
| audio_play_data_cb_fun_t | data_cb, | ||
| audio_play_default_fun_t | play_file_fun, | ||
| audio_play_default_fun_t | play_tts_fun, | ||
| void * | user_param, | ||
| uint8_t | priority ) | 
音频播放初始化,可以选择是否启用TTS,文件播放功能,用来节省flash空间,可以配置audio任务优先级
| event_cb | 播放时event回调函数 | 
| data_cb | 数据解码回调函数,如果是直接播放原始数据流就不会用到 | 
| play_file_fun | 播放文件的具体处理函数,选择luat_audio_play_file_default_fun进行处理,或者写NULL不启用播放文件的功能 | 
| play_tts_fun | 播放TTS的具体处理函数,选择luat_audio_play_tts_default_fun进行处理,或者写NULL不启用播放TTS的功能 | 
| user_param | 回调函数的用户参数 | 
| priority | audio任务优先级 | 
| uint8_t luat_audio_play_is_finish | ( | uint8_t | multimedia_id | ) | 
是否播放完全部数据
| multimedia_id | multimedia_id 多媒体通道,目前只有0 | 
| int luat_audio_play_multi_files | ( | uint8_t | multimedia_id, | 
| luat_audio_play_info_t | info[], | ||
| uint32_t | files_num ) | 
播放指定数量的文件或者ROM数组(文件数据直接写成数组形式)
| multimedia_id | 多媒体通道,目前只有0 | 
| info | 文件信息,文件路径或者ROM信息 | 
| files_num | 文件数量 | 
| int luat_audio_play_pause_raw | ( | uint8_t | multimedia_id, | 
| uint8_t | is_pause ) | 
暂停/恢复播放
| multimedia_id | multimedia_id 多媒体通道,目前只有0 | 
| is_pause | 0恢复,其他暂停 | 
| void luat_audio_play_set_user_lock | ( | uint8_t | multimedia_id, | 
| uint8_t | onoff ) | 
控制底层播放是否允许结束
| multimedia_id | multimedia_id 多媒体通道,目前只有0 | 
| int luat_audio_play_start_raw | ( | uint8_t | multimedia_id, | 
| uint8_t | audio_format, | ||
| uint8_t | num_channels, | ||
| uint32_t | sample_rate, | ||
| uint8_t | bits_per_sample, | ||
| uint8_t | is_signed ) | 
立刻初始化播放未编码的原始音频数据流
| multimedia_id | multimedia_id 多媒体通道,目前只有0 | 
| audio_format | 音频数据格式,目前只支持PCM,即需要手动解码 | 
| num_channels | 声道数,目前只能1或2 | 
| sample_rate | 采样率,注意只有8K,16K,32K,48K,96K,22.05K,44.1K这些能被支持 | 
| bits_per_sample | 量化bit,只能是16 | 
| is_signed | 量化数据是否带符号,只能是1 | 
| int luat_audio_play_stop_raw | ( | uint8_t | multimedia_id | ) | 
强制停止所有播放,同时底层驱动也会停止输出,不要用于播放文件的结束
| multimedia_id | multimedia_id 多媒体通道,目前只有0 | 
| void luat_audio_play_tts_default_fun | ( | void * | param | ) | 
| void luat_audio_play_tts_set_resource | ( | void * | address, | 
| void * | sdk_id, | ||
| void * | tts_resource_read_fun ) | 
设置TTS的资源和对应SDKID,TTS资源有很多种。
| address | 资源的flash或者ram地址 | 
| sdk_id | 本质上就是传入AISOUND_SDK_USERID | 
| tts_resource_read_fun | 读取资源文件的函数,如果是NULL,则使用默认函数,即单纯的拷贝,如果用自己的函数,必须按照ivCBReadResExt定义 | 
| int luat_audio_play_write_blank_raw | ( | uint8_t | multimedia_id, | 
| uint8_t | cnt, | ||
| uint8_t | add_font ) | 
在开头或者结尾插入多段空白数据,每段数据约100ms
| multimedia_id | multimedia_id 多媒体通道,目前只有0 | 
| cnt | 段数 | 
| add_font | 是否加载到开头位置 1是,0否 | 
| int luat_audio_play_write_raw | ( | uint8_t | multimedia_id, | 
| uint8_t * | data, | ||
| uint32_t | len ) | 
向底层驱动传入一段原始音频数据
| multimedia_id | multimedia_id 多媒体通道,目前只有0 | 
| data | 原始音频数据 | 
| len | 原始音频数据长度 |