设置和配置示例
FluidSynth 设置和检验
安装 FluidSynth 并下载示例 SoundFont 后,用命令 fluidsynth Hammered_Instruments.sf2 启动 FluidSynth 程序。您将看到类似以下内容的输出:
清单 1. FluidSynth 输出
lash_open_socket: could not look up host 'localhost': Servname not supported for ai_socktype
lash_open_socket: could not connect to host 'localhost', service '14541'
lash_comm_connect_to_server: could not create server connection
lash_init: could not connect to server 'localhost' - disabling LASH
lash_init: LASH_START_SERVER unset, not attempting to start server automatically
fluidsynth: warning: Failed to pin the sample data to RAM; swapping is possible.
ALSA lib timer_hw.c:269:(snd_timer_hw_open) extended read is not supported (SNDRV_TIMER_IOCTL_TREAD)
fluidsynth: warning: Requested a period size of 64, got 940 instead
fluidsynth: ALSA driver: Using format s16, rw, interleaved
FluidSynth version 1.0.7
Copyright (C) 2000-2006 Peter Hanappe and others.
Distributed under the LGPL license.
SoundFont(R) is a registered trademark of E-mu Systems, Inc.
Type 'help' for information on commands and 'help help' for help topics.
>
不必担心这些警告消息。如果看到 > 符号,则 FluidSynth 已经准备好开始生成声音。尝试使用 noteon 5 77 100 在通道 5 中创建一个速率为 77、音量级别为 100 的通知。如果可以听到电子钢琴声,那么您就已经准备好继续执行下一步。键入 quit 或使用 Ctrl+C 组合键退出 FluidSynth。如果声音不可用或者收到错误消息,则请确保声音服务器已经启动并且混音器的设置都正确。
向 FluidSynth 发送多个通知事件时,您可能会注意到一些声音波动 —— 就像音乐 CD 跳帧一样。采用命令 fluidsynth Hammered_Instruments.sf2 -c10000 -z10000 增加音频缓冲区的数目和每个缓冲区的大小,以便缓解此问题。这将启动有 10,000 个音频缓冲区且每个缓冲区大小为 10,000 的 FluidSynth —— 这个空间很大,足以减少波动。
chordStats.pl 程序