一种播放器系统的制作方法

文档序号:6372496阅读:189来源:国知局
专利名称:一种播放器系统的制作方法
技术领域
本申请涉及播放器技术领域,特别是涉及一种播放器系统。
背景技术
为了实现各种编码格式的音频、视频节目的播放,不少第三方媒体提供商均开发了自己的播放器插件,提供音频、视频节目的网站一般会提示用户下载、安装相应的插件或程序。由于播放器插件需要满足各种编码格式的音频、视频素材的预览、快速搜索和流畅播放的要求,因此其需要支持预读机制,即提前读取解码音视频素材并保存至内存,以实现上述音视频素材的预览、快速搜索和流畅播放。可见,实现播放器插件的预读机制需要占 用系统大量的内存资源,造成与第三方集成软件竞争内存资源,从而容易出现死机现象。同时,如果播放器插件采用64bit开发,则第三方集成软件也是64bit时才能调用该播放器插件,导致播放器插件的通用性较低。

发明内容
本申请所要解决的技术问题是提供一种播放器系统,以解决现有播放器插件与第三方集成软件竞争内存资源从而导致死机现象,以及播放器插件的通用性较低的问题。为了解决上述问题,本申请公开了一种播放器系统,包括第三方集成软件,包括加载模块,用于加载播放器插件,并将播放显示界面的显示参数传递给播放器服务器;发送模块,用于在接收到播放请求后,将所述播放请求发送给播放器接口 ;播放器接口,包括传递模块,用于依据第三方集成软件的类型和播放器服务器的类型,通过32位运行库和/或64位运行库,将所述播放请求传递给播放器服务器;播放器服务器,包括创建模块,用于依据所述显示参数创建显示界面,并依据所述播放请求在所述显示界面中创建显示内容;所述播放器插件接收并播放所述播放器服务器创建的显示内容;其中,所述播放器接口和第三方集成软件分别在操作系统独立进程中运行。优选地,所述第三方集成软件的类型为32位或64位,所述播放器服务器的类型为32位或64位。优选地,所述第三方集成软件的类型为32位,所述发送模块包括第一发送子模块,用于将所述播放请求发送给播放器接口中的32位运行库。优选地,所述播放器服务器的类型为32位,
所述传递模块包括第一传递子模块,用于通过32位运行库将所述播放请求传递给播放器服务器。优选地,所述播放器服务器的类型为64位,所述传递模块包括第二传递子模块,用于通过32位运行库将所述播放请求传递至64位运行库;第三传递子模块,用于通过64位运行库将所述播放请求传递给播放器服务器。优选地,所述第三方集成软件的类型为64位,所述发送模块包括
第二发送子模块,用于将所述播放请求发送给播放器接口中的64位运行库。优选地,所述传递模块包括第三传递子模块,用于通过64位运行库将所述播放请求传递给播放器服务器。优选地,所述显示参数为播放显示界面的父窗体句柄和大小。优选地,所述32位运行库和64位运行库采用本地进程通信的方式传递所述播放请求。与现有技术相比,本申请包括以下优点本申请通过在第三方集成软件与播放器服务器之间添加播放器接口,从而将播放器服务器独立于第三方集成软件,第三方集成软件只需将播放显示界面的显示参数传递给播放器服务器,播放器服务器即可自动创建显示界面。后续有播放请求时,第三方集成软件通过调用播放器接口将播放请求传递给播放器服务器,由播放器服务器在所述显示界面中创建显示内容,播放器插件实现显示内容的播放。本申请通过播放器接口实现第三方集成软件与播放器服务器的连接,避免了播放器和第三方集成软件之间的紧耦合关系,合理利用系统不同进程资源独立的优势,减少系统之间的相互影响,避免了与第三方集成软件竞争资源。其次,在播放器接口中包括32位运行库和64位运行库,因此可以实现32位的第三方集成软件调用播放器插件播放64位播放器服务器创建的显示内容,提高了播放器插件的通用性。


