如何将带有 sox 的语音 mp3 文件的播放时间减少到 75%?

How do I reduce the play time of a voice mp3 file with sox to 75%?

我该如何调用 sox 将 2 秒的音频文件转换为加速文件,以便文件的最终长度为 1.5 秒 (75%)?我是否必须传递参数才能进行音高校正? 我必须通过哪些论点来证明文件大小保持较小?

试试这个(使用 input.wav 作为输入文件)

sox input.wav output.wav speed 1.33

取自 this,其示例 13.

关于音高校正,如果音高应该保持不变,请改用此命令。

sox input.wav output.wav tempo 1.33

关于文件大小。这取决于您要使用的音频格式。如果是压缩的,select 设置更高的压缩率。如果不是,您可能需要将其转换为单声道,降低采样率或位数。

我刚刚尝试使用 sox 和 ffmpeg 放慢典型的 CD 质量音频文件,以便在不改变音高的情况下并排比较改变速度。

看来 sox 引入了一些 ffmpeg 没有的卡顿。会推荐 ffmpeg,至少可以减慢速度;这里是半速:

ffmpeg -i file.mp3 -filter:a "atempo=0.5" file_0.5.mp3