Здравствуйте! ПРоблемы с частотным анализатором - эквалайзером.
При компиляции в самой среде CS3 всё работает, но при загрузки флэшки в интернет експлорере или других браузерах эквалайзер пропадает, хотя звук слышен. Я так понял проблемы с функцией
SoundMixer.computeSpectrum(baByteArray,true,0); Я вставлял вывод текста в событии, и он не выводился после этой функции, как-будто на ней ход выполнения программы прирывался. В чём дело? Можетя что не так совсем делаю?
И ещё одна проблема, иногда бывает, что звук начинает медленнее играть, как будто зажевывает...
написал такой код:

Код AS3:
package {
import flash.display.Sprite;
import fl.controls.Slider;
import fl.events.SliderEvent;
import flash.media.SoundMixer;
import flash.media.Sound;
import flash.media.SoundChannel;
import flash.media.SoundTransform;
import flash.media.SoundLoaderContext;
import flash.events.Event;
import flash.events.IOErrorEvent;
import flash.events.SecurityErrorEvent;
import flash.errors.IOError;
import flash.events.ErrorEvent;
import flash.display.MovieClip;
import flash.utils.ByteArray;
import flash.net.URLRequest;
public class equalizer4 extends MovieClip {
public var s:Sound;
public var sc:SoundChannel;
public var baByteArray:ByteArray;
public var array:Array;
public var xx,yy,ww,hh:int;
var a:Number;
public var ddd:URLRequest;
public function equalizer4():void {
a = 0;
s = new Sound();
baByteArray = new ByteArray();
xx = help_mc.x;
yy = help_mc.y;
ww = help_mc.width;
hh = help_mc.height;
s.load(new URLRequest("test.mp3"),new SoundLoaderContext(1000, false));
sc = s.play(0, 0, new SoundTransform(1));
this.addEventListener(Event.ENTER_FRAME, spectrum);
}
function spectrum(event:Event):void {
a = 0;
SoundMixer.computeSpectrum(baByteArray,true,0);
graphics.clear();
for (var i=0; i < 256; i=i+8) {
a = baByteArray.readFloat();
var num:Number = a*360;
var col:uint = 0xEDB9F6 | (num << 8);
graphics.beginFill(col);
graphics.lineStyle(3,col);
graphics.drawRect(ww*(i/256),0 - ((num*hh)/500) ,(ww/256), ((num*hh)/500));
graphics.endFill();
}
}
}
}