我使用Pydub Library。 我想混合两种不同分贝水平的声音,包括dB数据(不同的能量水平)。例如,我有两种声音。
sound1 = AudioSegment.from_file("species_a.wav")
sound2 = AudioSegment.from_file("species_b.wav")
combined = sound1.overlay(sound2)
我想要,例如,物种" a"说起来比物种物种" b"在我的新声音"合并"。
使用不同的能量级别(-18 dB,-12 dB,-6 dB, - 0dB)执行此操作。
有可能吗?
谢谢!
答案 0 :(得分:2)
你可以将它们标准化为(未经测试的代码,但它可能有效)
def set_to_target_level(sound, target_level):
difference = target_level - sound.dBFS
return sound.apply_gain(difference)
sound1_adjusted = set_to_target_level(sound1, -12.0)
sound2_adjusted = set_to_target_level(sound2, -12.0)
combined = sound1_adjusted.overlay(sound2_adjusted)