Hello friends!
This is something that’s been muddling around in my mind for a bit, in part because I now have a decent collection of DVDs, and I am starting get a digital collection of shows that are a bit hard to find. I’m also interested in the fact that there’s a TubeArchivist plugin for Jellyfin, as media archival interests me and YouTube is starting to suck with Google’s position on ad-blocking. It would be nice to be able to access this stuff anywhere as well, so creating a media/Jellyfin server seems like a good solution.
Thing is I’d rather have a physical server than pay a bunch of monthly fees for VPS hosting. Not knocking it of course, but on top of monthly fees I also have my skepticism about VPS hosts and if they’re sharing data with people regarding my use of their service.
I’m not so much of a hardware guy as I am a software guy, funnily enough, but to give you an idea of what I would like here’s my admittedly wishful thinking of what I’d like for a setup:
A few things with this:
Overall it probably be just me and my wife who would use the server, mostly me. Maybe some immediate family, a few friends, maybe down the line use it for kids when we have them.
What are your recommendations?
A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don’t control.
Rules:
Be civil: we’re here to support and learn from one another. Insults won’t be tolerated. Flame wars are frowned upon.
No spam posting.
Posts have to be centered around self-hosting. There are other communities for discussing hardware or home computing. If it’s not obvious why your post topic revolves around selfhosting, please include details to make it clear.
Don’t duplicate the full text of your blog or github here. Just post the link for folks to click.
Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).
No trolling.
Resources:
Any issues on the community? Report it using the report flag.
Questions? DM the mods!
Hardware support can be a bit of an issue with bsd in my experience. But if you’re asking for hardware it doesn’t take as much as you may think for jellyfin.
It can transcode just fine with Intel quic sync.
So basically any moden Intel CPU or slightly older.
What you need to consider more is storage space for your system and if your system will do more than just Jellyfin.
I would recommend a bare bones server from super micro. Something you could throw in a few SSDs.
If you are not too stuck on bsd maybe have a look at Debian or proxmox. Either way I would recommend docker-ce. Mostly because this particular jellyfin instance is very well maintained.
https://fleet.linuxserver.io/image?name=linuxserver/jellyfin
Not really. It’s more out of the curious of how DragonflyBSDs HAMMER2 filesystem works. I’ve good things about it and ZFS on FreeBSD. ZFS on Linux I’ve heard is still getting up to where it is on FreeBSD.
That’s somewhat true. However, the hardware support in bsd especially around video has been blah. If you are interesting in playing with zfs on linux I would recommend proxmox. That particular os is one of the few that allows you to install on a zfs rpool from the installer. Proxmox is basically a debian kernel that’s been modified a bit more for virtualization. One of the mods made was including zfs support from the installer.
Depending on what you get if you go the prox route you could still install bsd in a vm and play with filesystem. You may even find some other methods to get jellyfin the way you like it with lxc, vm, or docker.
I started out on various operating systems and settled on debian for a long time. The only reason I use prox is the web interface is nice for management and the native zfs support. I change things from time to time and snapshots have saved me from myself.
deleted by creator
Acronyms, initialisms, abbreviations, contractions, and other phrases which expand to something larger, that I’ve seen in this thread:
[Thread #732 for this sub, first seen 1st May 2024, 16:05] [FAQ] [Full list] [Contact] [Source code]
Does Jellyfin support BSD?
https://jellyfin.org/docs/general/installation/
As the project mentions:
This that project:
https://github.com/Thefrank/jellyfin-server-freebsd
deleted by creator
So, not officially.
Which would be enough for me to not use an officially unsupported OS.
Why NVME for storage? Why not NVME for OS and Hard Drives for storage?
Great point. I don’t know why I didn’t think about that.
Video serving is a very sequential workload so hard drives will be more than sufficient and you can typically get storage at a lower price.
SSD may give you slightly faster start and seeking but it is unlikely to be noticeable.
Agreed, you’re probably going to run into network bottlenecks before storage read times become an issue
Slightly unrelated, but one of my recommendations would be to buy a VPN for a month and download all the movies instead of ripping DVDs. Unless you care about the extras of course.
I’ve recently digitized my DVD collection with MakeMKV(best tool for this) and boy is it hit and miss quality wise. Some are very watchable on a 1080p tv, while others look like a pixel mess. And I’m not that much of a purist when it comes to quality. But DVD is 480p (which is watchable) but when the movie is made from a VHS copy (which happened sometimes back then) it is… an unpleasant watching experience
Also, mpeg2(which dvds are encoded in) are huge filesize wise for what quality they offer. AND mpeg2 is not supported by stuff like a chromecast…so not great.
I, as a European, had double trouble: our PAL dvd movies actually run slightly faster than American dvd’s, so most subs found online simply won’t synchronize. So that meant ripping the subs, converting them to a sensible format, finding all the spelling mistakes from converting… A pain.
If I’d do it over again, I’d pay 5 bucks for a VPN and download some bluray rips. Even stuff that is deemed low quality by the pirate community (YIFY rips) are better AND 1/4th the size than your DVD rips will ever be.
You could go the ISO route, which preserves the menus. You can open ISO files with Kodi.
Or rip your dvds if you want to make sure it’s all legal. You do you 😜
Here’s a visual inspiration:
Is ZFS on Linux getting better? I’ve heard mixed things. I use BTRFS on my daily driver, and I really like (ab)using the file compression with zstd.
I’ve been using ZFS for the past 3 years without any major issues. For my server, all my media is stored on a group of HDDs in an external HDD enclosure using RAIDz2. I currently use Proxmox, since I wanted a stable OS and it has support for ZFS baked-in.
My personal laptop has root on ZFS, running Arch. ZFS is a kernel module installed separately in this case. Since Arch is a rolling distro and I like messing around with it, I appreciate running a FS with snapshots where I can easily rollback when something breaks. Plus, ZFS supports native encryption!
Hmm, I think that was the one I was wondering about. I use Gentoo, and when I was initially setting everything up on my machine, I saw there were a lot of caveats for using ZFS on linux from the Gentoo wiki entry on it. Maybe that’s changed or those issues are no longer related to native encryption specifically.
Those caveats/issues are definitely worrying. I don’t think I have enough expertise to comment on them, unfortunately.
The wiki also says that native encryption is “unofficially discouraged by the community” and I’d be interested in learning more about that, but there’s no source for that statement.
If you’re interested in ZFS, I think it’s definitely worth trying out on a secondary machine. There’s a lot to learn, but I’ve found it worthwhile.
I found a GitHub issue suggesting that they warn users about the risks associated with native encryption, it has helped me understand the situation better: https://github.com/openzfs/openzfs-docs/issues/494
If all you’re looking to do is setup a Jellyfin server that won’t do any transcoding, you could very easily use a raspberry pi with an external Hard Drive.
https://xyproblem.info/
Ah, okay. So, if I understand correctly, unless I’m trying to have Jellyfin do what YouTube does with offering multiple resolutions and bitrates for video, I don’t need to bother with looking for a GPU that’s good at video transcoding?
If you want to serve multiple resolutions and bitrates you will probably want hardware that can do transcoding. However basically any graphics card (even integrated) will be able to transcode a video stream in real-time at a decent quality.
(If you wanted you can try to pre-transcode offline, but Jellyfin doesn’t support this well)
Or streaming to a device that doesn’t support your encoding. Something like an android tv that isn’t as flexible and may need on the fly transcoding. You can be careful to select a well supported encoding on the server if needed.
Pretty much, so long as your clients support the
bitrate and resolution. (As others have said)see belowIt’s not the bitrate and resolution it’s the video and audio codecs that need to be supported.
This is a bad idea and not cost effective. Just buy a used minipc
Why is it a bad idea?
What the breakdown of cost of Pi (and accessories) vs mini pc? What’s the power consumption breakdown?
I’m certainly not say it has to be a Pi; I’m trying to point out that a Pi could host a Jellyfin server without transcoding.
It could but a Raspberry Pi these days will cost you $100 by the time you buy one, a case, a powers supply and SD card. Not to mention the raspberry pi does not have hardware acceleration so your CPU usage is going to be very high and your video may be choppy.
By comparison you can pickup a minipc for around the same price and it will be much more efficient as it has hardware acceleration.
How much does it cost in power to run the Pi? The computer?
I’ve got a Pi3B running Plex and, with one stream and no transcoding, there is no choppiness to any video.
nvme for videos seems expensive for nothing, unless you are serving 4k videos over a 10gbit connection to multiple users
I mean, right now, that’s definitely not on the table.
4K would be nice, obiviously, but I don’t think I myself am to act nor do I want to act as the alternative to Plex for a bunch of family and friends. 😆
Aoostar n100 2 Bay nas is what I’m currently thinking about. Or the same device but rebadged.
Pros: n100 for quicksync. 2 bays of HDD for media storage. Low power at idle. Cheap for a box with all relevant codecs + sata storage. High WAF compared to other HTPCs
Cons: Unknown brand for build quality and bios updates. General Chinese security anxieties. Idle power, while low, is higher than other n100 options. Fan isn’t pwm. Personally don’t like the aesthetics.
Basically anything will work if you pop an Intel A380 in there and set up hardware encoding.
Honestly, a decently fast CPU with QuickSync will work just fine without a GPU. Something like a mini PC with an Intel N100 would work great.
There’s also no reason to use an NVMe RAID. Either just buy a big NVMe or use a HDD raid. Either way, have a backup solution if that’s what you’re going for, cause RAID is not backup.
As far as BSD, I have no idea if that will work. I guess if it runs Docker, you can use the Jellyfin Docker image. What makes you want to use it over Linux?
It’s the interest in how well the HAMMER2 filesystem works for everyday storage, as well as how swapcache performs. Not much besides that, plus I’ve generally decent experiences with Net and OpenBSD.
https://www.dragonflybsd.org/performance/
I don’t think that should worry you for what you want to do with it. Ext4 or btrfs will work fine for your use case.
What I personally use and what I plan to do. Maybe it’s worth something for you:
Currently in production:
HW transcoding is fine for single 4K HDR -> 1080p but I probably misconfigured something and it could be better or the linuxserver container is bad.
Don’t care enough to fix it :p
Planned in the future:
Btw: This is my hardware (literal) stack :)
Don’t do this
Install a stable Linux distro and then setup Jellyfin. I would recommend a minipc with an Intel CPU for hardware acceleration. If you are feeling spicy you could use Podman
I don’t think anyone here would recommend BSD, but since your requirements are low you could run that on pretty much anything, including a relatively recent surplus PC.
I’m guessing this is due to issues of support, compared to Linux?
Yeah. Linux, Mac, and Windows are all officially supported by the Jellyfin server project. Everything else is not.
Feels like some of that stuff, like the SSD’s are a bit overkill for a media server. Most of them still use spinning disks to maximize size vs. cost.
Additionally, the CPU/GPU needs of a media server are pretty minor, unless you need to transcode on the fly, and even then, single streams aren’t very intensive either.
So unless you’re capping the outgoing bandwidth to multiple external sources, you’re most likely just streaming the video source as-is to the destination, which just needs a stable network stream. If you don’t need to transcode at all, you don’t really even need a GPU on the hardware.
I’m beginning to realize I haven’t looked into this as much as I should’ve. 😅 So for most people, with what @AtariDump@lemmy.world has mentioned, a raspberry pi with 1 or multiple hard drives (if you really want) is a good start.
Price in a backup solution too, you don’t want to have all your movies disappear because of one hard drive crash, or an accidental reformat gone wrong.
RAID is not a backup.
Good point. So what we’re really talking about then is
That would be a great platform to start with.
Agreed
Hey, it happens. That’s why it’s great to be able to ask others for suggestions :)