Skip to main content

Microsoft Silverlight

Unanswered Question Increase buffer size for a 256k internet connectionRSS Feed

(0)

ntoupal
ntoupal

Member

Member

0 points

1 Posts

Increase buffer size for a 256k internet connection

 I'm using Silverlight to watch movies on Netflix because I live in a very rural area I have limited bandwidth. I was wondering if there was any to increase the amount of movie that gets buffered before playback. Currently the player downloads about 5-10 minutes of playtime before playing (what means I have to watch movies in 10min chunks). With the old player that Netflixs used I could just let the whole movie play through and then restart the movie from the beginning and watch it straight through but Silverlight wants to resart buffering the movie all over again.

Thanks

Nate

brightstar
brightstar

Member

Member

406 points

184 Posts

Re: Increase buffer size for a 256k internet connection

 maybe he solution for Silverlight is "Smooth Streaming", which was developed to change its quality, if you have slow speed ( so it will be seen on your speed too)

the problem is , did developers (the site you are wathcing) use Smooth Streaming tech with their Silverlight player

gillesk
gillesk

Member

Member

302 points

66 Posts

Re: Increase buffer size for a 256k internet connection

Netflix is using something similar to smooth streaming. It would be up to them to provide a way to download the whole file and cache it for playback. If your connection is slower than the lowest bitrate availble, then you cannot sustain the download and you will keep buffering every so often. Smooth streaming will have a similar issue.

Development Lead | Microsoft

bandwidth_starved
bandwidt...

Member

Member

2 points

1 Posts

Re: Increase buffer size for a 256k internet connection

 We have the same problem - 256K bandwidth (although sometimes it bursts faster) and have to watch in chunks.  It does buffer, but it would make sense if it could buffer more at a time.  Maybe there is a registry setting somewhere that controls buffering in Silverlight?

kellyk
kellyk

Member

Member

2 points

1 Posts

Re: Increase buffer size for a 256k internet connection

I am wanting to increase the amount of movie time that Netflix/Silverlight buffers as well due to an intermittent internet connection. I was reading about a MediaElement.BufferTime adjustment in other places on the forum, but I don't know how to access that or if it will help. Please advise. Tks, Kelly

gillesk
gillesk

Member

Member

302 points

66 Posts

Re: Increase buffer size for a 256k internet connection

Unfortunately, this will not work, not only is the property only available to the application (unless netflix exposes a way to change it, then the user cannot get access to the property). The way the Netflix application works, it controls the bitrate of the file that it downloads and tries to adapt to the changing network condition. Unfortunately, it has a minimum bandwidth that it needs to give a consitent experience. While the application can handle fluctiations in the bandwidth, if the minimum bandwidth required to download the file cannot be sustained, then you will hit buffering issues.

You would need to communicate your issues with Netflix, they are the ones writing the apllication.

Development Lead | Microsoft

haydenmarx
haydenmarx

Member

Member

8 points

4 Posts

Re: Increase buffer size for a 256k internet connection

@gillesk No, It's definitely not an issue with Netflix or connection speed. Before they switched to silverlight people could let pause the movie and let it load a 10 minute buffer or even let it download the entire movie if they wanted. And that didn't change until 1 or 2 silverlight updates ago. Now I it stops buffering at about 3 minutes. Even with the fastest connection on the computer with the most memory your app won't buffer for more than 3 mins. Oh and I talked to Netflix and they say that the change is on your end. Please explain why your team crippled the app.

gillesk
gillesk

Member

Member

302 points

66 Posts

Re: Increase buffer size for a 256k internet connection

We work closely with Netflix, they're a great partner and we would not cripple their app the way you make it sound. What you have to understand is that the Silverlight player is much different in the way that it plays a movie, compared to the other players. You might want to read this blog post from Netflix about their encoding process, especially the Delivered Quality section (note that this is old but a lot of it still applies).

