在Python中异步播放大量声音

在Python中异步播放大量声音,python,asynchronous,audio,Python,Asynchronous,Audio,我希望在Python中播放声音,并满足以下要求: 同时发出多种声音 异步的 在Linux上工作 下面是这个命令应该如何工作的示例: while(True): play(sound) time.sleep(0.05) 这将大量地发送声音,精确地每秒20次 到目前为止,我已经尝试过:PyDub、PlaySound、PyGame.mixer(带频道) PyGame确实成功地实现了异步,但对我来说,它们都不能同时播放相同的多个声音 在Linux、Python 3.5.2上进行的测试 P

我希望在Python中播放声音,并满足以下要求:

  • 同时发出多种声音
  • 异步的
  • 在Linux上工作
  • 下面是这个命令应该如何工作的示例:

    while(True):
        play(sound)
        time.sleep(0.05)
    
    这将大量地发送声音,精确地每秒20次

    到目前为止,我已经尝试过:PyDub、PlaySound、PyGame.mixer(带频道)
    PyGame确实成功地实现了异步,但对我来说,它们都不能同时播放相同的多个声音

    在Linux、Python 3.5.2上进行的测试

    Py2和Py3的两种解决方案都是受欢迎的

    我对使用pygame同时播放多个声音没有问题,python3代码示例可能会很有用


    注意:pygame.mixer.music一次只支持播放一个文件。您需要使用pygame.mixer.sound

    我知道OpenAL有一个从多个源播放声音的概念。您可以尝试PyAL之类的python绑定。我很惊讶在pygame中多个声音都不起作用。