CN106648628B - 将直播应用软件移植到ie浏览器的方法及装置 - Google Patents
将直播应用软件移植到ie浏览器的方法及装置 Download PDFInfo
- Publication number
- CN106648628B CN106648628B CN201611078418.XA CN201611078418A CN106648628B CN 106648628 B CN106648628 B CN 106648628B CN 201611078418 A CN201611078418 A CN 201611078418A CN 106648628 B CN106648628 B CN 106648628B
- Authority
- CN
- China
- Prior art keywords
- live broadcast
- browser
- activex
- component
- software
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
- G06F8/76—Adapting program code to run in a different environment; Porting
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Information Transfer Between Computers (AREA)
- Stored Programmes (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
本发明实施例公开了一种将直播应用软件移植到IE浏览器的方法及装置,其中,所述方法包括:将待移植的直播应用软件对应的直播软件框架进行封装,生成ActiveX组件;采用预设的脚本文件将生成的所述ActiveX组件嵌入到IE浏览器。本发明实施例实现了PC端的直播应用软件向IE浏览器的移植,无需下载安装直播应用软件,仅需输入对应的网络地址,就可以通过IE浏览器快捷方便地运行直播软件,实现直播功能,不仅能够增加了直播软件的使用量,还有效地提升了用户的使用体验。
Description
技术领域
本发明涉及计算机网络技术领域,尤其涉及一种将直播应用软件移植到IE浏览器的方法及装置。
背景技术
随着计算机网络技术的极速发展,人们对各种应用软件的需求也越来越高。例如,日常生活中常用的应用软件以及一些用于休闲娱乐的应用软件。但是,应用软件的下载安装不仅需要消耗一定的下载安装时间,而且在软件下载时还经常存在恶意程序下载问题,导致用户访问所用终端被感染,进而导致账号丢失或者隐私信息泄露等危险情况的发生。近年来,越来越多的一些桌面应用程序被移植到WEB浏览器中运行,这样不仅增加了软件的使用量,而且也会使用户更加方便的使用软件。
在实现本发明过程中,发明人发现直播应用软件作为当前最受用户喜爱的应用软件之一,目前仅能够通过PC端的直播软件实现直播功能,影响用户体验。因此,如何提供一种将直播应用软件移植到WEB浏览器的方法,对提高直播软件的使用量和用户体验具有重要意义。
发明内容
鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的将直播应用软件移植到IE浏览器的方法及装置,以实现PC端的直播应用软件向IE浏览器的移植。
本发明的一个方面,提供了一种将直播应用软件移植到IE浏览器的方法,包括:
将待移植的直播应用软件对应的直播软件框架进行封装,生成ActiveX组件;
采用预设的脚本文件将生成的所述ActiveX组件嵌入到IE浏览器。
可选地,所述将待移植的直播应用软件对应的直播软件框架进行封装,生成ActiveX组件,包括:
采用组件对象模型COM形式封装所述直播软件框架,生成ActiveX组件。
可选地,在所述将待移植的直播应用软件对应的直播软件框架进行封装,生成ActiveX组件之后,包括:
创建一个ATL对象,在所述ATL对象中创建一个ATL Control组件;
通过所述ATL Control组件在IE浏览器中创建一个本地窗口,所述本地窗口作为所述ActiveX组件的宿主窗口;
在所述本地窗口中调用所述直播软件框架内的接口,以获取所述直播应用软件的待播放媒体数据。
可选地,所述在所述本地窗口中调用所述直播软件框架内的接口之前,所述方法还包括:
在所述本地窗口中对所述直播软件框架进行初始化。
可选地,所述在所述本地窗口中对所述直播软件框架进行初始化,包括:
采用所述直播软件框架的CreateLiveInstace函数获取一个ILive接口;
采用所述ILive接口的get_encoder方法获取ILiveEncoder接口;
获取所述本地窗口的窗口句柄,将所述窗口句柄作为参数传入所述ILiveEncoder接口的init方法中,实现所述直播软件框架在所述本地窗口中的初始化。
可选地,所述采用预设的脚本文件将生成的所述ActiveX组件嵌入到IE浏览器,包括:
获取所述ActiveX组件的全局唯一标识符GUID;
根据所述GUID,采用预设的脚本文件在预设网页页面中创建所述ActiveX组件的ActiveX对象。
可选地,在所述采用预设的脚本文件将生成的所述ActiveX组件嵌入到IE浏览器之后,所述方法还包括:
将所述ActiveX组件打包生成安装文件,并对所述安装文件进行数字签名;
将数字签名后的安装文件和所述预设网页页面在WEB服务器中进行发布。
可选地,在所述生成ActiveX组件之后,该方法还包括:
实现IObjectSafety接口,将所述ActiveX组件标记为安全组件。
本发明的另一个方面,提供了一种将直播应用软件移植到IE浏览器的装置,包括:
封装模块,用于将待移植的直播应用软件对应的直播软件框架进行封装,生成ActiveX组件;
处理模块,用于采用预设的脚本文件将生成的所述ActiveX组件嵌入到IE浏览器。
可选地,所述封装模块,具体用于采用组件对象模型COM形式封装所述直播软件框架,生成ActiveX组件。
本发明实施例提供的将直播应用软件移植到IE浏览器的方法及装置,通过将待移植的直播应用软件对应的直播软件框架进行封装,生成ActiveX组件,并采用预设的脚本文件将生成的ActiveX组件嵌入到IE浏览器,实现了PC端的直播软件向IE浏览器的移植。本发明实施例无需下载安装直播应用软件,仅需输入对应的网络地址,就可以通过IE浏览器快捷方便地运行直播软件,实现直播功能,不仅能够增加了直播软件的使用量,还有效地提升了用户的使用体验。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1为本发明实施例的一种将直播应用软件移植到IE浏览器的方法的流程图;
图2为本发明另一实施例的一种将直播应用软件移植到IE浏览器的方法的流程图;
图3为本发明实施例的一种将直播应用软件移植到IE浏览器的方法中步骤S12的细分流程图;
图4为本发明实施例的一种将直播应用软件移植到IE浏览器的装置的结构示意图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
本技术领域技术人员可以理解,除非另外定义,这里使用的所有术语(包括技术术语和科学术语),具有与本发明所属领域中的普通技术人员的一般理解相同的意义。还应该理解的是,诸如通用字典中定义的那些术语,应该被理解为具有与现有技术的上下文中的意义一致的意义,并且除非被特定定义,否则不会用理想化或过于正式的含义来解释。
需要说明的是,在本发明实施例中,COM(Component Object Model,组件对象模型),可以看作是某种(软件)打包技术,即把它看作是软件的不同部分,按照一定的面向对象的形式,组合成可以交互的过程和一组支持库。COM对象可以用C++、Java和VB等任意一种语言编写,并可以用DLL或作为不同过程工作的执行文件的形式来实现。使用COM对象的浏览器,无需关心对象是用什么语言写的,也无须关心它是以DLL还是以另外的过程来执行的。
在本发明实施例中,ActiveX是一个开放的集成平台,为开发人员、用户和Web生产商提供了一个快速而简便的在Internet和Intranet创建程序集成和内容的方法。使用ActiveX,可轻松方便的在Web页中插入多媒体效果、交互式对象、以及复杂程序,创建用户体验相当的高质量多媒体CD-ROM。其中,COM技术是ActiveX的基础。
在本发明实施例提供的技术方案中,通过利用上述的COM技术将LiveEncoder框架封装成一个ActiveX组件,从而利用JavaScript脚本将上述的ActiveX组件嵌入到IE浏览器中。下面结合附图对本发明实施例技术方案的主要实现原理、具体实施方式及其对应能够达到的有益效果进行详细的阐述。
图1示意性示出了本发明一个实施例的将直播应用软件移植到IE浏览器的方法的流程图。参照图1,本发明实施例的将直播应用软件移植到IE浏览器的方法具体包括以下步骤:
步骤S11、将待移植的直播应用软件对应的直播软件框架进行封装,生成ActiveX组件。
本实施例中,所述直播应用软件对应的直播软件框架为LiveEncoder框架。其中,LiveEncoder框架是直播应用软件,如斗鱼直播软件(斗鱼直播伴侣),的核心功能组件,该组件为直播软件提供了添加获取用户桌面、添加文本、添加摄像头、添加游戏、添加视频、添加图片以及抓取系统声音和麦克风声音等一系列基础功能。
本发明实施例,通将对待移植的直播应用软件对应的直播软件框架封装成ActiveX组件,以便后续通过将ActiveX组件嵌入到IE浏览器,实现PC端的直播应用软件向IE浏览器的移植。
步骤S12、采用预设的脚本文件将生成的所述ActiveX组件嵌入到IE浏览器。
本发明实施例提供的将直播应用软件移植到IE浏览器的方法,通过将待移植的直播应用软件对应的直播软件框架进行封装,生成ActiveX组件,并采用预设的脚本文件将生成的ActiveX组件嵌入到IE浏览器,实现了PC端的直播软件向IE浏览器的移植。本发明实施例无需下载安装直播应用软件,仅需输入对应的网络地址,就可以通过IE浏览器快捷方便地运行直播软件,实现直播功能,不仅能够增加了直播软件的使用量,还有效地提升了用户的使用体验。
在本发明的一个可选实施例中,步骤S11中的将待移植的直播应用软件对应的直播软件框架进行封装,生成ActiveX组件,进一步包括:采用组件对象模型COM形式封装所述直播软件框架,生成ActiveX组件。
图2示意性示出了本发明另一个实施例的将直播应用软件移植到IE浏览器的方法的流程图。参照图2,本发明实施例的将直播应用软件移植到IE浏览器的方法具体包括以下步骤:
步骤S21、将待移植的直播应用软件对应的直播软件框架进行封装,生成ActiveX组件。
步骤S22、创建一个ATL对象,在所述ATL对象中创建一个ATL Control组件;
步骤S23、通过所述ATL Control组件在IE浏览器中创建一个本地窗口,所述本地窗口作为所述ActiveX组件的宿主窗口;
步骤S24、在所述本地窗口中调用所述直播软件框架内的接口,以获取所述直播应用软件的待播放媒体数据。
步骤S25、采用预设的脚本文件将生成的所述ActiveX组件嵌入到IE浏览器。
其中,在所述步骤S24中的在本地窗口中调用所述直播软件框架内的接口之前,所述方法还包括在所述本地窗口中对所述直播软件框架进行初始化的步骤。具体包括:采用所述直播软件框架的CreateLiveInstace函数获取一个ILive接口;采用所述ILive接口的get_encoder方法获取ILiveEncoder接口;获取所述本地窗口的窗口句柄,将所述窗口句柄作为参数传入所述ILiveEncoder接口的init方法中,实现所述直播软件框架在所述本地窗口中的初始化。
下面通过一个具体实施例,对本发明实施例技术方案进行清楚的解释说明。
首先,利用VS2010(Visual Stutio2010)工具建立工程环境。
需要说明的是VS2010是一个集成化的开发环境,用它来建立一个ATL(ActiveTemplate Library)项目工程(即ATL对象);
然后,建立一个ATL Control组件;
由于LiveEncoder框架需要一个本地的窗口句柄来完成图像源的绘制预览操作,所以直播应用软件移植到浏览器后,需要在浏览器中创建一个本地窗口供LiveEncoder框架使用。所以通过在所述ATL对象的工程环境中创建一个ATL Control组件,通过所述ATLControl组件在IE浏览器中创建一个本地窗口,将所述本地窗口作为所述ActiveX组件的宿主窗口,以便可以在IE浏览器中为LiveEncoder框架提供一个本地窗口句柄。
第三,在创建的本地窗口中,调用LiveEncoder框架内的接口,以实现抓取用户电脑屏幕、添加文字、添加图片、添加视频、添加摄像头、添加游戏源抓取系统以及麦克风声音的功能,从而成功的将LiveEncoder框架封装成了一个ActiveX组件,具体过程如下:
1.初始化LiveEncoder框架
首先需要在该ActiveX组件中完成LiveEncoder框架的初始化,调用框架的CreateLiveInstace函数获取一个ILive接口,然后调用ILive接口的get_encoder方法获取ILiveEncoder接口,然后调用ILiveEncoder接口的init方法,将本地窗口句柄作为参数传入到init方法中。当init方法调用成功后,LiveEncoder框架便初始完成,通过init,整个框架的DirectX渲染系统、声卡声音捕捉、麦克风声音捕捉便都初始化完成。
本发明实施例,通过初始化LiveEncoder框架、便可以实现添加文字、添加截屏、添加摄像头、添加游戏等一系列操作。在一个具体示例中,仅以添加用户桌面屏幕为例进行说明。通过获取到的ILiveEncoder接口,调用该接口的open_screen_capture函数,便实现屏幕的添加。
需要说明的是,其他的一系列功能,都是通过调用ILiveEncoder接口的相关方法实现的,对此本发明不做详细陈述。
在本发明的一个可选实施例中,如图3所示,步骤S12中的采用预设的脚本文件将生成的所述ActiveX组件嵌入到IE浏览器,进一步包括以下步骤:
步骤S121、获取所述ActiveX组件的全局唯一标识符GUID;
步骤S122、根据所述GUID,采用预设的脚本文件在预设网页页面中创建所述ActiveX组件的ActiveX对象。
通过前述实施例中的步骤,已经成功的将LiveEncoder框架封装成了一个ActiveX组件。本实施例中主要对如何将生成的ActiveX组件嵌入到IE浏览器中进行具体说明。其实现原理具体为:利用预设的脚本文件,本实施例中具体采用JavaScript脚本实现,利用object类型通过GUID(Global Unique Identifier,全局唯一标识符)来创建ActiveX组件中的一个对象实现,其简单的代码如下
<object
id="MainWindow"CLASSID="CLSID:8BFEEA20-DF71-4457-8E75-0C06270F9180">
其中,CLSID后的一长串字符串就是创建的ActiveX组件中的一个GUID。通过所述GUID,采用预设的脚本文件在预设网页页面中创建所述ActiveX组件的ActiveX对象,然后在IE浏览器中输入相应的网页页面的页面地址就可以在IE浏览器中运行起移植的直播应用软件。
其中,所述预设网页页面即为JavaScript脚本对应的JavaScript页面。
进一步地,在所述采用预设的脚本文件将生成的所述ActiveX组件嵌入到IE浏览器之后,所述方法还包括:将所述ActiveX组件打包生成安装文件,并对所述安装文件进行数字签名;将数字签名后的安装文件和所述预设网页页面在WEB服务器中进行发布。
在实际应用中,虽然通过上述步骤已经成功的将LiveEncoder框架移植到了IE浏览器中,并通过JavaScript脚本对其进行实例化,从而在IE浏览器中运行。但是只能在开发者的本地IE浏览器中通过输入页面地址,运行移植的直播应用软件。
为解决上述技术问题,本发明实施例进一步将生成的ActiveX组件打包成CAB文件,并且利用相关的数字签名工具,对CAB文件进行数字签名,避免IE浏览器在安装该控件时因为没有数字签名而导致的安装失败问题。然后将该CAB文件和预设网页页面放到WEB服务器中进行发布,使得广大的用户可以通过直接在IE浏览器中输入相应的网页地址,便可以使用移植版本的直播应用软件。
其中,CAB文件,为Microsoft制订的压缩包格式,常用于软件的安装程序。在本实施例中,具体为IE浏览器控件的安装文件。
本发明实施例中,在所述生成ActiveX组件之后,该方法还包括:实现IObjectSafety接口,将所述ActiveX组件标记为安全组件的步骤。
实际应用中,当在IE浏览器中使用ActiveX对象时,如果没有进行安全控制,浏览器会弹出该ActiveX对象没有进行安全校验的提示。为了解决这个问题,本发明实施例通过在创建的ActiveX组件类中继承IObjectSafety接口,以实现IObjectSafety接口,将所述ActiveX组件标记为安全组件,实现安全控制。
对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明实施例并不受所描述的动作顺序的限制,因为依据本发明实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本发明实施例所必须的。
图4示意性示出了本发明一个实施例的将直播应用软件移植到IE浏览器的装置的结构示意图。参照图4,本发明实施例的将直播应用软件移植到IE浏览器的装置具体包括封装模块401和处理模块402,其中,所述的封装模块401,用于将待移植的直播应用软件对应的直播软件框架进行封装,生成ActiveX组件;所述的处理模块402,用于采用预设的脚本文件将生成的所述ActiveX组件嵌入到IE浏览器。
本实施例中,所述直播应用软件对应的直播软件框架为LiveEncoder框架。其中,LiveEncoder框架是直播应用软件,如斗鱼直播软件(斗鱼直播伴侣),的核心功能组件,该组件为直播软件提供了添加获取用户桌面、添加文本、添加摄像头、添加游戏、添加视频、添加图片以及抓取系统声音和麦克风声音等一系列基础功能。
本发明实施例提供的将直播应用软件移植到IE浏览器的装置,封装模块401通过将待移植的直播应用软件对应的直播软件框架进行封装,生成ActiveX组件,并使得处理模块402采用预设的脚本文件将生成的ActiveX组件嵌入到IE浏览器,实现了PC端的直播软件向IE浏览器的移植。本发明实施例无需下载安装直播应用软件,仅需输入对应的网络地址,就可以通过IE浏览器快捷方便地运行直播软件,实现直播功能,不仅能够增加了直播软件的使用量,还有效地提升了用户的使用体验。
在本发明的一个可选实施例中,所述封装模块401,具体用于采用组件对象模型COM形式封装所述直播软件框架,生成ActiveX组件。
本实施例中,所述装置还包括以下附图中未示出的组件创建模块、窗口创建模块以及接口调用模块,其中,所述的组件创建模块,用于在所述封装模块401将待移植的直播应用软件对应的直播软件框架进行封装,生成ActiveX组件之后创建一个ATL对象,在所述ATL对象中创建一个ATL Control组件;所述的窗口创建模块,用于通过所述ATL Control组件在IE浏览器中创建一个本地窗口,所述本地窗口作为所述ActiveX组件的宿主窗口;所述的接口调用模块,用于在所述本地窗口中调用所述直播软件框架内的接口,以获取所述直播应用软件的待播放媒体数据。
进一步地,接口调用模块在执行所述在本地窗口中调用所述直播软件框架内的接口操作之前,还用于在所述本地窗口中对所述直播软件框架进行初始化。
其中,在所述本地窗口中对所述直播软件框架进行初始化,具体通过以下方式实现:采用所述直播软件框架的CreateLiveInstace函数获取一个ILive接口;采用所述ILive接口的get_encoder方法获取ILiveEncoder接口;获取所述本地窗口的窗口句柄,将所述窗口句柄作为参数传入所述ILiveEncoder接口的init方法中,实现所述直播软件框架在所述本地窗口中的初始化。
在本发明的一个可选实施例中,处理模块402,具体用于获取所述ActiveX组件的全局唯一标识符GUID;并根据所述GUID,采用预设的脚本文件在预设网页页面中创建所述ActiveX组件的ActiveX对象。
在实际应用中,虽然通过上述步骤已经成功的将LiveEncoder框架移植到了IE浏览器中,并通过JavaScript脚本对其进行实例化,从而在IE浏览器中运行。但是只能在开发者的本地IE浏览器中通过输入页面地址,运行移植的直播应用软件。
为解决上述技术问题,本发明实施例提供的将直播应用软件移植到IE浏览器的装置还包括附图中未示出的生成模块和发布模块,其中,所述的生成模块用于在所述采用预设的脚本文件将生成的所述ActiveX组件嵌入到IE浏览器之后,将所述ActiveX组件打包生成安装文件,并对所述安装文件进行数字签名;所述的发布模块用于将数字签名后的安装文件和所述预设网页页面在WEB服务器中进行发布。
本发明实施例通过将生成的ActiveX组件打包成CAB文件,并且利用相关的数字签名工具,对CAB文件进行数字签名,避免IE浏览器在安装该控件时因为没有数字签名而导致的安装失败问题。然后将该CAB文件和预设网页页面放到WEB服务器中进行发布,使得广大的用户可以通过直接在IE浏览器中输入相应的网页地址,便可以使用移植版本的直播应用软件。
本发明实施例中,该装置还包括附图中未示出的安全控制模块,该安全控制模块用于在封装模块生成ActiveX组件之后,实现IObjectSafety接口,将所述ActiveX组件标记为安全组件。
实际应用中,当在IE浏览器中使用ActiveX对象时,如果没有进行安全控制,浏览器会弹出该ActiveX对象没有进行安全校验的提示。为了解决这个问题,本发明实施例通过在创建的ActiveX组件类中继承IObjectSafety接口,以实现IObjectSafety接口,将所述ActiveX组件标记为安全组件,实现安全控制。
对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
综上,本发明实施例提供的将直播应用软件移植到IE浏览器的方法及装置,通过将待移植的直播应用软件对应的直播软件框架进行封装,生成ActiveX组件,并采用预设的脚本文件将生成的ActiveX组件嵌入到IE浏览器,实现了PC端的直播软件向IE浏览器的移植。本发明实施例无需下载安装直播应用软件,仅需输入对应的网络地址,就可以通过IE浏览器快捷方便地运行直播软件,实现直播功能,不仅能够增加了直播软件的使用量,还有效地提升了用户的使用体验。
在此提供的算法和显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。
本领域那些技术人员可以理解,可以对实施例中的装置中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的网关、代理服务器、系统中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
Claims (4)
1.一种将直播应用软件移植到IE浏览器的方法,其特征在于,包括:
将待移植的直播应用软件对应的直播软件框架进行封装,生成ActiveX组件;所述直播软件框架为LiveEncoder框架;所述封装包括:采用组件对象模型COM形式封装所述直播软件框架,生成ActiveX组件;
采用预设的脚本文件将生成的所述ActiveX组件嵌入到IE浏览器,包括:获取所述ActiveX组件的全局唯一标识符GUID;根据所述GUID,采用预设的脚本文件在预设网页页面中创建所述ActiveX组件的ActiveX对象;
创建一个ATL对象,在所述ATL对象中创建一个ATL Control组件;
通过所述ATL Control组件在IE浏览器中创建一个本地窗口,所述本地窗口作为所述ActiveX组件的宿主窗口;
采用所述直播软件框架的CreateLiveInstace函数获取一个ILive接口;
采用所述ILive接口的get_encoder方法获取ILiveEncoder接口;
获取所述本地窗口的窗口句柄,将所述窗口句柄作为参数传入所述ILiveEncoder接口的init方法中,实现所述直播软件框架在所述本地窗口中的初始化;
在所述本地窗口中调用所述直播软件框架内的接口,以获取所述直播应用软件的待播放媒体数据。
2.根据权利要求1所述的方法,其特征在于,在所述采用预设的脚本文件将生成的所述ActiveX组件嵌入到IE浏览器之后,所述方法还包括:
将所述ActiveX组件打包生成安装文件,并对所述安装文件进行数字签名;
将数字签名后的安装文件和所述预设网页页面在WEB服务器中进行发布。
3.根据权利要求1-2任一项所述的方法,其特征在于,在所述生成ActiveX组件之后,该方法还包括:
实现IObjectSafety接口,将所述ActiveX组件标记为安全组件。
4.一种将直播应用软件移植到IE浏览器的装置,其特征在于,包括:
封装模块,用于将待移植的直播应用软件对应的直播软件框架进行封装,生成ActiveX组件;所述直播软件框架为LiveEncoder框架;所述封装模块,还用于采用组件对象模型COM形式封装所述直播软件框架,生成ActiveX组件;
处理模块,用于采用预设的脚本文件将生成的所述ActiveX组件嵌入到IE浏览器,包括:获取所述ActiveX组件的全局唯一标识符GUID;根据所述GUID,采用预设的脚本文件在预设网页页面中创建所述ActiveX组件的ActiveX对象;所述处理模块,还用于创建一个ATL对象,在所述ATL对象中创建一个ATL Control组件;通过所述ATL Control组件在IE浏览器中创建一个本地窗口,所述本地窗口作为所述ActiveX组件的宿主窗口;采用所述直播软件框架的CreateLiveInstace函数获取一个ILive接口;采用所述ILive接口的get_encoder方法获取ILiveEncoder接口;获取所述本地窗口的窗口句柄,将所述窗口句柄作为参数传入所述ILiveEncoder接口的init方法中,实现所述直播软件框架在所述本地窗口中的初始化;在所述本地窗口中调用所述直播软件框架内的接口,以获取所述直播应用软件的待播放媒体数据。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611078418.XA CN106648628B (zh) | 2016-11-30 | 2016-11-30 | 将直播应用软件移植到ie浏览器的方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611078418.XA CN106648628B (zh) | 2016-11-30 | 2016-11-30 | 将直播应用软件移植到ie浏览器的方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106648628A CN106648628A (zh) | 2017-05-10 |
CN106648628B true CN106648628B (zh) | 2020-08-04 |
Family
ID=58814549
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201611078418.XA Active CN106648628B (zh) | 2016-11-30 | 2016-11-30 | 将直播应用软件移植到ie浏览器的方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106648628B (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101740082A (zh) * | 2009-11-30 | 2010-06-16 | 孟智平 | 一种基于浏览器的视频剪辑方法及系统 |
CN101895582A (zh) * | 2010-07-15 | 2010-11-24 | 北京邮电大学 | 一种支持web业务和多浏览器的sip软终端及其工作方法 |
CN104850403A (zh) * | 2015-05-19 | 2015-08-19 | 重庆大学 | 一种基于控件技术的示波器远程控制系统的实现方法 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101064823A (zh) * | 2006-04-30 | 2007-10-31 | 互联天下科技发展(深圳)有限公司 | 一种视频互动网络直播方法 |
US10372511B2 (en) * | 2014-07-18 | 2019-08-06 | Verizon Patent And Licensing Inc. | Method and apparatus for providing an application control trigger |
CN106020852B (zh) * | 2016-06-30 | 2020-07-07 | 北京奇虎科技有限公司 | 运行窗口直播方法、系统及浏览器 |
-
2016
- 2016-11-30 CN CN201611078418.XA patent/CN106648628B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101740082A (zh) * | 2009-11-30 | 2010-06-16 | 孟智平 | 一种基于浏览器的视频剪辑方法及系统 |
CN101895582A (zh) * | 2010-07-15 | 2010-11-24 | 北京邮电大学 | 一种支持web业务和多浏览器的sip软终端及其工作方法 |
CN104850403A (zh) * | 2015-05-19 | 2015-08-19 | 重庆大学 | 一种基于控件技术的示波器远程控制系统的实现方法 |
Non-Patent Citations (2)
Title |
---|
一种视频直播系统的设计与实现;李玲娟;《中国优秀硕士学位论文全文数据库 信息科技辑》;20140715(第07期);I136-257,第29-32页 * |
嵌入式实时视频传输系统的设计与实现;石晓栋;《中国优秀硕士学位论文全文数据库 信息科技辑》;20130115(第01期);I137-94,第41-44页 * |
Also Published As
Publication number | Publication date |
---|---|
CN106648628A (zh) | 2017-05-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5459743B2 (ja) | ストリームベースのソフトウェアアプリケーション配信及び起動システム | |
US9715370B2 (en) | Method and system for providing content | |
CN106406961B (zh) | 一种基于浏览器加载、提供应用程序的方法、装置 | |
US10178160B2 (en) | Virtual application execution system and method | |
US7814157B2 (en) | Hypermedia browser API simulation to enable use of browser plug-ins and applets as embedded widgets in script-language-based interactive programs | |
WO2017050094A1 (zh) | 加载应用程序的方法及装置 | |
US8612947B2 (en) | System and method for remotely compiling multi-platform native applications for mobile devices | |
US10207190B2 (en) | Technologies for native game experience in web rendering engine | |
US7523223B2 (en) | Web control simulators for mobile devices | |
CN108416021B (zh) | 一种浏览器网页内容处理方法、装置、电子设备及可读介质 | |
JP5916002B2 (ja) | ソフトウェアアプリケーション配信および起動システム | |
CN106648627B (zh) | 将直播应用软件移植到火狐浏览器的方法及装置 | |
BRPI1012352B1 (pt) | método implementado por computador para manipular formatos de mídia extensíveis em uma plataforma de aplicação hospedada e sistema de computador para comunicação entre uma aplicação e uma plataforma de hospedagem | |
JP2009508220A5 (zh) | ||
CN111740948A (zh) | 数据包发布方法、动态更新方法、装置、设备及介质 | |
CN106815055B (zh) | 移动应用动态布局的方法与系统 | |
US20120260267A1 (en) | Methods and Systems for Supporting a Rendering API Using a Runtime Environment | |
CN113765740B (zh) | 一种对Dio网络请求进行监控的方法和装置 | |
CN109299331A (zh) | Air展现超文本标记语言HTML5页面的方法及装置 | |
CN112416348B (zh) | 页面生成方法、系统及计算设备 | |
CN106648628B (zh) | 将直播应用软件移植到ie浏览器的方法及装置 | |
CN110825365B (zh) | 一种定制webview特性的方法、装置、设备和介质 | |
AU2019222873B2 (en) | Method and system for providing content | |
CN105550046B (zh) | 虚拟操控的方法、装置及系统 | |
Wagner | Professional flash mobile development: Creating android and iphone applications |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |