Javascript-Caching视频播放器

时间:2011-07-30 16:23:54

标签: flex caching video video-streaming

我有以下用于创建视频播放器HTML的Javascript。我使用Javascript,因为这是我可以告诉玩家播放哪个视频的唯一方式。

    function createPlayer(videoSource){
            document.writeln("<div id=\"player\">");
            document.writeln("<object width=\"489\" height=\"414\" >");
            document.writeln("<param name=\"player\" value=\"bin-debug/FlexPlayer.swf\">"); 
//etc

问题是FlexPlayer.swf每次都在加载,我需要缓存这个SWF文件。也许我应该使用Javascript构造函数,但在这种情况下不知道如何。任何代码帮助将不胜感激。

1 个答案:

答案 0 :(得分:1)

如果您的视频播放器处于flex状态(并且我猜它是使用flex标签和bin-debug文件夹) - 您应该调用flex应用程序来设置视频。

您可以允许flex和javascript相互通信,而无需在HTML中嵌入不同版本的内容!太棒了,看看吧......

在您的flex应用中,初始化后,您可以添加以下内容:

ExternalInterface.addCallback( 'playVideoFromJS' , playVideo );

上面的内容是公开一个名为“playVideoFromJS”的函数,该函数可以在你的javascript中调用,它将在flex应用程序中执行'playVideo'函数!整齐!

然后在flex应用程序的某处添加一个类似的函数:

public function playVideo ( videoToPlay : String ) : void {
    ...play video code here
}

然后在javascript中,你可以实际调用你的flex函数playVideo!

 myFlexAppName.playVideoFromJS( 'myvideoofile.flv' );

有关ExternalInterface的更多信息:

http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/external/ExternalInterface.html?filter_flash=cs5&filter_flashplayer=10.2&filter_air=2.6#addCallback()