0

称呼:

import fl.video.*
import NSPv4;
var playVid:NSPv4 = new NSPv4();
playVid.playVideo(this.parent);

班级:

package 
{
    import flash.display.MovieClip;
    import flash.display.StageAlign;
    import flash.events.*;
    import flash.net.*;
    import flash.media.Sound;
    import flash.media.SoundChannel;
    import flash.media.SoundMixer;
    import fl.video.*;

    public class NSPv4 extends MovieClip
    {

        var __PARENT;
        var __PARENT1;

        public function playAudio(_PARENT):void
        {
            __PARENT = _PARENT;
            var audioLabel:String = _PARENT.currentLabel;
            var audioLabelNum:String = audioLabel.replace("sct","audio/");
            audioLabelNum +=  ".mp3";
            var vo:Sound = new Sound(new URLRequest(audioLabelNum));
            var channel:SoundChannel = new SoundChannel();
            channel = vo.play();
            channel.addEventListener(Event.SOUND_COMPLETE, onPlaybackComplete);
        }

        public function playVideo(_PARENT1):void
        {
            __PARENT1 = _PARENT1;
            var videoLabel:String = _PARENT1.currentLabel;
            var videoLabelNum:String = videoLabel.replace("sct","audio/");
            videoLabelNum +=  ".f4v";
            var videoPlayer:FLVPlayback = new FLVPlayback();
            videoPlayer.source = videoLabelNum;
            _PARENT1.addChild(videoPlayer);
        }



        public function onPlaybackComplete(event:Event):void
        {
            SoundMixer.stopAll();
            MovieClip(__PARENT).nextFrame();
        }

    }
}

可以毫无问题地调用 playAudio,但是当我尝试 playVideo() 时出现以下错误:

1195 Attempted access of inaccessible method playVideo through a reference with static type NSPv4

我为视频设置了一个单独的类,在没有 playAudio() 函数的情况下独立运行,这也可以。

最迷茫!

4

0 回答 0