1

pyo ライブラリを使用してサウンドを再生しようとしています。

次のコード:

from psychopy import sound, logging, core
logging.console.setLevel(logging.DEBUG)
from pyo import *

s = Server()
s.setInputDevice(4)
s.setOutputDevice(4)
s.boot()
s.start()

print "output", pa_get_output_devices()
print "input", pa_get_input_devices()

play_audio1 = sound.SoundPyo(value = 'LRsound.wav', stereo = True)
play_audio1.play()
core.wait(1) # wait so the sound can play  

この出力を返します:

pyo バージョン 0.8.0 (単精度を使用)

Portmidi 警告: midi 出力 0 を開けませんでした (Microsoft MIDI Mapper): PortMidi: `ホスト エラー'

output (['Microsoft Sound Mapper - Output', 'Speakers / Headphones (Realtek ', 'Primary Sound Driver', 'Speakers / Headphones (Realtek High Definition Audio)', 'Realtek ASIO', 'スピーカー / ヘッドホン (Realtek High Definitionオーディオ)'], [0, 1, 2, 3, 4, 5])

入力 (['Realtek ASIO']、[4])

サーバーが起動していません。サーバーを起動する必要があります! Pa_OpenStream の portaudio エラー: I/O デバイスの組み合わせが正しくありません Portaudio エラー: I/O デバイスの組み合わせが正しくありません Pa_AbortStream の portaudio エラー: 無効なストリーム ポインター Pa_CloseStream の portaudio エラー: 無効なストリーム ポインター

コードと出力からわかるように、入力デバイスと出力デバイスが同じであることを確認しようとしました。

これは、I/O デバイスの不正な組み合わせに関するメッセージが原因です。確かに、私の試みが惨めに失敗したこともわかるでしょう。Server()コード チャンクの有無にかかわらず、同じエラー メッセージが表示されます。

上記のコードを PsychoPy で実行しました。Spyder で同じコードを実行すると、実際には渡されません。

play_audio1 = sound.SoundPyo(value = 'LRsound.wav', stereo = True)

何もせずにハングアップします。

なぜpyoがpythonで遊んでいないのか考えていますか? どうすれば修正できるかについてのアイデアはありますか?

御時間ありがとうございます。

4

2 に答える 2

0

私は最終的に pyo ライブラリをあきらめ、Pygame を使用して PsychoPy でサウンドを再生することに成功しましたsound

from psychopy import prefs
prefs.general['audioLib'] = ['pygame']

...

sound.Sound(value = soundfile)

Windows 7 Pro を使用しているとき、Pyo は悪夢であることがわかりました。PyGame でのこの回避策が役立つことを願っています。

于 2016-11-27T11:44:19.233 に答える