Jump to content

Download settings


Recommended Posts

AnotherMatt
Posted

Hi!

I have read the documentation, and searched the forums, and am still not clear on download quality profiles.  

A user has the ability to download a movie or series.  This download has the ability to specify a bitrate, and also a device (which is a really cool feature, BTW).  However I have some questions:

  1. Can the admin define profiles on behalf of users?  Whilst I'd be comfortable in deciding on sensible encoding settings, my mother-in-law is unlikely to make good decisions.
  2. What resolution is being downloaded, and can this be selected?  EG a 4k source, but destination should be 1080p, even if the device is compatible with 4k.
  3. Further to the above, if a user is downloading a 4k source, what do the bitrate options mean?  Are they literally the same bitrates under x265?
  4. I understand that "original" is essentially a file copy and therefore compatibility is not assured.  Is there an ability to define something like a "highest quality" that allows transcoding a high quality source to the best quality the destination device supports (eg keep video, change container, transcode DTS to stereo)

Many thanks for your help.

AnotherMatt
Posted

Is there any detailed documentation on how it works?  It's a key feature of the Premiere subscription, but I can't find any substantial information on how it is managed.

GrimReaper
Posted (edited)

I have never downloaded a single piece of media in all the years I've been using Emby, but from very limited knowledge obtained troubleshooting various topics and looking at the available menus:

On 10/27/2025 at 3:30 PM, AnotherMatt said:

Can the admin define profiles on behalf of users?  Whilst I'd be comfortable in deciding on sensible encoding settings, my mother-in-law is unlikely to make good decisions.

Wouldn't think so; there's a "Custom" profile on some devices (examples in the KB article look like iOS) but it still needs to be defined on the device itself. 

On 10/27/2025 at 3:30 PM, AnotherMatt said:

What resolution is being downloaded, and can this be selected?  EG a 4k source, but destination should be 1080p, even if the device is compatible with 4k.

Resolution will be automatically selected by Emby according your selected Quality/Bitrate and original media bitrate, basically same as regular transcoding process (which conversion practically is). 

On 10/27/2025 at 3:30 PM, AnotherMatt said:

Further to the above, if a user is downloading a 4k source, what do the bitrate options mean?  Are they literally the same bitrates under x265?

Means converted file bitrate (quality) using relevant codec (AVC/HEVC), as per previous paragraph. 

On 10/27/2025 at 3:30 PM, AnotherMatt said:

I understand that "original" is essentially a file copy and therefore compatibility is not assured.  Is there an ability to define something like a "highest quality" that allows transcoding a high quality source to the best quality the destination device supports (eg keep video, change container, transcode DTS to stereo)

