I’ve just been testing the new 1.85.0RC today and have found a number of issues which I thought i’d share below. First two I have submitted patches for. This was tested on a Windows 8 PC.
Please let me know if you prefer to have these individually posted. I didn’t want to spam the forum.
1) Missing “import sys” in “sound/backend_pyo.py” (Patch submitted)
- Any sound playback will crash, sys undefined error
2) “default” is checked as “auto” in “sound/init.py” on line 138 (Patch submitted)
- Causes an error in the logs about not having a speaker called “default”
3) Pygame library is completely missing in Windows install (not tested Mac/Linux versions)
- Means that Pygame display and sound options cannot be used currently.
4) Using Pyo for sound has a glitchy sound noise when quitting, and the following error:
“portaudio error in Pa_AbortStream:Unanticipated Host Error”
“Exception TypeError: “‘NoneType’ object is not callable” in <bound method Server._del_of<pyolib.server.Server object at 0x17801030>> ignored”
5) New ‘sounddevice’ sound library occasionally skips playing a sound when trying to play multiple sounds (playing new sounds when one is already playing).
6) MovieStim.py demo does not run at all with ‘sounddevice’ library. The other demo Movie scripts work perfectly fine though.
- No error given on MovieStim.py, just closes right away with no video shown.
7) When using ‘sounddevice’, i’ve seen “IOError: Unknown Stereo type -1” errors for some coder scripts
- Have had to add “stereo=True” as an extra parameter on the Sound object when calling the file to load in to fix it.
EDIT - Feedback on the online functionality (click below to reveal):
Nice to haves
1) Would be good to have the option of passing startup attributes over GET, instead of sometimes having the pop up window. Its something that can be worked around though with a bit of code, so not critical.
2) Would be good to have redirection options at the end - the ability to redirect to another URL, possibly with parameters embedded to pass onto another system (such as Qualtrics). Again, its something that a bit of code can be added for now.
3) Inquisit can force full screen for users when running. It would be good to have something similar, as users can rescale the browser window if they wished.
These were based on the Builder Stroop demo, with a simple Image added to the page as a distractor (so I could test the image resource upload):
1) Image stimuli works and displays images, though has issues loading the last resource on the CSV trials list. It doesn’t seem to set up the last image resource correctly, and says that the object property is not present in the resources object. It moves to the next last item if you remove items from the end and try again, so it isn’t a path issue.
2) When using images, the data file output does not include the image path of what was shown and specified from the trials list.
3) When using images, it tries to set a unit setting as “from exp settings”, which is not a valid unit and crashes the script out. Commenting out this line in index.html resolves the error.
4) Running over HTTPS (which our webfarm enforces) gives mixed content issue, as js/psychojs/main.js tries to call a http url for IP fetching.
5) In the generated info.php - ExperimenterEmail has an unclosed property, which causes the script to crash on load. Needs to be set to a blank string by default.
6) In the generated JS instruction routines, it tries to access properties of ‘TrialComponent’, when it should be ‘instructComponent’ that it tries to access.
7) JS code generated puts a bunch of “flowScheduler.add(quitPsychoJS)” calls in experiment flow - so after seeing the instruction screen, the experiment would end without running trials. Can easily be removed to get things running.