xt-sdk 文档 v1.0.3
xt-sdk 嵌入式 SDK API 参考
载入中...
搜索中...
未找到
xt_audio_dev.h
浏览该文件的文档.
1
10
11#ifndef __XT_AUDIO_DEV_H__
12#define __XT_AUDIO_DEV_H__
13
14/* ==================== [Includes] ========================================== */
15
16#include "xt_audio_types.h"
17#include "xt_audio_dev_drv.h"
18
19#ifdef __cplusplus
20extern "C" {
21#endif
22
29
30/* ==================== [Defines] =========================================== */
31
32/* ==================== [Typedefs] ========================================== */
33
46
51 void *user_data;
52 uint8_t *data;
53 uint32_t size;
54};
55
64 struct xt_audio_dev_cb_info *info);
65
74
90
91/* ==================== [Global Prototypes] ================================= */
92
101
109
118
119#define xt_audio_dev_stop(_hdl) xt_audio_dev_stop_ext(_hdl, (xt_audio_mode_t)-1)
120#define xt_audio_dev_read_stop(_hdl) xt_audio_dev_stop_ext(_hdl, XT_AUDIO_MODE_READ)
121
131int xt_audio_dev_write_ext(xt_audio_t hdl, uint8_t *data, uint32_t size, struct xt_audio_dev_info *info);
132
133#define xt_audio_dev_write(_hdl, _data, _size, _level) \
134 xt_audio_dev_write_ext(_hdl, _data, _size, &((struct xt_audio_dev_info){.level = _level}))
135
145int xt_audio_dev_read_ext(xt_audio_t hdl, uint8_t *data, uint32_t size, struct xt_audio_dev_info *info);
146
155
156#define xt_audio_dev_read(_hdl, _data, _size, _level) \
157 xt_audio_dev_read_ext(_hdl, _data, _size, &((struct xt_audio_dev_info){.level = _level}))
158
167
175
183
191
199
207
208/* ==================== [Macros] ============================================ */
209 /* xt_audio_dev */
211
212#ifdef __cplusplus
213} /* extern "C" */
214#endif
215
216#endif /* __XT_AUDIO_DEV_H__ */
int xt_audio_dev_write_ext(xt_audio_t hdl, uint8_t *data, uint32_t size, struct xt_audio_dev_info *info)
向音频设备写入数据(扩展版本)
void(* xt_audio_dev_evt_cb_t)(xt_audio_t hdl, enum xt_audio_dev_evt evt, struct xt_audio_dev_cb_info *info)
音频设备事件回调函数类型
xt_err_t xt_audio_dev_get_format(xt_audio_t hdl, struct xt_audio_format *fmt)
获取音频设备当前格式
struct xt_audio_dev_drv * xt_audio_dev_get_drv(const char *name)
按名称获取已注册的音频驱动
int xt_audio_dev_read_ext(xt_audio_t hdl, uint8_t *data, uint32_t size, struct xt_audio_dev_info *info)
从音频设备读取数据(扩展版本)
xt_err_t xt_audio_dev_resume(xt_audio_t hdl)
音频设备从休眠恢复
xt_err_t xt_audio_dev_stop_ext(xt_audio_t hdl, xt_audio_mode_t mode)
停止音频设备指定方向的传输
int xt_audio_dev_read_start_ext(xt_audio_t hdl, struct xt_audio_dev_info *info)
启动音频设备读取(扩展版本)
xt_err_t xt_audio_dev_register_drv(struct xt_audio_dev_drv *drv)
注册音频设备驱动
uint16_t xt_audio_dev_get_frame_interval(xt_audio_t hdl)
获取帧间隔时间
xt_audio_dev_evt
音频设备事件枚举
xt_err_t xt_audio_dev_setup(struct xt_audio_dev_config *cfg, xt_audio_t *hdl)
初始化音频设备
xt_err_t xt_audio_dev_sleep(xt_audio_t hdl)
音频设备进入休眠
xt_err_t xt_audio_dev_close(xt_audio_t hdl)
关闭音频设备
@ XT_AUDIO_DEV_EVT_WRITE_ERROR
@ XT_AUDIO_DEV_EVT_READ_ERROR
@ XT_AUDIO_DEV_EVT_WRITE_UNDERRUN
@ XT_AUDIO_DEV_EVT_WRITE_BATCH
@ XT_AUDIO_DEV_EVT_READ_BATCH
@ XT_AUDIO_DEV_EVT_READ_READY
@ XT_AUDIO_DEV_EVT_NO_ERR
void * xt_audio_t
音频设备句柄类型
uint8_t xt_audio_mode_t
音频模式类型
int32_t xt_err_t
错误码类型
音频设备回调信息结构体
音频设备配置结构体
xt_audio_dev_evt_cb_t evt_cb
驱动描述符(注册时传入)
音频设备操作信息结构体
xt_audio_dev_evt_cb_t user_cb
音频格式描述结构体
音频设备驱动接口(移植开发者使用)
XTINY 音频公共类型定义