Miracast反向控制方法及系统的制作方法
【专利摘要】本发明提供了一种Miracast反向控制方法及系统,其中的方法包括:Miracast源端与Miracast目的端通过协商发现Miracast源端不支持用户接入反向通道时,Miracast目的端向Miracast源端发起建立第二TCP连接通道的请求;Miracast源端通过对预设端口的监听,获取请求并建立第二TCP连接通道;通过所建立的第二TCP连接通道,Miracast目的端向Miracast源端传输控制信号;其中,Miracast目的端根据预设的控制信号类型,将输入的控制信号封装成相应类型的控制信号报文发送给Miracast源端,Miracast源端对接收到的控制信号报文进行解析,得到解析后的控制信号,实现Miracast目的端对Miracast源端的反向控制。通过本发明能够传递用户的控制信号,实现从Miracast目的端反向控制Miracast源端。
【专利说明】Mi racast反向控制方法及系统
【技术领域】
[0001]本发明涉及无线传输【技术领域】,更为具体地,涉及一种Mircast反向控制方法及系统。
【背景技术】
[0002]随着网络技术的高速发展,尤其是短距离无线传输一W1-FI的兴起,无疑给人们的日常生活带来极大的便利。通过W1-FI人们可以随心所欲、随时随地的享受网络带来的各种便利,例如浏览网页、收发邮件、观看视频等等。
[0003]Miracast又称为W1-FI Display,其是由W1-FI联盟制定的一种点到点的多媒体分享协议,其主要目的在于通过无线传输的方式将源设备的多媒体数据传输到目的设备进行播放显示。具体地,Miracast以W1-FI Direct为基础的无线显示标准,支持此标准的3C装置可通过无线方式分享视讯画面。例如手机可通过Miracast将影片或者照片直接在电视或者其他装置上播放而无需任何连接线。
[0004]其中,Miracast的连接过程包括建立连接、建立会话与操作三个阶段。图1示出了现有的Miracast的连接流程。如图1所示,建立连接阶段(即阶段I)包括设备发现和连接建立两项操作;在建立会话阶段(即阶段2)包括建立TCP连接、功能协商和会话建立等操作;而操作阶段(即阶段3)则包括音视频数据流传输的暂停与恢复以及断开会话两项操作。
[0005]在Miracast中定义了诸多功能以及其所支持的音视频格式,客厅是其主要应用场景之一。通过对Miracast协议的支持,用户在客厅中无需使用连接线的情况下,可将手机或者平板电脑等手持设备的显示内容镜像到大屏幕的电视上,满足用户观赏视频的需求,从而提升用户体验。
[0006]另外,Miracast还可应用于智能手机与车载系统相连的场景。随着智能手机的广泛普及,越来越多的用户希望能在车内使用智能手机的功能,而Miracast刚好能实现用户的这一需求。Miracast能够将一个设备的屏幕映射到另一个设备上,且传输性能较好,能够满足用户在车内的使用需求。
[0007]然而,不管是应用于客厅场景还是应用于智能手机与车载系统相连的场景,用户都只能从源端控制目的端,而不能实现从目的端控制源端的功能,即设备的反向控制功能。以智能手机与车载系统相连的场景为例,智能手机作为源端,车载系统作为目的端,用户不仅希望能将手机的屏幕镜像到车载系统的屏幕,还希望能够在车载系统的大屏幕上控制手机。因此,如何在智能手机与车载系统之间传递用户的控制信息变得十分重要,而Miracast重点关注的是屏幕镜像功能,对于用户控制信号的传递则没有强制要求支持。在目前很多的Miracast应用实现中,则没有传递用户控制信号的功能,如此便限制了 Miracast的使用场景。
【发明内容】
[0008]鉴于上述问题,本发明的目的是提供一种Miracast反向控制方法及系统,以解决目前的Miracast不能传递用户的控制信号,无法实现目的端对源端的反向控制问题。
[0009]根据本发明的一个方法,提供一种Miracast反向控制方法,包括:
[0010]在Miracast的建立会话阶段,Miracast源端与Miracast目的端通过建立的第一TCP连接通道进行功能协商,当通过协商发现Miracast源端不支持用户接入反向通道时,Miracast目的端向Miracast源端发起建立第二 TCP连接通道的请求;
[0011]Miracast源端通过对预设端口的监听,获取请求并建立第二 TCP连接通道;
[0012]通过所建立的第二 TCP连接通道,Miracast目的端向Miracast源端传输控制信号;其中,
[0013]Miracast目的端根据预设的控制信号类型,将输入的控制信号封装成相应类型的控制信号报文发送给Miracast源端,Miracast源端根据预设的控制信号类型,对接收到的控制信号报文进行解析,得到解析后的控制信号,实现Miracast目的端对Miracast源端的反向控制。
[0014]其中,在Miracast目的端根据预设的控制信号类型,将输入的控制信号封装成相应类型的控制信号报文发送给Miracast源端的过程中,控制信号报文包括控制信号的类型、控制信号的长度以及对控制信号的描述。
[0015]另一方面,本发明还提供一种Miracast反向控制系统,包括:
[0016]请求发起单元,用于在Miracast的建立会话阶段,Miracast源端与Miracast目的端通过建立的第一 TCP连接通道进行功能协商,当通过协商发现Miracast源端不支持用户接入反向通道时,Miracast目的端向Miracast源端发起建立第二 TCP连接通道的请求;
[0017]第二 TCP连接通道建立单元,用于Miracast源端通过对预设端口的监听,获取请求并建立第二 TCP连接通道;
[0018]控制信号传输单元,用于通过所建立的第二 TCP连接通道,Miracast目的端向Miracast源端传输控制信号;其中,Miracast目的端根据预设的控制信号类型,将输入的控制信号封装成上应类型的控制信号报文发送给Miracast源端,Miracast源端根据预设的控制信号类型,对接收到的控制信号报文进行解析,得到解析后的控制信号,实现Miracast目的端对Miracast源端的反向控制。
[0019]利用上述根据本发明的Miracast反向控制方法及系统,通过建立新的控制信号传输通道,并规定传输流程及控制信号报文格式,能够传递用户的控制信号,实现从目的端反向控制源端的功能。
[0020]为了实现上述以及相关目的,本发明的一个或多个方面包括后面将详细说明并在权利要求中特别指出的特征。下面的说明以及附图详细说明了本发明的某些示例性方面。然而,这些方面指示的仅仅是可使用本发明的原理的各种方式中的一些方式。此外,本发明旨在包括所有这些方面以及它们的等同物。
【专利附图】
【附图说明】
[0021]通过参考以下结合附图的说明及权利要求书的内容,并且随着对本发明的更全面理解,本发明的其它目的及结果将更加明白及易于理解。在附图中:
[0022]图1为现有的Miracast的连接流程示意图;[0023]图2为根据本发明实施例的Miracast反向控制方法流程示意图;
[0024]图3为根据本发明实施例的Miracast目的端在建立第二 TCP连接通道时的流程示意图;
[0025]图4为根据本发明实施例的Miracast源端在建立第二 TCP连接通道时的流程示意图;
[0026]图5为根据本发明实施例的Miracast目的端的控制信号传输流程示意图;
[0027]图6为根据本发明实施例的Miracast源端的控制信号传输流程示意图;
[0028]图7示为根据本发明实施例的Miracast反向控制系统逻辑结构框图。
[0029]在所有附图中相同的标号指示相似或相应的特征或功能。
【具体实施方式】
[0030]以下将结合附图对本发明的具体实施例进行详细描述。
[0031]针对前述在现有的Miracast应用实现中,没有传递用户控制信号的功能,以致于无法在Miracast的使用场景中实现从的目的端反向控制源端的问题。本发明通过建立一个新的用户控制通道,并相应的在该控制通道中规定控制信号的传输流程,以及控制信号报文的传输格式,实现在各种Miracast的使用场景中均能支持从目的端反向控制源端的功能,拓展Miracast的应用范围。
[0032]下述将对本发明中所提及的UIBC进行解释:UIBC(User Input Back Channel,用户接入反向通道),其定义了如何将接收端(即Miracast目的端)控制信号回送到传送端(即Miracast源端)。即让用户通过接收端的输入设备回控传送端,例如通过触控、鼠标、键盘、游戏杆等输入设备回控传送端。
[0033]为了说明本发明提供的Miracast反向控制方法,图2示出了根据本发明实施例的Miracast反向控制方法的流程。
[0034]如图2所示,本发明提供的Miracast反向控制方法包括如下步骤:
[0035]S210:在Miracast的建立会话阶段,Miracast源端与Miracast目的端通过建立的第一 TCP连接通道进行功能协商,当通过协商发现Miracast源端不支持用户接入反向通道时,Miracast目的端向Miracast源端发起建立第二 TCP连接通道的请求。
[0036]由于Miracast的连接过程分为三个阶段,其中,在建立会话阶段会建立一个TCP连接(即第一 TCP连接通道),以便于在Miracast源端与Miracast目的端之间传输信息。例如,在建立第一 TCP连接通道之后,通过所建立的第一 TCP连接通道在Miracast源端与Miracast目的端之间进行格式协商或者控制协商等功能性协商。
[0037]当Miracast源端与Miracast目的端通过所建立的第一 TCP连接通道进行功能协商之后,发现所建立的第一 TCP连接通道的源端并不能传输控制信号时,还需在此阶段再建立一个用于传输控制信号的TCP连接(即第二 TCP连接通道)。
[0038]具体地,将Miracast源端作为第二 TCP连接通道的服务端,其负责监听指定端口 ;将Miracast目的端作为第二 TCP连接通道的客户端,当通过协商发现Miracast源端不支持HBC时,负责向Miracast源端发起连接请求,以建立第二 TCP连接通道。
[0039]S220 =Miracast源端通过对预设端口的监听,获取请求并建立第二 TCP连接通道。
[0040]具体地,Miracast源端通过对指定端口(即预设端口)的监听,当发现Miracast目的端所发起的连接请求到达时,关闭对指定端口的监听,然后在Miracast源端与Miracast目的端之间建立连接,并进行相关初始化工作。这里所说的相关初始化工作包括关闭监听端口,开启控制信号输入监听线程等。
[0041]S230:通过所建立的第二 TCP连接通道,Miracast目的端向Miracast源端传输控制信号。其中,Miracast目的端根据预设的控制信号类型,将输入的控制信号封装成相应类型的控制信号报文发送给Miracast源端,Miracast源端根据预设的控制信号类型,对接收到的控制信号进行解析,得到解析后的控制信号,实现Miracast目的端对Miracast源端的反向控制。
[0042]在Miracast目的端根据预设的控制信号类型,将输入的控制信号封装成相应类型的控制信号报文发送给Miracast源端的过程中,该控制信号报文包括控制信号的类型、控制信号的长度以及对控制信号的描述。其中,预设的控制信号可以是鼠标点击信号、触控信号或者按键信号等。
[0043]通过图2所示的流程可以看出,本发明提供的Miracast反向控制方法能够通过新建立的第二 TCP连接通道,并相应的规定传输流程及报文格式,实现传递用户控制信号的功能,达到从Miracast目的端反向控制Miracast源端的目的。
[0044]为了更为清楚地说明本发明提供的Miracast反向控制方法,下述将通过图3与图4分别对Miracast目的端与Miracast源端在建立第二 TCP连接通道时的流程作详细说明。
[0045]其中,图3示出了根据本发明实施例的Miracast目的端在建立第二 TCP连接通道时的流程。如图3所不:
[0046]S310:Miracast目的端向Miracast源端发起请求建立第一 TCP连接通道;
[0047]S320:Miracast目的端等待Miracast源端的响应之后,建立第一 TCP连接通道;
[0048]S330:Miracast目的端与Miracast源端通过所建立的第一 TCP连接通道进行功能协商;
[0049]S340:通过功能协商,判断Miracast源端是否支持HBC,如果是进入步骤S380,否则进入步骤S350 ;
[0050]S350:Miracast目的端向Miracast源端发起请求建立第二 TCP连接通道,在Miracast目的端等待Miracast源端的响应之后,建立第二 TCP连接通道;
[0051]S360:Miracast目的端通过所建立的第二 TCP连接通道向Miracast源端传输用户控制信号;
[0052]S370:判断用户是否关闭程序,即判断用户是否关闭本次控制信号的传输,如果是则结束,否则回到步骤S360;
[0053]S380:通过所建立的第一 TCP连接通道传输用户控制信号。
[0054]图4示出了根据本发明实施例的Miracast源端在建立第二 TCP连接通道时的流程。如图4所不:
[0055]S410:Miracast源端监听特定的端口 ;其中该特定端口是事先预设的。
[0056]S420:判断是否有连接请求到达该端口,如果有进入步骤S430,否则回到S410 ;
[0057]S430:关闭对特定端口的监听,然后与Miracast目的端建立连接通道(即与Miracast目的端建立连接);
[0058]S440:判断对端(即Miracast目的端)是否断开连接,如果是则结束,否则进入步骤 S450 ;
[0059]S450:接收Miracast传送的控制信号报文。
[0060]需要说明的是,在图4所示的流程中,Miracast源端一旦监听到指定的端口有连接请求到达时,立即关闭对指定端口的监听,如此便能够保证Miracast源端和Miracast目的端只会有一个第二 TCP连接通道被建立。
[0061]通过图3和图4所示的流程可以看出,一旦Miracast源端与Miracast目的端通过功能协商之后发现Miracast源端不支持用户接入反向通道时,则会建立另外一个连接通道用于传输用户的控制信号。当然,Miracast源端与Miracast目的端的协商是建立在已经建立第一 TCP连接通道的基础上。
[0062]也就是说,在已经建立的第一 TCP连接通道的基础上,Miracast源端与Miracast目的端进行功能协商,经过协商发现Miracast源端不支持用户接入反向通道时,则再建立第二 TCP连接通道用于传输用户的控制信号。
[0063]在利用所建立的第二 TCP连接通道进行控制信号传输时,首先Miracast目的端根据预设的控制信号类型,将用户所输入的控制信号封装成相应类型的控制信号报文,然后将封装的控制信号报文发送给Miracast源端。Miracast源端对接收到的控制信号报文进行解析,以得到解析后的控制信号,实现Miracast目的端对Miracast源端的反向控制。[0064]由于在Miracast目的端的输入设备可能有很多,用户利用输入设备输入的控制信号也存在多种。因此,在Miracast目的端将用户所输入的控制信号封装成控制信号报文的过程中,Miracast源端需根据预设的控制信号类型,对用户所输入的控制信号进行分类封装。
[0065]具体地,控制信号报文包括控制信号的类型、控制信号的长度以及对控制信号的描述等信息。在本发明的一个示例中,预设的控制信号类型有鼠标点击信号及按键信号。下述将以表格的形式对控制信号作详细说明。其中,控制信号报文的结构如表1所示:
[0066]
【权利要求】
1.一种Miracast反向控制方法,包括: 在Miracast的建立会话阶段,Miracast源端与Miracast目的端通过建立的第一 TCP连接通道进行功能协商,当通过协商发现所述Miracast源端不支持用户接入反向通道时,所述Miracast目的端向所述Miracast源端发起建立第二 TCP连接通道的请求; 所述Miracast源端通过对预设端口的监听,获取所述请求并建立第二 TCP连接通道; 通过所建立的第二 TCP连接通道,所述Miracast目的端向所述Miracast源端传输控制信号;其中, 所述Miracast目的端根据预设的控制信号类型,将输入的控制信号封装成相应类型的控制信号报文发送给所述Miracast源端,所述Miracast源端根据预设的控制信号类型,对接收到的控制信号报文进行解析,得到解析后的控制信号,实现所述Miracast目的端对所述Miracast源端的反向控制。
2.如权利要求1所述的Miracast反向控制方法,其中,在所述Miracast目的端根据预设的控制信号类型,将输入的控制信号封装成相应类型的控制信号报文发送给所述Miracast源端的过程中, 所述控制信号报文包括控制信号的类型、控制信号的长度以及对控制信号的描述。
3.如权利要求1所述的Miracast反向控制方法,其中,所述预设的控制信号为鼠标点击信号、触控信号或者按键信号。
4.一种Miracast反向控制系统,包括: 请求发起单元,用于在Miracast的建立会话阶段,Miracast源端与Miracast目的端通过建立的第一 TCP连接通道进行功能协商,当通过协商发现所述Miracast源端不支持用户接入反向通道时,所述Miracast目的端向所述Miracast源端发起建立第二 TCP连接通道的请求; 第二 TCP连接通道建立单元,用于所述Miracast源端通过对预设端口的监听,获取所述请求并建立第二 TCP连接通道; 控制信号传输单元,用于通过所建立的第二 TCP连接通道,所述Miracast目的端向所述Miracast源端传输控制信号;其中,所述Miracast目的端根据预设的控制信号类型,将输入的控制信号封装成相应类型的控制信号报文发送给所述Miracast源端,所述Miracast源端根据预设的控制信号类型,对接收到的控制信号报文进行解析,得到解析后的控制信号,实现所述Miracast目的端对所述Miracast源端的反向控制。
5.如权利要求4所述的Miracast反向控制系统,其中,所述控制信号传输单兀在将输入的控制信号封装成相应类型的控制信号报文发送给所述Miracast源端的过程中, 所述控制信号报文包括控制信号的类型、控制信号的长度以及对控制信号的描述。
【文档编号】H04W76/02GK103702436SQ201310669632
【公开日】2014年4月2日 申请日期:2013年12月11日 优先权日:2013年12月11日
【发明者】聂山人, 张霞, 赵立军, 张骞, 杨明, 毛泳江, 张翼 申请人:东软集团股份有限公司