我正在尝试使用Haskell的Euterpea库。我的第一个目标是让它播放给定的声音文件(例如mp3或wav),但首先我按照说明遇到问题,让它只是在ghci中播放一个简单的音符声音。
按照Euterpea web page的“设置MIDI”说明,我跑了
import Euterpea
play $ c 4 qn
在ghci。 'play'命令导致以下错误消息:
Prelude Euterpea> play $ c 4 qn
*** Exception: No MIDI output device found
CallStack (from HasCallStack):
error, called at ./Euterpea/IO/MIDI/MidiIO.lhs:122:18 in Euterpea-2.0.2-Iz37iWlkpjn2emP4FnvOI1:Euterpea.IO.MIDI.MidiIO
我想我需要将midi输出指定到我的机器(macOS Sierra)并找到一个名为'Audio MIDI Setup'的应用程序,但它显示已经指定了midi输出(我的内部扬声器)。
任何人都知道这个问题是什么或如何解决它?
答案 0 :(得分:0)
也许你已经解决了这个问题,但后人提出了一些想法:
听起来你没有先安装并运行 MIDI合成器(例如SimpleSynth)。 AFAICT,音频MIDI设置实际上并没有包含软件合成器,它更适用于advanced / hardware MIDI setup。
这应该会创建Euterpea无法在那里找到的MIDI输出设备。您可能还需要使用频道(例如,使用playDev n
代替play
,并从您的设备列表中计算出n的值...甚至只需尝试1到8)
无论哪种方式,在Donya的working with MIDI on Mac OS X页面上都有一些很好的Mac专家帮助。希望有所帮助。