2013-02-26 94 views
0

我有一個音樂播放器四種不同的軌道(吉他,貝司,鼓,主唱)。他們都命名爲複選框選中/取消選中其中一條軌道是目前可聽的,我也有一個播放按鈕來開始。所以,當檢查e.g聲和吉他聲我只是想聽這兩項文書和貝司和鼓的背景只是玩靜音。的ActionScript 3,多音軌

問題是當我與這兩個箱子託運我不能改變,而玩其他框,因爲狀態是靜態的,同時擊中箱子不動態改變開始。

我只用吉他和人聲爲便於理解的代碼只是一個摘錄:

 var vocals:Sound = new Sound(); 
     var vocalsChannel:SoundChannel = new SoundChannel(); 
     var vocalsTransform = new SoundTransform(); 
     vocalsChannel.soundTransform = vocalsTransform; 
     vocals.load(new URLRequest("songsample.mp3")); 

     var guitar:Sound = new Sound(); 
     var guitarChannel:SoundChannel = new SoundChannel(); 
     var guitarTransform = new SoundTransform(); 
     guitarChannel.soundTransform = guitarTransform; 
     guitar.load(new URLRequest("funky.mp3")); 

     voc_mc.addEventListener(MouseEvent.CLICK, _selectedVoc); 
     git_mc.addEventListener(MouseEvent.CLICK, _selectedGit); 

     function _selectedVoc(e:MouseEvent):void 
     { 
      var bool:Boolean = e.target.selected; 

      if(bool) 
      { 
       vocalsTransform.volume = 1; 

      } 
      else 
      { 
       vocalsTransform.volume = 0; 

      } 
     } 


     function _selectedGit(e:MouseEvent):void 
     { 
      var bool:Boolean = e.target.selected; 

      if(bool) 
      { 
       guitarTransform.volume = 1; 

      } 
      else 
      { 
       guitarTransform.volume = 0; 


      } 
     } 

     play_mc.addEventListener(MouseEvent.CLICK, 
           function(evt:MouseEvent) 
     { 
      vocalsChannel = vocals.play(0,0,vocalsTransform); 
      guitarChannel = guitar.play(0,0,guitarTransform); 
     }) 

     stop_mc.addEventListener(MouseEvent.CLICK, 
           function(evt:MouseEvent) 
     { 
      vocalsChannel.stop(); 
      guitarChannel.stop(); 
     }) 

回答

2

您需要soundTransform屬性重置的頻道:

function _selectedVoc(e:MouseEvent):void 
    { 
     var bool:Boolean = e.target.selected; 

     if(bool) 
     { 
      vocalsTransform.volume = 1; 

     } 
     else 
     { 
      vocalsTransform.volume = 0; 

     } 
     vocalsChannel.soundTransform = vocalsTransform; 
    } 
+0

@MarcelaThanks非常多,這是我需要的那種建議! – user2110830 2013-02-28 10:54:15

+0

很高興我能幫到你。如果這回答你的問題,請確保選擇它作爲答案。 – Marcela 2013-02-28 13:55:01