Jump to content

Auto quality needs work


joshua4

Recommended Posts

joshua4

I have a bunch of 1080p high definition videos. Setting the quality to default AUTO results in significant delay in playback. The video continually pauses, resumes, pauses, resumes. I have to manually set the quality to get consistent playback. 

 

How does the AUTO quality determine connection speed? 

 

Using HTML web app

Edited by joshua4
  • Like 4
Link to comment
Share on other sites

KarlDag

Auto determines bitrate at the beginning of playback and then doesn't change. So if someone else starts streaming in your house as you're watching, or torrenting, you might be running out of upload speed. It's not like Plex's.

 

Or your cpu is too weak to transcode that file in realtime.

Link to comment
Share on other sites

joshua4

Auto determines bitrate at the beginning of playback and then doesn't change. So if someone else starts streaming in your house as you're watching, or torrenting, you might be running out of upload speed. It's not like Plex's.

 

Or your cpu is too weak to transcode that file in realtime.

 

Yeah that's garbage. this needs work

  • Like 1
Link to comment
Share on other sites

Actually, if you are on your local network, the Auto setting will just assume a high available bandwidth.  You can easily adjust this however you need it to be, however.

Link to comment
Share on other sites

Jdiesel

Unfortunately it doesn't work on out of network devices which it were an Auto setting would be the most beneficial. I have never gotten a quality setting above 1Mbps when using Auto despite having a 100/100Mbps connection on my server which means that everything transcodes.

  • Like 1
Link to comment
Share on other sites

cybergrimes

Unfortunately it doesn't work on out of network devices which it were an Auto setting would be the most beneficial. I have never gotten a quality setting above 1Mbps when using Auto despite having a 100/100Mbps connection on my server which means that everything transcodes.

 

Same, my remote users all have to set quality in app or else it always gives them something in the 1 Mbps range. I can set these same users to 5 or 6 Mbps without any problems.

Link to comment
Share on other sites

TylerV76

Unfortunately it doesn't work on out of network devices which it were an Auto setting would be the most beneficial. I have never gotten a quality setting above 1Mbps when using Auto despite having a 100/100Mbps connection on my server which means that everything transcodes.

 

 

Same, my remote users all have to set quality in app or else it always gives them something in the 1 Mbps range. I can set these same users to 5 or 6 Mbps without any problems.

 

 

 

You guys don't have any limits set on your dashboard do you? I have my remote clients set to auto and I always get at least 16-18 Mbps on a 20 Mbps upload line and at least 30 Mbps on the 50 upload line. My kid streams my home server from college and gets 8 Mbps on her crappy school wifi with it set to auto.   

Link to comment
Share on other sites

joshua4

You guys don't have any limits set on your dashboard do you? I have my remote clients set to auto and I always get at least 16-18 Mbps on a 20 Mbps upload line and at least 30 Mbps on the 50 upload line. My kid streams my home server from college and gets 8 Mbps on her crappy school wifi with it set to auto.   

 

My settings are default. Anyway that is not the point. The point is if the quality is set to AUTO it should dynamically adjust for continuous streaming. If at any point my connection speed changes, the feature should be intelligent enough to adjust the setting. You know, LIKE NETFLIX DUH.

Edited by joshua4
  • Like 2
Link to comment
Share on other sites

cybergrimes

You guys don't have any limits set on your dashboard do you? I have my remote clients set to auto and I always get at least 16-18 Mbps on a 20 Mbps upload line and at least 30 Mbps on the 50 upload line. My kid streams my home server from college and gets 8 Mbps on her crappy school wifi with it set to auto.   

 

That's interesting, I do have per user limits set and mostly because when I first started I only had a 10 Mbps upload line. I would set my 2 primary users at 4 Mbps and a 3rd user at 2 Mbps knowing it was unlikely they would all ever stream at the same time. I now have a 20 Mbps upload line and set most of them at 5 or 6 Mbps but whenever the client side is set to Auto they get the lower 1 Mbps streams. If I have them change it client side to 5 Mbps it doesn't have any issues. I honestly can't recall if I've ever tested any of them on Auto without a per user limit. I didn't want a single user to ever saturate the line.

Edited by cybergrimes
Link to comment
Share on other sites

Jdiesel

I have an excess of upload bandwidth on my server (100Mbps) and most clients can easily do 5-10Mbps Down. My home network which I use primary has a 35/5Mbps connection but I still get 1Mbps when set to Auto when manually setting the quality to 25Mbps works perfectly. I think the problem is that the Auto setting doesn't handle the increased latency from remote servers very well and defaults to something way to conservative. 

Link to comment
Share on other sites

TylerV76

My settings are default. Anyway that is not the point. The point is if the quality is set to AUTO it should dynamically adjust for continuous streaming. If at any point my connection speed changes, the feature should be intelligent enough to adjust the setting. You know, LIKE NETFLIX DUH.

Possibly, if you lost the attitude, you might get a bit farther with your request. Last I checked, I wasnt replying to you, DUH.

 

 

Sent from my iPhone using Tapatalk

Link to comment
Share on other sites

TylerV76

...I think the problem is that the Auto setting doesn't handle the increased latency from remote servers very well and defaults to something way to conservative.

I would think that would be the case for everyone if that was the situation. Last week I was 2000 miles away on hotel wifi and streams still started at 6 Mbps. My kids school wifi is horrible and she still starts iff way higher than 1 Mbps.

 

This is on a windows server and various clients.

 

 

Sent from my iPhone using Tapatalk

Link to comment
Share on other sites

cybergrimes

