View Single Post
Old 11th April 2009, 22:57   #73  |  Link
benwaggoner
Moderator
 
Join Date: Jan 2006
Location: Portland, OR
Posts: 4,770
Quote:
Originally Posted by TEB View Post
Awesome video displaying where SL is going. A question if u dont mind Ben
1. When i slide the constrained bandwith meter up and down it takes around 10sec until one see a difference. Now i can understand that on the way down, since the decode prolly has a big buffer to eat of, but on the way up, why does it take it in 1 by 1 steps? and not from minimum to maximum (i slid the bar from 400kbit to 2,4mbit). Why doesnt the client try the best bandwith? Could u please elaborate a little bit more on how this "detection" work? I can see on trickplay skipping that the client sometimes trottles up bw 1 step by 1, and the next time i skip it can go from minimum to max..
There's a whole lot of heurstics under there. And the slider isn't acting as an override to the heuristcs, but as input for the estimated bitrate; other logic is still taking place. Sometimes it'll just 5 bitrates, sometimes one, depending on how fast chunks are taking to download, how many chunks are in the buffer, etcetera.

Also, I think that version tries to buffer ahead up to 20 seconds of video, so even if you crank the bitrate way down, it might not respond immediately; it'll start requesting future chunks at the lower bitrate, but if it's already cached a higher quality version of a given chunk, it'll use that one.

The good news is that the heristics are all in managed code and delivered on-demand when media playback is about to start, so it can be tuned as often as desired, and be made as specific to a particular content site and its customers as desired. So expect rapid evolution and improvement of the client. It's not like Windows Media Player where we only had one chance to lock in stream-switching logic every couple of years.
__________________
Ben Waggoner
Principal Video Specialist, Amazon Prime Video

My Compression Book
benwaggoner is offline   Reply With Quote