Issue:
We recently discovered that if a corrupt video file is located in the Shift Worship or Media Library folders, that can cause a crash when you attempt to open or create a script. This will not affect many users, but if you experience a crash after the Welcome screen while you are trying to open or create a script, here are the steps to resolve this issue:
- Open MediaShout 7 directly (do not double-click a script file to open it). Once you are at the Welcome screen, proceed as follows.
- If you have downloaded video files from Shift Worship within MediaShout, continue to the next step. Otherwise skip to step 6 below.
- Go to C:\Users\Public\My Shout\Shift Worship\Videos
- Rename the Videos folder to be 'OLD Videos', and then create a new folder named 'Videos' (which will now be empty).
- Reopen MediaShout and then attempt to create a new script. This may now work correctly without crashing. If so, there is a corrupt file in the folder that you renamed. You can now move the files from 'OLD Videos' into the new 'Videos' folder in batches, re-testing if you can create a new script each time until you identify the corrupt file. (If one file is a very small size, that is likely the culprit.) If this resolves the issue, you are finished! If not, it is possible that you also have corrupt files in your Media Library, so continue to the next step.
- Go to Settings > Library > Media > Video Folder and set that path to a new (empty) folder. (Our recommendation would be to simply create a new folder inside your existing folder and set the new empty folder as your library path. You might want to name the new folder something like 'Safe' so you know which folder is currently in use.)
- Save your changes and then attempt to create a new script. This should now work correctly without crashing.
- Note where your Video library is located and open that location using Windows Explorer.
- Close MediaShout.
- Begin moving the files and subfolders which are located in your original Video library folder into the new 'Safe' folder a few at a time.
- After adding some files, open MediaShout and see if you can still create a new script without crashing. If you can, add additional files/folders until you locate which file is causing the issue.
- Continue this process until you have your entire video library collection moved into the new ('Safe') folder.
- Once you are certain that you have found and removed any corrupt files, you can move everything else back the way you originally had it organized. In most cases this process can be completed relatively quickly as long as there are very few corrupt files. Often, by simply looking through the list of files you will notice one or more which are unusually small (may be a partial download or file copy), or see something else which helps you narrow down which file is the culprit.
- The user file which helped us find this issue was only 23KB, and that is way too small to be a normal video file. It turned out to be a partial download, and most of the file was missing.
If for any reason this process does not get you up and running again, or you do not have time to work through this process, you can roll back to v7.6.1 by downloading here. Uninstall v7.6.2 and then install and use the previous version until you can work through finding the corrupt file which is causing this issue.
More info:
In all of the examples we've seen of this issue, the file which caused the problem was a video file, but it might be possible for it to be caused by an image file. This article addresses issues with video files, but if this does not resolve the problem, then check your Image folders the same way: Move everything out, and then reintroduce the files in groups until you find the one which caused the issue.
Why is this happening now?
This issue happens when you attempt to open a script (new or existing) because thumbnail images are being created for the files in the Media Library at that time, and the corrupt file causes this process to fail abruptly. The new Media Library subfolders feature introduced in v7.6.2 now shows and processes all subfolders within the Media Library file path. So because more files are available in the Media Library, this also increases the opportunity for a corrupt file to trigger this issue. Adding the display and access to subfolders has been a frequent request of many users, but adding that feature also increases the odds that one of those files which were previously ignored and unavailable in the Library will now trigger an issue. The update didn't cause the file to be corrupt, it merely identified that a corrupt file was already there.
An additional fact which makes corrupt video files difficult to identify and avoid is that a lot of video playback software will ignore incorrect structure in the file headers (where all of the info about the type, resolution, and all of the other technical details of the file are stored) and sometimes even ignore or work around major corruption of the video data itself. So a user may not be aware of the fact that a video file is damaged because it will actually play when they want to use it. This is both good and bad, because while the file appears to be doing what you want it to, it may be teetering on the edge of failing completely, and it is just barely able to be played. This, combined with the sheer number of different combinations of video encoding settings and variables, makes it very difficult to find a way to quickly and easily test the absolute validity of every file before it becomes an issue. That said, we will continue to work on finding reliable ways to identify problematic files before they become an issue in your script or software.
(2024-03-19, DF)