使用聲音的基本概念

Flash Player 9 以及更新的版本,Adobe AIR 1.0 以及更新的版本

電腦可以捕捉數位音效 (聲音資訊的電腦形式) 並加以編碼,也可以儲存數位音效並加以擷取,透過喇叭進行播放。您可以使用 Adobe® Flash® Player 或 Adobe® AIR™ 和 ActionScript 播放聲音。

當聲音資料轉換為數位形式時,會具有各種不同的特性,例如聲音的音量,以及為立體聲或單聲道。當您在 ActionScript 中播放聲音時,也可以調整這些特性,例如,讓聲音更大聲,或是讓它聽起來好像來自某個方向。

您必須先將聲音資訊載入 Flash Player 或 AIR 中,才能在 ActionScript 中控制聲音。有五種方式可以將音效資料載入 Flash Player 或 AIR 中,讓您透過 ActionScript 加以使用。

  • 將 mp3 檔案等外部聲音檔案載入 SWF。

  • 在建立 SWF 檔案時,將聲音資訊直接內嵌至 SWF 檔案。

  • 從使用者電腦連接的麥克風捕捉音效。

  • 從伺服器串流音效。

  • 動態產生和播放音效

當您從外部聲音檔案載入聲音資料時,就可以開始播放聲音檔案的開頭,同時繼續載入其餘的聲音資料。

雖然有多種聲音檔案格式可用來編碼數位音效,但是 ActionScript 3.0、Flash Player 和 AIR 都支援儲存格式為 MP3 的聲音檔案。它們無法直接載入或播放具有 WAV 或 AIFF 等其它格式的聲音檔案。

當您使用 ActionScript 中的聲音時,有可能會用到 flash.media 套件的數項類別。Sound 類別是載入聲音檔案或指定函數給對聲音進行取樣的事件然後開始播放時,用以存取音效資訊的類別。一旦開始播放聲音,Flash Player 和 AIR 就會讓您存取 SoundChannel 物件。由於已載入的音效檔案有可能只是您在使用者的電腦上播放的其中一個聲音,因此每個正在播放的聲音都會使用自己的 SoundChannel 物件;而所有 SoundChannel 物件在混合後的結合輸出,便是實際在電腦喇叭上所播放的聲音。您可以使用此 SoundChannel 實體,控制聲音的屬性並停止其播放。最後,如果您想要控制結合的音效,SoundMixer 類別可讓您控制混合的輸出。

當您在 ActionScript 中使用聲音時,也可以使用其它數個類別以執行更細部的工作。如需有關所有與聲音相關之類別的詳細資訊,請參閱瞭解聲音架構

重要概念與術語

下列參考清單包含您可能會遇到的重要術語:

振幅
在聲音波形上的一點到零線或平衡線的距離。

位元速率
針對聲音檔案的每秒編碼或串流資料量。對於 MP3 檔案而言,位元速率通常是以每秒多少千位元 (kbps) 來表示。較高的位元速率通常是指較高品質的聲波。

緩衝
在播放之前接收和儲存聲音資料的作業。

mp3
MPEG-1 Audio Layer 3 (或 MP3),是常用的聲音壓縮格式。

左右相位
在立體聲的音場中,左右聲道之間的音效訊號位置。

波峰
聲音波形中的最高點。

取樣頻率
定義從類比音效訊號取得的每秒取樣數目以製作數位訊號。標準光碟音效的取樣頻率是每秒 44.1 kHz 或 44,100 個樣本。

串流
在播放聲音檔案或視訊檔案的前面部分時,同時仍然繼續從伺服器載入該檔案之後面部分的程序。

音量
聲音的大小。

波形
經過一段時間後,聲音訊號變化的振幅圖像形狀。