Flash插件实时数据输入方法

文档序号:6397243阅读:346来源:国知局
专利名称:Flash插件实时数据输入方法
技术领域
本发明涉及互联网技术,特别涉及具备实时数据流传输的软件动态扩展结构的技术。
背景技术
Flash文件是一种矢量动画的存储文件格式,扩展名是SWF, HTTP的M頂E分类是 application/x-shock丽e-flash, Flash文件由文件头和Tag流构成,Flash播放器的主要工 作是解释Flash的文件头、解释Tag流,并根据Tag流建立Character Dictionary,然后在 Control Tag的指示下,根据Dictionary的数据,建立和维护Display List,最后在适当的 时候,依据DisplayList在图形环境下的指定区域内渲染Flash,浏览器通常通过嵌入Flash 播放器的功能模块对其提供支持,浏览器首先加载管理播放器库,然后在解析HTML页面时, 发现有嵌入SWF格式的Flash文件链接,向对应的Web服务器发出HTTP请求,然后将判断M頂E 文件类型,如果该文件的类型为application/x-Shockwave-flash,则通过调用Flash播放器 库的标准函数,将文件数据流交给Flash播放模块处理,将文件下载并交给插件处理,可以 将文件完全下载至本地,然后将文件名作为参数传给插件,然后插件再对本地文件作处理, 但是这种做法需要等待较长的时间,特别对于体积较大的媒体文件,客户端需要等待较长时 间才能观察到处理结果。