图I是本申请实施例一所述一种播放器系统的结构框图;图2是本申请实施例二所述一种播放器系统的结构框图;图3是本申请实施例二所述不同进程中COM组件通讯的示意图。
具体实施例方式为使本申请的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式
对本申请作进一步详细的说明。本申请通过在第三方集成软件与播放器服务器之间设置播放器接口,通过播放器接口实现两者之间的通信,从而将播放器服务器独立出来,避免了其与第三方集成软件竞争资源,并且可以实现32位的第三方集成软件调用播放器插件播放64位播放器服务器创建的显示内容,提高了播放器插件的通用性。参照图1,示出了本申请一种播放器系统的结构框图,所述系统包括第三方集成软件101、播放器接口 102和播放器服务器103。其中,所述第三方集成软件101包括加载模块1011和发送模块1012,在本申请中,所述第三方集成软件可以是IE浏览器、360浏览器,或者其他任何一种可以加载播放器插件的软件,本申请对此并不加以限制。加载模块1011,用于加载播放器插件,并将播放显示界面的显示参数传递给播放器服务器;如果需要通过第三方集成软件播放音频、视频节目,则首先需要加载播放器插件,后续再进行音视频节目内容的播放。例如,使用Windows Media Player播放3CX编码格式的在线电视台时,必须激活3CX LivePlayer插件。在扬州宽带网的“直播间”,您可以在“收看须知”中找到激活3CX LivePlayer插件的链接,点击后,开始激活,在弹出的提示窗口中勾选“总是信任来自3CX的内容”选项,单击“是”按钮,就可以自动完成激活。激活成功之后,即可播放来自3CX的内容。另外,本申请中使用播放器插件还可以来扩展播放器的功能,增加原有播放器支持的文件格式,支持c#,C++,Dephi, Java等多种其他语言调用,达到最佳复用。加载播放器插件之后,第三方集成软件将其播放显示界面的显示参数传递给播放器服务器,用于通知播放器服务器应该在什么地方、创建什么样的显示界面。其中,所述显示参数为播放显示界面的父窗体句柄和大小。当然,所述显示参数还可以为播放显示界面的其他参数,如窗体颜色、位置,等等,本申请对此并不加以限制。发送模块1012,用于在接收到播放请求后,将所述播放请求发送给播放器接口。当用户想要在当前打开的第三方集成软件的网页中播放某一视频时,如用户发起“播放新闻联播”的播放请求,第三方集成软件接收到该播放请求,则通过发送模块1012将其发送给播放器接口。其中,所述播放请求可以是用户通过点击第三方集成软件中相应的内容而触发的请求,或者是用户通过输入关键字进行搜索而触发的请求,还可以是通过其他方式触发的请求,本领域技术人员采用任何一种方式触发播放请求均可,本申请对具体的触发方式不做限制。所述播放器接口 102主要完成第三方集成软件和播放器服务器之间的通信,包括传递模块1021,用于依据第三方集成软件的类型和播放器服务器的类型,通过32位运行库和/或64位运行库,将所述播放请求传递给播放器服务器。本申请实施例中在所述播放器服务器中包括32位运行库和64位运行库,它们均采用本地进程通信的方式传递所述播放请求。所述第三方集成软件的类型为32位或64位,所述播放器服务器的类型为32位或64位。根据第三方集成软件的类型和播放器服务器的类型的不同,传递模块将通过32位运行库和/或64位运行库,利用不同的方式将所述播放请求传递至播放器服务器。下面,针对不同的情况,对播放器接口传递播放请求的过程进行详细说明。
首先,根据第三方集成软件类型的不同,其中的发送模块在将所述播放请求传递至播放器接口时,传递方式也是不同的,具体如下第一种情况所述第三方集成软件的类型为32位。则所述发送模块1012包括第一发送子模块,用于将所述播放请求发送给播放器接口中的32位运行库。第二种情况所述第三方集成软件的类型为64位。则所述发送模块1012包括 第二发送子模块,用于将所述播放请求发送给播放器接口中的64位运行库。其次,在接收到第三方集成软件发送的播放请求后,播放器接口中的传递模块还要根据播放器服务器的类型,采用不同的方式将所述播放请求传递至播放器服务器,具体如下第一种情况所述第三方集成软件的类型为32位,所述播放器服务器的类型为32位。所述传递模块1021包括第一传递子模块,用于通过32位运行库将所述播放请求传递给播放器服务器。第二种情况所述第三方集成软件的类型为32位,所述播放器服务器的类型为64位。所述传递模块1021包括第二传递子模块,用于通过32位运行库将所述播放请求传递至64位运行库;第三传递子模块,用于通过64位运行库将所述播放请求传递给播放器服务器。第三种情况所述第三方集成软件的类型为64位,所述播放器服务器的类型为32位。所述传递模块1021包括第三传递子模块,用于通过64位运行库将所述播放请求传递给播放器服务器。第四种情况所述第三方集成软件的类型为64位,所述播放器服务器的类型为64位。所述传递模块1021包括第三传递子模块,用于通过64位运行库将所述播放请求传递给播放器服务器。在上述第三种情况和第四种情况中,由于所述第三方集成软件的类型是64位,其在发送播放请求时,直接将所述播放请求发送至播放器接口中的64位运行库,因此,不论播放器服务器是32位还是64位,都可以通过第三传递子模块将所述播放请求通过64位运行库传递给播放器服务器。所述播放器服务器103,包括创建模块1031,用于依据所述显示参数创建显示界面,并依据所述播放请求在所述显示界面中创建显示内容。播放器服务器103在接收到第三方集成软件传递的显示参数后,即可通过创建模块1031依据该显示参数创建显示界面,该显示界面对应于第三方集成软件中的播放显示界面。在接收到播放请求后,根据该播放请求在所述显示界面中创建用户请求的显示内容,并将所述显示内容发送给播放器插件。所述播放器插件接收并播放所述播放器服务器创建的显示内容。由于在播放器服务器中的显示界面是依据第三方集成软件传递的显示参数创建的,其与第三方集成软件中的播放显示界面是相对应的,因此,播放器插件在接收到播放器服务器创建的显示内容后,即可直接在播放显示界面上显示该内容,而不需要再执行其他操作。在本申请实施例中,所述播放器接口和第三方集成软件分别在操作系统独立进程中运行。本申请实施例通过在第三方集成软件与播放器服务器之间添加播放器接口,从而将播放器服务器独立于第三方集成软件,第三方集成软件只需将播放显示界面的显示参数传递给播放器服务器,播放器服务器即可自动创建显示界面。后续有播放请求时,第三方集成软件通过调用播放器接口将播放请求传递给播放器服务器,由播放器服务器在所述显示界面中创建显示内容,播放器插件实现显示内容的播放。

