我设置了一个小应用程序,它只显示一个加载本地文件的 spark videoDisplay 控件。如果 flex 应用程序是 web 应用程序,视频在 windows 中可以作为 AIR 播放,并且在 osx 上的浏览器中可以正常播放,但是每当我尝试在 Mac 上作为 Flex AIR 应用程序运行时,VideoDisplay 都会出现:
- MediaPlayerState.LOADING
- 媒体播放器状态.READY
- MediaPlayerState.PLAYBACK_ERROR
我找不到任何关于发生了什么或播放错误的原因的线索。视频文件当然在所有情况下都是相同的。
我正在使用 Flash builder 4 中的 Flex SDK 4.6(AIR 3.1 随附)
这是我用于测试的代码:
<?xml version="1.0" encoding="utf-8"?>
<s:WindowedApplication xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"
xmlns:mx="library://ns.adobe.com/flex/mx">
<fx:Script>
<![CDATA[
import org.osmf.events.MediaPlayerStateChangeEvent;
protected function mediaPlayerStateChangeHandler(event:MediaPlayerStateChangeEvent):void
{
trace(event.state);
}
]]>
</fx:Script>
<s:VideoDisplay width="100%" height="100%" source="/somepath/video.mp4"
mediaPlayerStateChange="mediaPlayerStateChangeHandler(event)"/>
</s:WindowedApplication>