用机器生成的音乐来监控Linux 计算机的办法(2)

设置和配置示例

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 程序

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wzwxsy.html