views:

83

answers:

3

Is there a way for flash to detect a user's bandwidth, and depending the size of bandwidth, stop loading, or continue with the load? Now that I'm thinking about it, this would probably be a javascript detection script and if the bandwidth is high, load .swf, if not load a .jpg?

A: 

You might want to check this out...

http://www.springload.co.nz/love-the-web/detecting-bandwidth-with-flash-and-loading-the-right-content

... and Adobe have some server side bandwidth scripts...

http://www.adobe.com/livedocs/flashmediaserver/3.0/hpdocs/help.html?content=00000074.html

... if you're using their media server.

However, beyond actually downloading a file of known size and timing how long it take I'm not sure there's a simple way of doing this, and by the time you've started downloading something it might already be too late for your user. If the first experience of your website is that they have to sit around waiting for a bandwidth measurement they might well click away.

It might be better to give the option to the user to allow them to switch between a high bandwidth full-fedelity experience and a low bandwidth simple UI.

Martin Peck
A: 

You could break your content into pieces, the crucial, and the non-crucial. Load the first, time it, and then load the second if the requirements are met. I've done this before with a game that had voiceovers. You could play the game without them, so I prompted the user if I detected a slow load for the actual game. They could then choose to wait for sound, or go ahead and play.

Joey Blake
A: 

With this.getBytesLoaded() and this.getBytesTotal() you know the loading status. After some time, i.e. 5 seconds, you can see how it is going, and eventually decide to skip.

UVL