media_player_gst killing OpenSesame?!
Hi there,
I designed an experiment looping through a succession of videos, using the vlc plugin. It works fine on my office PC, but I'm running into issues on multiple of our lab PCs (not the most powerful models) - experiment keeps freezing after a more or less random number of videos.
So, I thought I'd try the media_player_gst plugin, just to see if that, for some magical reason, might work better. Installed it following the instructions on my laptop (Win7 32bit, OpenSesame3.0.6, rather capable machine). Installed GStreamer 32bit on "D:" instead of "C:", but that doesn't appear to cause any trouble (at least, I don't get any "not found" error messages). Instead, I got the following when I inserted the media_player_gst item into an (otherwise empty) experiment:
\Program Files (x86)\OpenSesame\libopensesame\var_store.py:113: UserWarning: var duration is stored as attribute of item new_media_player_gst
\Program Files (x86)\OpenSesame\libopensesame\var_store.py:198: UserWarning: var duration is stored as attribute of item new_media_player_gst
\Program Files (x86)\OpenSesame\libopensesame\var_store.py:113: UserWarning: var video_src is stored as attribute of item new_media_player_gst
\Program Files (x86)\OpenSesame\libopensesame\var_store.py:198: UserWarning: var video_src is stored as attribute of item new_media_player_gst
\Program Files (x86)\OpenSesame\libopensesame\var_store.py:198: UserWarning: var fullscreen is stored as attribute of item new_media_player_gst
\Program Files (x86)\OpenSesame\libopensesame\var_store.py:198: UserWarning: var event_handler_trigger is stored as attribute of item new_media_player_gst
\Program Files (x86)\OpenSesame\libopensesame\var_store.py:198: UserWarning: var playaudio is stored as attribute of item new_media_player_gst
\Program Files (x86)\OpenSesame\libopensesame\var_store.py:198: UserWarning: var loop is stored as attribute of item new_media_player_gst
\Program Files (x86)\OpenSesame\libopensesame\var_store.py:198: UserWarning: var sendInfoToEyelink is stored as attribute of item new_media_player_gst
\Program Files (x86)\OpenSesame\libopensesame\var_store.py:113: UserWarning: var event_handler is stored as attribute of item new_media_player_gst
\Program Files (x86)\OpenSesame\libopensesame\var_store.py:198: UserWarning: var event_handler is stored as attribute of item new_media_player_gst
From scanning through some older discussions, it seems to me that this shouldn't be a major problem, as it's only warnings.
But now it get's weird. When I run the experiment, e.g., in window mode, no window opens, but all the controls are greyed out. I can't do anything but use the task manager to shut down OpenSesame. Even weirder, this also happens when I remove the media_player_gst item (that I previously inserted into my experiment) completely from the experiment (i.e. delete and remove unused) - OpenSesame still crashes when I try to run the experiment. I can only grab a screenshot of the error messages (not really helpful for me, I'm not really into programming):
Any ideas what's going on? I've read elsewhere that the plugin might not be compatible with OpenSesame3, but then, on GitHub, it says that fixes have been made to make the plugin work with OpenSesame3 for now. Any help would be appreciated. (And I'd be just as happy to use the vlc plugin, if I somehow could prevent it from freezing on our older machines.)
Tibor
Comments
Hi Tibor,
We recently gave the media_player_gst plugin a small update to be compatible with OpenSesame 3, but it may be that we missed something. It worked on our tests, but then again we did not test it that extensively. Those warnings you get when importing the media player the first time are shown because the plugin is not adhering to the new method of storing variables, but they should be harmless.
That being said, it rather appears that your problem has to do with OpenSesame's internal console, which also got some major updates. Thanks for posting your stack trace, but I think you cut out the error message indicating what exactly went wrong, which is quite important here. Could you post that here too, so we can take a look what exactly goes wrong at that point?
Sorry about the cutting - OpenSesame wouldn't let me scroll anymore once it more or less froze, so that was all that I was able to see.
Had to close the debug panel to see the complete thing:
There is no real experiment to it - just the notepad and sketchpad items that come by default when starting up OpenSesame, plus the media_player_gst item (with no video file specified).
(this was quick run mode, by the way, but the same happens in the other modes as well)
Thanks for the full stack trace. It doesn't look like this has anything to do with the gst plugin (as it does not appear anywhere in the stacktrace) but rather with the new IPython library that OpenSesame uses for the Debug window. @sebastiaan, we have seen this error before in of the earlier versions of OpenSesame 3, but it was fixed if I remember correctly? What would prevent the stderr output from being flushed?