gpt4 book ai didi

python - 在pygame中设置MIDI文件的播放位置

转载 作者:行者123 更新时间:2023-12-03 01:56:02 28 4
gpt4 key购买 nike

我真的希望能够使用 pygame.mixer.music 模块从 MIDI 文件中的某个位置开始播放,但我收到以下错误:

error: Position not implemented for music type

(这是 pygame 1.9.1 的版本。)

我看不到任何其他可以使用这种 MIDI 到音频合成的库。有什么建议么?

最佳答案

我在 python 2.7.x 上有 pygame 1.9.1。我能够模拟AttributeError: 'module' object has no attribute 'set_pos'错误。
根据安装版本随附的文档,位于 C:\Python27\Lib\site-packages\pygame\docs
1) 首选:
pygame 1.9.2 及以上版本有 pygame.mixer.music.set_pos功能。因此,您可能想尝试将 pygame 升级到 1.9.2
pygame 网站上的官方文档是针对我们所指的 1.9.2 的。
Here is a link到官方 1.9.2 pygame 文档

2) 第二选择:
接下来,使用当前版本,您可以尝试使用pygame.mixer.music.play(loop= ?, start=? )参数,但这仅适用于 MP3 和 OGG。
因此,您需要将现有的 MIDI 文件转换为 MP3/OGG 才能使此选项起作用。

最好和更简单的选择是将 pygame 升级到 1.9.2

从官方 1.9.1 文档中复制/粘贴

pygame.mixer.music.play Start the playback of the music stream

pygame.mixer.music.play(loops=0, start=0.0): return None
This will play the loaded music stream. If the music is already playing it will be restarted.

The loops argument controls the number of repeats a music will play. play(5) will cause the music to played once, then repeated five times, for a total of six. If the loops is -1 then the music will repeat indefinitely.

The starting position argument controls where in the music the song starts playing. The starting position is dependent on the format of music playing. MP3 and OGG use the position as time (in seconds). MOD music it is the pattern order number. Passing a startpos will raise a NotImplementedError if it cannot set the start position

关于python - 在pygame中设置MIDI文件的播放位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35530050/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com