本申请实施例通过播放器接口实现第三方集成软件与播放器服务器的连接,避免了播放器和第三方集成软件之间的紧耦合关系,合理利用系统不同进程资源独立的优势,减少系统之间的相互影响,避免了与第三方集成软件竞争资源。其次,在播放器接口中包括32位运行库和64位运行库,因此可以实现32位的第三方集成软件调用播放器插件播放64位播放器服务器创建的显示内容,提高了播放器插件的通用性。下面,以DCOM接口为例,对本实施例所述的播放器系统进行详细论述。参照图2,示出了本申请实施例二所述一种播放器系统的结构框图,在该系统中播放器接口采用DCOM接口。分布式组件对象模型(DistributedComponent Object Model,DCOM)是一系列微软的概念和程序接口,利用这个接口,客户端程序对象能够请求来自网络中另一台计算机上的服务器程序对象。DCOM基于组件对象模型(Component Object Model, COM), COM提供了一套允许同一台计算机上的客户端和服务器之间进行通信的接口。DCOM是COM的无缝扩展,可以将现有基于COM的应用转移到标准化的多处理器多进程计算领域,由DCOM处理多进程间通信协议低层次的细节问题,使得在不同进程之间的调用如进程间调用一样。DCOM接口是逻辑上和语义上相关联的函数集。服务器对象通过DCOM接口为客户对象提供服务,客户对象不需了解服务器对象的内部数据表示的含义,其中,接口可以看成两个软件构件之间的一种服务协议。在Windows操作系统中,各进程之间是相互屏蔽的。当一个客户进程需要和另一个进程中的组件通讯时,它不能直接调用该进程,而需要遵循操作系统对进程间通讯所做的规定。DCOM使得这种通讯能够以一种完全透明的方式进行,它截取从客户进程来的调用并将其传送到另一进程中的组件,提供进程间安全的调用机制。参照图3,示出了不同进程中COM组件通讯的示意图,表明了 DCOM运行库是怎样提供客户进程和组件之间的联系的。首先COM运行库(COM Run-time)截取客户端(Client)进程的调用命令,然后在分布式计算环境(Distributed Computing Environment,DCE)下,利用远程过程调用(RemoteProcedure Call, RPC)协议以及安全提供程序(Security Provider)通过本地进程通信(Local Process Communication, LPC)的方式将其传输至另一进程对应的COM运行库,最后再通过上述方式将调用命令传输至该进程中的组件(Component)。如图2所示,是本实施例中所述播放器系统的结构框图,在该实施例中以32位的第三方集成软件调用64位的播放器服务器为例。第三方集成软件加载播放器插件,并且将播放显示界面的显示参数传递给播放器服务器。本实施例中,将IE浏览器作为第三方集成软件,将搜狐播放器作为播放器插件。用户当前希望观看“新闻联播”的视频,首先在IE浏览器中打开搜狐播放器对应的网页,播放器插件加载成功,然后IE浏览器自动将搜狐播放器界面对应的父窗体句柄和大小传递给播放器服务器。用户通过在搜索栏中输入“新闻联播”或者直接在文件列表中点击“新闻联播”,即可发送播放请求,IE浏览器接收到该播放请求后,将其通过DCOM接口传递至播放器服务 器。由于本实施例中,第三方集成软件为32位,播放器服务器为64位,因此,第三方集成软件首先将播放请求发送至DCOM接口中的32位运行库,然后32位运行库通过LPC的方式将播放请求传递至64位运行库,最后通过64位运行库将所述播放请求传递至播放器服务器。播放器服务器在接收到IE浏览器传递的显示参数之后,根据该显示参数创建显示界面(人机交互界面),在接收到播放请求后,通过数据结构解析、多线程数据流调度,以及文件解析等过程,在所述显示界面中创建所述播放请求对应的显示内容,并且将该显示内容返回给搜狐播放器,搜狐播放器接收到显示内容,即可直接在播放显示界面中播放所述内容。 本实施例对具体的创建显示内容的过程不再详细论述,本领域技术人员根据实际情况处理即可。本实施例中所述播放器接口和第三方集成软件分别在操作系统独立进程中运行,避免了嵌入式播放器与第三方集成软件竞争资源,并且实现了 32位的第三方集成软件调用播放器插件播放64位播放器服务器创建的显示内容,提高了播放器插件的通用性。本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。本申请可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本申请,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。 以上对本申请所提供的一种播放器系统,进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式
及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。
权利要求
1.一种播放器系统,其特征在于,包括 第三方集成软件,包括 加载模块,用于加载播放器插件,并将播放显示界面的显示参数传递给播放器服务器; 发送模块,用于在接收到播放请求后,将所述播放请求发送给播放器接口 ; 播放器接口,包括 传递模块,用于依据第三方集成软件的类型和播放器服务器的类型,通过32位运行库和/或64位运行库,将所述播放请求传递给播放器服务器; 播放器服务器,包括 创建模块,用于依据所述显示参数创建显示界面,并依据所述播放请求在所述显示界面中创建显示内容; 所述播放器插件接收并播放所述播放器服务器创建的显示内容; 其中,所述播放器接口和第三方集成软件分别在操作系统独立进程中运行。
2.根据权利要求I所述的系统,其特征在于,所述第三方集成软件的类型为32位或64位,所述播放器服务器的类型为32位或64位。
3.根据权利要求2所述的系统,其特征在于,所述第三方集成软件的类型为32位, 所述发送模块包括 第一发送子模块,用于将所述播放请求发送给播放器接口中的32位运行库。
4.根据权利要求3所述的系统,其特征在于,所述播放器服务器的类型为32位, 所述传递模块包括 第一传递子模块,用于通过32位运行库将所述播放请求传递给播放器服务器。
5.根据权利要求3所述的系统,其特征在于,所述播放器服务器的类型为64位, 所述传递模块包括 第二传递子模块,用于通过32位运行库将所述播放请求传递至64位运行库; 第三传递子模块,用于通过64位运行库将所述播放请求传递给播放器服务器。
6.根据权利要求2所述的系统,其特征在于,所述第三方集成软件的类型为64位, 所述发送模块包括 第二发送子模块,用于将所述播放请求发送给播放器接口中的64位运行库。
7.根据权利要求6所述的系统,其特征在于,所述传递模块包括 第三传递子模块,用于通过64位运行库将所述播放请求传递给播放器服务器。
8.根据权利要求I所述的系统,其特征在于,所述显示参数为播放显示界面的父窗体句柄和大小。
9.根据权利要求I所述的系统,其特征在于,所述32位运行库和64位运行库采用本地进程通信的方式传递所述播放请求。
全文摘要
本申请提供了一种播放器系统,包括第三方集成软件、播放器接口和播放器服务器,第三方集成软件包括加载模块,用于加载播放器插件,并将播放显示界面的显示参数传递给播放器服务器;发送模块,用于在接收到播放请求后,将播放请求发送给播放器接口;播放器接口包括传递模块,用于依据第三方集成软件的类型和播放器服务器的类型,通过32位运行库和/或64位运行库,将播放请求传递给播放器服务器;播放器服务器包括创建模块,用于依据显示参数创建显示界面,并依据播放请求在所述显示界面中创建显示内容;所述播放器插件接收并播放所述播放器服务器创建的显示内容;其中,所述播放器接口和第三方集成软件分别在操作系统独立进程中运行。
文档编号G06F9/44GK102799429SQ20121022433
公开日2012年11月28日 申请日期2012年6月28日 优先权日2012年6月28日
发明者侯凯 申请人:新奥特(北京)视频技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1