Jump to content

Emby 4k hdr streaming


nickwrgggdd123

Recommended Posts

Guest asrequested

That's a great idea! Do now my obstacle would be how to re-encode a UHD HDR file to HD SDR? Not an easy task as I've read. 

 

No it isn't. Here's what you're looking at;

 

5ba07ce5d26ad_Snapshot_55.jpg

 

The fps started at 40, and it keeps dropping. And it isn't tone mapping. mpv, can encode movies and has the ability to tone map, but I haven't got around to trying it. Either way, you'll need a big CPU or good GPU. And be patient :D

Link to comment
Share on other sites

pir8radio

@  I'm still considering getting a good nvidia card for multi stream transcoding.   But I'm trying to figure out before i spend a crap ton of money on a good GPU, whether or not i should just get another CPU...  So i was curious what kind of FPS you are seeing on different videos using hw transcoding, as well as maybe the capability of your gpu if you do any of that... or anyone else for that matter..      My xeon is just keeping up with 4k content at times.

Looking into a P6000 or P2000    hum not sure why the first @ didn't tag you.. lets try again.

 

Video
Title4K HEVC
CodecHEVC
ProfileMain 10
Level153
Resolution3840x2160
Aspect ratio16:9
AnamorphicNo
InterlacedNo
Framerate23.9760246
Bitrate54862 kbps
Video rangeHDR
Color primariesbt2020
Color spacebt2020nc
Color transfersmpte2084
Pixel formatyuv420p10le
Ref frames1
Edited by pir8radio
Link to comment
Share on other sites

Guest asrequested

My Ryzen Threadripper 1920X has no trouble transcoding 4k. But you need to keep in mind that HDR tone mapping is not imminent. If you're not concerned with the HDR and are only transcoding SDR 4k, how many are you planning on doing, simultaneously? Either way, the best option is CPU (if you can afford it). If HDR is an issue (from your post, it seems so), then just add the 1080 version and use multi-versioning.

 

I really need to get around to testing mpv transcoding. It should get the job done, as it has the tone mapping algorithms.

Link to comment
Share on other sites

pir8radio

My Ryzen Threadripper 1920X has no trouble transcoding 4k. But you need to keep in mind that HDR tone mapping is not imminent. If you're not concerned with the HDR and are only transcoding SDR 4k, how many are you planning on doing, simultaneously? Either way, the best option is CPU (if you can afford it). If HDR is an issue (from your post, it seems so), then just add the 1080 version and use multi-versioning.

 

I really need to get around to testing mpv transcoding. It should get the job done, as it has the tone mapping algorithms.

 

Im looking at pure FPS's  what are you seeing using hw transcoding on 1080p type content and 4k content?    Right now depending on content im only seeing like 60 fps on most transcoding tasks, with 4k in the 20-30's.      

 

I dont care much about HDR when transcoding, any high end playback will be directplay.

 

I ask about the gpu because a second xenon for my server is like 900 bucks,  but a p6000 is 1k-6k   If i see CPU FPS's in the 60's now i would expect to see 120-140 with a second cpu...  but if an nvidia P6000 gets me like 600 fps then its a no brainier.  I can support multiple streams without eating into my cpu.

Edited by pir8radio
Link to comment
Share on other sites

PenkethBoy

From a quick google - the P2000 can do multiple 4k transcodes at once with lowish cpu % - caveat on things posted on the internet applies Obviously :) 

 

and is a lot cheaper than a new xeon or the p6000

Link to comment
Share on other sites

Guest asrequested

The problem with hwa is that you run the risk of it not actually working, or not optimized to be working well. It can change based on driver and/or ffmpeg build. Software transcoding always works. And without the HDR, it will look horrible.

Link to comment
Share on other sites

I originally kept all 4K media files in it's own 4K library but recently migrated to keeping multiple versions in the same directory and using the Emby version feature.

The advantage to using a 4K library is that you can grant access to only people who can play 4K media without transcoding.

 

The advantage to the version feature is that it seems cleaner and all media is kept together BUT you can't stop a client from playing the 4K version on their 1080p TV so it forces the server to transcode vs direct playing the 1080p version that was there.

 

I think a good couple of features that @@Luke could add to Emby that would help us currently in this regard:

1) Create a standard tags we all use in file names for 4K media such as [4K] or - 4K.  <-- Basically what Emby uses to determine the Version.

2) Create a new option the admin can grant to each user to allow use of the 4K tag.  Could also add 3D support here as well.

3) Only show the 4K version to those who have this flag set otherwise they just get the 1080p version as usual.

4) If client with 4K priv plays file but the server still thinks it needs to transcode then Emby STOPS and changes to the alternate version hopeing to avoid the transcode or make it much easier on the CPU to transcode.

 

So if a user was on limited bandwidth or mobile platform and it needs to transcode down to 720p (or lower) the 4K version would never get used as the source of the transcode.

 

Technically you could skip #3 above but why try to play a 4K video in the first place only to have to fall back if you know up front the person doesn't have access.

Edited by cayars
Link to comment
Share on other sites

pir8radio

I originally kept all 4K media files in it's own 4K library but recently migrated to keeping multiple versions in the same directory and using the Emby version feature.

The advantage to using a 4K library is that you can grant access to only people who can play 4K media without transcoding.

 

The advantage to the version feature is that it seems cleaner and all media is kept together BUT you can't stop a client from playing the 4K version on their 1080p TV so it forces the server to transcode vs direct playing the 1080p version that was there.

 

I think a good couple of features that @@Luke could add to Emby that would help us currently in this regard:

1) Create a standard tags we all use in file names for 4K media such as [4K] or - 4K.  <-- Basically what Emby uses to determine the Version.

2) Create a new option the admin can grant to each user to allow use of the 4K tag.  Could also add 3D support here as well.

3) Only show the 4K version to those who have this flag set otherwise they just get the 1080p version as usual.

4) If client with 4K priv plays file but the server still thinks it needs to transcode then Emby STOPS and changes to the alternate version hopeing to avoid the transcode or make it much easier on the CPU to transcode.

 

So if a user was on limited bandwidth or mobile platform and it needs to transcode down to 720p (or lower) the 4K version would never get used as the source of the transcode.

 

Technically you could skip #3 above but why try to play a 4K video in the first place only to have to fall back if you know up front the person doesn't have access.

 

 

Well I would rather just have one good version, that gets transcoded for whoever wants to play it.   4k or not..    So I want my server to be able to handle 4k streams even though they are at 1080 with it.   

  • Like 1
Link to comment
Share on other sites

AmericanCrisis

I agree with pir8radio. I'd rather just have one UHD/HDR version and let the server transcode for the client when needed. I don't have that many clients and my i5 seems to handle three simultaneous transcode streams at the same time effortlessly. What we need... is a way to map HDR to SDR on the server end. Possible? 

Link to comment
Share on other sites

Well yea, many of us would agree with this but this could be a year off at the closest or maybe ffmpeg never supports HDR to SDR in a useful way that could be done in real-time.

 

I was just advocating what could be done today giving the tools we have now to allow for 4K and 1080p content being used in the best manner possible for all clients with the least amount of coding changes.  This wouldn't require many at all.

 

But even then, transcoding from 4K to 1080p or down to 720p for mobile might not be the best use of system resources especially on lower powered systems.  If you have both a 4K and 1080p version almost always the 1080p version is the one to use for anything that needs transcoding while the 4K version is for direct play only.

Edited by cayars
  • Like 1
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...