建立 Sound 物件,使用 load() 方法載入外部 MP3 檔案播放。
讓 Sound 物件監聽 SampleDataEvent,即可播放由程式即時產生的聲音。下例示範產生簡單正弦波:
var mySound:Sound = new Sound();
function sineWaveGenerator(event:SampleDataEvent):void {
for (var c:int = 0; c < 8192; c++) {
var sample:Number = Math.sin((Number(c + event.position) / Math.PI / 2)) * 0.25;
event.data.writeFloat(sample); // 左聲道
event.data.writeFloat(sample); // 右聲道
}
}
mySound.addEventListener(Event.SAMPLE_DATA, sineWaveGenerator);
mySound.play();
說明:迴圈寫入 8192 個取樣點,每個取樣包含左右聲道浮點數值(-1.0 ~ 1.0)。透過 Math.sin 產生正弦波,乘以 0.25 控制音量。