一种多媒体应用的并发管理方法和装置的制作方法

文档序号:6363457阅读:123来源:国知局
专利名称:一种多媒体应用的并发管理方法和装置的制作方法
技术领域
本发明涉及多媒体技术,尤其涉及一种多媒体应用的并发管理方法和装置。
背景技术
随着多媒体技术的发展,多媒体应用越来越广泛,尤其是智能终端的出现,更是满足了人们希望随时随地享受影音、游戏等娱乐功能的需求。但多媒体应用多了以后,就需要考虑各种多媒体应用之间的一些并发操作,比如,在音乐播放的过程中来闹钟,由于音乐的声音和闹钟响铃都会进行声音输出,所以应该米取一定的策略对这二种声音的输出进行控制,可以在闹钟响起的时候暂停音乐的播放,或者在闹钟响起的时候降低音乐播放的声音, 以突出闹钟的声音,否则的话,输出的声音就有可能比较杂乱,降低用户体验。在目前的智能终端中,这两种方式都有使用,但一个终端上只能采用某一种固定的形式要么闹钟响起的时候暂停音乐的播放,要么闹钟响起的时候降低音乐播放的声音;用户无法根据自己的喜好来选择一种并发方式,用户体验性不好。与传统的功能手机(fcaturePhone)和其他智能终端平台相比,android在多媒体应用并发的实现上有了很大的进步,实现多媒体应用的并发相对比较容易。其所采用的机制被称为广播机制,即当一个多媒体应用启动的时候,比如开始摄像,那么这个应用程序,在这里就是摄像应用程序,会发送一个广播,在该广播中携带指定的数据,而其它多媒体应用在收到所述广播时,根据接收到的所述广播中的数据确定自身进行何种操作,如暂停自身或降低自身的播放音量等。但这种机制有一个比较严重的缺点就是,所有多媒体应用必须对广播的数据的含义提前约定好,这样才能在收到某个指定的数据时执行相应的操作。但android是一个开放的平台,允许用户随意安装自己感兴趣的软件,比如,除了使用 android终端上自带的音频播放器外,还可以安装第三方公司提供的音乐播放器。和不同公司提供的各种多媒体应用提前约定指定数据的含义,这显然是不可能的。因此,对于终端自带的应用和第三方提供的多媒体应用之间以及二个不同公司提供的第三方应用之间的并发控制,android的支持性并不好。例如,在若干个品牌的android智能终端上测试发现, 当进行摄像的时候,仍然允许第三方音乐播放软件播放音乐,这显然是非常不合理的。

