this post was submitted on 19 Oct 2023
1 points (100.0% liked)

Self-Hosted Main

502 readers
1 users here now

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.

For Example

We welcome posts that include suggestions for good self-hosted alternatives to popular online services, how they are better, or how they give back control of your data. Also include hints and tips for less technical readers.

Useful Lists

founded 1 year ago
MODERATORS
 

I have a QNAP TS-253D (Celeron J4125, 4GB RAM) hosting all my files. I used to have Jellyfin running on it in a Docker container, but it performed really poorly (which is expected ig). It used to take forever to stream a 1080p movie, and seeking back and forth would freeze the whole thing.

Then I moved my Jellyfin setup to my desktop PC (i9-10850k, 16GB RAM, 2080 Super), the files are still on my NAS. It performs much better now, streaming is a breeze and it almost never freezes or anything.

Problem is, it eats up all my RAM. My RAM usage is 99% almost all the time someone uses Jellyfin and it significantly hampers my regular work on my desktop. I can upgrade my RAM to 32 or 64 GB, but would that solve the problem?

If not, what is the cheapest mini PC or home setup that I can do that'd free up my desktop but still give me similar or at least good enough performance?

Thank you for your advice.

top 42 comments
sorted by: hot top controversial new old
[–] [email protected] 2 points 11 months ago (1 children)

Fyi this sub here is about selfhosting software services, not about any hardware purchase or upgrade advice.

Consider subs like /r/HomeServer /r/Homelab /r/BuildaPC for that.

[–] [email protected] 1 points 11 months ago

Then you goto homelab and homeserver and they tell you X and Y things and bitch and moan about power usage. Or they suggest things that logically don't line up with what OP wants/needs. Or they will say lines like "for just a little more" about 10 times until a build is $1000 or more.

Lets try to be helpful instead of just pushing people other places...hmm?

[–] [email protected] 1 points 11 months ago

Very odd: on my computer it never uses more than 1GB of RAM. As for the limitations of your first setup, that sounds like a bottleneck when it comes to transcoding, which can occur because of a lack of GPU or CPU power, depending on whether or not you had hardware acceleration enabled. I would expect it to run much better on your new setup, but the RAM thing is worth investigating. I was running Jellyfin on 12GB of RAM until recently, and never hit 100% usage.

[–] [email protected] 1 points 11 months ago (1 children)

Are you running any 4k content or just 1080p? How many users?

[–] [email protected] 1 points 11 months ago (1 children)

I don't have any 4k content. Maybe one or two movies among a thousand. I have about 4 regular users.

[–] [email protected] 1 points 11 months ago (3 children)

I run Plex on an N100 MiniPC, including hardware transcoding. I have the media in another system running TrueNAS.

[–] [email protected] 1 points 11 months ago (3 children)

Make sure you get a box that can be upgraded to at least 32GB, made that mistake got the beelink s12 pro, not enough with 16GB.

[–] [email protected] 1 points 11 months ago

if it's just plex i've been running it on an old laptop with 16gb soldered ram and it runs everything without issues

[–] [email protected] 1 points 11 months ago

Because of jellyfin? Mine is restricted to 3GB and runs happily on raspberry pi 4. I've even had it run on 2GB pi4 and it only struggled occasionally.

[–] [email protected] 1 points 11 months ago (1 children)

16 runs fine for me. I transcode to an SSD and run home assistant and airsonic and emulatorjs and immich and frigate and monitoring software like glances and uptimekuma and and and.

Ram is at 70%, could use more, 8 isn't enough but 16 will get you going

[–] [email protected] 1 points 11 months ago

Oh, I don't want the SSD to die. Transcoding to ram and caching Rclone with buffer to ram also. Have at least 10 users to share with my Plex.

[–] [email protected] 1 points 11 months ago (1 children)

Transcoding what? UHD? Atmos? Or something else.

I’m looking for a cheap solution since 1 tv in my household needs those files transcoded and my NAS can’t 😞

[–] [email protected] 1 points 11 months ago

4k x265 down to 1080p (x264). Basically any Intel CPU that supports quicksync can do several simultaneous hardware transcodes.

