gpt4 book ai didi

audio - 使用 SoX 检测并打印静默期的时间戳

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

我正在尝试输出给定音频文件中静音期的开始时间戳(因为存在背景噪音,我所说的静音是指阈值)。最终,我想根据这些时间戳将音频文件分割成更小的音频文件。重要的是原始文件的任何部分都不能被丢弃。

我试过了

sox in.wav out.wav silence 1 0.5 1% 1 2.0 1% : newfile : restart

(由 http://digitalcardboard.com/blog/2009/08/25/the-sox-of-silence/ 提供)

尽管它在一定程度上完成了工作,但它也修剪并丢弃了沉默期,这是我不希望发生的。

“沉默”是正确的选择,还是有更简单的方法来完成我需要做的事情?

谢谢。

最佳答案

不幸的是,不是 Sox,但 ffmpeg 有一个 silencedetect 过滤器,它完全可以满足您的需求:

ffmpeg -i in.wav -af silencedetect=noise=-50dB:d=1 -f null -

(检测阈值为-50db,至少1秒,抄袭from the ffmpeg documentation)

...这将打印如下结果:

Press [q] to stop, [?] for help
[silencedetect @ 0x7ff2ba5168a0] silence_start: 264.718
[silencedetect @ 0x7ff2ba5168a0] silence_end: 265.744 | silence_duration: 1.02612
size=N/A time=00:04:29.53 bitrate=N/A

关于audio - 使用 SoX 检测并打印静默期的时间戳,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18069794/

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