Audiomath调用MakeRise、MakeHannWindow等接口出现TypeError问题
问题修复方案
你调用MakeHannWindow接口的参数传参方式不符合audiomath的接口规则,这是报错的核心原因:
- 该接口的第一个位置参数
span要求传入长度为2的序列,用来指定汉宁窗作用的起止样本位置,你直接传入整数5作为位置参数,参数类型不匹配触发了错误。 - 如果你要传入秒为单位的窗口时长,必须显式指定
duration参数名。
以下是可正常运行的修正代码:
from audiomath import Sound import numpy sound01 = Sound('mySample.wav') # 显式指定duration参数,实现总长度5秒的淡入淡出效果 soundFadedIn = sound01.Copy().MakeHannWindow(duration=5) soundFadedIn.Play()
补充说明:
- 代码中加入
.Copy()是为了保留原始音频对象sound01不受修改,如果你不需要保留原始音频,可以直接调用sound01.MakeHannWindow(duration=5)后直接播放原对象即可。 - 如果你只需要单独的淡入或者淡出效果,可以使用对应的
MakeRise、MakeFall接口,传参规则一致:# 前5秒淡入 fadeIn = sound01.Copy().MakeRise(duration=5) # 最后5秒淡出 fadeOut = sound01.Copy().MakeFall(duration=5)
内容的提问来源于stack exchange,提问作者Vinicius Meirelles
相关产品推荐
相关产品推荐