[–] [email protected] 1 points 11 months ago (1 children)

How do you connect the 2 machines together? This is something I’ve been interested in doing so I can technically keep expanding by adding more “carriers”.

[–] [email protected] 1 points 11 months ago (1 children)

Export the files via SMB on the NAS and mount them on the Plex server.

[–] [email protected] 1 points 11 months ago

On Linux, use NFS. SMB is best for Windows, FYI.

[–] [email protected] 1 points 11 months ago

There are a TON of ways you can do this. Since you have a NAS already it makes it super easy. You just need a tiny desktop for about $100 and you are golden.

Look on ebay for one of those mini desktops from HP/Dell/Lenovo. The one thing though is you will need to find one that has a CPU that supports quicksync. So 7th gen or newer. So you want to find as far up the chain as you can.

They are:

  1. HP Prodesk
  2. Dell Optiplex
  3. Lenovo Thinkcenter

This is the cheapest way to get away with it.

There may also be an option to use one of the Intel Arc cards with a cheaply built desktop for quicksync support. But I have not seen anything related to comparing them to on die quicksync. I would be especially curious on the cheaper option from Arc and how well it works for video encoding.

[–] [email protected] 1 points 11 months ago

I am using a cheap custom setup with a Ryzen 3600 and 16 GB of ram with TrueNas and works ok. Jellyfin takes a few seconds to get started but runs fine otherwise. I can even run 4k streams but only works smoothly if i encode them with the fast decode option. This was very cheap because of the old hardware, about $300 before the drives.

The only thing I would change is to get a CPU with integrated graphics. Some can help with decoding and massively simplifies the first time setup.

[–] [email protected] 1 points 11 months ago

I run Jellyfin on a laptop that was too slow to use for anything else and an external hard drive. Intel Celeron N3060, 2 cores, 2 threads, less than 4gb ram, 32gb eMMC storage.

[–] [email protected] 1 points 11 months ago

Running Jellyfin on a 5th gen i5 that I've had sitting in a closet for years doing nothing.

Running Ubuntu with 16 gb of ram. Transcodes single streams just fine. Most of my files are MP4 anyway. I run everything at 1080.

I ran for a bit on a Raspberry Pi 4. That seemed a bit strained, but OK.

I didn't like the reliability of the Pi.

[–] [email protected] 1 points 11 months ago

I run my truenas scale on a 17-4790 32gb ddr3 and run plex on it. Use a 1060 3gb for transcoding

[–] [email protected] 1 points 11 months ago (1 children)

I'm using a raspberry pi 4 8 GB. It's not a problem until someone transcodes, and that usually happens with H265 HEVC media when the person is on a browser that doesn't support it which is most browsers these days. If the person is doing directplay (click the gear during play and click on Playback Info). If it's forced to transcode, it will tell you why.

Direct-play in native resolution and codec should give you perfect performance and consume almost no resources since it's essentially just a file transfer. I find performance works best when I use the Jellyfin Media Player app on my computer or the Android app.

[–] [email protected] 1 points 11 months ago (1 children)

Same here. Working very well on my Pi 4 8gb.

[–] [email protected] 1 points 11 months ago

Same here. Even 4 different playbacks without transcoding arent a problem.

[–] [email protected] 1 points 11 months ago (1 children)

running on a single core 2 gig cloud server. just set filter to h264 so there is no transcoding.

works for me.

[–] [email protected] 1 points 11 months ago (2 children)

I'm doing something similar except now I'm running out of space on my 1 TB volume. Now I need to upgrade and/or figure out a long term solution to convert to H265. Some of my files have file size differences on the scale of 400 MB vs 2 GB.

[–] [email protected] 1 points 11 months ago

I'm doing something similar except now I'm running out of space on my 1 TB volume. Now I need to upgrade and/or figure out a long term solution to convert to H265. Some of my files have file size differences on the scale of 400 MB vs 2 GB.

run tdarr. schedule it to run at downtime.

[–] [email protected] 1 points 11 months ago

