我正在使用tweenlite淡出声音,淡出效果本身效果很好,但似乎每次将soundTransform应用于带有tweenlite的soundChannel时会出现一些像噼啪声一样的噪音。
您可以在此处here
进行测试以下是代码:
package {
import flash.display.Sprite;
import flash.events.Event;
import flash.events.MouseEvent;
import flash.media.Sound;
import flash.media.SoundChannel;
import flash.media.SoundTransform;
import com.greensock.*;
import com.greensock.plugins.*;
TweenPlugin.activate([VolumePlugin]);
public class SoundFade extends Sprite {
public var keySound:Sound;
public var keySoundChannel:SoundChannel;
public var keySoundTransform:SoundTransform;
public function SoundFade():void {
keySound = new MySound();
keySoundChannel = new SoundChannel();
btn.addEventListener(MouseEvent.CLICK, onClick);
}
private function onClick(e:MouseEvent):void {
keySoundChannel = keySound.play();
TweenLite.to(keySoundChannel, 0.5, {
volume: 0
});
}
}
}
有没有人知道如何解决这个问题?
我相信你们可以帮我解决这个问题。提前谢谢。
答案 0 :(得分:0)
我无法收听,因为链接不起作用,但据我所知,当从高(或低)音量变为低(或高)音量时,噼啪声会出现。发生这种情况是因为您在运行中修改了波形,因此它变得不连续。
我看到你使用TweenLite,这是一个好的开始。我相信如果你增加补间持续时间,噼啪声就会消失。
请注意,根据文档,TweenLite的默认缓存是Quad.easeOut,因此衰落不是线性的,因此噼啪声可能出现在转换速度更快的地方!将易用性更改为“Linear.easeNone”也可能有所帮助。