发明内容
本发明所要解决的技术问题,就是为了解决现有客户端需要等待较长时间才能观察到 Flash文件处理结果的缺点,提供一种Flash插件实时数据输入方法。
本发明解决其技术问题,采用的技术方案是,Flash插件实时数据输入方法,其特征在 于,包括以下步骤
a. 设计一个由IO-Flash桥结构维护的抽象层建立一个I0-Flash桥结构,能获得和维持 一个10资源结构和一个目标模块结构;
b. 针对Flash播放模块,建立与模块无关而仅与10事件相关的全局回调函数结构;
c. 针对数据流的目标处理模块,设置一个通用调用接口,包含申请一个文件资源、实时 注入流数据、触发渲染、数据完成和资源数据撤销等动作;
d. 将流数据缓冲区的实时数据流直接传送给目标文件处理模块进行处理显示。 具体的,步骤b所述全局回调函数结构包括以下功能向指定Flash资源结构所指定的Flash文件播放环境输入一个实时数据块,并给出块长度
向Flash资源结构所指定的Flash文件播放环境触发一个渲染事件; 向Flash资源结构所指定的Flash文件播放环境发送一个数据输入完毕消息。 进一步的,步骤c包括以下步骤
e. 实现一个函数,能根据一个特定url向10模块获取一个10资源,并向Flash播放模块获 取一个具备初始化参数的资源结构,再将这两个资源赋予IO-Flash桥,并向I0-Flash桥结构 赋予全局回调函数结构地址;
f. 实现一个回调函数,可根据输入的I0-Flash桥结构中指定的10资源的10事件,分别调 用针对同一桥结构中的Flash文件播放Context触发"数据输入/渲染"事件或"输入完毕" 事件;
g. 实现一个函数,向I0-Flash桥结构所指定的10资源注册一个数据事件回调函数,使得 IO发生事件时,能够触发步骤f所述的回调函数;
h. 建立一个I0-Flash资源撤销函数,在分辩向IO和Flash播放模块撤销指定I0-Flash结 构所指定的相关资源后,释放IO-Flash桥结构。
本发明的有益效果是,通过上述步骤简单增加一个接口层,实现了向Flash播放模块实 时传输SWF数据流的功能,使得在网络状态不佳的情况下,也能保证边加载、边播放,用户 看到第一帧内容等待的时间尽可能短,方便用户。
具体实施例方式
下面结合实施例,详细描述本发明的技术方案。
本发明提供了一种模块间通讯的方法,采用桥接模式,首先设计一个由IO-Flash桥结构 维护的抽象层, 一方面对10设置信号回调函数,另一方面,针对数据流的目标处理模块,设 置一个通用调用接口,包含申请一个文件资源、实时注入流数据、触发渲染和数据完成等动 作,将流数据缓冲区的实时数据流直接传送给目标文件处理模块。
实施例
本例采用本申请的方法增加一个接口层,实现了向Flash播放模块实时传输SWF数据流的 功能。
通常在浏览器中通过发送Http请求获得Flash文件。对于Http请求在浏览器中,Flash文 件的url触发通常有UI输入触发和嵌入html的〈embed〉标记的src属性指示触发。 本例所述方法,其实现主要有以下步骤首先设计一个由IO-Flash桥结构维护的抽象层建立一个IO-Flash桥结构,能获得和维 持一个10资源结构和一个目标模块结构;针对Flash播放模块,实现以下特征的功能的函数 ,并将函数地址作为回调地址保存在一个全局变量Flash—IO回调函数结构中1.向指定 Flash资源结构所指定的Flash文件播放环境输入一个实时数据块,并给出块长度;2.向 Flash资源结构所指定的Flash文件播放环境触发一个渲染事件;3.向Flash资源结构所指定 的Flash文件播放环境发送一个数据输入完毕消息;针对数据流的目标处理模块,设置一个 通用调用接口,包含申请一个文件资源、实时注入流数据、触发渲染、数据完成和资源数据 撤销等动作,包括这些步骤首先实现一个函数,能根据一个特定url向IO模块获取一个IO 资源,并向Flash播放模块获取一个具备初始化参数的资源结构,再将这两个资源赋予 IO-Flash桥,并向IO-Flash桥结构赋予全局回调函数结构地址;然后实现一个回调函数,可 根据输入的I0-Flash桥结构中指定的10资源的10事件,分别调用针对同一桥结构中的Flash 文件播放Context触发"数据输入/渲染"事件或"输入完毕"事件;再实现一个函数,向 10-Flash桥结构所指定的10资源注册一个数据事件回调函数,使得10发生事件时,能够触发 上述的回调函数;最后建立一个IO-Flash资源撤销函数,在分辩向IO和Flash播放模块撤销 指定IO-Flash结构所指定的相关资源后,释放I0-Flash桥结构。
最后将浏览器、接口模块和Flash播放模块联合测试,验证向Flash播放插件实时传送 SWF流数据的正确性和实时性。
这样本发明通过简单增加一个接口层,实现了向Flash模块的SWF数据流实时传输。
权利要求
1.Flash插件实时数据输入方法,其特征在于,包括以下步骤a.设计一个由IO-Flash桥结构维护的抽象层建立一个IO-Flash桥结构,能获得和维持一个IO资源结构和一个目标模块结构;b.针对Flash播放模块,建立与模块无关而仅与IO事件相关的全局回调函数结构;c.针对数据流的目标处理模块,设置一个通用调用接口,包含申请一个文件资源、实时注入流数据、触发渲染、数据完成和资源数据撤销等动作;d.将流数据缓冲区的实时数据流直接传送给目标文件处理模块进行处理显示。
2.根据权利要求l所述Flash插件实时数据输入方法,其特征在于, 步骤b所述全局回调函数结构包括以下功能向指定Flash资源结构所指定的Flash文件播放环境输入一个实时数据块,并给出块长度;向Flash资源结构所指定的Flash文件播放环境触发一个渲染事件; 向Flash资源结构所指定的Flash文件播放环境发送一个数据输入完毕消息。
3.根据权利要求l或2所述Flash插件实时数据输入方法,其特征在于 ,步骤c包括以下步骤e. 实现一个函数,能根据一个特定url向10模块获取一个10资源,并向Flash播放模块 获取一个具备初始化参数的资源结构,再将这两个资源赋予IO-Flash桥,并向I0-Flash桥结 构赋予全局回调函数结构地址;f. 实现一个回调函数,可根据输入的I0-Flash桥结构中指定的10资源的10事件,分别 调用针对同一桥结构中的Flash文件播放Context触发"数据输入/渲染"事件或"输入完毕 "事件;g. 实现一个函数,向I0-Flash桥结构所指定的10资源注册一个数据事件回调函数,使 得I0发生事件时,能够触发步骤f所述的回调函数;h. 建立一个I0-Flash资源撤销函数,在分辩向IO和Flash播放模块撤销指定I0-Flash结构所指定的相关资源后,释放I0-Flash桥结构。
全文摘要
本发明互联网技术。本发明解决了现有客户端需要等待较长时间才能观察到Flash文件处理结果的问题,提供了一种Flash插件实时数据输入方法,其技术方案可概括为首先设计一个由IO-Flash桥结构维护的抽象层,一方面对IO设置信号回调函数,另一方面,针对数据流的目标处理模块,设置一个通用调用接口,包含申请一个文件资源、实时注入流数据、触发渲染和数据完成等动作,将流数据缓冲区的实时数据流直接传送给目标文件处理模块。其有益效果是,方便用户,适用于显示带有Flash文件的HTTP网页。
文档编号G06F9/44GK101620537SQ200910305098
公开日2010年1月6日 申请日期2009年7月31日 优先权日2009年7月31日
发明者涛 胡 申请人:四川长虹电器股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1