公开/公告号CN104320718A
专利类型发明专利
公开/公告日2015-01-28
原文格式PDF
申请/专利权人 广东欧珀移动通信有限公司;
申请/专利号CN201410494467.6
发明设计人 任超;
申请日2014-09-24
分类号H04N21/6587(20110101);H04N21/643(20110101);H04N21/64(20110101);H04N21/858(20110101);H04N21/8543(20110101);
代理机构44245 广州市华学知识产权代理有限公司;
代理人李盛洪
地址 523860 广东省东莞市长安镇乌沙海滨路18号
入库时间 2023-12-17 04:40:19
法律状态公告日
法律状态信息
法律状态
2020-01-31
专利权人的姓名或者名称、地址的变更 IPC(主分类):H04N21/6587 变更前: 变更后: 申请日:20140924
专利权人的姓名或者名称、地址的变更
2017-07-25
授权
授权
2015-02-25
实质审查的生效 IPC(主分类):H04N21/6587 申请日:20140924
实质审查的生效
2015-01-28
公开
公开
技术领域
本发明涉及网络多媒体互联的技术领域,特别涉及一种避免多个DMC推送媒体播放产生冲突的方法及装置。
背景技术
数字生活网络联盟DLNA全称是DIGITAL LIVING NETWORK ALLIANCE,旨在通过整合现有的技术和网络协议,使同一个网域内的设备,能够实现自由的跨设备多媒体播放。近年来,DLNA技术得到了广泛的发展,越来越多的媒体设备,影音终端或播放平台都支持DLNA。该技术允许设备在网络连接状态下,能够发现拥有其他功能的设备,并查看和分享服务器中的媒体资源至某个播放器中进行播放。DLNA设备的类型主要有DMP(数字媒体播放器),DMR(数字媒体渲染器),DMS(数字媒体服务器)和DMC(数字媒体控制器)。其中,DMS用于存储和管理媒体资源,使得其他设备可以通过网络方便地获取到媒体内容;DMC设备中包含DLNA Control Point(控制点),用于浏览DMS的媒体信息,从DMS上获取到媒体的元数据信息,并通过交互控制推送媒体至DMR播放已经选择的媒体内容;DMR为不具备DMC功能的媒体播放器,DMP为具有DMC功能的媒体播放器。
在DLNA架构中,并未规定一个网段内允许设备的数量,也就是说,DLNA支持多个DMC同时存在,并且同时访问多个设备。这个特点增强了DLNA的可用性:作为DMS,能够被多个DMC发现,并且能够为多个DMR提供资源;作为DMR,同样能被多个DMC发现,并能够接收这些DMC推送的媒体;作为DMC,能够发现网段内所有的设备,可以访问他们,或者推送媒体资源。但是,当多个DMC同时连接到一个DMR时,由于各个厂商的DMC实现方法不同,有可能在推送过程中产生冲突。例如DMC1与DMC2共同连接到DMR1,DMC1推送一个媒体至DMR1播放,此时通过DMC2发送STOP动作至DMR1,由于DMC1不清楚网段中存在DMC2在控制DMR1,因此DMC1在判断到DMR1播放停止后,可能会继续推送下一个媒体播放,导致DMR1无法停止的问题出现。此时,DMC1与DMC2在控制上便产生了冲突。
发明内容
本发明的第一个目的在于克服现有技术的缺点与不足,提供一种避免多个DMC推送媒体播放产生冲突的方法。本发明通过扩展UPnP协议,提供了一种避免产生控制冲突的方法,该方法允许多个DMC来控制DMR,但同时规定同一时段内,DMC需要通过申请控制权来取得对DMR的播放控制,其他没有控制权的DMC只能获取到DMR状态或参数的变化,而不能对其进行播放控制。本方法发明有效的避免了控制冲突,优化了多个控制设备之间的关系,改变了控制混乱的状况,极大地提升了使用体验。
本发明的另一个目的在于克服现有技术的缺点与不足,提供一种避免多个DMC推送媒体播放产生冲突的装置。
本发明的第一个目的通过下述技术方案实现:
一种避免多个DMC推送媒体播放产生冲突的方法,应用于DLNA家庭娱乐网络中以解决多个DMC同时控制DMR存在控制冲突的问题,包括下列步骤:
S1、根据UPnP通用即插即用协议定义的服务及动作,对原协议内容作分类处理,划分为‘控制动作’和‘非控制动作’,其中控制动作指DMC调用DMR前需要申请控制权的动作,非控制动作指DMC调用DMR前不需要申请控制权的动作,动作表示客户端发出的完成特定功能的命令;
S2、DMC加入DLNA网络,并选择一个DMR作为渲染器;
S3、DMC向DMR发出任意的动作指令,并判断是否属于控制动作,如果判断属于控制动作,则进入下一步骤S4;
S4、DMC向DMR发送请求控制权动作X_ControlApplication,该动作定义在AVTransport服务之下,用来向DMR申请控制权;
S5、DMR接收到请求权申请后根据DMC控制权记录管理协议回复DMC控制权请求;
S6、DMC收到DMR控制权申请成功的回复后,继续发送控制动作至DMR,完成特定功能的命令。
优选的,所述步骤1中控制动作包括
urn:schemas-upnp-org:service:RenderingControl:1服务中的所有动作和
urn:schemas-upnp-org:service:AVTransport:1服务中所有‘set’动作,以及‘Stop’、‘Play’,‘Pause’,‘Record’,‘Seek’,‘Next’,‘Previous’动作。
优选的,所述步骤1中非控制动作包括
urn:schemas-upnp-org:service:ConnectionManager:1服务中的所有动作和
urn:schemas-upnp-org:service:AVTransport:1服务中所有‘get’动作。
优选的,所述步骤S5中DMC控制权记录管理协议具体为:
G51、DMR终端建立专有变量,用来记录当前取得控制权的DMC的IP地址;
G52、DMR终端接收到请求控制权动作X_ControlApplication后,将动作源DMC的IP地址与专有变量做比较,如果不相同并且申请DMR控制权成功,则更新专有变量的值;
G53、DMR终端接收到控制动作,将动作源DMC的IP地址与专有变量做比较,如果相同,则执行该控制动作,否则忽略此控制动作;
G54、DMR终端接收到非控制动作,直接执行该非控制动作。
优选的,所述步骤S2具体为:
S21、DMC加入DLNA网络后首先寻址获取IP地址;
S22、DMC向DLNA网络上的控制节点告知设备的类型、标志符UUID、提供的服务以及设备描述和服务描述的URL地址;
S23、DLNA网络控制点得到设备描述和服务描述的URL,通过URL取回设备描述和服务描述的信息;
S24、DMC向DMR设备服务发出动作请求。
优选的,所述步骤S3中DMC向DMR发出的动作指令如果判断属于非控制动作,则可直接向DMR发送该动作指令而无需申请DMR控制权。
优选的,所述步骤S4中DMC向DMR发起申请控制权是存在UI用户交互的情形时,即用户主动通过DMC向DMR发出动作指令时需要申请控制权,而DMC自动向DMR发出动作指令时不需要申请控制权。
本发明的另一个目的通过以下技术方案实现:
一种避免多个DMC推送媒体播放产生冲突的装置,应用于DLNA家庭娱乐网络中以解决多个DMC同时控制DMR存在控制冲突的问题,包括下列单元:
UPnP协议内容分类处理单元,该单元根据UPnP通用即插即用协议定义的服务及动作,对原协议内容作分类处理,划分为‘控制动作’和‘非控制动作’,其中控制动作指DMC调用DMR前需要申请控制权的动作,非控制动作指DMC调用DMR前不需要申请控制权的动作,动作表示客户端发出的完成特定功能的命令;
DMC初始化单元,该单元用于DMC加入DLNA网络的初始化,并选择一个DMR作为渲染器;
DMC动作指令判断单元,该单元用于DMC向DMR发出任意的动作指令,并判断是否属于控制动作,如果判断属于控制动作,则转至DMR控制权请求单元;
DMR控制权请求单元,该单元用于DMC向DMR发送请求控制权动作X_ControlApplication,该动作定义在AVTransport服务之下,用来向DMR申请控制权;
控制权记录管理协议单元,该单元用于DMR接收到请求权申请后根据控制权记录管理协议回复DMC控制权请求;
DMC控制动作发送单元,该单元用于DMC收到DMR控制权申请成功的回复后,继续发送控制动作至DMR,完成特定功能的命令。
优选的,所述UPnP协议内容分类处理单元中控制动作包括
urn:schemas-upnp-org:service:RenderingControl:1服务中的所有动作和
urn:schemas-upnp-org:service:AVTransport:1服务中所有‘set’动作,以及‘Stop’、‘Play’,‘Pause’,‘Record’,‘Seek’,‘Next’,‘Previous’动作。
优选的,所述UPnP协议内容分类处理单元中非控制动作包括
urn:schemas-upnp-org:service:ConnectionManager:1服务中的所有动作和
urn:schemas-upnp-org:service:AVTransport:1服务中所有‘get’动作。
优选的,所述控制权记录管理协议单元中包括下列模块:
专有变量建立模块,该模块用于DMR终端建立专有变量,用来记录当前取得控制权的DMC的IP地址;
专有变量更新模块,该模块用于在DMR终端接收到请求控制权动作X_ControlApplication后,将动作源DMC的IP地址与专有变量做比较,如果不相同并且申请DMR控制权成功,则更新专有变量的值;
动作源IP地址校验模块,该模块用于在DMR终端接收到控制动作后,将动作源DMC的IP地址与专有变量做比较,如果相同,则执行该控制动作,否则忽略此控制动作;
非控制动作执行模块,该模块用于DMR终端在接收到非控制动作,直接执行该非控制动作。
优选的,所述DMC初始化单元包括下列模块:
寻址模块,该模块用于DMC加入DLNA网络后首先寻址获取IP地址;
发现模块,该模块用于DMC向DLNA网络上的控制节点告知设备的类型、标志符UUID、提供的服务以及设备描述和服务描述的URL地址;
描述模块,该模块用于DLNA网络控制点得到设备描述和服务描述的URL,通过URL取回设备描述和服务描述的信息;
控制模块,该模块用于DMC向DMR设备服务发出动作请求。
优选的,所述DMC动作指令判断单元中DMC向DMR发出的动作指令如果判断属于非控制动作,则可直接向DMR发送该动作指令而无需申请DMR控制权。
优选的,所述DMR控制权请求单元中DMC向DMR发起申请控制权是存在UI用户交互的情形时,即用户主动通过DMC向DMR发出动作指令时需要申请控制权,而DMC自动向DMR发出动作指令时不需要申请控制权。
本发明相对于现有技术具有如下的优点及效果:
1、本发明通过规定DMC需要通过申请控制权来取得对DMR的播放控制,其他没有控制权的DMC只能获取到DMR状态或参数的变化,不能对其进行播放控制,有效的避免了控制冲突,优化了多个控制设备之间的关系,改变了控制混乱的状况,极大地提升了使用体验。
2、本方法发明完全基于DLNA和UPnP协议,具有很好的兼容性。
3、本方法发明同时扩展了UPnP协议,具备简单易实现的特点。
附图说明
图1是本实施例一中一种避免多个DMC推送媒体播放产生冲突的方法流程图;
图2是本实施例一中DMC加入DLNA网络后工作流程图;
图3是本实施例二中一种避免多个DMC推送媒体播放产生冲突的装置结构图。
具体实施方式
为使本发明的目的、技术方案及优点更加清楚、明确,以下参照附图并举实施例对本发明进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
实施例一
请参见图1,图1是本发明中避免多个DMC推送媒体播放产生冲突的方法流程图。图1所示的避免多个DMC推送媒体播放产生冲突的方法,应用于DLNA家庭娱乐网络中以解决多个DMC同时控制DMR存在控制冲突的问题,具体包括下列步骤:
●步骤S1、根据UPnP通用即插即用协议定义的服务及动作,对原协议内容作分类处理,划分为‘控制动作’和‘非控制动作’,其中控制动作指DMC调用DMR前需要申请控制权的动作,非控制动作指DMC调用DMR前不需要申请控制权的动作,动作表示客户端发出的完成特定功能的命令。
首先需要定义“控制动作”和“非控制动作”的范畴,DMC在向DMR发送“控制动作”前,需要先向DMR申请控制权,而发送“非控制动作”前则无需申请或拥有控制权,直接执行该动作即可。
“控制动作”包括:
1、urn:schemas-upnp-org:service:RenderingControl:1服务中的所有动作;
2、urn:schemas-upnp-org:service:AVTransport:1服务中所有“set”动作,以及“Stop”,“Play”,“Pause”,“Record”,“Seek”,“Next”,“Previous”动作。
“非控制动作”包括:
1、urn:schemas-upnp-org:service:ConnectionManager:1服务中的所有动作;
2、urn:schemas-upnp-org:service:AVTransport:1服务中所有“get”动作。
上述内容为UPnP协议定义的服务及动作,本发明为了明确何时需要申请控制权,对原协议内容作了分类处理,划分为“控制动作”(即调用前需要申请控制权)和“非控制动作”(调用前无需申请控制权),分类方法属于对UPnP协议的扩展,同时也是本发明需要保护的技术点。
其中,UPnP是通用即插即用(Universal Plug and Play)的缩写,主要用于设备的智能互联互通,使用UPnP协议不需要设备驱动程序,它可以运行在目前几乎所有的操作系统平台上,使得在办公室、家庭和其他公共场所方便地构建设备互联互通成为可能。UPnP最大贡献任何设备一旦连接上网络,所有在网络上的设备马上就能知道有新设备加入,这些设备彼此之间能互相通信,更能直接使用或者控制它,一切都不需要人工设置,完全的即插即用。
●步骤S2、DMC加入DLNA网络,并选择一个DMR作为渲染器;
在本实施例中DMC加入DLNA网络后还要完成以下流程,如图中DMC加入DLNA网络后工作流程图所示,具体如下:
步骤S21、DMC加入DLNA网络后首先寻址获取IP地址;
通常,一台UPnP设备寻址的一般过程是:首先向DHCP服务器发送DHCPDiscover的消息,如果在指定的时间内,设备没有收到DHCP Offer回应消息,设备必须使用AUTO-IP完成IP地址的获取。当然也可以使用静态配置的IP地址。
步骤S22、DMC向DLNA网络上的控制节点告知设备的类型、标志符UUID、提供的服务以及设备描述和服务描述的URL地址;
连接到网络上的DMC设备确定了IP地址之后,就会进入发现操作阶段。设备发现是UPnP实现的第一步。设备发现是由简单发现协议SSDP来完成的。当一台设备加入到网络中,发现过程允许设备向网络上的控制节点告知它提供的服务,当一个控制点加入到网络中,设备发现过程允许控制点寻找网络上感兴趣的设备。在这两种情况下,基本的交换信息就是发现消息。发现消息包括设备的一些特定信息或者某项服务的信息,例如它的类型、标志符UUID(Universally Unique Identifier)等等。
步骤S23、DLNA网络控制点得到设备描述和服务描述的URL,通过URL取回设备描述和服务描述的信息;
在控制点发现一台设备后,控制点对该设备可能仅仅知道设备或者服务的UPnP类型,设备的UUID和设备描述的URL地址,还需要知道更多的信息。控制点可以从发现消息中得到设备描述的URL,通过URL取回设备描述和服务描述的信息。
其中,设备描述是UPnP对某一设备的描述,以XML形式来表示,设备描述包括制造商信息、模块名称和编号、序列号等等。对于一个物理设备可以包含多个逻辑设备,多个逻辑设备既可以是一个根设备其中嵌入多个设备,也可以是多个根设备的方式存在。设备描述由设备制造商提供,采用XML描述,遵循UPnP框架协议。
服务描述包含一系列内容,具体有服务运行时刻的状态,运行时间等等。服务描述也由设备制造商提供,采用XML描述,遵循UPnP框架协议。
其中,URL是Uniform Resource Location的缩写,译为“统一资源定位符”。形象点说,URL是Internet上用来描述信息资源的字符串,主要用在各种WWW客户程序和服务器程序上,采用URL可以用一种统一的格式来描述各种信息资源,包括文件、服务器的地址和目录等。
步骤S24、DMC向DMR设备服务发出动作请求。
在接收设备和服务描述之后,控制点可以向这些服务发出动作,同时控制点也可以轮询服务的当前状态。控制点将动作发送到设备服务,在动作完成或者失败后,服务返回相应的结果或者错误信息。
为了控制一台设备,控制点向设备服务发出一动作,这一般是由控制点向服务的控制URL地址发送一个适当的控制消息。而服务则会对此动作出响应,返回相关的结果或错误。
●步骤S3、DMC向DMR发出任意的动作指令,并判断是否属于控制动作,如果判断属于控制动作,则进入下一步骤S4;
如果DMC向DMR发出的动作指令判断属于非控制动作,则可直接向DMR发送该动作指令而无需申请DMR控制权。
●步骤S4、DMC向DMR发送请求控制权动作X_ControlApplication,该动作定义在AVTransport服务之下,用来向DMR申请控制权。
DMC向DMR发起申请控制权是存在UI用户交互的情形时,即用户主动通过DMC向DMR发出动作指令时需要申请控制权,而DMC自动向DMR发出动作指令时不需要申请控制权。
●步骤S5、DMR接收到请求权申请后根据DMC控制权记录管理协议回复DMC控制权请求;
其中DMC控制权记录管理协议具体为:
G51、DMR终端建立专有变量,用来记录当前取得控制权的DMC的IP地址;
G52、DMR终端接收到请求控制权动作X_ControlApplication后,将动作源DMC的IP地址与专有变量做比较,如果不相同并且申请DMR控制权成功,则更新专有变量的值;
G53、DMR终端接收到控制动作,将动作源DMC的IP地址与专有变量做比较,如果相同,则执行该控制动作,否则忽略此控制动作;
G54、DMR终端接收到非控制动作,直接执行该非控制动作。
●步骤S6、DMC收到DMR控制权申请成功的回复后,继续发送控制动作至DMR,完成特定功能的命令。
综上所述,本发明通过扩展UPnP协议,提供了一种避免产生控制冲突的方法,同样允许多个DMC来控制DMR,但在同一时段内,DMC需要通过申请控制权来取得对DMR的播放控制,其他没有控制权的DMC只能获取到DMR状态或参数的变化,不能对其进行播放控制。总结,该方法有以下几个原则:
1.DMC在控制DMR前,需先发送请求向DMR申请控制权;
2.DMR记录申请控制权的DMC的IP地址,且仅执行该IP地址发送的控制动作;
3.同一时间,DMR最多记录一台拥有控制权的DMC设备;
4.DMR需过滤掉没有控制权的DMC的控制动作,但可以接收其他状态请求动作。
实施例二
请参见图3,图3是本实施例中一种避免多个DMC推送媒体播放产生冲突的装置结构图。图3所示的避免多个DMC推送媒体播放产生冲突的装置,应用于DLNA家庭娱乐网络中以解决多个DMC同时控制DMR存在控制冲突的问题。
图3公开的本实施例中的避免多个DMC推送媒体播放产生冲突的装置具体包括以下单元:
1、UPnP协议内容分类处理单元,
该单元根据UPnP通用即插即用协议定义的服务及动作,对原协议内容作分类处理,划分为‘控制动作’和‘非控制动作’,其中控制动作指DMC调用DMR前需要申请控制权的动作,非控制动作指DMC调用DMR前不需要申请控制权的动作,动作表示客户端发出的完成特定功能的命令。
其中,控制动作包括
urn:schemas-upnp-org:service:RenderingControl:1服务中的所有动作和
urn:schemas-upnp-org:service:AVTransport:1服务中所有‘set’动作,以及‘Stop’、‘Play’,‘Pause’,‘Record’,‘Seek’,‘Next’,‘Previous’动作。
非控制动作包括
urn:schemas-upnp-org:service:ConnectionManager:1服务中的所有动作和
urn:schemas-upnp-org:service:AVTransport:1服务中所有‘get’动作。
2、DMC初始化单元,
该单元用于DMC加入DLNA网络的初始化,并选择一个DMR作为渲染器。
该DMC初始化单元又包括下列模块:
寻址模块,该模块用于DMC加入DLNA网络后首先寻址获取IP地址;
发现模块,该模块用于DMC向DLNA网络上的控制节点告知设备的类型、标志符UUID、提供的服务以及设备描述和服务描述的URL地址;
描述模块,该模块用于DLNA网络控制点得到设备描述和服务描述的URL,通过URL取回设备描述和服务描述的信息;
控制模块,该模块用于DMC向DMR设备服务发出动作请求。
3、DMC动作指令判断单元,
该单元用于DMC向DMR发出任意的动作指令,并判断是否属于控制动作,如果判断属于控制动作,则转至DMR控制权请求单元。
同时,如果判断属于非控制动作,则可直接向DMR发送该动作指令而无需申请DMR控制权。
4、DMR控制权请求单元,
该单元用于DMC向DMR发送请求控制权动作X_ControlApplication,该动作定义在AVTransport服务之下,用来向DMR申请控制权。
通常,该单元中DMC向DMR发起申请控制权是存在UI用户交互的情形时,即用户主动通过DMC向DMR发出动作指令时需要申请控制权,而DMC自动向DMR发出动作指令时不需要申请控制权。
5、控制权记录管理协议单元,
该单元用于DMR接收到请求权申请后根据控制权记录管理协议回复DMC控制权请求。
该控制权记录管理协议单元又具体包括下列模块:
专有变量建立模块,该模块用于DMR终端建立专有变量,用来记录当前取得控制权的DMC的IP地址;
专有变量更新模块,该模块用于在DMR终端接收到请求控制权动作X_ControlApplication后,将动作源DMC的IP地址与专有变量做比较,如果不相同并且申请DMR控制权成功,则更新专有变量的值;
动作源IP地址校验模块,该模块用于在DMR终端接收到控制动作后,将动作源DMC的IP地址与专有变量做比较,如果相同,则执行该控制动作,否则忽略此控制动作;
非控制动作执行模块,该模块用于DMR终端在接收到非控制动作,直接执行该非控制动作。
6、DMC控制动作发送单元,该单元用于DMC收到DMR控制权申请成功的回复后,继续发送控制动作至DMR,完成特定功能的命令。
值得注意的是,上述装置实施例中,所包括的各个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各装置和单元的具体名称也只是为了便于相互区分,并不用于限制本发明的保护范围。
上述实施例为本发明较佳的实施方式,但本发明的实施方式并不受上述实施例的限制,其他的任何未背离本发明的精神实质与原理下所作的改变、修饰、替代、组合、简化,均应为等效的置换方式,都包含在本发明的保护范围之内。
机译: 产生具有多个波的光的装置,一种制造装置的方法,一种定位模块的使用,组合光束的方法以及一种产生具有多个波的光的装置
机译: 产生具有多个波的光的装置,一种制造装置的方法,一种定位模块的使用,组合光束的方法以及一种产生具有多个波的光的装置
机译: 产生具有多个波的光的装置,一种制造装置的方法,一种定位模块的使用,组合光束的方法以及一种产生具有多个波的光的装置