actionscript 3-独立于as3流式传输音频和视频



我有这两个函数。正如你所看到的,第一个是流式传输视频(女巫正在循环),第二个是流媒体传输音频(女巫也在循环)。因此,当视频播放时,我需要开始运行音频并独立循环,因为我的音频长度大于视频长度。有什么想法我该怎么做吗。请使用代码。

function NCListener(e:NetStatusEvent){
    if (e.info.code == "NetStream.Play.Stop") {
        ns.play("http://media.easyads.bg/ads/display_ads_richmedia/video/avon/maria_ilieva/video_2.flv");
        shaker(null);
        }
    };

var sound:Sound = new Sound();
var soundChannel:SoundChannel= new SoundChannel();
sound.addEventListener(Event.COMPLETE, onSoundLoadComplete  );
function onSoundLoadComplete(e:Event):void{
    sound.removeEventListener(Event.COMPLETE, onSoundLoadComplete);
    soundChannel = sound.play(0, 9999);
    soundChannel.addEventListener(Event.SOUND_COMPLETE, onSoundChannelSoundComplete);
}
function onSoundChannelSoundComplete(e:Event):void{
    e.currentTarget.removeEventListener(Event.SOUND_COMPLETE, onSoundChannelSoundComplete);
    soundChannel = sound.play(0, 9999);
}

首先,您不需要soundChannel.addEventListener(Event.SOUND_COMPLETE, onSoundChannelSoundComplete);

当声音运行完毕时,它会触发,但由于它是循环的,因此无需再次播放。

首先,你需要移动线

soundChannel = sound.play(0, 9999);

并将其放置在ns.play之后。因此,视频一开始,声音就开始了。然后,为了防止视频开始时再次循环,只需检查soundChannel是否存在:

if (soundChannel == null)
    soundChannel = sound.play(0, 9999);

请注意,没有办法在之后保持声音与视频同步,这完全取决于flash播放器的意愿。

相关内容

  • 没有找到相关文章

最新更新