Which off-the-shelf and FOSS software should I use as a DYI "media center" ?
For the past 25 years of sailing the high seas I've always used my PC for watching whatever. But as this is not always practical, I am looking to connect a raspberry Pi to my TV to have a setup with smaller fingerprint and larger screen.
I briefly tried one a couple of eons ago (2010ish?), but sadly I don't remember the name.
Requirements:
Must be able to run from a raspberry pi
Must be able to stream media over my network (protocols aren't that important as I can probably spin up whatever is needed. Preferably I would just have it index a couple of NFS mounts and local drives)
Bonus question: Which Pi model would you recommend running this? I have a bunch of Zero W, and while everything "works" on them, it simply wasn't powerful enough to decode video at a watchable rate.
Jellyfin is a server and client apps, not a whole OS. For a client device like a Raspberry Pi, you need to be running a Jellyfin client app on top of something else like LibreELEC.
Running the Jellyfin client on the Pi should be no problem. It's a bit underpowered for running the server, though. If you have only one device, Kodi is probably your best bet. Otherwise any old PC you have lying around will do as a Jellyfin server.
Otherwise any old PC you have lying around will do as a Jellyfin server.
Unless you want to be able to do on-the-fly transcoding for clients that are picky about codecs (e.g. because they're only fast enough to decode ones with dedicated hardware support). In that case, you're going to want your Jellyfin server to have a GPU with decent hardware encoding support.
(I learned this the hard way: my Jellyfin server is running in a VM on Proxmox and I haven't figured out GPU passthrough yet, so some of my media fails to play on clients like Roku because the codec isn't supported.)
OK maybe not any old PC. But I think pretty much any 8th gen Intel processor or higher will do it without a GPU. I run it on an N100 right now and it works very well for hardware transcoding.
This is a good point, the client is an important consideration. My setup is the similar, with Jellyfin running in docker in an Ubuntu Proxmox VM (host system CPU is an i7-6700t), but the client is an Nvidia Shield Pro, which so far has been able to handle everything Jellyfin throws at it, with the exception of AV1.
This is a good point, the client is an important consideration. My setup is the similar, with Jellyfin running in docker in an Ubuntu Proxmox VM (host system CPU is an i7-6700t), but the client is an Nvidia Shield Pro, which so far has been able to handle everything Jellyfin throws at it, with the exception of AV1.
Libreelec is the easiest and most direct right now. Very stable, and they release timely updates with new versions of Kodi. Use a pi5 if possible. The extra compute and hevc decoders does help with media.
There is a great youtube and sponsorblock addon as well. Completely ad free youtube.
Your can directly mount nfs shares in your kodi client if you like, but Id recommend setting up jellyfin as the media server you host as a standalone server. It has its own native Kodi app to sync media updates and media state. Super clean way to organize, update and index all your media, and then view it in Kodi.
I had kodi running on rpi's for a while, but then recently switched to jellyfin. Either will get the job done, but jellyfin has been a lot less janky for me.
Pi3 and below don't have codec hardware, which means video is decoded in software, and the cpu isn't very powerful at that. Pi3 got me h264 at 1080p, but I had to replace it since anything more was a slideshow. If your stuff is h265/AV1, minimum is pi4.
https://dietpi.com/ has hand tailored images for many small devices including the pis and a robust installer with a wizard for many things including a media center setup.
if you configure a jellyfin server (not on the pi) to share your media to most pi devices using h264 it should work well. (basically, its questionable if the pi can handle transcoding on its own, so its best to do it ahead of playback or from another box)
The only thing you have to watch out for is that the Pi on its own is not a great device to transcode natively on, so you're using the client devices to be able to watch content on the Pi. So be wary of which media files you download and what your devices support.