also delete redownloadable media. most of the media i want to watch is downloaded 10 minutes prior. I just leave hard to find media always there.

[–] [email protected] 1 points 11 months ago

I bought a used computer off of Facebook marketplace for $200. It has a Xeon processor from 2014 and 2 TB of hard drive space and works like a charm. I can add 2 more 4 TB drives if I want.

[–] [email protected] 1 points 11 months ago

Something is wrong if Jellyfin is using more than 2gb max.

[–] [email protected] 1 points 11 months ago

I use a beelink mini s w/ an N5095 Jasper Lake processor and 8GB RAM. Hardware acceleration supported for the vast majority of my media, and I can do 2-3 simultaneous streams without issue (I haven't tested higher since it's usually just my wife and I streaming).

[–] [email protected] 1 points 11 months ago

I use a stack of old, retired laptops, including one from 2010, that I installed Gentoo on and setup Xen as the Dom0 hypervisor. From there, Podman and Kubernetes, and then containerized plex. I've never had any problems.

[–] [email protected] 1 points 11 months ago

How is your RAM being used? Look at CPU-X in the "System" tab. If the memory is mostly used for buffers and cache then it's not a problem, you want it to be used like that.

I ran my NAS for years off an i5 (Kaby Lake) with 4 GB of RAM and 32 GB of NVMe storage and it handled any of the usual media servers just fine. I've used them all, Plex, Emby and now Jellyfin.

Have a look at this table, get the cheapest used Intel CPU you can find that fits your transcoding requirements, slap it on a board with enough SATA connectors and 4 GB of RAM and you should be good to go.

Docker should not have a large impact, I have 15 containers running right now and they only use 2.5 GB of RAM in total (for reals, without buffers/cache).

[–] [email protected] 1 points 11 months ago

Running Emby on my TS-251+ with 2gb of ram.

Could be snappier when browsing my library but not a single issue streaming 1080p.

[–] [email protected] 1 points 11 months ago

Raspberry pi 4 (4gb) with only direct stream/direct play. Works perfectly as long as the media is compatible

[–] [email protected] 1 points 11 months ago

I run Plex in Unraid on a 6th Gen i7 with zero perf issues and also only using the iGPU. Multiple concurrent streams no problem.

[–] [email protected] 1 points 11 months ago

Jellyfin on an Oracle Free tier instance, all your media encoded h.264 mp4 aac and stored on a cloud service like Mega. Total cost $100/ year - no electricity usage, 100% uptime, static IP.

[–] [email protected] 1 points 11 months ago

Probably a used enterprise HP/Lenovo/Dell mini or sff pc (e.g. Hp Elitedesk or Lenovo thinkcentre). The 7th gen Intel CPU's would be the sweet spot between price and streaming performance I think. They can be had for $50-80.

[–] [email protected] 1 points 11 months ago

Raspberry pi zero is the cheapest server I ever built. It ran like crap but it was fine for hosting any audio. My idea was to just have it with a usb drive plugged in hosting away but then I figured I may as well just use my Mac because it was on anyway.

[–] [email protected] 1 points 11 months ago

Running Jellyfin on my old Pentium E5200 (dual core), 4 GiB memory. I use FreeBSD with ZFS, but I use AppJail to manage my FreeBSD containers (>15). It works very well. There is no performance difference between containers and host (at least on FreeBSD): Jellyfin consumes up to 400-500 MiB of memory with a single client, a bit more when some other client wants to play a movie, but in general I use movian on my PS3 or the Jellyfin app on my android device. When I rewind or fast forward the movie it only hangs 1 or 2 seconds depending on network traffic (in general the rate is low) but I think the Jellyfin app or Movian prefetch chunks of the movie and caches it to improve performance a bit. I think the other thing that helps me not to consume a lot of my resources is that my movies are usually of decent quality, but not the best, as they are either classics or too recent to be of decent quality.

I don't test the following because I don't need to, but maybe it can be useful to you:

[–] [email protected] 1 points 11 months ago

I run Plex and Jellyfin and about 20 other containers in 8GB. They perform really well even though Plex doesn't support hardware transcoding. I only have an i5 7500.