跳到主要内容

说话人检测模块

Buddie 耳机内置陀螺仪传感器,通过分析z轴振动数据实现 语音活动检测。

文件位置:

  1. lis2de12.c
  2. lis2de12.h
  3. lis2de12_driver.c
  4. lis2de12_driver.h

下面我们会按照耳机运行的顺序来简单介绍该模块

函数入口功能说明文件位置
bone_task_init()SPI外设初始化,并注册vad_task以及回调函数apps\earphone\app_main.c
bone_task_timer_cb()读取传感器数据apps\common\device\gSensor\lis2de12.c
vad_task()执行触发任务apps\common\device\gSensor\lis2de12.c

1 入口函数与任务列表

文件位置:apps\earphone\app_main.c -> app_main() -> bone_task_init() 该函数会执行以下步骤:

  1. 注册SPI外设,并启动传感器外设。
  2. 创建 "vad_task" 任务。(注意vad_task任务需要在编译之前,手动在ask_info task_info_table[]注册)
  3. 添加定时器任务以及回调函数收集z轴数据
firmware

2 vad_task()

文件位置:apps\common\device\gSensor\lis2de12.c 该函数会执行以下步骤:

  1. 对手机的z轴数据,进行fft运算,获取频域数据
  2. 对频域数据进行分析,获取人声触发门限
firmware