Usually a player will download a specific file and play it, for the Silverlight Netflix player that is not the case. As the movie is being downloaded the player decides which bitarte to use to download the next portion based on the current network condition to provide a seamless experience if you bandwidth fluctuates. In order to provide this experience the logic to decide what part of the stream and at which bitrate, is controlled by the application (in this case Netflix), with this logic, the application also decides when it has enough data in its buffer and stops filling it. The other traditional players don't have this dynamic logic and start downloading one file and keep going until the whole movie is downloaded, Silverlight offers this too as a platform, but for the majority of people having a better experience where the movie plays un-interrupted adapting to network and playback conditions is probably a better choice and that's what Netflix decided to implement with the Silverlight player.

Development Lead | Microsoft

haydenmarx
haydenmarx

Member

Member

8 points

4 Posts

Re: Re: Increase buffer size for a 256k internet connection

Thanks for the link, and if you would read the comments you would see that a lot of people are having the same problem. But the problem is not with Netflix. The problem is with the logic of your program. (Which resides in the base code they can't touch.) It thinks I need less buffer room than I do. And that cripples the app because it prevents me from loading more which forces me to watch movies in 5 minute segments. You guys could easily fix the problem by adding an option to allow for continuos buffering. Just like in the old Windows Media Player that the app used to be run on.

gillesk
gillesk

Member

Member

302 points

66 Posts

Re: Re: Increase buffer size for a 256k internet connection

I don't think that I'll be able to convince you that this issue is completely controlled by the application code. As I said in my previous post, Silverlight allows for continuous buffering the same way that Windows Media Player does, but also has the ability to let the application control much of this. If you look at the network traffic while using the silverlight player you will see that the player makes many requests for parts of the movie, each of these requests is made from the application code to Silverlight. The netflix player decides when and how many requests it needs to send out, if it decides that it has enough data, then it will stop. Silverlight itself cannot get more data because it doesn't know where to get the data from.

With Media Player only 1 request is made for the entire movie and that allows to buffer as much as needed. Again, Silverlight allows for this type of playback too, but the application needs to request this download mode from Silverlight.

There is a very intersting white paper about SmoothStreaming which details a lot of the behavior of adaptive streaming with Silverlight. While Netflix doesn't use SmoothStreaming for their Silverlight delivery, they do use a very similar approach and a lot of the concepts of SmoothStreaming would also apply to Netflix.

Your assement of the problem would be correct if Netflix was not using an adaptive streaming solution.

Development Lead | Microsoft

haydenmarx
haydenmarx

Member

Member

8 points

4 Posts

Re: Re: Re: Increase buffer size for a 256k internet connection

This is what I got out of the article: x "The server only sends ahead enough data packets to fill the client buffer. The client buffer is typically between 1 and 10 seconds (Windows Media Player and Silverlight default buffer length is 5 seconds). This means that if you pause a streamed video and wait 10 minutes, still only approximately 5 seconds of video will have downloaded to the client in that time." x x I've contacted Netflix's PR to ask how the decision to limit the buffer to its current state came about.

haydenmarx
haydenmarx

Member

Member

8 points

4 Posts

Re: Re: Re: Re: Increase buffer size for a 256k internet connection

Well it turns out I was wrong. The answers I had got from some of the Netflix customer service support team that I took as gospel truth turned out to be heresy. I just talked to someone from corporate who said that it is Netflix who restricts the buffer size.

So my question, if you will take it, is how hard would it be for Netflix to add a feature to allow user to increase their buffer size while keeping the current system?

slc0817
slc0817

Member

Member

2 points

1 Posts

Re: Re: Re: Re: Increase buffer size for a 256k internet connection

 I have been trying to get netflix to work with my computer for the past 6 hours, I'm so frustrated. I have noticed that it doesn't buffer any of the video while I am watching it. When I pause the video I see my transmitted rate and recieve rate jump way up, say it is sitting at zero and jumps to 500kb/sec. It may be my out of date computer, but I never really had a problem before I tried netflix.

  • Unanswered Question
  • Answered Question
  • Announcement
Microsoft Communities