| Reference | Downloads | Github

Pavlovia not playing MovieStim

It’s not a sustainable solution but under the circumstances I’m just going to take care of this. Give me a bit.

Oh thank you!!! That is an incredible help!! I normally have Adobe access, but yes, the circumstances are difficult right now.

I can update the excel file to match the new video extensions. I’m extremely grateful for anything you’re able to do.

That…didn’t work at all unfortunately! Sorry to get your hopes up. I tried doing the mass import/export in Adobe Media Encoder, and while it output videos, they are scrambled somehow. I don’t really understand how it could change the order of the frames by re-encoding them, but it seems to have a lot of trouble reading in the original files. I suspect it’s the framerate being 30.4 rather than 30fps, which I still don’t understand!

Were these stimuli originally generated in Blender?

It’s perfectly okay!! I appreciate you trying!

The stimuli originally generated via MatLab. Those files were then imported to Open Shot Video Editor, trimmed, and exported as .mov files. Only a few of the files (coincidentally, the ones that are working fine and the ones that are not part of a loop) were generated by Blender. I figured they worked because they were outside of a loop, but maybe it’s because of the change in software. I will test adjusting the practice videos in Blender and see if that changes anything.

Will post an update when it is complete

Quick update: I re-rendered the videos for the practice trials and edited the conditions file to match the new video file format.

Good news: I didn’t receive the same error message and the experiment started the practice trial loop.

Bad news: None of my videos are populating on the screen. I didn’t change anything about the initial “instructional videos”, but for some reason those are no longer appearing on the screen (though they used when the other videos caused an error message). I will check to see if this is a units/sizing issue, but I doubt it since the instructional videos are gone and I didn’t even touch those routines or video files. Additionally, some of my code components are now not skipping routines as they should have been, so my practice loop goes through every routine rather than conditionally skipping through the study.


Interesting. Let’s do some minimal testing. Make a new experiment that just presents a few videos, nothing else, and see if they render correctly. That will at least tell us that the videos work in principle. Then we can go piece-by-piece and figure out what happened to the rest of the experiment.

Hi Jonathan - I am running some tests now. So far, I have determined that Pavlovia can’t run .mov files, so that could have been my primary issue. When outside of a loop, it runs .mp4 files just fine (so I don’t know what was causing the issue last night, but I don’t have the same problem in this new file).

My next steps are to create a loop to see if the video files will still play. Then, if that works, I will try to add a code component and see how that goes.

Here is the link to the repository if you would like to follow along:

(Edit: I will be working on this all day until I manage to get the study to work, so I should be able to respond right away if you have any ideas or input. I’m also keeping a word document with a more detailed description of each update to the study and will gladly share that when all is said and done)

Update: The “Video Test” experiment works well with .mp4 files and the loop function. I am adding code components (identical to those in my UnkObjID study) to see if it still functions.

Update again: So the final “Video Test” file uploaded with the code components that cause conditional branching works. There are a few cases where routines appear to be skipped, but I think that happened from me instinctively hitting the space bar too soon.

I am working on re-rendering all my video files to .mp4 files now and making the adjustments to the code components (apparently, they didn’t already translate to JavaScript as I had initially thought). Will post one more update when the files are reformatted and updated in Pavlovia. Hopefully, this will lead to a resolved issue!!

Well, not exactly the update I want to be sharing…

I converted all the video files to be .mp4 files and pushed the change to Pavlovia. When I pilot the experiment, it tries to download 394 files (even though there are only 198 associated with the study and repository). After hitting okay to start the pilot, the entire chrome window goes black and the browser stops responding.

Is this a browser issue or more of an experiment issue?? I had the same result when I used Firefox as well.

Experiment issue, I think. It sounds like it doubled up on the videos somehow and it’s probably putting too much memory load on things. I would look in your experiment folder and see if it’s still got copies of the movies you aren’t using, and then check if the Pavlovia repository likewise.

I checked and didn’t see any duplicate files in my local folder or in the repository. I was wrong with my comment, it’s trying to pull 369 files. Still the wrong amount, but not the right number for there to be duplicates.

Should I try deleting the experiment/repository and re-uploading it??

Yeah, I think that’s probably the logical next thing to try.

Okay, I was wrong. There were some duplicate files in the html/resources folder. Those were removed and the project updated.

Piloting now attempts to download 193 files, which is the correct amount. The study will run in windowed view, however I am still getting a black screen and chrome crashes when I try to run the study in full screen. If I have the study opened in a windowed fashion and try to put that one window to full screen or adjust the size of the window in any way, chrome crashes again. Could that be part of my experiment’s screen settings??

Edit: if I start with the window full screened on my computer, all browsers crash immediately when I hit “ok” to start the pilot

The study opens in full screen. If I hit esc, the pilot shows up in a browser tab.

The study runs as needed until I get to the looped trials again. At this point, it seems the code component is causing an issue. The study gets stuck in a loop where it thinks a participant responded too soon (even though the response was during the appropriate interval) and then the next video never plays. However, no error messages show up at any point.

Progress! The full-screen issue is a weird one, I don’t know what to make of that. W/r/t the timing, that’s a fine-tuning thing, or it should be. If you make the response window overly large (just to ensure any response window works), does it work? Or is this something about the code in general?

I mimicked the response windows on the Video Testing experiment that I ran and it worked just fine, but I set those response windows to be about 4x longer than those for this study. The code is identical with the exception of different variable names. With the video testing study, the videos played in the appropriate manner according to the code, so I don’t know why that should be different now.

I had the issue when originally creating the study that the code components only worked in the “each frame” section, not the “begin routine” section, so maybe I’ll try switching that and see if it changes anything.

I tried going to Experiment Settings on Builder and unchecking the “full screen” box on screen settings. The experiment still tried to open in full screen and then caused chrome to crash because it wouldn’t let me escape the window. I am going to leave that box checked for now and see about dealing with the screen issue after the timing issue.

Also, here is the updated link to the repository

So moving the code components from the “each frame” tab to the “begin routine” tab did not have any effect. However, since the videos are now playing and I’m not getting the same error message as before, I think it’s best to create a new thread so that the issue can stay on topic. I will link the new thread in an edit to this comment.

New topic link: Conditional Loop not working in Pavlovia