我发现了pyDub,看起来它正是我需要的:
唯一的问题在于生成静默部分。pyDub能做到吗?
基本上我想要的工作流程是:
- 获取目录中的所有WAV文件
- 按照文件名顺序将它们拼接起来,每个文件之间加入1秒钟的静默
- 生成结果的单个MP3文件
这可行吗?我知道我可以创建一个静默的WAV文件并以这种方式完成(回忆一下spacer GIF,任何人都有印象吗?),但我更愿意通过编程方式生成静默,因为我可能想要尝试不同的静默持续时间和/或MP3比特率。
非常感谢任何回复。
我发现了pyDub,看起来它正是我需要的:
唯一的问题在于生成静默部分。pyDub能做到吗?
基本上我想要的工作流程是:
这可行吗?我知道我可以创建一个静默的WAV文件并以这种方式完成(回忆一下spacer GIF,任何人都有印象吗?),但我更愿意通过编程方式生成静默,因为我可能想要尝试不同的静默持续时间和/或MP3比特率。
非常感谢任何回复。
pydub序列是由pydub.AudioSegment
实例组成的。 pydub快速入门文档只展示了如何从文件中创建AudioSegments。
然而,阅读源代码,甚至更容易地运行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
将会像示例中的 song
一样成为一个 AudioSegement。
song = AudioSegment.from_wav("never_gonna_give_you_up.wav")
而且可以进行操作、组合等,无需空白音频文件。
+
。 - undefined