2

我在 Python 2.7.14 中使用 Pyo ( http://ajaxsoundstudio.com/software/pyo/ ),我试图用这段代码播放音频文件

from pyo import *
s = Server()
s.boot()
s.start()
sf  = SfPlayer("C:\Users\name\Downloads\audio.mp3", speed=1, loop=True).out()

但我收到这条消息:

Traceback (most recent call last):
  File "C:\Python27\pyotest.py", line 5, in <module>
    sf  = SfPlayer("C:\Users\name\Downloads\audio.mp3", speed=1, loop=True).out()
  File "C:\Python27\lib\site-packages\pyolib\players.py", line 98, in __init__
    PyoObject.__init__(self, mul, add)
  File "C:\Python27\lib\site-packages\pyolib\_core.py", line 967, in __init__
    PyoObjectBase.__init__(self)
  File "C:\Python27\lib\site-packages\pyolib\_core.py", line 809, in __init__
    raise PyoServerStateException("The Server must be booted before "
PyoServerStateException: The Server must be booted before creating any audio object.
4

1 回答 1

0

我曾经(在 Windows 上)遇到过同样的错误。启动了安装 Pyo 附带的 E-Pyo 编辑器。之后它工作得很好。

如果这没有帮助,您可能需要手动设置服务器选项和输出设备。

获取所需输出设备的 ID

pa_list_devices()

如果您找到了您的 ID,您可以使用此命令设置它(将 0 更改为您的设备 ID),然后启动服务器:

s.setOutputDevice(0)
s.boot()
于 2018-10-27T14:15:53.380 回答