Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   Не проигрывается видео (http://www.flasher.ru/forum/showthread.php?t=120173)

stalkerweb 14.01.2009 00:26

Не проигрывается видео
 
Код AS3:

                public function Videoo(videoURL:String) {
 
                        vSwitcher=1;
                        VideoContainer();
                        video = new Video();
                        videoBG();
                        videoContainer.addChild(video);
                        videoContainer.alpha=0;
                        Tweener.addTween(videoContainer, {alpha:1, time:2, transition:"easein"});
 
                        nc = new NetConnection();
                        nc.connect(null);
 
                        ns = new NetStream(nc);
                        ns.client = {onMetaData:ns_onMetaData, onCuePoint:ns_onCuePoint};
 
                        video.attachNetStream(ns);
                        ns.play("flv/1.flv");
                        ns.pause();
                        pButton ();
                        pausButton ();
                }
 
                private function ns_onMetaData(item : Object) : void {
                        trace("metaData");
 
                        // Устанавливаем размеры видео.
                        video.width = item.width;
                        video.height = item.height;
 
                        // Центрируем видео на сцене.
                        video.x = (stage.stageWidth - video.width) / 2;
                        video.y = 350;
 
                        trace(video.width + " " + video.height);
                }
 
                private function ns_onCuePoint(item : Object) : void {
                        trace("cuePoint");
                        trace(item.name + "\t" + item.time);
                }

Вот кусочек скрипта, видео подгружается в виде функции класса. Почему в IE 8.0 видео отображается когда нажимаешь кнопку play (её код опущен тут), видео играет, а в FF, Opere, Chrome — нет?

AL.exe 14.01.2009 00:44

У Вас точно опечаток нет (а то как-то смущают названия объектов и класса) и стоит Strict Mode?

Цитата:

(её код опущен тут)
Зря опущен.

stalkerweb 14.01.2009 00:47

да, опечаток нет, стоит Strict Mode
факт в том, что в IE все нормально проигрывается. а в остальных браузерах — нет.(

Вот полный листинг, отвечающий за видео. Объекты просто временно так назвал.
Код AS3:

                        public function VideoContainer() {
                                videoContainer = new Sprite();
                                parent.addChild(videoContainer);
                        }
 
                                public function Videoo(videoURL:String) {
 
                        vSwitcher=1;
                        VideoContainer();
                        video = new Video();
                        videoBG();
                        videoContainer.addChild(video);
                        videoContainer.alpha=0;
                        Tweener.addTween(videoContainer, {alpha:1, time:2, transition:"easein"});
 
                        nc = new NetConnection();
                        nc.connect(null);
 
                        ns = new NetStream(nc);
                        ns.client = {onMetaData:ns_onMetaData, onCuePoint:ns_onCuePoint};
 
                        video.attachNetStream(ns);
                        ns.play("flv/1.flv");
                        ns.pause();
                        pButton ();
                        pausButton ();
                }
 
                private function ns_onMetaData(item : Object) : void {
                        trace("metaData");
 
                        // Устанавливаем размеры видео.
                        video.width = item.width;
                        video.height = item.height;
 
                        // Центрируем видео на сцене.
                        video.x = (stage.stageWidth - video.width) / 2;
                        video.y = 350;
 
                        trace(video.width + " " + video.height);
                }
 
                private function ns_onCuePoint(item : Object) : void {
                        trace("cuePoint");
                        trace(item.name + "\t" + item.time);
                }
 
                //Creates black background
                private function videoBG():void {
                        var videoBcg:Shape = new Shape;
                        videoBcg.graphics.beginFill(0xCCCCCC);
                        videoBcg.graphics.drawRect(144,350,512,384);
                        videoContainer.addChild(videoBcg);
                }
 
                // Play/Pause button function
                private function pButton ():void {
                pButtonGraphics = new Sprite();
                        pButtonGraphics.graphics.lineStyle(2);
                        pButtonGraphics.graphics.beginFill(0x000000);
                        pButtonGraphics.graphics.drawCircle(44,360,20);
                        pButtonGraphics.graphics.lineStyle(1,0xCCCCCC);
                        pButtonGraphics.graphics.beginFill(0xCCCCCC);
                        pButtonGraphics.graphics.moveTo(41,350);
                        pButtonGraphics.graphics.lineTo(50,360);
                        pButtonGraphics.graphics.lineTo(41,370);
                        pButtonGraphics.graphics.lineTo(41,350);
                        pButtonGraphics.graphics.endFill();
                        pButtonGraphics.alpha=.8;
                        pButtonGraphics.scaleX=.6;
                        pButtonGraphics.scaleY=.6;
                        pButtonGraphics.x+=140;
                        pButtonGraphics.y+=495;
 
                        videoContainer.addChild(pButtonGraphics);
 
                        pButtonGraphics.addEventListener(MouseEvent.CLICK, pButtonListener);
                }
 
 
                private function pausButton ():void {
                pauseButtonGraphics = new Sprite();
                        pauseButtonGraphics.graphics.lineStyle(2);
                        pauseButtonGraphics.graphics.beginFill(0x000000);
                        pauseButtonGraphics.graphics.drawCircle(44,360,20);
                        pauseButtonGraphics.graphics.lineStyle(3,0xCCCCCC);
                        pauseButtonGraphics.graphics.moveTo(41,350);
                        pauseButtonGraphics.graphics.lineTo(41,365);
                        pauseButtonGraphics.graphics.moveTo(48,350);
                        pauseButtonGraphics.graphics.lineTo(48,365);
                        pauseButtonGraphics.graphics.endFill();
                        pauseButtonGraphics.alpha=.8;
                        pauseButtonGraphics.scaleX=.6;
                        pauseButtonGraphics.scaleY=.6;
                        pauseButtonGraphics.x+=140;
                        pauseButtonGraphics.y+=495;
 
 
                }
 
 
 
                function pButtonListener (e:MouseEvent):void {
                        ns.resume();
                        videoContainer.removeChild(pButtonGraphics);
                        videoContainer.addChild(pauseButtonGraphics);
                        pauseButtonGraphics.addEventListener(MouseEvent.CLICK, pauseButtonListener);
                }
 
                function clearVideo () {
                        parent.removeChild(videoContainer);
                        ns.pause();
                }
 
                function pauseButtonListener (e:MouseEvent):void {
                        ns.pause();
                        videoContainer.removeChild(pauseButtonGraphics);
                        videoContainer.addChild(pButtonGraphics);
                }

Добавлено через 15 минут
хм. Выложил в сеть —*все работает, при дебаггинге работает тоже. А локально —*нет. :(
почему так? политика безопасности?

Добавлено через 16 минут
хм. Выложил в сеть —*все работает, при дебаггинге работает тоже. А локально —*нет. :(
почему так? политика безопасности?


Часовой пояс GMT +4, время: 21:33.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.