python - 几秒钟前如何创建音频缓冲区以访问麦克风输入

标签 python audio recording snowboy hotword

我正在尝试创建可以通过热键激活的语音识别功能。我找到了这个
snowboy软件包,可以创建一个热词侦听器,该侦听器可以全天候监听并在激活时运行特定任务。

我的问题是我需要在检测到热门单词时运行语音身份验证功能。假设我的口号是“你好”,而我的语音认证的输入需求是“你好,请开门”。但是,如果我在检测到热门单词后开始录制,则需要重复打招呼。我如何获得完整的“你好,请开门”录音而不重复。

有没有一种方式,snowboy可以输出用于激活的短音频文件“hello”,如果是的话,我可以将它们组合在一起。

如果现在可以创建一个音频缓冲区,该缓冲区将始终保留麦克风数据的最后10秒钟,而不会对CPU造成很大的影响。同时,这也需要与雪人共享麦克风。

这是我的主意,但我不知道如何实现。请告诉我我该怎么做或其他我可以得到完整的录音。

随意编辑问题是某个地方不清楚。

谢谢!!

最佳答案

是。检测到后,默认情况下,Snowboy会播放在资源文件夹中找到的“叮”波形文件。您可以编辑snowboydecoder.HotwordDetector函数来播放另一个声音文件,而不是ding(您可能需要大致了解其编译语言)。您可以下载自定义wave文件在此处播放,也可以使用互联网上各种免费的TTS API列表生成“机器人声音”自定义消息,并将其保存到计算机中。如果需要,我将提供详细的解释

关于python - 几秒钟前如何创建音频缓冲区以访问麦克风输入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58925916/

相关文章:

linux - 如何在 Linux 中创建深度非压缩视频

iphone - 同时使用 AVPlayer 播放视频并使用 AVAudioRecorder 录制声音

android - 使用SmartFace.io进行音频录制(Android-Ios)

python - 使用 RegEx 查找无序单词

python - 背包分支定界错误结果

python - 在轮廓opencv上找到主色

unity3d - DualShock 4 Controller 扬声器访问

python - 如何在没有 flask/django 的情况下在 heroku 上运行一个简单的 python 脚本?

javascript - 在 chrome 背景选项卡中自动播放声音

iOS 如何将 USB 设备的特定 channel 设置为音频播放器? AV基金会