Audio 在口语中分割语音音频
我有一个长文本的音频文件,有不同的部分,所有部分都以口语单词“Chapter”(由同一个演讲者叙述)开头。有没有办法在这些单词处将音频文件拆分成更小的文件 我正在考虑删掉“chapter”中出现的一个单词,将其放在一个单独的音频文件中,然后使用一些工具将原始音频与短片段进行模糊匹配,以找到“chapter”出现的地方,并在这些出现的地方拆分原始文件Audio 在口语中分割语音音频,audio,speech-recognition,fuzzy-comparison,Audio,Speech Recognition,Fuzzy Comparison,我有一个长文本的音频文件,有不同的部分,所有部分都以口语单词“Chapter”(由同一个演讲者叙述)开头。有没有办法在这些单词处将音频文件拆分成更小的文件 我正在考虑删掉“chapter”中出现的一个单词,将其放在一个单独的音频文件中,然后使用一些工具将原始音频与短片段进行模糊匹配,以找到“chapter”出现的地方,并在这些出现的地方拆分原始文件 哪种工具可以做到这一点?SOX?大胆?那是可行的。您需要两个步骤: 检测单词出现的时间 根据时间剪切音频 要检测时间,您可以使用pocketsphi
哪种工具可以做到这一点?SOX?大胆?那是可行的。您需要两个步骤:
pocketsphinx_kws -infile barnabyrudge_07_dickens.wav -kws "chapter"
...
INFO: kws_search.c(229): >>>>DETECTED IN FRAME [2138]
INFO: kws_search.c(229): >>>>DETECTED IN FRAME [2182]
INFO: kws_search.c(229): >>>>DETECTED IN FRAME [92149]
帧速率为100帧/秒,因此您可以看到章节在21.38秒和921.49秒时被检测到(当用户说“章节结束时”)
最好使用较长的短语进行检测,短语越长检测效果越好。为了获得最佳检测效果,您可以调整阈值
要剪切音频,您可以使用sox,您可以使用
trim
命令删除开始,使用trim+reverse
来剪切结束。谢谢Nikolay。我会去查查pocketsphinx的。只是澄清一下:keyward不是作为音频片段提供的,而是作为文本字符串提供的,对吗?是的,它足以提供字符串