Load video file with left button, .vtt or .srt subtitles with right button
Select the content to skip:
Sex and Nudity
Violence and Gore
Profanity and Hate
Alcohol, Drugs and Smoking
Frightening and Intense
Load here the .skp file containing the skips:
This little app allows you to filter out several types of objectionable content from downloaded video files. It uses the same categories as the "Parents Guide" section of IMDB.com. It can skip sections entirely, or simply mute the sound or blank the video, at your discretion. Skip files can be shared at the official VideoSkip Exchange, or any way you want. The exchange is at https://prgomez.com/videoskip/exchange There is also an exension version of this app, available from the Chrome and Firefox web stores, which works on streaming video from any source.
Step by step:
Load the video from a local file using the "Load video" button. Because the video must be playable in a browser, it can take .mp4, .ogg, and .webm formats. You can save videos from streaming sources in these formats, rip a disc using software, or convert video files into these formats from a different format (more information below).
Optionally, load a file containing subtitles using the "Load subtitles". Subtitles must be in .vtt or .srt format. They might show as "English" but never mind.
Toggle the category filters using the checkboxes below the video frame. A check means that the filter is on and content labeled accordingly will be skipped or blanked out. Otherwise it will be shown.
If you have a .skp file containing the skips, you can load it now with the "Load skip file" button. Once loaded, its contents will appear in the box, plus perhaps a screenshot on its right. Each skip consists of beginning and end times relative to the start of the video, with an arrow between them, and on the line below a category plus maybe a handling label (such as "video" or "audio").
If the first line contains only one time, this means it is used for syncing the skips for different versions of the video. The process for syncing, explained below, can be done at this point. If when you click the "Go to time" button the video shows the same image as the screenshot everything is in sync.
If you want to change something in the list of skips, go right ahead. There's a button to insert the current time on the video (the video itself has a scrub bar to get there), and a correctly formatted "arrow" if you feel lazy. There are also buttons for shifting the time of all skips by a given amount, and for saving your edited skip list.
Click the play button on the video, and maybe the fullscreen button, sit back, and enjoy. Skips will take place when their time arrives.
How to sync the skips:
There may be a screenshot, but there is none, likely there is some text below the initial time entry that will tell you what happens in the video at that time. Click the "Go to time" button to take the video to that time. If the video matches the screenshot (or the literal description, if there is no screenshot), everything is in sync and you're done with this phase. Scrub the video back to the beginning and start watching.
But if the video is from a source different from that used to make the sync file, there may be a mismatch. Use the arrow buttons to scrub the video until the screen matches the screenshot or description (frame by frame, if "Fine" is checked). The fast forward button toggles the speed, or resumes playing if paused. If there's a screenshot, the "Superimpose" button will put it right on top of the video, so you can see the precise moment when they match. If the picture does not match the video, you can move it around with the arrow keys, and resize it if you also hold the Alt key. Hold Shift for fine corrections.
Click the "Sync times" button when video and screenshot match. This will shift all the skips by the right amount, so they wil happen at the correct times.
If the screenshot is still on top of the video, click "Superimpose" again in order to put it back in its place.
Getting the video files:
If you are using a streaming service, these often allow you to pre-download the complete video in order to avoid stuttering on low-badwidth connections. YouTube and Vimeo videos are very easy to get this way (Google it), but other services may use copy-protection schemes that will need to be removed before you can use the file.
If the video is in a DVD or BlueRay disc that your own, there are excellent programs that will extract the data into whatever format you choose. Currently my favorite is Handbrake, available for Windows and for Mac.
Or you may have an old .avi, .mkv, or some other format. Handbrake can also convert the file from those formats into .mp4. A feature film may take an hour of processing. There are online converters as well, but they usually limit how much processing you can do in one day.
Another way to get them is by sharing with others, via BitTorrent or similar protocol. Be advised that this is not always legal.
Subtitles in .srt format are very easy to find online. This app will load them in this format, but if you want to convert them to .vtt there are easy online utilities like this one.
Making your own skips:
As mentioned above, inserting new skips is as easy as scrubbing to the point where the skip/mute/blank is supposed to begin, clicking the "Insert time" button on a new line, then the "Insert arrow" button, scrubbing to the point where the skip is to end, clicking the "Insert time" button once more, and then going to the next line and writing a content and (optionally) handling label. If you are initially unsure of where the skips should be inserted, there is a "Fast Forward" button that scrubs the video at high speed. Click it again to return to normal speed. The button to its left stops the video when it's running.
Content labels are case-insensitive. They consist of any word (actually, the first three letters are enough) of the IMDB categories, which are displayed next to the checkboxes, such as "sex", "nudity", "gore", "drugs", etc. Handling labels are these words: "audio", "sound", "video", "image" (or the first three letters of each, including "img") also case-insensitive.
The "audio" or "sound" keywords will cause the sound to be muted during the given interval while the video is still shown, rather than skipping the section entirely, which might be useful for removing profanity. The "video" and "image" keywords cause the image to blank out while the sound still plays, which might be useful for instances of nudity, etc. No handling keyword means that the section will be completely skipped.
Everything is editable in the box. Use this to fine-tune timings. For instance, words to be muted typically take a lot less than a second. You can review each timing by selecting on the list and clicking "Go to time", or by clicking the forward and back buttons when a time is selected on the list. If the "Shift" box is checked, the selected timing will shift with the arrows, rather than moving to another timing.
The "Insert" buttons put things always at the current cursor position. In any case, skips will be made at the right times even though they may not be in sequence on the list.
The "Shift skips" button opens a dialog where you can enter a number of seconds to delay all skips, or advance them if you enter a negative number, including the screenshot time at the top, if any. Clicking OK with nothing entered sorts the skips in ascending order of start times leaving the screenshot time at the top, if any, unchanged.
The "Save" button will save your list, plus optional screenshot, in .skp format in your default Download folder. You will have to move it from there to the folder where you want it. This format is text-based, so you can view the file in any text editor.
A well-constructed skip file will have a first entry with the timing of an event near the start of the video that viewers can recognize accurately (for instance, the moment the screen first goes dark, or when a certain logo changes) or a screenshot (best if the image is changing quickly at that point), plus a description of it on the line below it (do not use numbers in the description). This is to allow viewers to use the skips in the file even if they are watching a video obtained from a different source, which might have a slightly different timing. It is best to make this entry at the start of the process. To take a screenshot, just scrub the video to the desired time and click "Take screenshot"; the time will be added at the beginning of the skip list.
Sample skip, which will cause the screen to blank out from 14 minutes, 8.27 seconds from the start of the movie until 14 minutes, 14 seconds, while the sound still plays, if "Sex and Nudity" is checked:
0:14:08.27 --> 0:14:14
Legal Notice: Content copyright owners and distributors are hereby informed that users and developers of this software are exercising their right of free speech, guaranteed by law in many nations, by voluntarily refraining from seeing or hearing content without modifying said content in any way. Legal action that ignores this notice will be considered harassment and infringement of basic rights, and prosecuted according to the law.