python - 使用 pygame.midi 播放 midi 音符时出现分段错误
问题描述
我一直在尝试在 PyCharm 中编写一个简单的 python 程序,它可以使用 pygame.midi 播放 midi 音符。看来我可以初始化并退出 pygame.midi 就好了,就像这样:
import pygame
import pygame.midi
import time
pygame.midi.init()
pygame.midi.quit()
上面的代码没有返回任何错误,但是,一旦我尝试使用 pygame.midi 播放音符,我就会收到一条错误消息。这是给我错误消息的代码:
import pygame
import pygame.midi
import time
pygame.midi.init()
player = pygame.midi.Output(0)
player.set_instrument(42)
player.note_on(60, 127)
time.sleep(3)
player.note_off(60, 127)
pygame.midi.quit()
这是错误消息:
Fatal Python error: (pygame parachute) Segmentation Fault
Python runtime state: initialized
Current thread 0x000040fc (most recent call first):
File "C:\Users\username\PycharmProjects\Geh\xf8rprogram_V3\venv\lib\site-packages\pygame\midi.py", line 422 in __init__
File "C:/Users/username/PycharmProjects/Geh\xf8rprogram_V3/krasjtest.py", line 7 in <module>
我该如何解决这个问题?
解决方案
安装最新版本的pygame:
pip install pygame==2.0.0.dev6
为避免出现问题,以管理员身份运行 cmd 或 powershell。或者确保你在 PyCharm 中指定了这个版本。但我建议你先尝试在 IDLE 中运行它。这应该可以解决问题。
推荐阅读
- docker - 使用 JDBC 输入插件在 Docker 上的 Logstash 不会从 SQL Server 获取所有行
- flutter - 如何突出显示我在字符串中搜索的确切单词,而不仅仅是字符串的开头?
- flutter - 如何实时获取文档长度
- javascript - Reactjs 从获取请求中返回一个对象
- javascript - Nginx 正在尝试打开文件而不是重定向到代理
- python - _joint_log_likelihood 给我错误的值
- sql - 如何按日期获取最后一件商品的价格
- python-3.x - 定期执行功能而不停止其他操作
- r - 使用 R 从 PDF 表单到数据框的文本挖掘
- r - 如果 r 中出现错误,则转到 lapply() 的下一次迭代