All projects

Building a Better Media Server

Complete

Why I replaced Plex with Jellyfin for my self-hosted media server.

Overview

Jellyfin Website

For years Plex was my media server of choice. It was polished, easy to manage, and simply worked.


But over time I found myself wanting a media server that felt completely mine—no cloud account requirements, no licensing tiers, and no reliance on a commercial platform. At the same time, I kept running into playback issues that finally pushed me to make the switch.


Today my media library runs entirely on Jellyfin.

Why I Switched

The biggest frustration was playback through Infuse.


Even with direct play enabled and a high-speed local network, Plex would occasionally introduce small stutters during playback. They weren’t constant, but they happened often enough to become distracting, especially during high bitrate 4K HDR movies.


After testing the exact same media library in Jellyfin through Infuse, those playback issues disappeared. Playback became consistently smooth and noticeably more responsive when browsing my library.


That experience alone was enough to justify giving Jellyfin a serious try.

Going Fully Open Source

Performance wasn’t the only reason.


I’ve gradually been moving my entire home lab toward open-source software whenever it makes sense. Jellyfin fits that philosophy perfectly.


I wanted:

  • Complete ownership of my media server
  • No premium subscriptions or feature paywalls
  • No dependency on external cloud services
  • A platform driven by the community
  • Full control over updates and future direction

Jellyfin checked every box.

What I Built

  • Migration

    Migrated my complete media library from Plex to Jellyfin while preserving the underlying media files and folder structure.

  • Playback

    Configured hardware-accelerated playback to improve performance and reduce unnecessary load on the server.

  • Infuse

    Connected Jellyfin to Infuse for smooth playback across Apple TV, iPhone, and iPad.

  • Libraries

    Recreated the media libraries, refreshed metadata, and restored artwork for a clean and consistent browsing experience.

  • Networking

    Tuned network access and firewall rules to support reliable streaming across separate VLANs.

  • Branding

    Customized the Jellyfin experience with a personalized login screen, guest assets, and consistent visual branding.

The Result

The transition ended up being much smoother than I expected.


Jellyfin feels fast, lightweight, and completely under my control. Library browsing is responsive, playback has been consistently smooth through Infuse, and I no longer feel tied to a proprietary ecosystem.


Plex is still an excellent media server, but for my home lab and the direction I’m taking my infrastructure, Jellyfin simply aligns better with the way I want to build and manage my systems.

What I Learned

  • Self-hosting is as much about ownership as it is about functionality.
  • The best platform isn’t always the one with the most features—it’s the one that fits your goals.
  • Sometimes the biggest upgrade isn’t adding something new, but simplifying your stack.