Turn Your Raspberry Pi 4 Into a Jellyfin Streaming Box with LibreELEC
Beginner, Getting Started, Home Automation, PiShop, Platforms, Projects, Raspberry Pi, Resources, Skills, Tutorial beginner, getting started, kodi, media cetner, streaming box 0
If you’ve got a Raspberry Pi 4 laying around like I did and have been seeing the recent news of how Displays and TVs track you, it makes for the perfect hardware for a streaming box to connected to either your self-hosted Jellyfin server like I did or for running a plugin for Netflix, Crunchyroll, or YouTube. The goal is just to create a normal streaming box with a normal remote and display without any spyware!
I’ll be walking you through the full setup from what hardware I used, flashing the OS, and getting the Jellyfin addon.
Why LibreELEC + Kodi + Jellyfin?
There are a few ways that you can run Jellyfin on a Raspberry Pi but the most common combination is:
- LibreELEC as the operating system. Essentiall a stripped-down, purpose-built Linux distro that boots into a media player.
- Kodi as the interface for being excellently remote -friendly with fantastic hardware video decoding support on the Pi.
- Jellyfin Addon for Kodi pulls your server’s library directly into Kodi’s interface, which makes it feel like a normal streaming app and not a web page that your need to browse through
The alternative is running Jellyfin’s own standalone media player app, which works but it tends to be a bit less polished than the addon on Pi hardware and doesn’t take advantage of Kodi’s well-optimized decode pipeline. Give it a try on mobile though, it works like a dream!
What You'll Need
It’s not a major DIY project so you can get away with a regular Raspberry Pi Kit but I’ll list everything down below anyway:
- Raspberry Pi 4 (2GB is workable but 4 or 8GB is recommended, I know it’s difficult finding these in this economic climate)
- microSD card 16GB or larger
- Raspberry Pi 4 Power supply or better
- A case heatsink or fan. The Pi 4 will throttle under sustained 4k decoding without one. Passive cooling works fine for 1080p-heavy use
- HDMI Cable
- A remote
- A Jellyfin Server on your local network (I’ll link you to the setup tutorials for that server below)
- USB Stick
How to Install Jellyfin on Raspberry Pi 5: A Step-by-Step Guide
Step 1 Flashing LibreELEC
- Download and install Raspberry Pi Imager (or LibreELEC’s own USB-SD Creator tool) on your computer.
- Insert your microSD card (or connect your USB SSD).
- In Raspberry Pi Imager, choose Other specific-purpose OS -> LibreELEC, and select the Raspberry Pi 4 build.
- Select your SD card/SSD as the target and write the image.
- Once it’s done, insert the card into the Pi (or connect the SSD) and power it on.
Step 2 First Boot and Basic Setup
On first boot, LibreELEC will walk you through:
- Network setup – connect via Wi-Fi or, better, plug in Ethernet if your Pi is near your router or a switch. Wired connections avoid the occasional buffering issues Wi-Fi can introduce, especially for 4K content.
- Hostname and basic system settings – mostly fine to leave at defaults unless you have a specific reason to change them.
- Samba/SSH access (optional) – worth enabling if you might want to transfer files to the Pi directly later, or troubleshoot over SSH.
Once you’re through setup, you’ll land in the standard Kodi home screen.
Step 3 Install the Jellyfin Addon
This is the part that trips people up most, so it’s worth doing carefully.
The Jellyfin addon isn’t in Kodi’s default addon list, you need to add the Jellyfin repository first, then install the addon from it.
- Keep in mind that you’ll need the Jellyfin repository zip file downloaded from their website here (You can read more from about it on this page). Download it onto a USB.
- Plug the USB in and on go to Go to Settings -> Add-ons -> Install from zip file
- Once the repository is installed, go to Add-ons -> Install from repository -> Jellyfin Add-on Repository -> Video add-ons -> Jellyfin, and install it from there.
Installing it this way lets Kodi automatically pull in the correct dependencies and keeps the addon updated going forward.
Common error: “a dependency could not be satisfied.”
- Try uninstalling the addon, restarting the machine and reinstalling the addon, that’s what fixed it for me.
Step 4 Connect the Addon to Your Jellyfin Server
- A window should open automatically if it can detect your jellyfin server on the network otherwise open the Jellyfin addon from Kodi’s add-ons menu.
- Enter your Jellyfin server’s local IP address or hostname (e.g.
http://***.***.*.**:8096). - Log in with your Jellyfin credentials.
- Choose which libraries you want synced into Kodi, you can select all of them or just specific ones (Movies, TV Shows, etc.).
- Give it a moment to sync; depending on your library size, this can take anywhere from a few seconds to a few minutes.
Once synced, your Jellyfin libraries will appear as native entries in Kodi’s interface, browsable with posters, metadata, and resume points, just like a normal streaming app.
Step 5 Set Up Your Remote
I’d really recommend using a USB wireless remote, most are recognized as a keyboard and will work out of the box. A small number of cheaper remotes use nonstandard button codes and may need a custom keyboard.xml mapping file placed in Kodi’s userdata folder to get every button working correctly.
If you’d rather use your TV remote via HDMI-CEC, enable CEC support under Settings -> System -> Input -> Peripherals, and make sure CEC is also enabled in your TV’s settings menu (it’s often labeled differently per brand, Anynet+ on Samsung, Bravia Sync on Sony, SimpLink on LG, etc.).
Something To Keep In Mind
While the Pi 4s video hardware handles video content pretty well, it does have it’s limits:
- H.264, any resolution up to 4K – handled smoothly.
- HEVC (H.265) 4K, SDR – hardware-decoded, generally smooth.
- HEVC 4K HDR (HDR10/Dolby Vision) – this is where the Pi 4 struggles. It lacks proper HDR tone-mapping, so HDR content can look washed out, or in some cases stutter.
If you have a lot of HDR content, you have two options: let Jellyfin transcode it down server-side to something the Pi handles cleanly (at the cost of some server CPU load), or accept the flatter look on direct play. For mostly 1080p libraries with occasional 4K, most people never run into this.
Conclusion
Once you’ve got it setup, it gets pretty close to becoming a maintenance free streaming box with it booting directly into Kodi and automatically updating addons and syncing libraries! What setup do you have for your media center? Are you also using a Raspberry Pi 4? Please share in the comments, we’d love to hear more about it! Or post about it on socials and tag us or use the #pishopbuilds on your post!