"Custom" profile on some devices (likely iOS, as per above, or I just couldn't find that menu on my Android device). 

Edited by GrimReaper
AnotherMatt
Posted (edited)

Thanks for the response.  However it's still not clear to me, and perhaps part of that is that the Android implementation seems a little less feature-rich than IOS.

18 hours ago, GrimReaper said:

Resolution will be automatically selected by Emby according your selected Quality/Bitrate and original media bitrate, basically same as regular transcoding process (which conversion practically is). 

I disagree that it is the same as a regular transcoding process, as transcoding is governed by CRF, whereas downloads are managed by selecting bitrate.  This is a significantly different approach, which I understand the reasoning behind, but it does mean different outcomes.

If I select Download, I get an option to choose a bitrate.  Nothing more -- no quality, no profiles, no resolution, etc.  So if I have a 4k movie, and I choose 1.5Mbps, is that really going to encode a 4k x265 at 1.5Mbps, or is it going to transcode it down to a sensible resolution for this bitrate?  This is an important question as we aren't governed by a perceptual quality algorithm. 

Assuming the encoder keeps the same compression algorithm, we then run into another complexity.  X265 transcoding is disabled by default on the server as it's an experimental feature.  If a user chooses to download an x265 movie, and allows the download to use the default bitrate (my phone seems to default to 4Mbit), it is going to transcode a 4k x265 movie into a 4k, 4Mbit x264 one?

Having a single set of pre-determined bitrates -- the only variable presented -- which make no consideration of algorithm or resolution makes using the feature near-impossible for the non-technical user.

 

 

 

 

Edited by AnotherMatt
visproduction
Posted (edited)

AM,

I think you know the quality issues already, but perhaps it is good to point out some transcoding issues, if you pick only a bitrate.


4K 265 will not easily look decent in a 4Mbit h.264.  It can look better if the quality settings are higher which either needs a faster server or more time to transcode.  When I say more time, you instantly get slower than 1 to 1 transcode speed.  To put it another way, make a transcoding quality run where it may take 6 hours to transcode a 1 hour  h.265 4K to h.264 4K and the final copy will look better.  Obviously, you are no longer transcoding in real time.  It's very delayed.  As far as I know, such high quality transcoding is not supported by Emby because you need to use real time transcoding.

So, the only other way to get good quality is to have a faster server and/or a hardware encoder.  Anyway, so different server setups will run into different encoding options for the exact same transcoding request on the same media.

What happens when the request to transcode is too demanding for the server can handle?  I assume the encoding settings set up these limits and the end result copy either looks pretty good or if the original media is too large for the system and the bit rate is locked down to like the 4 Mbit you requested, the result could look terrible on one server and great on a different server, depending on the server speed and extra hardware. In addition 4 Mbit can run into delivery speed issues for users with mobile, slow Internet speeds, user's older hardware or number of hops from your server to the end user.  That's a different issue.  You are pushing the limit for Internet delivery with 4 Mbps for some users.

The Emby compression settings, hopefully, tries to avoid making bad looking copies, by either stepping up the bit rate, so transcoding always happens in real time and the quality look matches a minimum standard.  If you force a bit rate and transcoding is limited to real time, the result can easily look terrible. Just having a control that sets the bit rate would only help some servers when they are not handling a lot of traffic and some media where that bit rate looks acceptable for a real time transcode.  Very large 4K original media files and the h.265 codec makes transcoding need to have more power to make good quality at a specific bit rate.  If you force a bit rate, servers that are not as fast and without a hardware encoder will take such original media and the copy will look awful. The only other option would be to slide the size of the media around to a different pixel size, drop 4K to 720P for example.  That adds a different demand on the transcoder, especially if you try to encode in real time and even more if the size is not standard that fits the encoding optimization.  It can add more demand to encode dimensions that are not divisible by 16, for example.  So it's best to avoid doing that. All these issues will cut into quality.  I don't think that forcing a bit rate would work to create acceptable playback, hardly ever.  It depends on your original media.  Full h.265 4K to h.264 4K is a waste of time to do that.  You should go to h.264 1080P and that would still look terrible, unless you had a fast server and hardware encoder.

In short, I think your request cannot work.

Hope that makes some sense. 

I would point out that online professional media streaming services makes sure that the media stream is compatible with all users, without needing to transcode.  Usually, mulitple pixel sizes are made and offered to the user, so if 1080P stutters, the user can switch to 720P or 480P.  The choice sticks to that user for the session.  Online commerical sites do this to make certain that users can play back the video with assurance that it should not stutter. That is very different from Emby transcoding approach. 

You could pre transcode all your media like the online sites do, but no one seems to want to do that.  If you used a 3rd party encoder and did a good job, you can get much better quality for each media size by setting the quality up and taking maybe 6 hours to encode 1 hour of original h.265 media.  I do that for all my media, but as far as I can tell, I am the only user that mentions this.  It does take a lot of time.  I don't think anyone else does it.  That would give you what you want, a decent looking copy for a set bit rate.

You seem to also mention a direct download option, where nothing is transcoded. Then it would be up to the user to have a fast enough system to handle whatever playback is needed.  I have not idea if Emby already offers this or not.  I have no method to test anything at the moment.  Yes, that could be a feature request, if it's not already possible.

Edited by visproduction
AnotherMatt
Posted

Thank you for your detailed and thoughtful response.

12 hours ago, visproduction said:

In short, I think your request cannot work.

I think you misunderstood my posts.  I am asking for clarity on how it works, not that it should be designed this way.  In fact, if my understanding is correct, I think the downloading feature needs significant adjustment.

 

13 hours ago, visproduction said:

When I say more time, you instantly get slower than 1 to 1 transcode speed. 

To be clear, I'm asking about downloading, which differs from transcoding in that it does not need to be real time.  This is a good thing, as it provides opportunity to be a little more careful in the way we encode.

 

12 hours ago, visproduction said:

I don't think that forcing a bit rate would work to create acceptable playback, hardly ever.

I agree, however this is how Emby is currently designed for downloads.  Here is the window you receive when clicking the 'download' button.  If you choose 'custom', you're presented with a field that allows you to enter your own bitrate, without any further explanation.

However I can see the logic behind it, as it allows you to control the resulting file size on a mobile device that presumably has limited space.  As I said earlier, without understanding the rest of the variables at play, it is impossible to see how an average user will ever achieve an acceptable download quality.  Frankly, the average user won't even understand what a bitrate is.  And, for those more knowledgeable, it is confusing and largely undocumented.

I could well be missing something somewhere in the app that allows better definition on how downloads are handled, and I'm hoping someone from the Emby team can chime in with better detail.  Because, from my current understanding, it is a very disappointing 'premiere' feature when you compare it to the exceptional LiveTV/DVR implementation, for example.

  • Like 1
visproduction
Posted (edited)

AM,


Aha.  That is interesting  I missed understanding the issue and it's my fault, because I just don't use this feature and currently cannot even check it, as I am moving house.  So, the bit rate option is already there.  Asking exactly how it works is a good question.  I agree making a good choice would depend on how large the original media is.  There is no mention of automatically reducing the pixel size, so if you pick a low bit rate for a large original media, what happens? If only the bit rate goes low, and transcoding starts, but stays at real time, then depending on what server speed and possible hardware encoder, the download copy might look okay or terrible.  Each server would be different.

Possible extra help could be:

  1. Preview thumbnail that can enlarge to full screen to show quallity at a choosen bitrate.
  2. Option to change pixel dimension of the copy and step it down to acceptable sizes favoring those divisible by 16. Continously variable would be possible but not ideal.  Reduction by 75% 50% 25% are most likely to look better.
  3. Option to set the quality a little higher and allow perhaps up to 2 or 3 times transcoding speeds compared to media length.  For example up to 3 hours transcoding might be allowed for a 1 hour original media.  This would improve the quality of the encoded copy.  It would challenging to encode this feature because this speed depends on each server and the current demand from other processes that are running.  It would be not good to let this go too long, because you cold easily have a couple people setting this up to high quality for multiple downloads and bog down the entire server.
  4. Somehow grey out or remove bit rate choices that would result in poor quality.
  5. Offer automatically suggested choices that might work well based on what size the end copy needs to be.  720P would look pretty good viewing only on mobile.  Actually 480P would probably be fine and hard to see any difference.  If the user wants to cast the video to a TV, then a different bit rate is recommended.

    [    ] 1.2 Mbit --- Mobile playback 480P {test image thumbnail clickable to full screen to check quality}
    [    ] 1.5 Mbit --- Mobile play back 720P {test image thumbnail}
    [ x ] 2.0 Mbit --- Tablet or small notebook playback 1080P  {test image thumbnail}
    [    ] 2.4 Mbit --- Larger notebook playback 1080P {test image thumbnail}
    ... and so on....
    Then turn on slow encode around 2 hours for ever 1 hour media to make higher quality...  Would anyone use this?
    [    ] 1.2 Mbit --- [high quality slow encoding and download] --- Mobile playback 480P {test image thumbnail}
    [    ] 1.5 Mbit --- [high quality slow] Mobile play back 720P {test image thumbnail}
    [ x ] 2.0 Mbit --- [high quality slow] Tablet or small notebook playback 1080P  {test image thumbnail}
    [    ] 2.4 Mbit --- [high quality slow] Larger notebook playback 1080P {test image thumbnail}
    ...
    Maybe even allow extreme around 3 hours for ever 1 hour media 
    [    ] 1.2 Mbit --- [extreme quality extra slow encoding and download] --- Mobile playback 480P {test image thumbnail}
    [    ] 1.5 Mbit --- [extreme quality extra slow] Mobile play back 720P {test image thumbnail}
    [ x ] 2.0 Mbit --- [extreme quality extra slow] Tablet or small notebook playback 1080P  {test image thumbnail}
    [    ] 2.4 Mbit --- [extreme quality extra slow] Larger notebook playback 1080P {test image thumbnail}
    ...

You have to ask, even if these features or something similar is offered, who would ever use it?  Would it seem too complicated for most users?  You don't want to really spend many hours setting this up and maybe only 1 user every 6 months actually clicks some of the feature controls.  

Edited by visproduction
AnotherMatt
Posted
13 hours ago, visproduction said:

You have to ask, even if these features or something similar is offered, who would ever use it? 

I do, as do some of my family members.  Downloads help me as I spend a lot of time on planes.  My family use it to reduce mobile data usage during travel to/from work, as data allocations in my area are pretty poor.  So obviously this is a sample size of n=1, but judging by other solutions and their forums, downloading is a feature that is used by others too. 

13 hours ago, visproduction said:

Would it seem too complicated for most users?

Again, my posts are based on my assumptions and reading the documentation I've been able to find.  So I might be completely mistaken.  However, assuming I'm correct, I think it could be adjusted to find a better balance.

The first question would be "Are the X264/x265 encoder settings from the transcoder tab applied to downloads?"  Again, it's unclear as my settings use CRF, but it also exposes Libx264 options which could impact downloads.  My view would be that the transcoder tab settings would only control real-time streaming.

I'd update the Devices -> Downloads -> Settings tab to expose some profiles.  1 set for "HD and below", another for "UHD and above".  Let's call them "High, Medium, Low".  These could ship with some sensible settings, but allow the server admin to adjust.  If it were presented like that, I'd choose something like:

HD and below

  • Low: Transcode down to 720p (or leave resolution if lower), stereo audio, 3Mbit.
  • Medium: 1080p, stereo audio, 10Mbit
  • High: 1080p, 5.1, 13Mbit

UHD and above

  • Low: Transcode to 1080p, etc, etc
  • Medium: 4k, etc etc
  • High: Original resolution, etc, etc

The user, when presented with the download dialog, is then simply presented with a "High, Medium, Low" option, regardless of source resolution or codec.

If the profiles were adjustable (in much the same way as the H.264 dialog box, which exposes the x264 options), admins who care can take the time to tweak, or just leave the defaults which have been selected by people who know what they're doing (ie, not my Mother-in-law).  Perhaps they want to use CRF instead of CBR, perhaps their definition of quality is higher/lower than defaults.

But the outcome is a clean and simple experience for the user, and an assurance sane options have been chosen.

 

 

 

 

  • Like 1
AnotherMatt
Posted

An official response from the Emby team would be appreciated.

Posted
Quote
  • Can the admin define profiles on behalf of users?  Whilst I'd be comfortable in deciding on sensible encoding settings, my mother-in-law is unlikely to make good decisions.

hi, no, but it's something we'd like to add.

Quote
  • What resolution is being downloaded, and can this be selected?  EG a 4k source, but destination should be 1080p, even if the device is compatible with 4k.
  • Further to the above, if a user is downloading a 4k source, what do the bitrate options mean?  Are they literally the same bitrates under x265?
  •  

It depends on the download quality setting. As they reduce the quality, the resolution may also be reduced.

Quote
  •  
  • I understand that "original" is essentially a file copy and therefore compatibility is not assured.  Is there an ability to define something like a "highest quality" that allows transcoding a high quality source to the best quality the destination device supports (eg keep video, change container, transcode DTS to stereo)

Yes the quality setting has original, which is not the same as downloading the original file. Downloading at original quality will do what you describe.

AnotherMatt
Posted

Thanks for the nonsensical and selective response, Luke.  You've successfully provided a post without actually answering the question.

I appreciate that Emby aggressively moderate the forums and remove any posts that are uncomfortable, and my response will probably never be seen.  But your response is a perfect example why Emby is never considered as a real solution for those who need a Media server.

visproduction
Posted

AM,


Did you notice that Luke answered your all your qestions in the original, first post above,  He just did not go through all the other details, discussed, in the follow up posts.  

Luke did write;

"It depends on the download quality setting. As they reduce the quality, the resolution may also be reduced." 

So, this answer explains that the transcoding is running on a sliding scale. Did you want the exact parameters of this code?  That's a complex answer and would be very hard to write an explanation, other than quoting the actual code or perhaps several graphs.  Exactly at what media bitrate, pixel dimension and result of perhaps a server media stream speed test, does media start to transcode, based on the admin settings or transcoding limits.  When the server is tested, I think there may also be a limit that if the demand gets too close to needing 1 to 1 real time to transcode, then a lower res is picked.  I do not know this for sure, but you can see there are a lot of variables that can trigger transcoding. It depends on the server, on the media size and bit rate on the network.  How else can anyone answer exactly what is going on.  "It depends" sums it up. I think that answer is fine.

All the new features, discussed above, would require code development and UI design and so there is no real clear answers.  It depends on what is practical and if the feature gets accepted to be added.  Your original post question has been answered.  I think you are being too harsh in your response to Luke.

Posted
6 hours ago, AnotherMatt said:

Thanks for the nonsensical and selective response, Luke.  You've successfully provided a post without actually answering the question.

I appreciate that Emby aggressively moderate the forums and remove any posts that are uncomfortable, and my response will probably never be seen.  But your response is a perfect example why Emby is never considered as a real solution for those who need a Media server.

HI, I thought I answered everything in the first post, no? I just haven't gone through the rest yet but I will be doing that and answering those.

Posted
Quote

If I select Download, I get an option to choose a bitrate.  Nothing more -- no quality, no profiles, no resolution, etc.  So if I have a 4k movie, and I choose 1.5Mbps, is that really going to encode a 4k x265 at 1.5Mbps, or is it going to transcode it down to a sensible resolution for this bitrate?  This is an important question as we aren't governed by a perceptual quality algorithm. 

What we need to do is update that list to have the same set of options as the quality setting during playback. This shows the resolution and bitrate together so that you know what you'll get.

Posted
Quote

Assuming the encoder keeps the same compression algorithm, we then run into another complexity.  X265 transcoding is disabled by default on the server as it's an experimental feature.  If a user chooses to download an x265 movie, and allows the download to use the default bitrate (my phone seems to default to 4Mbit), it is going to transcode a 4k x265 movie into a 4k, 4Mbit x264 one?

 

Correct, although most phones can play x265 nowadays, so if they select original quality then there is a good chance that they will get the original file without any conversion.

Quote

Having a single set of pre-determined bitrates -- the only variable presented -- which make no consideration of algorithm or resolution makes using the feature near-impossible for the non-technical user.

Near impossible how? Why do they even need to worry about these details? The only reason I can think of is the download size.

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