我找到了 pyDub,它似乎正是我需要的:
唯一的问题是产生沉默。 pyDub 可以做到这一点吗?
基本上我想要的工作流程是:
- 把所有的WAV文件放到一个目录下
- 按文件名顺序将它们拼凑在一起,中间静默 1 秒
- 将结果生成一个 MP3
这可能吗?我意识到我可以创建一个静音的 WAV 并这样做(间隔 GIF 闪回,有人吗?),但我更愿意以编程方式生成静音,因为我可能想试验静音持续时间和/或比特率的 MP3。
非常感谢任何回复。
最佳答案
pydub 序列由 pydub.AudioSegment
实例组成。 pydub quickstart documentation仅展示如何从文件创建 AudioSegments。
但是,阅读the source ,或者更容易,运行 pydoc pydub.AudioSequence
显示
pydub.AudioSegment = class AudioSegment(__builtin__.object)
| AudioSegments are *immutable* objects representing segments of audio
| that can be manipulated using python code.
…
| silent(cls, duration=1000) from __builtin__.type
| Generate a silent audio segment.
| duration specified in milliseconds (default: 1000ms).
这将被称为(按照快速入门指南中的用法):
from pydub import AudioSegment
second_of_silence = AudioSegment.silent() # use default
second_of_silence = AudioSegment.silent(duration=1000) # or be explicit
现在 second_of_silence
将是一个 AudioSegement,就像示例中的 song
song = AudioSegment.from_wav("never_gonna_give_you_up.wav")
无需空白音频文件即可进行操作、组合等操作。
关于python - 使用 pyDub 生成静音,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23692261/