发明内容
有鉴于此,本发明的主要目的在于提供一种多媒体应用的并发管理方法和装置, 能够以更加灵活的方式,提供用户可配置的多媒体应用并发管理功能,实现安装的第三方多媒体应用和终端自带的多媒体应用之间,以及第三方多媒体应用之间的并发管理。为达到上述目的,本发明的技术方案是这样实现的本发明提供的一种多媒体应用的并发管理方法,该方法包括Java框架层存储在Java应用层设置的并发策略的参数;在有多媒体应用启动请求时,Java框架层生成并保存用于完成实际多媒体功能的多媒体对象,在确定当前为多媒体应用并发时,查询是否存储有所述多媒体对象对应的并发策略参数,在有对应的并发策略参数时,根据所述并发策略参数对除所述多媒体对象外的其他多媒体对象进行管理;Java框架层启动新保存的多媒体对象的应用。上述方案中,该方法还包括所述Java框架层存储在Java应用层设置的并发策略的参数之前,在Java应用层通过并发策略设置界面设置并发策略,Java应用层根据在界面设置的并发策略,在后台将并发策略参数发送给Java框架层。上述方案中,所述Java框架层生成并保存多媒体对象为Java框架层的JNI模块接收Java应用层发送的创建多媒体对象的请求,通过调用本地实现层的相关接口生成用于完成实际多媒体功能的多媒体对象,并保存所述多媒体对象到Java框架层的数据结构内。上述方案中,所述根据所述并发策略参数对除所述多媒体对象外的其他多媒体对象进行管理,包括根据所述并发策略参数暂停除所述多媒体对象外的其他多媒体对象的应用、或降低除所述多媒体对象外的其它多媒体对象的声音。上述方案中,该方法还包括Java框架层收到请求停止多媒体应用的命令后,停止对应的多媒体对象的应用,根据所述多媒体对象的类型及所述多媒体对象播放的媒体类型,查询是否存储有对应的并发策略参数,在有对应的并发策略参数时,取消根据所述并发策略参数对其他多媒体对象的管理,并将已经停止的多媒体对象从数据结构中删除。本发明提供的一种多媒体应用的并发管理装置,该装置位于Java框架层,包括 JNI模块、多媒体并发管理模块;其中,JNI模块,用于在有多媒体应用启动请求时,生成并保存用于完成实际多媒体功能的多媒体对象,并向多媒体并发管理模块发送第一查询并发策略请求;根据多媒体并发管理模块的通知,启动新保存的多媒体对象的应用;多媒体并发管理模块,用于存储在Java应用层设置的并发策略的参数;收到JNI 模块的第一查询并发策略请求后,在确定当前为多媒体应用并发时,查询是否存储有新保存的多媒体对象对应的并发策略参数,在有对应的并发策略参数时,根据所述并发策略参数对除所述多媒体对象外的其他多媒体对象进行管理;通知JNI模块启动新保存的多媒体对象的应用。上述方案中,所述JNI模块,具体用于接收Java应用层发送的创建多媒体对象的请求,通过调用本地实现层的相关接口生成用于完成实际多媒体功能的多媒体对象,并保存所述多媒体对象到多媒体并发管理模块的数据结构内。上述方案中,所述JNI模块,还用于收到请求停止多媒体应用的命令后,停止对应的多媒体对象的应用,向多媒体并发管理模块发送携带所述多媒体对象的类型及所述多媒体对象播放的媒体类型的第二查询并发策略请求。上述方案中,所述多媒体并发管理模块,还用于收到第二查询并发策略请求后,根据已经停止的多媒体对象的类型及所述多媒体对象播放的媒体类型,查询是否存储有对应的并发策略参数,在有对应的并发策略参数时,取消根据所述并发策略参数对其他多媒体对象的管理,并将已经停止的多媒体对象从数据结构中删除。上述方案中,该装置实现在android平台上。本发明提供了一种多媒体应用的并发管理方法和装置,Java框架层(JavaFramcwork)存储在Java应用层设置的并发策略的参数;在有多媒体应用启动请求时,Java框架层生成并保存用于完成实际多媒体功能的多媒体对象,在确定当前为多媒体应用并发时,查询是否存储有所述多媒体对象对应的并发策略参数,在有对应的并发策略参数时,根据所述并发策略参数对其他的多媒体对象进行管理Java框架层启动新保存的多媒体对象;如此,能够以更加灵活的方式,提供用户可配置的多媒体应用并发管理功能, 实现安装的第三方多媒体应用和终端自带的多媒体应用之间,以及第三方多媒体应用之间的并发管理,将带来更好、更加人性化的多媒体应用感受,大大提高用户体验,另外,本发明的方案只是对Java框架层进行了扩展,对Java应用层的开发没有任何影响,和在传统的系统平台运行的软件完全兼容。


