Hello!
I’ve read the “Bandwidth Detector Actionscript” article on Sonify.org. I’m having trouble getting it to work properly with a larger main.swf.
For those who are new to this, the bandwidth detector detects the bandwidth of your main.swf and from that you can choose to have a certain .swf or URL load, depending on the user’s bandwidth.
My problem is that my main.swf is 64K and this causes the 56K simulation test to loop itself over and over without loading the file specified? Is there a way, in the code, that I could stop this from happening??
I’ll attach an example to this post. This example works fine because the main.swf is only 1K (I can’t upload a 64K here). Try making the 1K main.swf a large file and then do a test preview with 56K. The pic2.swf won’t load. 
 What can I do?
Here is the code!
FRAME 1
stop(); // stop until bandwidth detection is complete
onClipEvent (load) {
        /*
        Calculate approximate kbps after test swf loads
        */
        function getkbps(startTime, sizeInBytes) {
                elapsedTimeMS = getTimer()-startTime;
                // time elapsed since start loading swf
                elapsedTime = elapsedTimeMS/1000;
                //convert to seconds
                sizeInBits = sizeInBytes*8;
                // convert Bytes to bits,
                sizeInKBits = sizeInBits/1024;
                // convert bits to kbits
                kbps = (sizeInKBits/elapsedTime)*0.93;
                // IP packet header overhead around 7%
                return Math.floor(kbps);
                // return user friendly number
        }
        /*
        Load test.swf with a unique time to work around browser caching.
        Browser will always load a new copy of SWF because url is different each time.
        */
        now = new Date();
        // create date object
        nocacheStr = "?"+now.getTime();
        this.loadMovie("main.swf");
        //this.loadMovie("main.swf"+nocacheStr);
}
onClipEvent (enterFrame) {
        // do not execute code until SWF begins to load
        if (this._url != _root._url) {
                if (typeof start == "undefined") {
                        start = getTimer();
                }
                // set start time once
                if (this.getBytesLoaded()<this.getBytesTotal()) {
                        // not yet loaded
                        _root.statusmsg.text = "Checking Bandwidth";
                }
                if (this.getBytesLoaded() == this.getBytesTotal()) {
                        // swf loaded call getkbps()
                        var bandwidth = getkbps(start, this.getBytesTotal());
                        if (bandwidth>56) {
                                _parent.gotoAndStop(2);
                                trace('blah');
                        } else {
                                _parent.gotoAndStop(3);
                        }
                }
        }
}
FRAME 2
loadMovieNum("pic1.swf", 2);
FRAME 3
loadMovieNum("pic2.swf", 2);