So you want to improve XBMC performance on Raspberry Pi. Understandable. Let's face it Raspberry Pi's modest hardware specs is significantly below a low-end HTPC. But it is by design and nothing can beat a Raspberry Pi when it comes to a low-power high definition media center (less than $3 per year for 24/7 operation). However, nothing can be a bigger turn off than a HTPC that just crawls when you are trying to show off around your friends. The truth most of the times we forget Raspberry Pi's limitations and expect the same things from it as a full-fledged HTPC. But there are a few tweaks you can perform to improve XBMC performance on Raspberry Pi.
Table of Contents
Increase XBMC Performance on Raspberry Pi
While I have personally tested the following list, they are by no means exhaustive. Also, each tweak may be optional depending what you are willing or not willing to sacrifice. So here are some XBMC performance tips for Raspberry Pi on OpenELEC. These should also apply to other media center operating systems such as Raspbmc and Xbian.
1. Overclock Raspberry Pi
Overclocking your Raspberry Pi is the probably the best way to significantly speedup XBMC performance on Raspberry Pi. Overclocking Raspberry Pi can be quite tricky on OpenELEC but just follow our simple guide and it should tell you everything you need to know on how to successfully overclock your Raspberry Pi. Raspbmc and Xbian provide access to overclocking through the XBMC interface.
And if you decide to overclock then I suggest that you consider adding good heat sinks to your Pi.
Build a Low-Cost Raspberry Pi Media Center | Price |
---|---|
Raspberry Pi 4B Starter Kit with case, power adapter, and heat sinks | ~$82.00 |
Sandisk Ultra 32GB Micro SDHC UHS-I Card 98 MB/s | ~$8.00 |
SANOXY Wireless USB PC Remote Control Mouse for PC | ~$8.00 |
2. Disable Unwanted Services
The next tip to improve XBMC performance on Raspberry Pi media center is to disable unused services: SSH, SAMBA, Zeroconf, Bluetooth, etc. On some media center OSes certain services are enabled by default while on others you are asked to choose during first boot. Either way, on OpenELEC, go to the services tab and disable SAMBA (if do not plan on sharing the Raspberry Pi's SD Card or attached USB device through SAMBA, SSH if you do not plan to SSH into your Raspberry Pi, and Bluetooth.
In my case I have also disabled Zeroconf and webserver (shown below).
In addition, you may want to think about about disabling weather altogether so there is no background synchronization. However, I am not quite sure if doing so has any significant impact on XBMC speed.
3. Disable Tag Reading
This is one tweak I will strongly recommend if you have tons of music and your Raspberry Pi plays music from a remote server wirelessly. Initial loading can take several minutes. Therefore, I recommend disabling music file tag reading.
4. Disable Actor and Video Thumbnails
I am not sure about you but I almost never check actor thumbnails. I do not want my media center to check online and download actor thumbnails. If you are like me then go ahead and disable Actor thumbnails.
Some may prefer not to disable video thumbnail extraction. Having video thumbnails makes the interface look nicer. Some of the nice views (Eg. Media Info) use video thumbnails. If no thumbnails exist in the video folder, XBMC can extract a thumbnail from the video. If you want use every bit of juice to improve your XBMC performance on Raspberry Pi then consider disabling video thumbnail extraction.
Keep in mind a thumbnail has to be extracted only once per video as XBMC uses the cached image from the next time.
5. Disable RSS
XBMC comes with a nice RSS news scroller on the homescreen.
This is nice but it does affect the performance quite a bit. So I strongly suggest disabling RSS feeds on Raspberry Pi. I would rather devote that resources to improve my XBMC media center performance.
6. Disable Weather Info
Displaying weather info on homescreen uses resources as XBMC tries to connect to servers and update weather information. Therefore, I recommend not displaying weather info on homescreen.
7. Disable Fanart
Well fanarts are nice and many may prefer to show them, especially if you are showing off your media center to a friend who has no clue about XBMC or any relevant topic. But after the initial love you just want pure performance. So I suggest you consider disabling fanart.
Best Android TV Boxes:
- NVIDIA SHIELD TV Pro Home Media Server - $199.99
- Amazon Fire TV Streaming Media Player - $89.99
- WeTek Play 2 Hybrid Media Center - $134.00
- Kukele Octacore Android TV Box - $179.99
- U2C Android TV Box - $95.99
8. Disable Recent Videos and Albums
Displaying recent videos and albums on the homescreen is another feature that might adversely affect XBMC performance on Raspberry Pi. Moving through homescreen items can stutter. So I suggest, you disable displaying thumbnails of recent videos and albums on the homescreen.
9. Choose a Simple Skin
The Skin you use has probably the greatest impact on the performance of Raspberry Pi media center. In my other post, I presented a few alternatives to the default Confluence skin on Raspberry Pi. Check them out. If you are quite content with the default skin, my recommendation is to just stick with it (I did) as seems to perform well on Raspberry Pi's low-end hardware. If you do not like the Confluence skin, then I suggest Quartz or even Amber skins.
10. Decrease Resolution
This, I am not entirely sure if it has a noticeable impact on performance. But displaying high resolution graphics does drain the resources. So if your display screen is small enough, I suggest reducing the display resolution from 1080p to 720p.
Conclusions
Of course, in the end the choice is yours. You have to decide which features you cannot let go of and which features you can afford to lose. Practically, though if you disable all the above features all you would have is a plain vanilla media center and most people won't like that. In my experience, overclocking has the most impact on XBMC performance of Raspberry Pi and you may even get by with not disabling any thing. If these or other tips worked for you please do share with everybody in the comments section.