gpt4 book ai didi

python - 音频信号在字级边界处分离

转载 作者:行者123 更新时间:2023-12-02 23:01:21 32 4
gpt4 key购买 nike

我正在使用webrtcvad和pydub处理音频文件。任何片段的分割都是通过静默句子来实现的。
有什么方法可以在字级边界条件下进行拆分? (在每个口语之后)?
如果librosa / ffmpeg / pydub具有这样的功能,是否可以在每个人声上进行分割?但是在分割之后,我需要人声的开始和结束时间与人声部分在原始文件中的位置完全一样。
通过ffmpeg进行拆分的一种简单解决方案或方法也定义为:
https://gist.github.com/vadimkantorov/00bf4fbe4323360722e3d2220cc2915e
但这也是通过静音进行的拆分,并且对于每个填充数或帧大小,拆分是不同的。我正在尝试按声乐分开。
例如,我手动完成了此操作,原始文件,拆分词及其在json中的时间位置位于以下链接下方提供的文件夹中:
www.mediafire.com/file/u4ojdjezmw4vocb/attached_problem.tar.gz

最佳答案

分隔单词超出音频范围,需要某种智能。手动执行操作很容易,因为我们很聪明,可以准确地知道我们要寻找的内容,但是自动化过程却很困难,因为正如您已经注意到的那样,保持沉默不是(不仅但并非总是)单词定界符。
在音频级别,我们只能采用一种解决方案,这既需要分析信号的幅度,又需要添加一些时间机制。例如, Protools 提供了一个很好的工具 Strip Silence ,可根据信号的幅度自动剪切音频区域。它始终将素材保持在时间轴上的原始位置,并且自然每个区域都知道自己的持续时间。除了以dB为单位的阈值之外,为了防止创建过多的区域,它还在时域中提供了几个有用的参数:所创建区域的最小长度,剪切之前的延迟(该延迟是从振幅通过的点计算的)低于阈值),则是在重新打开门之前的反向延迟(该延迟是从幅度超过阈值的点开始向后计算的)。
对于您来说,这可能是一个很好的起点。实现这样的系统可能不会百分百成功,但是如果根据扬声器的设置进行了适当的调整,您可以获得很好的比率。即使它不是完美的,也将大大减少对手工工作的需求。

关于python - 音频信号在字级边界处分离,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64153590/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com