2012-07-03 72 views
0

我有一組數組中的聲音,並且會在我點擊「開始」按鈕時隨機開始播放。現在我想知道如何在左右揚聲器中交替播放聲音。例如。如果第一個聲音在我的頭戴式耳機的左側揚聲器中播放,則第二個聲音應該在右側揚聲器中播放,依此類推。有可能嗎?支付聲音左右揚聲器交替使用閃光燈

回答

1

您可以使用SoundTransform類來完成此操作。看看這篇幫助文章爲例http://help.adobe.com/en_US/as3/dev/WS5b3ccc516d4fbf351e63e3d118a9b90204-7d1f.html

這裏的情況下鏈接永不消逝的摘錄:

單個SoundChannel對象可同時控制左和聲音的權利 立體聲通道。如果mp3聲音是單聲道聲音,SoundChannel對象的左右立體聲通道將包含 相同的波形。

您可以使用SoundChannel對象的leftPeak和rightPeak屬性播放正在播放的聲音 的每個立體聲聲道的振幅。這些屬性顯示 聲音波形本身的峯值幅度。它們並不代表實際播放的音量。實際播放音量是SoundChannel對象 和SoundMixer類中設置的聲波和音量值的振幅的函數。

在播放 時,SoundChannel對象的pan屬性可用於指定 不同音量級別的左右聲道。 pan屬性的值可以是-1到1, ,其中-1表示左聲道播放的是最高音量,右側是 聲道,而1表示右聲道播放的是最高音量 ,而左聲道是無聲。介於-1和1, 之間的數字值爲左右聲道值設置比例值,值爲0意味着兩個聲道都以平衡的中等音量水平播放。

下面的代碼示例創建0.6 體積值和-1 pan值(頂部左聲道音量和 沒有右聲道音量)SoundTransform對象。它將SoundTransform對象作爲 參數傳遞給play()方法,該方法將SoundTransform對象應用於爲創建控制 播放而創建的新SoundChannel對象。

var snd:Sound = new Sound(new URLRequest("bigSound.mp3")); 
var trans:SoundTransform = new SoundTransform(0.6, -1); 
var channel:SoundChannel = snd.play(0, 1, trans); 

你可以改變音量,而聲音是 播放設置SoundTransform對象和盤或卷屬性 然後將對象作爲 SoundChannel對象的soundTransform屬性平移。

所有您需要添加的是一個布爾標誌,用於指示哪一側應該沒有音量,然後適當地修改聲音轉換。

+0

是啊非常感謝你,,,它正在工作,,太好了。 – Sakeer

相關問題