如何通过Javascript与Flash交互?

目前,有一个非常基本的Flash项目,该项目连接到rtmp服务器并从网络摄像头流式传输视频和音频.它从具有特定名称的用户创建流.

同样,在同一项目中,还存在其他实体可以流式传输的流名称的输入.因此,您可以通过Flash获得与Skype类似的视频聊天功能.

在Flash中,我可以控制何时要开始发布自己的流以及何时要播放其他人的流.

我试图弄清楚如何通过Javascript控制Flash函数(StartPublish,StartStream等).

我正在查看http://osflash.org/projects/flashjs,想知道我是否走对了路.

解决方法:

http://livedocs.adobe.com/flash/9.0/ActionScriptLangRefV3/flash/external/ExternalInterface.html

ExternalInterface类是专门为此目的而设计的.这是一个相对简单的类,用于将动作脚本函数暴露给JS,反之亦然.我最近在我的团队开发的音频播放器中实现了它,使其具有HTML格式的曲目列表触发播放和停止事件.

本质上,您可以使代码首先针对ExternalInterface.available进行检查,以确保容器具有外部接口(在具有javascript的浏览器窗口中的IE,而不仅仅是从Flash Player运行.)从那里,您可以使用addCallback来指定一个函数然后可以在Flash小程序的容器上调用它.

然后,您可以使用典型的javascript进行调用-只需使用getElementByID或您喜欢的任何选择器(如果使用的是框架)访问容器外的方法即可.

确保您的embed方法也允许脚本访问Flash applet.

上一篇:SparkStreaming(一)——概述


下一篇:structure streaming