我已经通过 neurodebian 存储库(软件包名称:octave-psychtoolbox-3
)成功安装了最新版本的 psychtoolbox3
调用 AssertOpenGL 似乎工作正常:
>> AssertOpenGL
PTB-INFO: Display ':0' : X-Screen 0 : Output 0 [default]: Primary output : Connected : CRTC 0 [XID 642]
PTB-INFO: Display ':0' : X-Screen 0 : Assigning primary output as 0 with RandR-CRTC 0 and GPU-CRTC 0.
但是当我向屏幕发出调用时,我得到了一个相当神秘的错误。
>> Screen('Resolution', iscreen, 1024, 768, refreshrate);
INTERNAL PSYCHTOOLBOX ERROR
error: PsychError_internal
general description: Unspecified error, probably a Psychtoolbox bug
specific description: Attempt to set invalid video settings
module name: Screen
subfunction call: Resolution
file name: Linux/Screen/PsychScreenGlue.c
function name: PsychSetScreenSettings
line number: 1776
INTERNAL PSYCHTOOLBOX ERROR
error: PsychError_internal
general description: Unspecified error, probably a Psychtoolbox bug
specific description: Attempt to restore now invalid video settings
module name: Screen
subfunction call: Resolution
file name: Linux/Screen/PsychScreenGlue.c
function name: PsychRestoreScreenSettings
line number: 1846
PTB-ERROR: Error during error handling! ScreenCloseAllWindows() called recursively! Trying to break out of this vicious cycle...
PTB-ERROR: Maybe it is a good idea to exit and restart Matlab/Octave.
Error using Screen
See error message printed above.
调用Screen
中的变量iscreen
由行iscreen = max(Screen('Screens'));
设置,等于 0
。
知道这里可能出了什么问题吗? 我知道这个脚本在 MacOSX 下工作,但由于某种原因它在这台机器上崩溃(Ubuntu 12.04/Matlab R2012a)。
提前感谢!
编辑:有些人建议这可能是我的显示器不支持我传递给Screen
呼叫的刷新率的问题。 不幸的是,当我用显示器的当前刷新率替换refreshrate
变量时,我仍然收到相同的错误。 还有其他想法吗?
您请求的刷新率不受支持。
试试屏幕('分辨率',iscreen,1024,768,60);你就会明白我的意思。
ResolutionTest.m 将报告支持的分辨率。不确定您将从哪里获得费率。