本章节主要讲解如何在本示例中增加自己的提示音频,并在代码中控制播放,可参照本章节实现检测到坐姿不良时进行提醒。
音频文件格式:mp3
音频采样率:16K
本示例中使用的提示音位于应用目录的resource/tone/中,并通过打包为 littlefs 文件系统格式的littlefs.bin(位于 resource/littlefs 目录下)的方式被固件所调用。
因此可以按照以下步骤实现自定义提示音在本示例中的调用:
littlefs.binStep1:在本demo resource/tone/目录下新增提示音文件
Step2:在存放提示音的目录打包生成bin文件
可选择与自己系统匹配的 littlefs 文件系统打包工作,将目录打包为大小为 0x200000 的littlefs.bin文件。
也可使用以下的工具
使用SDK根目录下tool/littlefs_packer/mklfs工具生成新的littlefs.bin文件,替换原有的littlefs.bin文件,重新编译烧录即可。
./tools/littlefs_packer/mklfs apps/audio_recognition_online/resource/tone/ littlefs.bin 0x200000
下载:x86_64-linux-gnu-mklittlefs-975bd0f.tar.gz
解压后执行指令进行打包:
./mklittlefs -c tone -s 0x200000 littlefs.bin
部分用户反馈此工具无法一次性打包太多的提示音,可根据实际音频使用情况对 tone 目录内的的文件进行删减。
下载:x86_64-w64-mingw32-mklittlefs-4aca452.zip
解压后执行指令进行打包:
./mklittlefs.exe -c tone -s 0x200000 littlefs.bin
部分用户反馈此工具无法一次性打包太多的提示音,可根据实际音频使用情况对 tone 目录内的的文件进行删减。
使用 cskburn桌面烧录工具将上一步打包输出的 littlefs.bin 文件烧录至 0x3000000地址

也可以直接将 littlefs.bin 文件替换至
resource/littlefs目录下的 littlefs.bin 并重新编译整个示例工程,提示音资源将会一并被打包至最终产物 zephyr.bin 中
在本示例中,固件为提示音资源 littlefs 提供的存储起始地址为 0x300000,长度为 0x200000 , 此信息可在本示例的 boards\csk6_duomotai_devkit.overlay 文件中确认:
播放提示音接口:
void app_player_seturl(const char *url)
具体调用方式可参照本示例 main.c 中播放提示音的相关代码段:
