如何修复屏幕("OpenMovie"...导致Matlab崩溃



设置:Matlab Student 2014,Psychtoolbox 3.0.12,GStreamer 1.4.3,ATI Radeon 69xx,全部在Windows 7上,全部64位

屏幕使用不同的参数,只有在Screen('OpenMovie'时,整个程序(Matlab)才会崩溃——有时出现错误(无法同步帧速率),有时根本没有错误。

我知道它非常具体,我认为它在我的配置中(代码将在不同的系统(实验室)上工作)。

到目前为止我尝试过的:

  • Psychtoolbox 3.0.11,GStreamer SDK,GStreater 1.4.1
  • 更新的ATI驱动程序(完整的催化剂控制中心,..)
  • 删除了多监视器设置(使调试变得更加困难..)
  • Matlab本身也可以,GStreamer也可以(尝试过用playbin播放电影)
  • 任何SyncTrouble状态:等待垂直同步,三重缓冲关闭
  • 覆盖同步测试或根本跳过(也会崩溃)
  • 正在查找丢失的dll(用于Screen.mexw64)
  • VBLSyncTest和PerceptualVBLSyncTest看起来不错,有结果(对我来说)

它必须是非常简单的东西,或者非常具体的东西——我不知何故没有想法。我的猜测是Radeon垂直同步开启设置不起作用——原因是什么。

任何猜测,提示均无效。(甚至在Matlab/Psychtoolbox中测试屏幕或垂直同步的其他方法)

经过几个小时的搜索,我想我找到了一个解决方案——哦,Windows!(哦,一行简单的代码)

Screen('Preference', 'ConserveVRAM', 4096);

4096==kPsychUseBeanositionQueryWorkaround告诉PTB始终在中使用中断波束位置查询的解决方法MS Windows上的VBL,即使自动启动测试没有检测到任何问题。这适用于测试无法检测到损坏的罕见情况设置。[Pychtoolbox文档]

我将在一些Videocache操作后重新检查并重新启动。


编辑:好吧,这只起过一次作用,第二次是随机的-似乎ATI Radeon驱动程序的行为不太确定-我还检查了Linux(Ubuntu 14.04.1)。具体来说,VSync速率似乎表现得很奇怪。

不过,它通常在指定的Linux上使用开源radeon驱动程序(而不是fglrx驱动程序)。->Linux系统上的问题是:它只能配置为一个屏幕(两个监视器的设置对于在一个屏幕上调试来说很好)。(是的,我试过:Unity,Gnome,Xmonad,Gnome+Xmonad-但我想那是另一回事了)

好吧,我已经写够了,我的解决方案:使用Linux发行版(虽然很不满意,因为我不能完成所有的工作)。

相关内容

  • 没有找到相关文章

最新更新