I would think that would be the case for everyone if that was the situation.

 

Yeah I eventually decided there must be something off with my remote clients so I quit asking about it. I know that with at least two of them when they open the Roku app it takes quite awhile to fully load.

Looking at my last post about it in March I was streaming 8.8 Mbps on 4G LTE with pausing and audio skipping when set to Auto but my cable ISP remote clients were still getting that 1-2 Mbps range.

 

edit: just tried a 4G LTE connection and it's 8.8 Mbps exactly like in March. It's a different phone now, still Verizon Wireless and my home upload line is now 20 Mbps instead of 10 Mbps.

Edited by cybergrimes
Link to comment
Share on other sites

Jdiesel

I would think that would be the case for everyone if that was the situation. Last week I was 2000 miles away on hotel wifi and streams still started at 6 Mbps. My kids school wifi is horrible and she still starts iff way higher than 1 Mbps.

 

This is on a windows server and various clients.

 

 

Sent from my iPhone using Tapatalk

 

I'm glad it works well for you unfortunately many others aren't as lucking. Network latency combined with server performance can cause issues with Emby's bitrate testing logic. As an example here is the exerpt from my logfile with shows how latency can influence the test.

2018-12-03 14:15:13.651 Info HttpServer: HTTP Response 200 to *.*.*.*. Time: 330ms. https://*****.***/emby/Playback/BitrateTest?Size=500000
2018-12-03 14:15:13.856 Info HttpServer: HTTP Response 200 to *.*.*.*. Time: 396ms. https://*****.***/emby/Playback/BitrateTest?Size=1000000
2018-12-03 14:15:14.202 Info HttpServer: HTTP Response 200 to *.*.*.*. Time: 604ms. https://*****.***/emby/Playback/BitrateTest?Size=3000000

5c05926149e97_Capture.png

 

As you can see a large portion of the time used to determine the preferred quality setting is due to latency, Time versus Data does not scale linearly. Since the test files are so small the latency makes up for a large portion of this, not the actually time to download the file. This is why I think a larger test file would help smooth out things and provide a better representation of actual download bandwidth.  

Edited by Jdiesel
Link to comment
Share on other sites

TylerV76

I'm glad it works well for you unfortunately many others aren't as lucking. Network latency combined with server performance can cause issues with Emby's bitrate testing logic. As an example here is the exerpt from my logfile with shows how latency can influence the test.

2018-12-03 14:15:13.651 Info HttpServer: HTTP Response 200 to *.*.*.*. Time: 330ms. https://*****.***/emby/Playback/BitrateTest?Size=500000
2018-12-03 14:15:13.856 Info HttpServer: HTTP Response 200 to *.*.*.*. Time: 396ms. https://*****.***/emby/Playback/BitrateTest?Size=1000000
2018-12-03 14:15:14.202 Info HttpServer: HTTP Response 200 to *.*.*.*. Time: 604ms. https://*****.***/emby/Playback/BitrateTest?Size=3000000

5c05926149e97_Capture.png

 

As you can see a large portion of the time used to determine the preferred quality setting is due to latency, Time versus Data does not scale linearly. Since the test files are so small the latency makes up for a large portion of this, not the actually time to download the file. This is why I think a larger test file would help smooth out things and provide a better representation of actual download bandwidth.  

 

 

 

Gotcha. Yeah my response times are substantially lower that that which is why its probably streaming full throttle. Even her schools connection is under 100ms for the 300000. 

Link to comment
Share on other sites

Our auto detection routines are far from perfect right now but they do work fine for the majority of situations.  We will look to improve them in the future but we offer the static settings so that you can choose what works best for your particular situation.

 

Also it is not intended to be a dynamic bitrate adjustment.  The costs of doing that may not actually be worth doing it for a personal media solution but that is also something we will look into in the future.

Link to comment
Share on other sites

  • 2 months later...
fizzyade

Our auto detection routines are far from perfect right now but they do work fine for the majority of situations.  We will look to improve them in the future but we offer the static settings so that you can choose what works best for your particular situation.

 

Also it is not intended to be a dynamic bitrate adjustment.  The costs of doing that may not actually be worth doing it for a personal media solution but that is also something we will look into in the future.

The dynamic bitrate adjustment of another well known media server was a life saver for me while I was in hospital for 2 weeks just before Christmas, I was tethered to my phone and using the cellular connection which was up and down with speeds, rather than the stream stopping to buffer I could see when the connection speed had dropped by the change in bitrate, which is preferable to to the film constantly pausing.

  • Like 1
Link to comment
Share on other sites

moviefan

I totally agree this is an area of weakness for Emby.  Auto detection has worked terribly on all sorts of clients connecting to my server over time.  It's totally hit and miss.  Probably the worst functional aspect of the product currently IMO.

 

Fixing this, and adding the ability to continuously detect bandwidth and adjust bitrate during playback would be a huge improvement and would put it on par with many of the commercial video services out there.

  • Like 2
Link to comment
Share on other sites

Jdiesel

I'm no expert on HLS but I've always understood it to work by having multiple streams available at different bitrates in advance of playback to allow for seamless switching between them depending on the bandwidth available. My questions are:

 

1) Can ffmpeg switch the target bitrate on the fly without interrupting the hls stream?

2) Would Emby need to encode the stream in multiple bitrates in realtime?

 

I think it is important to not the other services that use this (Netflix, Amazon, Hulu, etc) have all these videos pre-encoded and are not doing any on the fly transcoding. Does Plex do dynamic quality adjustments?

  • Like 2
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...