Могу ли я встроить проигрыватель YouTube (с элементами управления) в свой веб-сайт Flash? - PullRequest
1 голос
/ 03 сентября 2010

Я хочу добавить видео YouTube с элементами управления YouTube на мой Flash-сайт.Возможно ли это?

ОБНОВЛЕНО / РЕШЕНИЕ:

var loader:Loader = new Loader();
loader.load(new URLRequest("http://www.youtube.com/v/zIcx_rxTstc"));
addChild(loader);

Ответы [ 3 ]

3 голосов
/ 04 сентября 2010

это базовый класс, который я сделал для этого.Конечно, вам придется создавать кнопки.и включить / отключить некоторые из его функций.надеюсь, что это поможет shani

package {import flash.system.Security;import flash.display.MovieClip;импорт flash.display.Loader;импортировать flash.events. *;import flash.net.URLRequest;

public class YouTubeAS3 extends MovieClip {
    private var player:Object;
    private var playBtn:PlayBtn;
    private var pauseBtn:PauseBtn;
    private var stopBtn:StopBtn;

    public function YouTubeAS3 (vidId:String) {

        Security.allowDomain("http://www.youtube.com") ;
                    var loader1:Loader = new Loader();
        loader1.contentLoaderInfo.addEventListener (Event.INIT, onLoaderInit);
        loader1.load (new URLRequest("http://www.youtube.com/apiplayer?version=3"));

        function onLoaderInit (event:Event):void {
            addChild (loader1);
            loader1.content.addEventListener ("onReady", onPlayerReady);
            loader1.content.addEventListener ("onError", onPlayerError);
            loader1.content.addEventListener ("onStateChange", onPlayerStateChange);
            loader1.content.addEventListener ("onPlaybackQualityChange", onVideoPlaybackQualityChange);

            playBtn= new PlayBtn();
            pauseBtn= new PauseBtn();
            stopBtn= new StopBtn();


            playBtn.x = pauseBtn.x = stopBtn.x = 430;
            playBtn.y = 20;
            pauseBtn.y = 50;
            stopBtn.y = 80;



            playBtn.addEventListener (MouseEvent.CLICK,playP);
            pauseBtn.addEventListener (MouseEvent.CLICK,pauseP);
            stopBtn.addEventListener (MouseEvent.CLICK,stopP);
            player.addEventListener (MouseEvent.CLICK,setPsize);

            addChild (playBtn);
            addChild (pauseBtn);
            addChild (stopBtn);
        }

        function onPlayerReady (event:Event):void {
            // Event.data contains the event parameter, which is the Player API ID 
            trace ("player ready:", Object(event).data);

            // to load a particular YouTube video.
            player = loader1.content;
            player.loadVideoById (vidId);
            player.setSize (448, 252);


        }



        function onPlayerError (event:Event):void {
            // Event.data contains the event parameter, which is the error code
            trace ("player error:", Object(event).data);
        }

        function onPlayerStateChange (event:Event):void {
            // Event.data contains the event parameter, which is the new player state
            trace ("player state:", Object(event).data);


            if(Object(event).data==1){
                //if(loading!=null){
                //removeChild(loading);
                //loading=null;
                //}
            }

        }

        function onVideoPlaybackQualityChange (event:Event):void {
            // Event.data contains the event parameter, which is the new video quality
            trace ("video quality:", Object(event).data);
        }
    }
    public function setPsize (evt:MouseEvent):void {
        player.setSize (640, 360);
    }

    public function playP (evt:MouseEvent):void {
        if (player) {

            player.playVideo ();
        }
    }
    public function pauseP (evt:MouseEvent):void {
        if (player) {

            player.pauseVideo ();
        }
    }

    public function stopP (evt:MouseEvent):void {
        if (player) {

            player.stopVideo ();
        }
    }

    public function muteP (evt:MouseEvent):void {
        if (player) {

            player.mute ();
        }

    }

    public function unMuteP (evt:MouseEvent):void {
        if (player) {

            player.unMute ();
        }
    }

    //player.isMuted():Boolean

    //player.setVolume(volume:Number):Void

}

}

1 голос
/ 19 июня 2011

Мое упрощенное рабочее решение (копируй и вставляй ребенка!):

package  {
    import flash.display.MovieClip;
    import flash.system.Security
    import flash.events.*;

    import flash.display.Loader;
    import flash.net.URLRequest;

    public class youtubeSandbox extends MovieClip {
        // remember, this is just an example - remove the following line for production!
        Security.allowInsecureDomain("*");

        var my_player:Object;
        var my_loader:Loader = new Loader();

        public function youtubeSandbox () {
            my_loader.load(new URLRequest("http://www.youtube.com/v/5P6UU6m3cqk?version=3"));
            // use either /v or /apiplayer
            //my_loader.load(new URLRequest("http://www.youtube.com/apiplayer?version=3"));

            my_loader.contentLoaderInfo.addEventListener(Event.INIT, onLoaderInit);
        }
        function onLoaderInit(e:Event):void{
            addChild(my_loader);
            my_player = my_loader.content;
            my_player.addEventListener("onReady", onPlayerReady); 
        } 
        function onPlayerReady(e:Event):void{
            my_player.setSize(640,480);
        }
    }
}

Ссылки:

0 голосов
/ 03 сентября 2010

Похоже, этот пост предоставит вам необходимое решение:

http://www.actionscript.org/forums/showthread.php3?t=122501

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...