【问题标题】:pygame.midi.MidiException: 'Device id invalid, out of range.'pygame.midi.MidiException:“设备 ID 无效,超出范围。”
【发布时间】:2015-11-06 22:57:27
【问题描述】:

我在 Mac OSX Yosemite 10.10.5 上,我正在尝试使用 pygame.midi 使用以下代码播放 midi 声音:

import pygame.midi
pygame.midi.init()
print pygame.midi.get_default_output_id() # -1
print pygame.midi.get_device_info(0) # None
player = pygame.midi.Output(0)

我得到这个输出:

-1
None
Traceback (most recent call last):
  File "midi.py", line 11, in <module>
    player = pygame.midi.Output(0)
  File "/Library/Python/2.7/site-packages/pygame/midi.py", line 414, in __init__
    raise MidiException("Device id invalid, out of range.")
pygame.midi.MidiException: 'Device id invalid, out of range.'

我尝试了一堆不同的设备 ID (0-128) 来查看我的输出扬声器的位置,但我找不到任何东西。好像我的 Mac 没有音频输出,但应该有。

【问题讨论】:

  • 我的 MacOSX 10.7.5 也是如此。我从来没有真正使用过 midi 模块,通常我使用混音器。您确定需要 midi 模块吗?

标签: python macos pygame midi


【解决方案1】:

pygame.midi 的目的是访问 MIDI 设备。

扬声器不是 MIDI 设备。您的计算机上也没有其他任何东西。

如果你想确保你的程序可以输出 MIDI 数据,你必须安装一个软件合成器。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-07-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-03-12
    • 2023-03-27
    相关资源
    最近更新 更多