gpt4 book ai didi

python - Psychopy 中的纯音以不需要的点击结束

转载 作者:太空宇宙 更新时间:2023-11-04 00:58:06 26 4
gpt4 key购买 nike

Psychopy 中的纯音以滴答声结束。我怎样才能删除这些点击?在 psychopy 中生成的音调和作为 .wav 导入的音调都有同样的问题。我尝试在使用 Audacity 生成的 .wav 音调中添加 0.025 毫秒的淡出。但仍然在心理状态下播放它们时,它们以咔哒声结束。

现在我不确定如何继续进行此操作。我需要进行一个心理声学实验,它不能像那样进行音调呈现。

最佳答案

据我所知,噼啪声或咔哒声通常与缓冲错误有关。许多年前,当比特率设置不正确时,我在 Linux 系统上遇到过类似的问题。因此,这里可能至少有两个可能的罪魁祸首:比特率和缓冲区大小。

您已经应用了起始斜坡和偏移斜坡以允许膜摆动进/出,所以这应该不是问题。 (顺便说一句,我认为你的意思是 0.025 而不是毫秒?否则,斜坡会太短!)

PyGame initializes具有以下设置的音响系统:

initPygame(rate=22050, bits=16, stereo=True, buffer=1024)

而 Pyo initializes它通过以下方式:

initPyo(rate=44100, stereo=True, buffer=128)

psychopy.sound 的文档指出:

For control of bitrate and buffer size you can call psychopy.sound.init before creating your first Sound object:

from psychopy import sound
sound.init(rate=44100, stereo=True, buffer=128)
s1 = sound.Sound('ding.wav')

所以,我建议你:

  • 尝试两种声音后端,Pyo 和 PyGame——您可以在 General/audio library 下的 PsychoPy 首选项中更改要使用的后端。将字段更改为 ['pyo'] 以仅使用 Pyo,或更改为 ['pygame'] 以仅使用 PyGame。
  • 使用两个后端(Pyo、PyGame)对比特率和缓冲区大小的不同设置进行试验。

但是,如果你想开始认真的心理声学,我建议你不要使用任何一种建议的解决方案,并获得一些专业的声音硬件或带模拟输出的数据采集板,它们将提供无失真的效果亚毫秒精度的声音,例如 National Instruments 或竞争对手生产的设备。 NI 板可以通过 Python 控制 PyLibNIDAQmx .

关于python - Psychopy 中的纯音以不需要的点击结束,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34113812/

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