基于本机开发程序包技术的多媒体系统及多媒体数据传输方法技术方案

技术编号:9926380 阅读:160 留言:0更新日期:2014-04-16 17:49
本发明专利技术提供一种基于NDK技术的多媒体中间件及多媒体数据传输方法。根据本发明专利技术的多媒体中间件,其至少包括:与第一软件层进行通信的第一通信接口;至少一个第一NDK虚拟组件,每一第一NDK虚拟组件与第一软件层的一个多媒体对象对应;至少一个第二NDK虚拟组件,每一第二NDK虚拟组件与一个第一NDK虚拟组件匹配、且与第二软件层的一个多媒体对象对应;与第二软件层进行通信的第二通信接口;以及判断单元,用于判断第一软件层的多媒体对象与第一NDK虚拟组件是否对应、或者判断第二软件层的多媒体对象与第二NDK虚拟组件是否对应。本发明专利技术的优点包括:使程序开发简便、开发周期缩短,还有效减少了软件的维护、运行和管理的工作量。

【技术实现步骤摘要】
基于本机开发程序包技术的多媒体系统及多媒体数据传输方法
本专利技术涉及计算机
,特别是涉及一种基于本机开发程序包技术的多媒体系统及多媒体数据传输方法。
技术介绍
中间件是一种独立的系统软件或服务程序,分布式应用软件借助这种软件在不同的技术之间共享资源。中间件位于客户机/服务器的操作系统之上,管理计算机资源和网络通讯,是连接两个独立应用程序或独立系统的软件。相连接的系统,即使彼此具有不同的接口,但通过中间件相互之间仍能交换信息。执行中间件的一个关键途径是信息传递。通过中间件,应用程序可以工作于多平台或OS环境。例如,在申请号为200920286715的中国专利文献中,公开了一种多媒体中间件在嵌入式DVR中的应用系统,该系统就是通过多媒体中间件将硬件层与应用软件层分离开来,解决了平台差异化中带来的大量软件开发和兼容性问题。目前,随着Android系统平台应用的推广,越来越多的用户,尤其是手机用户,都采用Android系统。而Android系统的开发是以Java为主要编程语言,众所周知Java语言的执行效率难以与C/C++语言相提并论。所以面对类似于音视频通讯软件中的视频编解码这种大数据量的工作必须利用C/C++语言来完成,因此Android系统为开发人员提供了本机开发程序包(NativeDevelopmentKit,NDK)方法,以便于Java层与底层C/C++进行交互。但是现有的Android的NDK开发中,Java层与Native(C/C++)层相互调用的方式是基于点对点的调用,如此既增加了程序的复杂度,降低了可移植性,又提高了测试需求,加大了调试难度,还给项目增加了维护负担,因此,迫切需要对现有技术进行改进。
技术实现思路
鉴于以上所述现有技术的缺点,本专利技术的目的在于提供一种基于NDK技术的多媒体中间件及多媒体数据传输方法。为实现上述目的及其他相关目的,本专利技术提供一种基于NDK技术的多媒体系统,其至少包括:第一通信接口,用于与第一软件层进行通信;至少一个第一NDK虚拟组件,每一第一NDK虚拟组件与第一软件层的一个多媒体对象对应;至少一个第二NDK虚拟组件,每一第二NDK虚拟组件与一个第一NDK虚拟组件匹配、且与第二软件层的一个多媒体对象对应;第二通信接口,用于与第二软件层进行通信;判断单元,用于判断第一软件层的多媒体对象与第一NDK虚拟组件是否对应、或者判断第二软件层的多媒体对象与第二NDK虚拟组件是否对应。优选地,所述基于NDK技术的多媒体系统还包括:查询单元,用于基于判断单元的判断结果来查询第一NDK虚拟组件与第二NDK虚拟组件的匹配性本专利技术提供一种基于多媒体系统来传输多媒体数据的方法,其至少包括步骤:1)多媒体系统包含的判断单元判断第一软件层的待传多媒体对象与第一NDK虚拟组件是否对应,其中,第一软件层的待传多媒体对象来自第一通信接口;2)当第一软件层的待传多媒体对象与第一NDK虚拟组件对应时,与该第一NDK虚拟组件匹配的第二NDK虚拟组件,将该待传多媒体对象中的多媒体数据通过第二通信接口传输给与自身对应的第二软件层的多媒体体对象;和/或,所述基于多媒体系统来传输多媒体数据的方法至少包括步骤:i)多媒体系统包含的判断单元判断第二软件层的待传多媒体对象与第二NDK虚拟组件是否对应,其中,第二软件层的待传多媒体对象来自第二通信接口;Ii)当第二软件层的待传多媒体对象与第二NDK虚拟组件对应时,与该第二NDK虚拟组件匹配的第一NDK虚拟组件,将该待传多媒体对象中的多媒体数据通过第一通信接口传输给与自身对应的第一软件层相应的多媒体体对象。优选地,步骤2)包括步骤:A1、多媒体系统包含的查询单元基于判断单元的判断结果在多个第二NDK虚拟组件中进行查询,来确定是否有与第一NDK虚拟组件匹配的第二NDK虚拟组件;A2、当有第一NDK虚拟组件匹配的第二NDK虚拟组件时,与第一软件层的待传多媒体对象对应的第一NDK虚拟组件将该待传多媒体对象中的多媒体数据传输给与自身匹配的第二NDK虚拟组件,该第二NDK虚拟组件再通过第二通信接口将该多媒体数据传输给与自身对应的第二软件层的多媒体对象。优选地,步骤ii)包括步骤:B1、多媒体系统包含的查询单元基于判断单元的判断结果在多个第一NDK虚拟组件中查询是否有与第二NDK虚拟组件匹配的第一NDK虚拟组件;B2、当有与第二NDK虚拟组件匹配的第一NDK虚拟组件时,与第二软件层的待传多媒体对象对应的第二NDK虚拟组件将该待传多媒体对象中的多媒体数据传输给与自身匹配的第一NDK虚拟组件,该第一NDK虚拟组件再通过第一通信接口将该多媒体数据传输给与自身对应的第一软件层的多媒体对象。如上所述,本专利技术具有以下有益效果:使程序开发简便、开发周期缩短,还有效减少了软件的维护、运行和管理的工作量。附图说明图1显示为本专利技术的基于NDK技术的多媒体系统的一种优选结构示意图。图2A与2B显示为基于图1所示的多媒体系统传输多媒体数据的流程图。图3显示为本专利技术的基于NDK技术的多媒体系统的另一种优选结构示意图。图4A与4B显示为基于图3所示的多媒体系统传输多媒体数据的流程图。元件标号说明1a、1b多媒体系统11第一通信接口12a、12b1、12b2、…12bn第一NDK虚拟组件13a、13b1、13b2、…13bn第二NDK虚拟组件14第二通信接口15判断单元16查询单元S1、S2、S21、S22步骤S1’、S2’、S21’、S22’步骤具体实施方式以下通过特定的具体实例说明本专利技术的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本专利技术的其他优点与功效。本专利技术还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本专利技术的精神下进行各种修饰或改变。请参阅图1至图4B。需要说明的是,本实施例中所提供的图示仅以示意方式说明本专利技术的基本构想,遂图式中仅显示与本专利技术中有关的组件而非按照实际实施时的组件数目、形状及尺寸绘制,其实际实施时各组件的型态、数量及比例可为一种随意的改变,且其组件布局型态也可能更为复杂。如图1所示,本专利技术提供一种基于NDK技术的多媒体系统。所述多媒体系统1a至少包括:第一通信接口11、第一NDK虚拟组件12a、第二NDK虚拟组件13a、第二通信接口14、及判断单元15。所述第一通信接口11用于与第一软件层进行通信;所述第二通信接口14用于与第二软件层进行通信。其中,第一软件层包括基于任何一种程序语言形成的软件层,优选地,包括但不限于:基于java语言形成的java层;第二软件层包括基于任何一种程序语言形成的软件层,且第二软件层所采用的程序语言不同于第一软件层所采用的程序语言,优选地,包括但不限于:基于NativeC/C++语言形成的NativeC/C++层。所述第一NDK虚拟组件12a与第一软件层的一个多媒体对象对应,所述第二NDK虚拟组件13a与第一NDK虚拟组件12a匹配、且与第二软件层的一个多媒体对象对应。其中,所述多媒体对象是一组多媒体数据与该组多媒体数据有关的操作组装所形成的实体。例如,一组待显示的多媒体数据a1与该组多媒体数据a1有关的显示操作采用java语言组装所形成的实体,即为java层的多媒体对象Su本文档来自技高网
...
基于本机开发程序包技术的多媒体系统及多媒体数据传输方法

