audio - python中的语速检测
问题描述
我需要检测音频文件的语速(口语速度)。大多数可用的代码,包括 pyaudioanalysis 等,都提供采样率、静音检测,甚至情绪检测。
需要的是我想知道说话者说话的速度。任何人都可以建议一些代码或技术。
解决方案
我使用语音转文本,但有两个主要问题
- 并非引擎产生的所有单词都是正确的。
- 文本之间可能会有长时间的停顿,这对检测语速没有帮助。
我正在使用 PRAAT 软件,python 中有一个扩展(https://github.com/YannickJadoul/Parselmouth)。这里给出了该过程的详细说明
有一个使用脚本检测语速的选项(https://sites.google.com/site/speechrate/Home/praat-script-syllable-nuclei-v2)。使用 Parselmouth 我们可以运行脚本。如果您可以使用 PRAAT 软件,这里是一步一步的分析https://sites.google.com/site/speechrate/Home/tutorial。
该脚本返回音节数、停顿数、持续时间、语速、发音率、ASD(speaking_time/no_of_syllables)。
参考论文-https://www.researchgate.net/publication/24274554_Praat_script_to_detect_syllable_nuclei_and_measure_speech_rate_automatically
检查这个https://github.com/Shahabks/myprosody,这甚至可以工作。
希望这可以帮助。
推荐阅读
- javascript - 使用 JS 或 JQuery 将所有大写字母转换为标题大小写的最有效方法?
- javascript - 由于 json 的循环结构,我不断获得状态 500
- android - 如何使用不同的 applicationId Android 创建 Flavor?
- github - GitHub API - 通过访问令牌获取提交详细信息
- android - JSONObject 不会保存到 SQL 数据库
- typescript - 如何通过考虑 Typescript 中字符串数组中元素的名称来删除元素
- php - php - mysqli - 如果不存在则创建数据库
- c# - 在将 Azure Key Vault 配置提供程序用于机密/配置时使用 IConfiguration 方法,例如 Bind 和 GetConnectionString
- javascript - 如何转换这两个数据结构?
- java - 为什么我们在登录过程中使用异步,即使我们必须等待结果?