this post was submitted on 17 Jul 2023
35 points (97.3% liked)

Selfhosted

40137 readers
601 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.

Rules:

  1. Be civil: we're here to support and learn from one another. Insults won't be tolerated. Flame wars are frowned upon.

  2. No spam posting.

  3. 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.

  4. Don't duplicate the full text of your blog or github here. Just post the link for folks to click.

  5. Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).

  6. No trolling.

Resources:

Any issues on the community? Report it using the report flag.

Questions? DM the mods!

founded 1 year ago
MODERATORS
 

I'm starting to get more and more HDR content, and I'm noticing an issue with my Jellyfin server. In nearly all cases, it's required to transcode and tone map the HDR content. All of it is in 4k.

My little Quadro P400 just can't keep up. Encoder and decoder usage hovers around 15-17%, but the GPU core usage is pinned at 100% the entire time, and my framerate doesn't exceed 19fps, which makes the video skip so badly it's unwatchable.

What's a reasonable upgrade? I'm thinking about the P4000, but that might be excessive. Also, it needs to fit in a low-profile slot.

Edit: I'm shocked at how much good feedback I received on this post. Hopefully someone else will stumble on it in the future and be able to learn something. Ultimately, I decided to purchase a used RTX A2000 for just about $250. It's massively overkill for transcoding/tone mapping 4k, but once I'm brave enough to risk breaking my Proxmox install and setting up vGPU, I'm hoping to take advantage of the Tensor cores for AI object detection in my Blue Iris VM. Also, the A2000 supports AV1, and while I don't need that at the moment, it will be nice to have in the future, I think.

Final Edit: I replaced the Quadro P400 with an RTX A2000 today. With the P400, transcoding 4k HEVC HDR to 4k HEVC (or h264) SDR with tone mapping resulted in transcode rate of about 19fps with 100% GPU usage. With the A2000, I'm getting a transcode rate of about 120fps with around 30% GPU usage; plenty of room for growth if I add 1 or 2 users to the server. For $250, it was well worth the upgrade.

all 22 comments
sorted by: hot top controversial new old
[–] thisNotMyName@lemmy.world 5 points 1 year ago (1 children)

Not sure about how helpful this is. I use a GTX 1070 in my server, but I most of the time have only one concurrent stream. It handles everything (only up to HEVC obviously) flawlessy for now. It's a card with a zero db mode and I've never seen the fans spinning since it's in there, so the load on the GPU even when transcoding can't be very high

[–] corroded@lemmy.world 2 points 1 year ago (2 children)

Do you transcode 4k with tonemapping? My P400 does a great job as long as tonemapping is turned off, but that doesn't do much to help me play HDR content. A GTX 1070 would be a great solution, and cheaper than some of the other cards I'm looking at, assuming it can do what I need it to.

I usually only ever have 1 concurrent stream, too. It'd be nice to have a GPU that could support 2 just in case both of us in my household want to use Jellyfin at the same time, but it's certainly not essential.

[–] roofuskit@kbin.social 2 points 1 year ago (1 children)

I do tone mapping just fine with a 1050 TI. It just happened to be what I had left over for my server and it works very well.

[–] metaStatic@kbin.social 1 points 1 year ago

another vote for the 1050

[–] MeepMorp@lemmy.world 1 points 1 year ago (1 children)

I've got a 1070 that I use for transcodes and some tonemapping where necessary and I don't have GPU related issues (My ISP causes their own problems). I can usually run a few small streams at once, and I have a PC that I use to handle files too large to reliably stream to my Chromecast with Google TV over WiFi.

[–] corroded@lemmy.world 1 points 1 year ago (1 children)

What kind of issues do you have with your ISP? I live in a rural area, so my options for ISP are limited; I have a VDSL connection supplemented by Starlink. Starlink uses CGNAT, so I can't really host anything there unless I use something like Zerotier to Tailscale, but my VDSL connection works pretty well as long as I make sure to drop the bitrate to something that fits in my 4MBit upload. I have anything that accepts incoming connections behind an Nginx reverse proxy, and my routing policy is set up so that Nginx is forced onto the DSL connection.

Not really related to my original post, but I've spent way too much time tinkering with my network, so I was curious.

[–] MeepMorp@lemmy.world 1 points 1 year ago

I guess compared to your situation, they're fantastic. I have a static IP and copper connection, but they don't offer any symmetric plans. I'm stuck with 200down/15up and the best up they offer is 500down/25up.

[–] MangoPenguin@lemmy.blahaj.zone 4 points 1 year ago (1 children)

Do you have a 7th gen or newer Intel CPU with an iGPU? Quicksync might work for that.

[–] corroded@lemmy.world 2 points 1 year ago

Unfortunately, my CPU does not support quicksync; I'm using dual E5-2650v2s in the server that hosts Jellyfin. It's been a while since I researched it, but I believe that Haswell was the first architecture with quicksync; my CPUs are Ivy Bridge. I've been wanting to upgrade for a while, but it really comes down to the fact that it runs all of my VMs and containers just fine, and there's always somewhere else I find to spend my money.

Regardless, the Jellyfin docs say that tone mapping is only supported via CUDA, which would mean I couldn't use quicksync anyway.

[–] Eris@lemmy.world 4 points 1 year ago (1 children)

I went with a p2000. I use plex, but I imagine usage would be similar. I've had 5 people using it at the same time transcoding 4k to 1080 with no issues. Good luck!

[–] corroded@lemmy.world 2 points 1 year ago (1 children)

I'd guess that Plex uses ffmpeg internally, which would be the same as Jellyfin. I've been looking at both the P2000 and P4000, but I'm leaning a bit toward the T1000 because of the newer architecture. Good to hear that the P2000 is working for you.

[–] Eris@lemmy.world 2 points 1 year ago

Good idea - looks like you may be able to get one on ebay used for less than $200.

[–] ninekeysdown@lemmy.world 1 points 1 year ago

4K and on my P2000 or using Intel QSV isn’t a great experience. I can totally see it not being a good experience on a P4000 too.

That being said with HDR work 1080 it works with both QSV and the P2000. So it should work like a champ on the P4000. I don’t really have any HDR displays so I don’t really grab that many things in HDR so YMMV.

The best advice I can offer is if the content is transcoded into a mp4 container with the ATOM upfront ( aka fast start / web) and you’re not using subtitles it will work okay-ish as long as you do not pause it. Using the mkv container is just asking for sadness in my experience with it. Though at this point if I need to do that I just transcode into AV1, burn the subs into it, and pass through the audio.

[–] Bootleg7701@lemmy.world 1 points 1 year ago (1 children)

Use this guide to find the right card for your budget and specs. https://developer.nvidia.com/cuda-gpus