图I为本发明实现多媒体应用的并发管理方法的流程示意图;图2为本发明实现多媒体应用的并发管理装置的结构示意图;图3为现有技术中android平台多媒体应用的架构示意图;图4为本发明实现的android平台多媒体应用的架构示意图。
具体实施例方式本发明的基本思想是Java框架层存储在Java应用层设置的并发策略的参数; 在有多媒体应用启动请求时,Java框架层生成用于完成实际多媒体功能的并保存多媒体对象,在确定当前为多媒体应用并发时,查询是否存储有所述多媒体对象对应的并发策略参数,在有对应的并发策略参数时,根据所述并发策略参数对其他多媒体对象进行管理;Java 框架层启动新保存的多媒体对象的应用。下面通过附图及具体实施例对本发明做进一步的详细说明。本发明实现一种多媒体应用的并发管理方法,如图I所示,该方法包括以下几个步骤步骤101 Java框架层存储在Java应用层设置的并发策略的参数;在本步骤之前,进一步包括在Java应用层(Java Application)通过并发策略设置界面设置并发策略,如闹钟时是否允许播放音乐、是否允许多个不同的音乐播放器同时播放音乐、摄像时是否关闭所有声音等等,这里,终端厂商可以设置各种灵活多样的设置项Java应用层根据在界面设置的并发策略,在后台将并发策略参数发送给Java框架层。步骤102 :在有多媒体应用启动请求时,Java框架层生成并保存用于完成实际多媒体功能的多媒体对象;具体的,用户向Java应用层发起多媒体应用启动请求,如音乐播放、摄像等Java 应用层通过本地化方法向Java框架层的JNI模块如安卓.媒体媒体播放器(android, media. McdiaPlayer),请求创建多媒体对象,本实施例中为音乐播放器对象;所述JNI模块接收所述请求,通过调用本地实现层(Native Libs)的相关接口生成用于完成实际多媒体功能的多媒体对象,并保存所述多媒体对象到Java框架层的数据结构内;所述本地实现层的相关接口可以是媒体播放器准备(MediaPlayer::prepare)接口、媒体播放器启动(MediaPlayer:: start)接口、媒体播放器暂停(MediaPlayer::pause)接口、和媒体播放器停止(MediaPlayer: : stop)接口等;所述Java框架层的数据结构可以使用但不局限于Java框架层的多媒体对象链表、列表或数组等。步骤103 Java框架层确定当前为多媒体应用并发后,查询是否存储有所述多媒体对象对应的并发策略参数,在有对应的并发策略参数时,根据所述并发策略参数对其他多媒体对象进行管理;所述Java框架层确定当前为多媒体应用并发,一般是Java框架层检测当前是否有至少一个多媒体对象的应用已经被启动,如果有,则确定当前为多媒体应用并发,否则确定当前不为多媒体应用并发,直接执行步骤104。所述根据所述并发策略参数对其他多媒体对象进行管理,包括根据所述并发策略参数暂停其他多媒体对象的应用,或者降低其它多媒体对象的声音,等等。本步骤还包括,在没有对应的并发策略参数时,直接执行步骤104。步骤104 Java框架层启动新保存的多媒体对象的应用;上述方法进一步包括Java框架层收到请求停止多媒体应用的命令后,停止对应的多媒体对象的应用,根据所述多媒体对象的类型及所述多媒体对象播放的媒体类型,查询是否存储有对应的并发策略参数,在有对应的并发策略参数时,取消根据所述并发策略参数对其他多媒体对象的管理,恢复其他多媒体对象的应用,并将已经停止的多媒体对象从数据结构中删除。为了实现上述方法,本发明还提供一种多媒体应用的并发管理装置,该装置位于 Java框架层,如图2所示,该装置包括JNI模块21、多媒体并发管理模块(Multimedia Concurrent Manager) 22 ;其中,JNI模块21,用于在有多媒体应用启动请求时,生成并保存用于完成实际多媒体功能的多媒体对象,并向多媒体并发管理模块22发送第一查询并发策略请求;根据多媒体并发管理模块22的通知,启动新保存的多媒体对象的应用;多媒体并发管理模块22,用于存储在Java应用层设置的并发策略的参数;收到 JNI模块21的第一查询并发策略请求后,在确定当前为多媒体应用并发时,查询是否存储有新保存的多媒体对象对应的并发策略参数,在有对应的并发策略参数时,根据所述并发策略参数对其他多媒体对象进行管理;通知JNI模块21启动新保存的多媒体对象的应用;所述JNI模块21,具体用于接收Java应用层发送的创建多媒体对象的请求后,通过调用本地实现层的相关接口生成用于完成实际多媒体功能的多媒体对象,并保存所述多媒体对象到Java框架层的数据结构内;所述JNI模块21,还用于收到请求停止多媒体应用的命令后,停止对应的多媒体对象的应用,向多媒体并发管理模块22发送携带所述多媒体对象的类型及所述多媒体对象播放的媒体类型的第二查询并发策略请求;所述多媒体并发管理模块22,还用于收到第二查询并发策略请求后,根据已经停止的多媒体对象的类型及所述多媒体对象播放的媒体类型,查询是否存储有对应的并发策略参数,在有对应的并发策略参数时,取消根据所述并发策略参数对其他多媒体对象的管理,恢复其他多媒体对象的应用,并将已经停止的多媒体对象从数据结构中删除。实现上述装置的系统平台一般是android平台,现有技术中的android平台中多媒体应用,如图3所示,划分为以下几个层次Java应用层(JavaApplication)、Java框架层(Java Framework)、本地实现层(Native Libs)和驱动层(Driver),通过各个层次的相互分工与协作实现多媒体应用。其中,所述Java应用层负责构建与用户交互的各种UI界面,确定界面的形式及支持的用户操作,通过调用Java框架层提供的接口完成指定的功能Java应用层只需要与Java 框架层打交道,调用Java框架层的应用程序编程接口(API, Application Programming Interface)即可,不用关心底层硬件细节Java应用层的模块包括照相机(Camera)、媒体记录(Media Recorder)、媒体播放器(MediaPlayer)、参数设置(Param Set)等。所述的Java框架层对Java应用层提供支持,如照相机(android, hardware. Camera)、媒体记录(android, media. MediaRecorder)、媒体播放器(android, media. Mediaplayer)等JNI模块。Java框架层提供了 API给Java应用层开发人员使用,包括如何使用控件、管理资源以及应用生命周期的管理等,对应用交互模块起到支撑作用。所述的本地实现层是由c/c++所编写的函数库,提供了标准c库、对音频的处理、 对图像的处理等基本功能,这些基本功能由具体的多媒体对象实现,所述多媒体对象包括: 照相机(Camera)对应的照相机服务(Camera Service)、媒体记录器(mediarecordcr)使用的Packet Video Framework框架中的PV Author、媒体播放器(mediaplayer)对应的媒体播放器服务(MediaPlayer Servicc)、媒体播放器服务(MediaPlayer Service)依赖的 Packet Video Framework 框架中的 PV Player、Midi Player、Verbis Player 等,此外,在本地实现层还包括照相机硬件(Camera Hardware)的多媒体对象;最终通过Java框架层给上层应用提供这些基本功能。所述的驱动层根据底层芯片或硬件的不同,提供不同的驱动,完成与硬件的交互功能,如对照相机硬件(Camera Hardware)提供的V4L2 Capture和对数据包视频框架 (Packet Video Framework)提供的 Hardware Codec。本发明中,如图4所示,在图3中的Java框架层增加多媒体并发管理模块,所述多媒体并发管理模块存储在Java应用层设置的并发策略的参数Java框架层的JNI模块接收创建多媒体对象的请求后,通过调用本地实现层的相关接口生成用于完成实际多媒体功能的多媒体对象,并保存所述多媒体对象到多媒体并发管理模块的数据结构内;所述多媒体并发管理模块收到JNI模块的第一查询并发策略请求后,根据新保存的多媒体对象的类型及多媒体对象播放的媒体类型,查询是否存储有对应的并发策略参数,在有对应的并发策略参数时,根据所述并发策略参数对本地实现层的其他多媒体对象进行管理JNI模块启动新保存的多媒体对象的应用。以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。
权利要求
1.一种多媒体应用的并发管理方法,其特征在于,该方法包括Java框架层存储在Java应用层设置的并发策略的参数;在有多媒体应用启动请求时,Java框架层生成并保存用于完成实际多媒体功能的多媒体对象,在确定当前为多媒体应用并发时,查询是否存储有所述多媒体对象对应的并发策略参数,在有对应的并发策略参数时,根据所述并发策略参数对除所述多媒体对象外的其他多媒体对象进行管理;Java框架层启动新保存的多媒体对象的应用。
2.根据权利要求I所述的并发管理方法,其特征在于,该方法还包括所述Java框架层存储在Java应用层设置的并发策略的参数之前,在Java应用层通过并发策略设置界面设置并发策略,Java应用层根据在界面设置的并发策略,在后台将并发策略参数发送给 Java框架层。
3.根据权利要求I所述的并发管理方法,其特征在于,所述Java框架层生成并保存多媒体对象为Java框架层的JNI模块接收Java应用层发送的创建多媒体对象的请求,通过调用本地实现层的相关接口生成用于完成实际多媒体功能的多媒体对象,并保存所述多媒体对象到Java框架层的数据结构内。
4.根据权利要求I所述的并发管理方法,其特征在于,所述根据所述并发策略参数对除所述多媒体对象外的其他多媒体对象进行管理,包括根据所述并发策略参数暂停除所述多媒体对象外的其他多媒体对象的应用、或降低除所述多媒体对象外的其它多媒体对象的声音。
5.根据权利要求I所述的并发管理方法,其特征在于,该方法还包括=Java框架层收到请求停止多媒体应用的命令后,停止对应的多媒体对象的应用,根据所述多媒体对象的类型及所述多媒体对象播放的媒体类型,查询是否存储有对应的并发策略参数,在有对应的并发策略参数时,取消根据所述并发策略参数对其他多媒体对象的管理,并将已经停止的多媒体对象从数据结构中删除。
6.一种多媒体应用的并发管理装置,其特征在于,该装置位于Java框架层,包括JNI 模块、多媒体并发管理模块;其中,JNI模块,用于在有多媒体应用启动请求时,生成并保存用于完成实际多媒体功能的多媒体对象,并向多媒体并发管理模块发送第一查询并发策略请求;根据多媒体并发管理模块的通知,启动新保存的多媒体对象的应用;多媒体并发管理模块,用于存储在Java应用层设置的并发策略的参数;收到JNI模块的第一查询并发策略请求后,在确定当前为多媒体应用并发时,查询是否存储有新保存的多媒体对象对应的并发策略参数,在有对应的并发策略参数时,根据所述并发策略参数对除所述多媒体对象外的其他多媒体对象进行管理;通知JNI模块启动新保存的多媒体对象的应用。
7.根据权利要求6所述的并发管理装置,其特征在于,所述JNI模块,具体用于接收 Java应用层发送的创建多媒体对象的请求,通过调用本地实现层的相关接口生成用于完成实际多媒体功能的多媒体对象,并保存所述多媒体对象到多媒体并发管理模块的数据结构内。
8.根据权利要求6所述的并发管理装置,其特征在于,所述JNI模块,还用于收到请求停止多媒体应用的命令后,停止对应的多媒体对象的应用,向多媒体并发管理模块发送携带所述多媒体对象的类型及所述多媒体对象播放的媒体类型的第二查询并发策略请求。
9.根据权利要求8所述的并发管理装置,其特征在于,所述多媒体并发管理模块,还用于收到第二查询并发策略请求后,根据已经停止的多媒体对象的类型及所述多媒体对象播放的媒体类型,查询是否存储有对应的并发策略参数,在有对应的并发策略参数时,取消根据所述并发策略参数对其他多媒体对象的管理,并将已经停止的多媒体对象从数据结构中删除。
10.根据权利要求6至9任一项所述的并发管理装置,其特征在于,该装置实现在 android平台上。
全文摘要
本发明公开了一种多媒体应用的并发管理方法,在Java框架层中增加多媒体并发管理模块,存储在Java应用层设置的并发策略的参数;在有多媒体应用启动请求时,Java框架层生成并保存多媒体对象,在确定当前为多媒体应用并发时,查询是否存储有对应的并发策略参数,在有对应的并发策略参数时,根据所述并发策略参数对其他的多媒体对象进行管理;Java框架层启动新保存的多媒体对象;本发明同时还公开了一种多媒体应用的并发管理装置,通过本发明的方案,能够更加灵活的提供用户可配置的多媒体应用并发管理功能,实现第三方多媒体应用和终端自带的多媒体应用之间,以及第三方多媒体应用之间的并发管理。
文档编号G06F9/52GK102609302SQ20121001561
公开日2012年7月25日 申请日期2012年1月17日 优先权日2012年1月17日
发明者李培成 申请人:中兴通讯股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1