【发布时间】:2015-03-27 18:04:00
【问题描述】:
首先...我已经搜索了 Google 和 Stack Overflow,但我没有遇到任何可以解决我的问题的东西。
有人向其他有类似但不一样的问题的开发人员建议,flvControl.fullScreenTakeOver = false; 可能是问题所在,但我的情况似乎并非如此。
现在解决问题... 我得到了一个要更新的 Flash 文件,但我在全屏视频方面遇到了麻烦。 Flash 文件导出自动全屏运行的 OSX 投影仪。 投影仪会显示一系列缩略图,用户可以单击其中一个来查看相关的视频文件。
当文件第一次运行时,它会使用以下代码扩展舞台:
stage.scaleMode = StageScaleMode.NO_SCALE;
stage.align = StageAlign.TOP_LEFT;
stage.fullScreenSourceRect = new Rectangle(0, 0, 1920, 1080);
stage.displayState = StageDisplayState.FULL_SCREEN;
然后,当用户单击缩略图时,它会运行以下代码,但会显示黑屏。 (根据我的在线研究,这表明视频组件已崩溃)。
import fl.video.*;
import flash.events.Event;
import flash.net.*;
import flash.display.StageDisplayState;
import flash.events.FullScreenEvent;
import flash.events.MouseEvent;
import com.greensock.*;
import com.greensock.easing.*;
var flvSource:String = (MovieClip(this.parent).theNextVideo);
var flvControl:FLVPlayback = display;
var videoHDWidth:Number = 1920;
var videoHDHeight:Number = 1080;
var videoRegWidth:Number = 1280;
var videoRegHeight:Number = 720;
flvControl.align = VideoAlign.TOP_LEFT;
flvControl.scaleMode = VideoScaleMode.MAINTAIN_ASPECT_RATIO;
flvControl.fullScreenTakeOver = false;
flvControl.setSize(videoHDWidth, videoHDHeight);
flvControl.source = flvSource;
stage.fullScreenSourceRect = new Rectangle(0, 0, videoHDWidth, videoHDHeight);
stage.displayState = StageDisplayState.FULL_SCREEN;
signBack_mc.useHandCursor = true;
signBack_mc.buttonMode = true;
signBack_mc.addEventListener(MouseEvent.CLICK, backButtonHandler);
signBack_mc.addEventListener(MouseEvent.ROLL_OVER, backButtonRollOverHandler);
signBack_mc.addEventListener(MouseEvent.ROLL_OUT, backButtonRollOutHandler);
我发现当投影仪最初启动到全屏模式时,如果我按键盘上的 ESC 键将投影仪返回到窗口模式,然后我可以单击缩略图(它跳到 FS 模式)并播放视频,关闭视频(它跳到窗口模式),单击另一个缩略图(它跳到 FS 模式)并播放该视频,但是当投影仪处于全屏模式然后单击全屏时它不起作用。
有人对这个问题有任何经验吗? 我过去没有做过类似的事情,所以我不知道如何继续。
谢谢!, 谢恩
【问题讨论】:
标签: flash video crash fullscreen projector