【发布时间】:2018-04-25 16:16:02
【问题描述】:
在我准备的实验中,声音从 csv 文件播放,时间以帧为单位测量。鉴于每个声音持续 300 毫秒,这等于 18 帧。
from psychopy import data
from psychopy import core, visual, gui, data, event
from psychopy.tools.filetools import fromFile, toFile
import numpy, random, csv, time
from psychopy import logging, prefs
prefs.general['audioLib'] = ['pyo'] # Set the Audio Library [pyo (highest performer, check it), sounddevice (looks promessing, check it) or pygame (not good with timing)]
prefs.general['audioDriver']=['coreaudio']
from psychopy import sound
win = visual.Window([400,300], monitor="testMonitor", units="cm", fullscr=False)
stimuli = []
datafile = open("audioStim.csv", "rb")
reader = csv.reader(datafile, delimiter=";")
for row in reader:
stimuli.append(row[0])
#print (stimuli)
datafile.close()
clock = core.Clock()
for stimulus in stimuli:
#print (stimuli)
for frameN in range(18):
#print clock.getTime()
sound_stimulus = sound.Sound(stimulus)
sound_stimulus.play()
win.callOnFlip(clock.reset)
win.flip()
## Closing Section
win.close()
core.quit()
在运行实验时,声音似乎相互融合。它们听起来并不离散。 结果有点问题,这是 Psychopy 的问题(声音这么短时质量不好?)还是代码的问题?
感谢您的宝贵时间! 非常欢迎任何其他改进代码的建议或建议。
【问题讨论】: