如何在Python中发出fadein声音??

2024-04-29 17:09:00 发布

您现在位置:Python中文网/ 问答频道 /正文

def fade_in(snd,fade_长度): ''为波形文件做声音淡入'' 新的\u snd=声音.复制(瑞士)

for sample in new_snd:
    snd_index = sound.get_index(sample)
    factor = 0
    snd_samp = sound.get_sample(snd, snd_index)
    if snd_index <= fade_length:
        left = (sound.get_left(snd_samp) * factor)
        right = (sound.get_right(snd_samp) * factor)
        factor += 0.25
        sound.set_values(sample,int(left),int(right))
    else:
        left = sound.get_left(sample)
        right = sound.get_right(sample)
        sound.set_values(sample, int(left), int(right))

return new_snd

Tags: sampleinright声音newgetindexleft
1条回答
网友
1楼 · 发布于 2024-04-29 17:09:00

left和{}将始终为零,因为在for循环中,每次运行都将factor设置为零。必须在for循环之外声明factor

def fade_in (snd, fade_length):
    new_snd = sound.copy(snd)
    factor = 0

    for sample in new_snd:
        snd_index = sound.get_index(sample)
        snd_samp = sound.get_sample(snd, snd_index)
        if snd_index <= fade_length:
            left = (sound.get_left(snd_samp) * factor)
            right = (sound.get_right(snd_samp) * factor)
            factor += 0.25
            sound.set_values(sample,int(left),int(right))
        else:
            left = sound.get_left(sample)
            right = sound.get_right(sample)
            sound.set_values(sample, int(left), int(right))

    return new_snd

相关问题 更多 >