📅 August 11, 2017
Have you ever admired the smooth motion video seen on 120Hz and 240Hz HDTVs in an electronics store and thought, “Oh, wow. It would be nice to watch my videos like that!”?
Well, now you can!
SmoothVideo Project is a free/pay, cross-platform software product that converts any existing video to 60fps on a computer to produce fluid motion without the stutter or jitter inherent in many video sources due to low frame rates.
Here is my experience installing and using this fun piece of software with Linux Mint.
What SmoothVideo Does
SmoothVideo Project (SVP) is a software program that must be running when you open a video in select video players. It uses frame interpolation to render more frames than exist in the video source. When these extra frames are inserted into the output, the resulting video appears more fluid during motion scenes.
If you have noticed the stutter effect visible in 24fps (fps = frames per second) films or 30fps online videos, such as when the scene scrolls vertically or horizontally, then you have seen the stutter. There are not enough frames recorded in the video source to record a smooth motion transition.
SVP fixes that. Watching the same motion-intensive scene is fluid without any stuttering. Also, with the SVPtube 2 extension (available in the pay version, so I did not try it), SVP claims it will smooth online videos.
There are three versions: Linux, Mac, and Windows. Choose the version for your operating system. I installed the Linux and Windows builds to see how they would work. There are also different SVP versions. The free version costs no money, but it is limited with its features and compatibility. The paid versions promise more benefits, but I would recommend trying the free first to see how well it works with your system.
This article focuses on the free version for Linux.
“Is Installation Easy?”
Installation was a tedious chore for both the Linux and Windows versions, but the Linux installation worked and required less installation hassle. The Windows version was problematic throughout and never worked for me.
Installation for Linux was easier than Windows, but be prepared to invest some time. A number of software packages are required before SVP will work, and they should be installed in order for best results.
I consulted the online installation instructions for Linux, but, even then, I encountered difficulties. Below are my notes from installing this myself in Linux Mint 18.1 and Linux Mint 18.2. Follow this guide, and you should have somewhat okay results.
1. Download the SVP 4 Linux from the SVP downloads page. SVP is only available for 64-bit Linux. This should download a file named svp4-linux-64.tbz2.
2. Extract svp4-linux-64.run, but do not run it yet.
3. Install all prerequisites as listed on the Linux installation page. There are several of them, but many should already be installed. For Linux Mint 18 and up, follow the Ubuntu 16.04+ instructions.
I only needed to install these packages:
- Qt (libqt5concurrent5 libqt5svg5 libqt5qml5)
- mpv and libass5 (from Vapoursynth)
Install from Synaptic to see all dependencies these packages require. More will be installed than what is listed here.
Vapoursynth requires a PPA addition to your software sources. It installs few extra packages including mpv and libass5 that SVP requires. VLC was already installed, and I skipped smplayer.
4. Install SVP
Run this from a terminal, and install SVP in your home. Take note of any installation error messages that appear in the terminal.
5. Change Ownership of the SVP Installation Directory
If installed using sudo, you will need to change user and group ownership of the SVP installation directory recursively.
sudo chown user:user SVP_install_dir -R
(SVP_install_dir is where you installed SVP. user:user is your username and primary group.)
SVP would not work for me at first, and this was why. Watch the command line output and note the error messages. SVP wants access to log files and more. If owned by root, then problems arise.
6. Test with mpv
As it is now, SVP should work with mpv. Note that this is the regular mpv, not gnome-mpv, which has a better user interface. Open SVPManager located in the SVP installation directory. You should see the main window.
(Navigate to the SVP installation directory and enter ./SVPManager in a terminal.)
Open a video with mpv. There are a few ways to do this:
Right-click the video and choose mpv Video Player. (You might need to log out and log in again to register the change to the context menu.)
From the command line,
mpv --input-ipc-server=/tmp/mpvsocket video.mp4
Replace video.mp4 with the path to your video.
From the SVP Control Panel menu (click the icon in the upper left), choose Open file via mpv…
Another way is to edit the mpv config file (check man mpv for its location on your system) and add the line
This is the most convenient. Simply double-click a video with the SVP Control Panel open.
No matter which method you choose, mpv should start playing the video. At the bottom of the video you will see the SVP icon and current frame rate.
Your monitor’s refresh rate affects the display fps from SVP. Normally, SVP will render the video at up to 60fps with a 60Hz monitor. It looks good. However, this system is connected to a 60Hz monitor via an older HDMI standard that only supports 50Hz, so SVP is limited by the HDMI connection limit of 50Hz. This is why we see ~48fps instead of 60fps.
The SVP Control Panel will show “Automatic” in its status bar at the bottom.
If this is working, then congratulations! If not, then prepare to spend a great deal of time debugging and reinstalling.
7. Install for VLC
The free version of SVP works with VLC on Linux, but you must install the SVP plugin for VLC first. VLC and SVP will not work by default together.
Close the SVP Control Panel, if open, and reopen it as root.
In the main menu (click the SVP icon), choose Utilities > SVP in VLC (replace ‘deinterlace’ filter)
You will be asked to locate the vlc executable, and SVP will replace the VLC deinterlacing plugin with its own. To use SVP with VLC, you must set deinterlacing to On in the VLC video menu. With VLC open, choose Video > Deinterlace > On. Choosing Off disables SVP in VLC, but it will still work with mpv.
Change the permissions of VLC’s plugin directory.
sudo chmod 777 /usr/lib/vlc/plugins/video_filter
This worked for my installation, but double check for yours.
VLC played with SVP enabled.
I thought the Linux installation was a tedious, time-consuming effort of trial and error. Wow, was I wrong. Windows installation was even harder, and, in the end, it did not work. Despite following the Windows installation instructions and spending hours experimenting, SVP refused to work in Windows 7.
One reason is that I was trying to get SVP to run with VLC — only to discover that VLC support is disabled with the free version of SVP in Windows. In fact, a number of players are disabled in the free version of SVP. You need to buy the paid product to enable support for those players.
MPC-HC is listed as working with free SVP, but it still would not work for me. I gave up. It was most likely a misconfiguration somewhere on my part. Even more disappointing is that the SVP for Windows requires a live, online installation procedure. No Internet means no SVP. The Linux version works best with an Internet installation, but you can download the Vapoursyth repository locally and install everything without requiring Internet access. This is useful for computers lacking Internet access.
Back to Linux.
What Are the Results?
Video playback in both VLC and mpv is smooth. Anything with motion appears fluid and life-like — similar to the smooth 60fps video effect seen in afternoon soap operas on TV. The film-like jitter is gone.
Wow! It is impressive.
SVP is most noticeable with scenes containing vertical and horizontal scrolling (panning). This include the scrolling credits at the end of a film. Smooooooooooth. If you open and watch the same video in a side-by-side comparison, the difference is obvious. The player without SVP appears jittery compared to the same video playing in another player with SVP enabled. It truly is a day and night comparison.
Screenshots cannot capture motion, so I would recommend watching SVP comparison videos on YouTube to see the effect. This will help you decide whether or not if SVP is something you want to invest time in.
What About Anime?
Animated films, such as anime, will see the greatest benefit. Due to their low frame rates and limited animation, anime tends to produce significant stutter and jitter during action scenes and panning motions. SVP adds a sense of fluidity that breathes new life into all existing videos. It is surprising to see how much of a difference exists with SVP. This one of those instances of once you see it, you cannot unsee it.
SVP allows options that optimize the rendering for film or playback. Click the button for the type of video you are watching.
How About Still Scenes?
SVP works best with motion. Still scenes, such as talking heads or still shots, look the same with and without SVP. This is true for both film and animation.
If a majority of videos that you watch is “talkie-drama,” then SVP will not help that much. There might be a few instances of motion that will be obvious, but I cannot not see any benefit to using SVP with videos where the actors do nothing but talk, and talk, and talk, and cry a little bit, and then talk some more.
Videos containing high-motion scenes truly shine with SVP. If you are an action fan, then SVP is something to look into. If you are a teary-eyed, baby-movie drama fanatic, then SVP probably will not help at all. It boils down to motion interpolation. No motion, no smooth video.
What About 60FPS Video?
I saw no difference using SVP.
SVP renders to 60fps on a 60Hz monitor. SVP claims it can go higher, but I cannot test that for myself with a 60Hz monitor. If a video is recorded at 60fps, then SVP does not help at all. From my testing, a 60fps video played just as smoothly with or without SVP. After all, it is already playing at 60fps, so using SVP with a 60Hz monitor offered no benefit for me.
The regular, non-60fps version of Big Buck Bunny with SVP played just as smoothly as the 60fps version without SVP.
Why 50FPS in the Screenshot?
Let’s return to that image again.
Hardware plays a role. Even though the graphics card and system can support 60fps and higher, I was connected to a monitor using HDMI that only supported a 50Hz refresh rate. This meant that SVP was limited to a maximum of 50fps. Testing with DisplayPort allowed SVP to operate at a full 60fps with the monitor’s refresh rate of 60Hz.
This was a limitation with my HDMI connection and monitor, not with SVP. The older HDMI link I used only supported 50Hz. DisplayPort supported 60Hz.
“Out of curiosity, is there a noticeable difference between 50fps and 60fps?”
If viewed by itself, then 50fps looks smooth and you think “This is great!” But if viewed in a side-by-side comparison with 60fps, then the 60fps motion video is smoother. The 50fps has slight stutter compared to 60fps. SVP might help at 50fps, but 60fps is more fluid. The difference between 50fps and 60fps is slight, but it is present. Go for the monitor with the highest refresh rate your budget will allow. Even 60Hz appears to stutter and jitter compared to 100Hz or higher (from other tests I have seen).
The SVP Control Panel provides a slider that lets you adjust the amount of “smoothness” that you want. Higher-quality video rendering requires a better CPU. If your CPU is not powerful enough, then set the slider to Higher performance.
How Fast Should the CPU Be?
You need a fast CPU for SVP if you want good image quality. Using higher performance settings results in less smoothness, and that defeats the purpose of using SVP. An AMD APU does fine with the quality slightly to the right of the center. Any higher, and video skips while audio goes out of sync.
An Intel i7 tends to perform better than an APU. It can handle a higher quality for longer without skipping frames or allowing the audio to go out of sync. However, an i7 had problems at full quality settings. The slider had to be set lower in order for the video to be watchable.
Fast forwarding or jumping to other parts of a video always caused a slight lag. There was about a 3-5 second wait before the video would begin playing even though the audio was heard. Not exactly certain if this was caused by my hardware or SVP, but video jumping was instantaneous without SVP enabled.
The biggest problem I faced (apart from installation) was the out-of-sync audio. The quality slider had a big effect on this. When set to high quality, audio quickly went out of sync.
In fact, I found that audio eventually goes out of sync if jumping to certain parts of the video. The difference is time. At full quality, audio went out of sync in under a minute. At highest performance, audio went out of sync after about three to five minutes.
When watching a video straight through from beginning to end without jumping to other parts, then audio tended to remain in sync for most of the video. The closer the slider was set to Higher quality the sooner the audio went out of sync.
Does Video Resolution Matter?
SVP will smooth out any video regardless of its resolution. Motion in 480p, 720p, 1080p, 1440p, and 4K videos all improved with SVP. 4K videos at 60fps (DisplayPort and SVP) looked stunning. However, the increased load of playing a 4K video in addition to the extra processing required by SVP did result in out of sync audio and some video stuttering. 2K video and below had no problems beyond those already mentioned.
This was a fun project to experiment with. True to the claims, SVP smooths out the motion in videos, but the installation and out-of-sync audio issues are deal breakers for me. No matter how smooth the video might be, if the audio is out of sync, what good is it?
After watching video with and without SVP, I came to this conclusion: If SVP (or something similar) was built into the Linux video system as a background process enabled by default as part of the Linux installation and active upon login AND it worked out of the box with every video player so it would smooth out all video by default without any extra effort from the user, then it would be worth using. However, I thought that the reward was too small compared to the limitations and effort required to make it work. SVP is not user-friendly at the moment, at least for non-technical end users.
Of course, I only used the free version in Linux. I found the free version for Windows even more limited and more of a hassle to install. When testing between the two, free SVP for Linux offered better results and compatibility.
I also encountered problems with different systems. On a Linux Mint 18.2 system, SVP worked fine. On a Linux Mint 18.1 system, VLC would not work with SVP despite installing using the same steps.
But after all of the work involved setting up SVP, the question remained: Is this worth the time and hassle just to watch a few smooth scenes? Many films mostly contain talking, so SVP offers little improvement. I found the effort too much trouble to savor the reward. SVP shows promise, but it is too tech-difficult at the moment. Average users will become frustrated at the installation and usage.
If you enjoy experimenting with new software ideas, then this project will help you learn about the inner workings of the Linux video system should you choose to investigate the details.