pyglet full screen error

172 views
Skip to first unread message

Katie Insel

unread,
Jun 2, 2014, 12:47:23 PM6/2/14
to psychop...@googlegroups.com
Hello,


I've been trying to run a task in full screen on a second monitor, and I keep getting errors. The monitor size is 1028 x 768. When I try to run in full screen, I get the following error:

File "/Users/nirvana/Desktop/EMoney/PsychoPy1.79.app/Contents/Resources/lib/python2.7/psychopy/visual/window.py", line 1268, in _setupGL

    self._setupPyglet()

  File "/Users/nirvana/Desktop/EMoney/PsychoPy1.79.app/Contents/Resources/lib/python2.7/psychopy/visual/window.py", line 1149, in _setupPyglet

    style=style)

  File "/Users/nirvana/Desktop/EMoney/PsychoPy1.79.app/Contents/Resources/lib/python2.7/pyglet/window/__init__.py", line 686, in __init__

    self._create()

  File "/Users/nirvana/Desktop/EMoney/PsychoPy1.79.app/Contents/Resources/lib/python2.7/pyglet/window/carbon/__init__.py", line 549, in _create

    _aglcheck()

  File "/Users/nirvana/Desktop/EMoney/PsychoPy1.79.app/Contents/Resources/lib/python2.7/pyglet/window/carbon/__init__.py", line 1365, in _aglcheck

    raise CarbonException(cast(agl.aglErrorString(err), c_char_p).value)

pyglet.window.carbon.CarbonException: invalid fullscreen drawable


This happens when I use a laptop with Mac OS x 10.7.5. But, if I change the settings to 800x600 display, the task will enter full screen mode. It will also run as not full screen at the proper dimensions.

The other interesting thing is that, when I use a different laptop that runs 10.8.5, everything runs in full screen without error.

If anyone has any insights into this pyglet error, I would really appreciate it! I've also tried running various versions of psychopy (1.80.03, 1.79, 1.78, 1.76), and all of them have the same error. And I've tried several different tasks, and those too fail to enter full screen.

Thanks for your help!!

Best,
Katie Insel

 

Erik Kastman

unread,
Jun 3, 2014, 10:06:40 PM6/3/14
to psychop...@googlegroups.com
Hey all,

FWIW Katie’s in my lab and I poked around with this too, but couldn’t find any leads. The only suspicious thing I saw in Console was a wx "Bad Bundle" error, but I’m not sure what that would refer to or if it is unrelated, and it certainly doesn’t explain why low resolutions (800x600) would work full screen, but higher ones would not. Beyond what Katie reported, this error occurs regardless of the second screen - when the display is in mirrored mode it breaks with the same pyglet invalid fullscreen drawable error. 

This exact same setup (combination of laptop and projector) used to work - it’s a testing laptop and are confident that we haven't updated anything, but between piloting the task and the second subject we now cannot get full-screen at anything above 800x600. The error occurs at the start of the experiment during Window init, so it’s not task-specific.

Does anyone have suggestions for us to investigate? This is about the depth of my knowledge for low level pyglet/ open gl errors. Those errors are wrappers around pyglet’s gl calls, and I’m not sure what could be causing them to come back broken. Thanks for any thoughts,

Erik


--
You received this message because you are subscribed to the Google Groups "psychopy-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to psychopy-user...@googlegroups.com.
To post to this group, send email to psychop...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/psychopy-users/ad7f399b-cb70-4fab-9614-df342c15efb6%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Jonathan Peirce

unread,
Jun 4, 2014, 6:07:00 AM6/4/14
to psychop...@googlegroups.com
All I can imagine is that the fullscreen mode needs more graphics card memory (not sure why), and you don't have very much spare.

I guess you could try turning off pyglet's "shadow window" (I think that requires an environment variable to be set, but it might be possible by doing something like:
    import pyglet
    pyglet.options['shadow_window']=False
I think the shadow window uses more graphics card memory than normal rendering and so this might help?

worth a try

Jon
Reply all
Reply to author
Forward
0 new messages