Actionscript 3 如何在外部加载的SWF中完全禁用声音?
在我的应用程序中,我需要在没有声音的情况下播放外部加载的第三方SWFs广告。到目前为止我所做的: 使用SoundTransform将音量设置为0 每帧执行此操作,以便如果广告尝试重置音量,我会将其设置回0 大多数情况下,它是有效的。然而,偶尔也会有广告仍然播放声音 我怀疑这些广告也有同样的伎俩,这里我们有一个竞争条件——谁是最后一个改变音量的人 有没有办法完全禁用加载SWF的声音?有什么方法可以防止这种比赛状态吗 这是我的密码:Actionscript 3 如何在外部加载的SWF中完全禁用声音?,actionscript-3,flash,audio,ads,Actionscript 3,Flash,Audio,Ads,在我的应用程序中,我需要在没有声音的情况下播放外部加载的第三方SWFs广告。到目前为止我所做的: 使用SoundTransform将音量设置为0 每帧执行此操作,以便如果广告尝试重置音量,我会将其设置回0 大多数情况下,它是有效的。然而,偶尔也会有广告仍然播放声音 我怀疑这些广告也有同样的伎俩,这里我们有一个竞争条件——谁是最后一个改变音量的人 有没有办法完全禁用加载SWF的声音?有什么方法可以防止这种比赛状态吗 这是我的密码: function onAdStart():void
function onAdStart():void
{
setMasterSound(0);
addEventListener(Event.ENTER_FRAME, tick);
}
function tick( e:Event ):void {
setMasterSound(0);
}
function SetMasterSound(volume:Number):void
{
var masterSound:SoundTransform;
if(SoundMixer.soundTransform.volume != volume)
{
masterSound = new SoundTransform();
masterSound.volume = volume;
SoundMixer.soundTransform = masterSound;
}
}
请注意该类型的代码。我使用SoundManager类型的类singleton,即使对于加载的swf也是全局的。这样,我可以完全控制所有声音播放,并且可以正确设置所有音量,无论是否在swf中播放声音。所有声音都必须通过该类播放才能正常工作,但所有这些问题都会随之消失。@BotMaster,但在您的情况下,您也可以控制加载的主权财富基金,对吗?我的意思是,你对加载的swf进行编码,以便它们使用你的全局类?因此,如果你设置加载swf的精灵的soundTransform属性,加载的swf是否可以解决这个问题?我找到了另一个答案,更好地描述了我的问题。加载swf并以所述方式控制声音是否不会阻止加载的swf被听到?@webnetic,谢谢!这实际上可能会有所帮助。我试试这个。