Jump to content

Is it possible to transcode only if codec mismatch?


Recommended Posts

Posted

I'd like to use Emby in a VM without transcoding hardware.  Most media in my library is compatible with my devices for direct playback, or only requires transcode of the audio channel. 

I've been disabling transcoding on the user profile for testing, but when I re-enable it, auto quality on the client kicks in and transcoding happens.   

I'm wondering if there is a way for me to disable speed detection, but leave transcoding enabled so that video transcoding only happens if absolutely necessary for playback? 

I've noticed that speed test related transcode only appears to happen if the device is remote.  Is the bandwidth check disabled for LAN networks that are defined or does it kick in based on other criteria?  If I define 0.0.0.0/0 as a LAN network would that have the desired effect?  I'm running Emby behind HAproxy, what if I just filtered out calls to the relevant API endpoint so it can't make the call to test speed? 

Posted
1 hour ago, bruor said:

Is the bandwidth check disabled for LAN networks

Hi.  Yes.  We assume adequate bandwidth when on the same network as the server.

Posted (edited)

Thanks, can you verify if it is possible to define public IP blocks as LAN, or is that limited to RFC1918 networks? 

Would also like to know how the client would respond if I block the bitrate test API endpoint so I can leave "do not require password on LAN" enabled for users. 

Edited by bruor
Posted
1 minute ago, bruor said:

Would also like to know how the client would respond if I block the bitrate test API endpoint

Not well for your case.  In that case, it will assume a really low value in hopes that playback will work.

Posted

You can define a comma separated list of IPv4 and IPv6 networks to treat as local. If the LAN clients appear to be coming from a Docker, VLAN or other subnet that's different from the Emby server then this should help you treat them as local.

 

Posted (edited)

Ok, so it seems like there is currently no server-side way to stop the speed test and only transcode if absolutely required for remote clients? 
 - Is there a formal process for requesting this as a feature?

The only way to achieve this currently is by manually configuring the client to it's maximum bitrate value to disable the bitrate check? 

Since I'm using a reverse proxy, if I make the connections appear to come from the local network would the server treat that connection as local and ignore the client if it asks for a reduced bitrate stream? Or is the decision to do a bitrate reductive transcode handled solely in the client application logic? 
 

Edited by bruor
Posted
Quote

Ok, so it seems like there is currently no server-side way to stop the speed test and only transcode if absolutely required for remote clients? 

You can just set the quality setting to a really high value.

Posted

I thought this was only possible in the client app, where is the setting to enforce it from the server? 

Posted
22 hours ago, bruor said:

I thought this was only possible in the client app, where is the setting to enforce it from the server? 

There isn't one, although a server option to ignore quality with respect to transcoding decisions is always possible.

  • Thanks 1
Posted

Adding an admin control for that server side would be appreciated!

  • Thanks 1

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