Detecting user's bandwidth / speed of internet of

I was wondering if it is possible to detect the user’s or the computer communicating with the server’s internet speed or bandwidth?
And then in an if statement serve a smaller-version of a file if not much, or the normal file if normal values, or a high-quality version when above-average values.

Is this possible in PHP and how could one do this or approach doing this?
And if not, is it possible to do in Perl or Python and how would one approach and do it in either of those languages?
or if not possible in a server-side language, how could one do this in javascript? And can a moderator move this to the js forum then?

Thanks in Advance & Best Regards,
Team 1504

Don’t brother. You’ll just waste the users bandwidth trying to figure that out. Make one site, no “high quality” stunts, if you are planning for mobile devices then take the steps to add a mobile-optimized version of the site. But if you do things right, you won’t need multiple version for user with different bandwidth limits.

True, its just some of my HD videos are big and I wanted to select the SD version if the bandwidth could not handle or the high quality version wasn’t loading soon enough. Maybe just host it on and embed Youtube?

Have you thought about offering a selector for the user? You could have different buttons for different quality videos. If I am on a dial-up connection, I would know to select the LOW quality video, on my cell phone I might select a mid quality video, but from any broadband connection, I would select the HQ video.

You are probably looking for “Adaptive Bitrate Streaming” which is supported by both Flash and Silverlight. Tons of videos of Microsoft demonstrating adaptive bitrate streaming if you are not sure what it is about.

Thank you. I didn’t know there was a name for it. Ill look into that, but for nowni think ill do youtube or just give links to each version while attempting to load the HD version.