Howto: Enable Kodi / XBMC smoothvideo playback
[alert color=”C7645F” icon=”fa-align-right” title=”This is a legacy article“]
This is a legacy article which does not meet some of our quality standards. While it may contain useful information, is retained here for legacy reasons only.[/alert]
** 7 March 2010 – Updated for latest version of XBMC live (9.11-live-repack)**
Yes, so it took me a while to get round to it, sorry about that, beenbusy with parts of my life that don’t include computers! So basically, I’ve just edited the original article and modified for the latest version of XBMC. This now also includes how to update xbmc to latest nvidia drivers to get rid of that terribly embarrassing issue whereby they released xbmc with vdpau issues!
So, please read on to see the original article with new xbmc specifc changes added and old xbmc changes removed. If you notice any errors (I did this in a rush), please let me know and I’ll update.
** 13 March 2010 – This update seems to break some of the power management stuff, it does otherwise work so if that doesn’t worry you, please continue, but if you rely on that, please be aware that I haven’t yet fixed this problem. **
**End of updates**
So you’ve no doubt ended up here because you’re absolutely sick of trying to eliminate video jutter when watching your much loved content. While this is most obvious in panning scenes, it’s also obvious in many other motion scenes. Caused by a fairly complicated case of mismatching refresh rates between your video card and screen along with the frame drops caused by the average system trying to compensate for it, this is really quite a pain. In absolutely typical fashion, it’s the XBMC folk that have been first to fix this. No idea why others are so much less attentive to the real issues!
I posted that this was available a while back, but only got round to installing and testing it this morning. Let me tell you, I’m impressed! All the content that I tried played remarkably smooth, like I’ve not seen in an extremely long time. So if you want nice panning scenes that are smooth as butter and in the process eliminate video jutter forever, read on.
Install XBMC Live 9.11-live-repack
** If you’re going to completely wipe and reinstall an existing installation, don’t forget to export your video library and re-import it later, might save you quite a bit of bandwidth and time!
Install XBMC Live in hard disk mode (not removable disk mode
Choose your password and don’t forget it
Login and begin preparation
Once booted, press CTRL-ALT-F2 to get a console screen (Alternatively you could ssh into the box via linux or via PuTTy on Windows so you can just copy and paste out of this guide)
type $ sudo passwd root to set the root password
type $ su and your new root password
Add upgrade repositories to configuration file
Add the SVN repository (or the stable ones if you wish) from wattazoum at http://www.xbmc.org/forum/showthread.php?t=33327
Note for svn on XBMC Live 9.11-live-repack you will use Ubuntu Karmic packages.
(You have to use pico in Ubuntu (what XBMC live is based on) because they’ve screwed up their implementation of vi so bad you’ll tear your hair out trying to use it).
# pico /etc/apt/sources.list.d/xbmc.list.list
(You will probably have a few lines in there already with a # in front of them). Two of them are the same as you want to add, but you may as well just copy and paste the below over the top of the whole lot:
deb http://ppa.launchpad.net/team-xbmc/ppa/ubuntu/ karmic main deb-src http://ppa.launchpad.net/team-xbmc/ppa/ubuntu/ karmic main deb http://ppa.launchpad.net/nvidia-vdpau/ppa/ubuntu karmic main deb-src http://ppa.launchpad.net/nvidia-vdpau/ppa/ubuntu karmic main deb http://ppa.launchpad.net/team-xbmc-svn/ppa/ubuntu karmic main deb-src http://ppa.launchpad.net/team-xbmc-svn/ppa/ubuntu karmic main Press Ctrl X, press Y, then press Enter to save your changes. Note The xbmc addons don't appear to have a ppa for karmic any longer. I think this is now included as part of the xbmc menu and is therefore no longer needed.
The 1st and 2nd entries are the standard entries that come with XBMC, the 3rd and 4th entries are to get the NVIDIA driver with the latest version of libvdpau, the 5th and 6th entries are to get the latest SVN version of xbmc.
Add repository GPA keys
Import the GPA keys (don’t copy the # when you’re pasting into your terminal window!)
*Update* – No matter what I do, wordpress converts two – – into one – so when you copy the below three lines make sure there is two dashes before recv-keys and keyserver not one 🙂
# apt-key adv –recv-keys –keyserver keyserver.ubuntu.com 64234534
# apt-key adv –recv-keys –keyserver keyserver.ubuntu.com 318C7509
# apt-key adv –recv-keys –keyserver keyserver.ubuntu.com 40618B66
# apt-key adv –recv-keys –keyserver keyserver.ubuntu.com 91E7EE5E
You get an error about no public key unless you do the following after the above:
gpg –keyserver keyserver.ubuntu.com –recv 1DABDBB4CEC06767 && gpg –export –armor 1DABDBB4CEC06767 | sudo apt-key add – && sudo aptitude update
Download list of latest repository updates
# apt-get update
Upgrade and install to the latest repository updates
(This now seems to only update to the latest base packages first)
create an account for the tvheadend administrator (i chose username of administrator and a password)
You get the following message: After installation Tvheadend can be accessed via HTTP on port 9981. From this machine you can point your web-browser to http://localhost:9981/
Update to latest NVIDIA Drivers
In my experience the above stuffs up your nvidia setup, so now that you have the repositories listed above, go ahead and update nvidia drivers like this:
# nvidia-installer –update -a -f
It’s actually downloading the latest stable driver (currently 190.53) direct from nvidia. Eventually, you’ll get an ‘uncompressing’ message and a whole lot of dots!
Upgrade your current XBMC to latest svn
apt-get install xbmc-live This will install latest xbmc against latest nvidia drivers.
You’re ready to go!
How to set the smoothvideo options in Kodi / XBMC and eliminate video Jutter forever!
- Go to Settings Menu and scroll down to Player Menu. Change Render Method to VDPAU if you have a supported NVIDIA card (trust me this is worth it, 24GB 1080p video uses only 5% CPU on a 8600GT!) Yes you read right, that’s an 8 in 8600.
- You may as well set High quality software upscaling to Enabled for SD content, but this is optional
- Click the Radio Button next to Sync playback to display.
- Go to Settings, Settings, Screen and set the vertical blank sync to Always Enabled
There are three options for syncing the playback. I suggest you find a scene you know causes jitter and try each one. You’ll be impressed with all of them, but some are more perfect than others. Personally, I’ve found the Video Clock (Resample Audio) with resample quality set to high to give the best results. To check what it’s doing with a particular setup, press the letter ‘o’ on the keyboard during playback. You’ll see information regarding skipped frames, speedups etc. For the official blurb see below:
The official Blurb:
How does it work?
Usually video is referenced to the system clock, but with a little magic a clock can be made with information from the videocard, this makes sure every frame is presented right after a vblank. Also because the clock can now be controlled, the speed can be changed a little so the fps of the video playing matches the refreshrate.
What about audio?
Audio has to stay in sync, this can either be done by resampling, skipping/duplicating packets, or adjusting the clock if it gets out of sync too far.
Resampling has the advantage that the speed of the video can be changed considerably, so 24 fps can be sped up to 25 fps to play at PAL speed.
The disadvantage of resampling is that it doesn’t work with passthrough, and there is a slight loss of audio quality.
Skipping/duplicating audiopackets has no loss of audio quality, but the speed of the video can only be changed a little to avoid doing a skip/duplication too often, most of the time it’s inaudible, but it can produce a very audible click.
Adjusting the clock has the best audioquality, but some extra video jitter can occur, also the speed of the video can’t change much, as the audio will sync the clock more often the more the speed of the video is changed.
To check for future updates just repeat the last three steps, ie, apt-get update, apt-get upgrade and if there was anything there reboot to be safe 🙂
Nice side effects of following this guide
- You will now have little icons at the bottom of the library view showing you what kind of content each file is (ie 1080p, SD, h264, DTS etc etc). Really nice so you know what is high def and what is not.
- Your library will work better and detect more content correctly
- Your menus will activate more quickly and seem more responsive
- You have an option in Settings/General to extract the metadata information from files
- You have a new option under Settings/Settings/Screensave to enable and set powersaving to a timeframe
- You have some nice new options under Settings/Skin Settings (Present in left hand menu bar)
Bugs and annoyances
The only bug I’ve found so far is one that causes any content with DTS audio tracks to not play the audio when downsampling to analog. This was working before upgrading XBMC so I’m sure that it can be made to work again. This may not affect those with HDMI digital out, but I don’t yet use that.
Screenshots of some of the new settings you get
<Screenshots Missing – Update>
Thanks for reading, hope it helped someone somewhere!
There’s a thread here if you’re interested in more information or have a problem.