Single-board computers (SBCs) such as the Raspberry Pi might not match up against dedicated server hardware or even most mainstream desktops. Still, the price-to-performance ratio of maker boards makes these tiny credit card-sized devices extremely competitive. With a small form factor and low price point, development boards are excellent network-attached storage (NAS) devices. One of my favorite home server hardware options for a do-it-yourself NAS is the Odroid XU4. Learn how to install Emby Media Server on the Odroid XU4 for a DIY Odroid NAS!
Why You Should Build an Odroid XU4 NAS
The Odroid XU4 comes in a typical unassuming SBC form factor. But the tiny device hailing from HardKernal sports some beastly specs, particularly for its size. At the heart of the XU4 is an octa-core processor paired with a Mali-T628 MP6 GPU with OpenGL ES support. 2GB of DDR3 RAM aid with multitasking, and there's an eMMC module as well as microSD card slot for installing a host operating system. For hooking up external devices, the XU4 rocks a pair of USB 3.0 ports as well as a solitary USB 2.0 port.
Because of its robust processing capabilities, the Odroid XU4 is an incredibly powerful little single-board computer that masterfully fuses processing capabilities with energy efficiency. What's more, its low price tag means you can use the Odroid XU4 as a DIY NAS device that won't break the bank.
Why build an Odroid XU4 NAS:
- Octa-core processor
- Runs tons of Linux distros
Why You Should Use Emby, a Great Plex Alternative
Emby media server is one of the best Odroid XU4 media server software options. An excellent Plex alternative, Emby allows you to stream your personal media collection such as movies, TV shows, music, and even photos to compatible client devices like phones, tablets, streaming boxes, and smart TVs. Similar to Plex, Emby is really easy to use. However, a robust feature set posits Emby as a better option for power users. Its metadata editing functionality allows you to input correct metadata information.
You can add your own custom CSS to the Emby web app to perform actions such as altering the login screen and even deploy custom themes. There's live TV and DVR functionality and local streaming. Unfortunately, Emby restricts local streaming moreso than Plex. For instance, while Plex local network streaming works without a premium Plex Pass, many apps require an app unlock, like Android TV, when using Emby. Nevertheless, Emby is a Plex competitor worth considering, and it runs like a champ on SBCs such as the Raspberry Pi and Odroid XU4.
How to Install Emby Media Server on the Odroid XU4
Thankfully, spinning up an Emby media server on an Odroid XU4 SBC is cost-effective and easy to setup. You'll need an Odroid XU4 or the passively-cooled Odroid XU4Q. Plus, you need a case, power supply, microSD card or eMMC module for an operating system installation, and a Linux-based distribution (distro) such as Ubuntu. And, of course, you'll have to install Emby Media Server. This project requires an active internet connection, peripherals such as a keyboard and mouse, as well as your personal media like movies, TV shows, and music files. It's easiest to keep these stored on an external device such as a flash drive or harddrive, although you can load them on a microSD card or eMMC where your host OS is installed.
There are tons of different Linux distros compatible with the Odroid XU4. I suggest running a Debian-based distro such as Debian itself, Ubuntu, Ubuntu MATE, Armbian, or DietPi. You could also use OpenMediaVault.
Odroid XU4 Emby Media Server requirements:
- Odroid XU4 or passively-cooled Odroid XU4Q
- microSD card or eMMC module
- Power supply
- Linux distro (i.e. Debian, Armbian, Ubuntu, Ubuntu MATE, DietPi)
- Emby Media Server software
- Media collection (movies, TV shows, music, photos)
- External storage device
- Peripherals (keyboard, mouse)
- Active internet connection
- Emby client device (i.e. PC, smart TV, Roku, Android TV box, smartphone/tablet, etc.)
Total cost: $62+ USD. Normally, the Odroid XU4 retails for around $62. You can snag one from the likes of Ameridroid, and save $1 off the purchase of $10 or more with code EMSUPPORTER1 at checkout. Any extras will cost more. For a self-contained NAS, check out the XU4 and XU4Q compatible CloudShell which features support for up to two 3.5" HDDS or SSDs.
Install Emby Media Server on the Odroid XU4 on Debian, Ubuntu, Linux Mint, Etc.
With a Debian-based Linux OS installed, first run an update:
sudo apt-get update && apt-get upgrade
Then, install Emby Media Center. Since it's an Armv7 (armhf) board, you'll need to download the appropriate Armv7 DEB file on Debian. With that downloaded, install it using (for a newer DEB version, replace
emby-server-deb_18.104.22.168_armhf.deb with the current version):
dpkg -i emby-server-deb_22.214.171.124_armhf.deb
Odroid XU4 NAS with Emby on CentOS
If you're running CentOS on the Odroid XU4, you'll need to install the Armv7hl Emby app (check the most current version and replace
126.96.36.199/emby-server-rpm_188.8.131.52_armv7hl.rpm with that if necessary):
yum install https://github.com/MediaBrowser/Emby.Releases/releases/download/184.108.40.206/emby-server-rpm_220.127.116.11_armv7hl.rpm
Run Emby Media Server on the Odroid XU4 with Fedora
Alternatively, you might choose to install Emby on Fedora with the Odroid XU4. For that, you need the Armv7hl file (you may need to swap
18.104.22.168/emby-server-rpm_22.214.171.124_armv7hl.rpm for the most recent RPM):
dnf install https://github.com/MediaBrowser/Emby.Releases/releases/download/126.96.36.199/emby-server-rpm_188.8.131.52_armv7hl.rpm
OpenSUSE Odroid XU4 Emby Server
There's OpenSUSE for the Odroid XU4 as well, and accordingly, an Emby OpenSUSE app. To run Emby on OpenSUSE with the XU4, run (however, you might need to replace
184.108.40.206/emby-server-rpm_220.127.116.11_armv7hl.rpm with the latest RPM):
zypper install https://github.com/MediaBrowser/Emby.Releases/releases/download/18.104.22.168/emby-server-rpm_22.214.171.124_armv7hl.rpm
Setup Emby Media Server on DietPi with an Odroid XU4
DietPi is a great Debian-based Linux distro that features a modular installation. With DietPi installed, enter the command:
Now, you'll see the DietPi-Software center. Head to Software Optimized > Emby Server and press spacebar to select it. Click tab to press ok, now shit install and click ok. You will be prompted to select if you want to install Emby Server on DietPi, so pick ok.
Add Your Media to Emby
Once Emby is installed on the Odroid XU4, you can add your media. By default, Emby uses the port 8096. On your Odroid XU4, head to
http://localhost:8096. Or, if you're using a different computer on the same network as your XU4 board, enter ODROID_IP_ADDRESS:8096 where ODROID_IP_ADDRESS is the address of your Odroid XU4.
At the friendly Emby Media Server setup screen, pick your preferred language then choose a username and password. After that, configure your media libraries. Hit Add Media Library and pick a content type such as Movies, TV Shows, or Music. Now, pick a display name like Movies and hit the plus (+) sign beneath folders to add appropriate media. Configure metadata download information and your country. Now, choose ok and if all is properly configured, hit next. Repeat this process for every content type, then save.
Odroid XU4 NAS Performance with Emby
I found the Odroid XU4 more than capable of transcoding a single 1080p file alongside a 480p file. Or, you can transcode around four to five simultaneous 480p files. For local streaming, I tested four concurrent 1080p files, but you might be able to run more than that. Regardless, it's a major step up over even the Raspberry Pi 4. On a Pi 4, direct play was fine, but transcoding was completely out of the question.
Should You Build an Odroid XU4 NAS with Emby Media Server?
For an inexpensive, high-performing media server, the Odroid XU4 is a worthy SBC. It's capable of transcoding and, while it pales in comparison to my Xeon-powered ThinkServer TS140 which can handle four simultaneous 1080p transcodes, it cost a fraction of the price. The fact that a sub-$100 board can handle transcoding at all is mind-blowing. Overall, the Odroid XU4 continues to impress. I've enjoyed retro gaming emulation on the XU4, and as a home server, the Odroid XU4 truly excels.
Your turn: What SBCs are you using for home server purposes?