之前我一直使用 VLC fluidSynth 将我的 midi 导出为其他格式,直到最近我发现它略微有点跑调,而 TiMidity 实际上播放我的歌曲时没有出现剪辑。这是一个很大的优点。
然而,fluidSynth 有一件事做得非常出色,那就是演奏打击乐。每次演奏钹时,钹至少要持续一秒半,而且听起来很棒。
但是当我在 TiMidity 中用相同的音效播放相同的 midi 时,它总是会切断钹,播放时间可能只有半秒钟。我甚至尝试将所有鼓分配给不同的音效,但它们仍然被切断。
有什么方法可以让 TiMidity 停止这样做吗?我知道我可以从 VLC 导出鼓声,从 TiMidity 导出旋律,然后将它们放在 Audacity 中,但这有点麻烦,尤其是当 TiMidity 似乎能够自己演奏钹时。
答案1
Timidity++ 带有一些可疑的默认设置,这些设置基本上忽略了声音字体和 midi 源指定的效果,而倾向于全局默认值。
虽然我不知道开发人员为什么选择这样做,但我可以推测这是因为更容易找到那些不太了解 midi 或音乐的人制作的糟糕的 midi 文件,或者拼凑在一起的声音字体或补丁集,使完美的 midi 听起来像高中乐队第一次练习一样。
在您的 timidity.cfg 中尝试以下设置,它们告诉 timidity 尊重声音字体和 midi 源创建者的意愿。
# Enable all midi effects
opt -Ewpvsetoz
# Don't cut sustain to save CPU
opt --no-fast-decay
# Pan quickly, even if it sounds bad
opt --fast-panning
# Set chorus and reverb by song & soundfont
opt EFreverb=1
opt EFchorus=1
# Never kill voices to save CPU
opt -k0
# Sustain fades after three seconds (3000ms)
opt -m3000
您可能会觉得使用这些设置后 timidity 的声音效果更差,如果是这样,则可能意味着您使用的音效字体很差。如果您只想快速启动和运行,FluidR3 音效字体适用于大多数 midi 文件,但我推荐 Tyroland 音效字体,它具有匹配且平衡的乐器,并具有适当的混响和合唱设置,并且与 fluidsynth 和 timidity 配合使用时声音效果很好。
https://musical-artifacts.com/artifacts/1305
如果听起来仍然不好,请尝试寻找更好的 midi 文件或播放更好的内容。