【技术保护点】
一种基于NDK技术的多媒体中间件,其特征在于,所述基于NDK技术的多媒体中间件至少包括:第一通信接口,用于与第一软件层进行通信;至少一个第一NDK虚拟组件,每一第一NDK虚拟组件与第一软件层的一个多媒体对象对应;至少一个第二NDK虚拟组件,每一第二NDK虚拟组件与一个第一NDK虚拟组件匹配、且与第二软件层的一个多媒体对象对应;第二通信接口,用于与第二软件层进行通信;判断单元,用于判断第一软件层的多媒体对象与第一NDK虚拟组件是否对应、或者判断第二软件层的多媒体对象与第二NDK虚拟组件是否对应。

【技术特征摘要】
1.一种基于本机开发程序包技术的多媒体系统,其特征在于,所述基于本机开发程序包技术的多媒体系统至少包括:第一通信接口,用于与第一软件层进行通信;至少一个第一本机开发程序包虚拟组件,每一第一本机开发程序包虚拟组件与第一软件层的一个多媒体对象对应;至少一个第二本机开发程序包虚拟组件,每一第二本机开发程序包虚拟组件与一个第一本机开发程序包虚拟组件匹配、且与第二软件层的一个多媒体对象对应;第二通信接口,用于与第二软件层进行通信;判断单元,用于判断第一软件层的多媒体对象与第一本机开发程序包虚拟组件是否对应、或者判断第二软件层的多媒体对象与第二本机开发程序包虚拟组件是否对应;若是,该第一软件层的多媒体对象中的多媒体数据通过第二通信接口传输给与自身对应第二软件层的多媒体对象;查询单元,与所述第一本机开发程序包虚拟组件和第二本机开发程序包虚拟组件连接,用于基于所述判断单元的判断结果在多个第二本机开发程序包虚拟组件中进行查询,来确定是否有与第一本机开发程序包虚拟组件匹配的第二本机开发程序包虚拟组件;其中,第一本机开发程序包虚拟组件及第二本机开发程序包虚拟组件由本机开发程序包自动生成;当有第一本机开发程序包虚拟组件匹配的第二本机开发程序包虚拟组件时,与第一软件层的待传多媒体对象对应的第一本机开发程序包虚拟组件将该待传多媒体对象中的多媒体数据传输给与自身匹配的第二本机开发程序包虚拟组件,该第二本机开发程序包虚拟组件再通过第二通信接口将该多媒体数据传输给与自身对应的第二软件层的多媒体对象。2.根据权利要求要求1所述的基于本机开发程序包技术的多媒体系统,其特征在于,当第一本机开发程序包虚拟组件和/或第二本机开发程序包虚拟组件包括多个时,所述多媒体系统还包括:查询单元,用于基于判断单元的判断结果来查询第一本机开发程序包虚拟组件与第二本机开发程序包虚拟组件的匹配性。3.根据权利要求要求1所述的基于本机开发程序包技术的多媒体系统,其特征在于:所述第一软件层包括java层,所述第二软件层包括NativeC/C++层。4.一种基于多媒体系统来传输多媒体数据的方法,其特征在于,所述基于多媒体系统来传输多媒体数据的方法至少包括步骤:1)多媒体系统包含的判断单元判断第一软件层的待传多媒体对象与第一本机开发程序包虚拟组件是否对应,其中,第...

【专利技术属性】
技术研发人员:毛宗武熊模昌
申请(专利权)人:华平信息技术股份有限公司
类型:发明
国别省市:上海;31

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1