CN114697733A - 投屏音视频数据的传输方法以及相关设备 - Google Patents
投屏音视频数据的传输方法以及相关设备 Download PDFInfo
- Publication number
- CN114697733A CN114697733A CN202011638678.4A CN202011638678A CN114697733A CN 114697733 A CN114697733 A CN 114697733A CN 202011638678 A CN202011638678 A CN 202011638678A CN 114697733 A CN114697733 A CN 114697733A
- Authority
- CN
- China
- Prior art keywords
- data
- screen
- channel
- screen projection
- video data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 230000005540 biological transmission Effects 0.000 title claims abstract description 105
- 238000000034 method Methods 0.000 title claims abstract description 66
- 238000005266 casting Methods 0.000 claims description 72
- 238000004891 communication Methods 0.000 claims description 36
- 238000012545 processing Methods 0.000 claims description 23
- 238000012163 sequencing technique Methods 0.000 claims description 4
- 238000004590 computer program Methods 0.000 claims description 3
- 238000010586 diagram Methods 0.000 description 16
- 238000007726 management method Methods 0.000 description 15
- 230000006870 function Effects 0.000 description 12
- 238000010295 mobile communication Methods 0.000 description 10
- 230000009286 beneficial effect Effects 0.000 description 7
- 238000005516 engineering process Methods 0.000 description 7
- 230000008569 process Effects 0.000 description 6
- 230000000694 effects Effects 0.000 description 4
- 230000005236 sound signal Effects 0.000 description 4
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 230000001934 delay Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000002085 persistent effect Effects 0.000 description 2
- 230000001960 triggered effect Effects 0.000 description 2
- 208000003028 Stuttering Diseases 0.000 description 1
- 230000002159 abnormal effect Effects 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 230000003416 augmentation Effects 0.000 description 1
- 210000000988 bone and bone Anatomy 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 230000036541 health Effects 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/436—Interfacing a local distribution network, e.g. communicating with another STB or one or more peripheral devices inside the home
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/436—Interfacing a local distribution network, e.g. communicating with another STB or one or more peripheral devices inside the home
- H04N21/4363—Adapting the video stream to a specific local network, e.g. a Bluetooth® network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/436—Interfacing a local distribution network, e.g. communicating with another STB or one or more peripheral devices inside the home
- H04N21/4363—Adapting the video stream to a specific local network, e.g. a Bluetooth® network
- H04N21/43637—Adapting the video stream to a specific local network, e.g. a Bluetooth® network involving a wireless protocol, e.g. Bluetooth, RF or wireless LAN [IEEE 802.11]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/60—Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client
- H04N21/63—Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/60—Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client
- H04N21/63—Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
- H04N21/632—Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing using a connection between clients on a wide area network, e.g. setting up a peer-to-peer communication via Internet for retrieving video segments from the hard-disk of other client devices
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本申请实施例公开了投屏音视频数据的传输方法以及相关设备,可以根据数据类型和网络状态,分别确定音频数据和视频数据的传输通道,从而实现负载均衡,提升用户体验。本申请实施例方法包括:源设备和目的设备之间建立无线局域网通道和无线对等网络通道,然后从这两个通道中确定出时延较短的通道,用来传输音频数据,以及从这两个通道中确定出剩余带宽较高通道,用来传输视频数据。
Description
技术领域
本申请实施例涉及通信技术领域,尤其涉及投屏音视频数据的传输方法以及相关设备。
背景技术
不同设备之间可以通过投屏功能进行音视频数据的传输,随着技术的发展,投屏功能被广泛应用到电子设备中。简单来说,投屏功能的作用是将源设备的界面内容显示到目的设备共享。
一种投屏音视频数据的传输方法是通过无线局域网将多个电子设备连接起来,然后,源设备和目的设备在同一个无线局域网中建立对等(peer-to-peer,P2P)网络,源设备通过无线对等网络通道把需要投屏的音视频数据发送给目的设备。
在这种方法中,当网络不稳定时,目的设备或源设备会因为数据包的收发异常使得传输的音视频数据发生错误,目的设备在输出音频数据或视频数据时,容易出现杂音或者卡顿的现象,影响用户的体验。
发明内容
本申请实施例提供了投屏音视频数据的传输方法以及相关设备,通过多路交叉发送数据,均衡负载,或者通过多路并发相同的数据,减少数据的丢包率,提高了数据传输的可靠性,提升了用户体验。
本申请实施例第一方面提供了一种投屏音视频数据的传输方法,包括:
不同的电子设备之间可以通过投屏功能传输音频数据或者视频数据,在投屏的场景中,发送数据的设备被称为源设备,接收并播放数据的设备被称为目的设备。通过投屏,用户可以在目的设备的屏幕上看到源设备中的显示内容。
在实现投屏之前,源设备和目的设备需要建立通信连接。源设备可以通过碰一碰、靠近发现或者二维码扫描等操作发现目的设备,然后与目的设备建立通信连接。源设备与目的设备建立连接的方式可以是使用发现协议通过同一个路由器,连接到同一个无线(WIFI)局域网中,从而在源设备和目的设备之间建立WIFI局域网通道。还可以通过发现协议,在源设备和目的设备之间形成P2P网络,从而在源设备和目的设备之间建立无线对等(WIFI peer-to-peer,WIFI P2P)网络通道。
然后,源设备可以建立与投屏音频数据对应的和目的设备之间的第一套接字连接,以及与投屏视频数据对应的和目的设备之间的第二套接字连接。源设备在根据第一套接字连接,向目的设备发送投屏音频数据时,可以从无线局域网通道和无线对等网络通道中,选择时延较短的通道发送投屏音频数据。源设备在根据第二套接字连接,向目的设备发送投屏视频数据时,可以从无线局域网通道和无线对等网络通道中,选择剩余带宽较高的通道发送投屏视频数据。本申请实施例中,源设备可以从WIFI局域网通道和WIFI P2P通道中,选择出最适合当前网络状态和数据类型的传输通道,使得多个通道的负载均衡,提升了用户体验。
结合第一方面,本申请实施例第一方面的第一种实现方式中,源设备可以根据待发送数据的数据标识,确定出待发送数据是否为投屏音频数据或者投屏视频数据。其中,数据标识表示的是待发送数据的数据类型。如果待发送数据的数据标识时第一标识(mark)值,那么源设备可以确定待发送数据是投屏音频数据。如果待发送数据的数据标识时第二标识值,那么源设备可以确定待发送数据是投屏视频数据。其中,第一标识值对于第一套接字连接,第二标识值对应第二套接字连接。
本申请实施例中,源设备可以根据不同的数据标识,确定出待发送数据是否为投屏音频数据或者投屏视频数据,从而触发投屏音视频数据的业务,也为数据分流提供了依据,提升了本申请技术方案的可实现性。结合第一方面的第一种实现方式,本申请实施例第一方面的第二种实现方式中,源设备还可以分别定义投屏音频数据和投屏视频数据的输出端口信息。源设备可以在第一协议栈中,定义与第一标识值对应的第一端口,在第二协议栈中,定义与第二标识值对应的第二端口。在发送投屏音频数据时,可以通过第一端口,使用时延较短的通道,向目的设备发送投屏音频数据。在发送投屏视频数据时,可以通过第二端口,使用剩余带宽较高的通道,向目的设备发送投屏视频数据。
本申请实施中,源设备可以定义与不同的数据标识对应的不同端口,使得下层在发送数据时,可以直接获取到端口信息,提升了本申请技术方案的灵活性。
结合第一方面、第一方面的第一种实现方式或第一方面的第一种实现方式,本申请实施例第一方面的第三种实现方式中,源设备建立第一套接字连接的依据可能是相同的,也可能是不同的。源设备可以获取到同一个目的设备用于同一个投屏业务的两个不同的通道上各自的IP地址,包括无线局域网通道的第一IP地址和无线对等网络的第二IP地址。源设备可以使用相同的IP地址建立第一套接字连接和第二套接字连接,例如,使用第一IP地址建立第一套接字连接,以及第二套接字连接。源设备也可以使用不同的IP地址分别建立第一套接字连接和第二套接字连接,例如,使用第一IP地址建立第一套接字连接,使用第二IP地址建立第二套接字连接,源设备建立套接字连接使用的IP地址根据实际应用的需要进行选择,具体此处不做限定。
本申请实施例中,源设备建立套接字连接的依据有多种,可以按需选择,提升了本申请技术方案的灵活性。
结合第一方面的第三种实现方式,本申请实施例第一方面的第四种实现方式中,源设备在发送投屏音频数据或者投屏视频数据时,这些数据的目的地址,并不会受到建立套接字使用的IP地址的影响。也就是说,源设备在发送投屏音频数据或者投屏视频数据时,可以进行路由的切换。本申请实施例中,可以包括以下几种切换方式:
在源设备向目的设备发送投屏音频数据的情况下,若第一套接字连接是根据第一IP地址建立的,且时延较短的通道为无线对等网络通道,则源设备确定投屏音频数据的目的地址为第二IP地址,源设备使用无线对等网络通道发送投屏音频数据;若第一套接字连接是根据第二IP地址建立的,且时延较短的通道为无线局域网通道,则源设备确定投屏音频数据的目的地址为第一IP地址,源设备使用无线局域网通道发送投屏音频数据;
在源设备向目的设备发送投屏视频数据的情况下,若第二套接字连接是根据第一IP地址建立的,且剩余带宽较高的通道为无线对等网络通道,则源设备确定投屏视频数据的目的地址为第二IP地址,源设备使用无线对等网络通道发送投屏视频数据;若第二套接字连接是根据第二IP地址建立的,且剩余带宽较高的通道为无线局域网通道,则源设备确定投屏视频数据的目的地址为第一IP地址,源设备使用无线局域网通道发送投屏视频数据。
结合第一方面、第一方面的第一种至第四种实现方式中的任一种,本申请实施例第一方面的第五种实现方式中,源设备可以实时监测无线局域网通道和无线对等网络通道的时延或者剩余带宽,在发送投屏音频数据或者投屏视频数据时,根据当前时刻两个通道的时延或者剩余带宽,确定出所要使用的通道。源设备还可以按照周期记录的方式,分别记录无线局域网通道和无线对等网络通道各自的时延或者剩余带宽,在发送投屏音频数据或者投屏视频数据时,根据上一周期两个通道的时延或者剩余带宽,确定出所要使用的通道。
本申请实施例中,源设备确定无线局域网通道和无线对等网络通道的时延或者剩余带宽的方式有多重,可以根据源设备的性能进行选择,提升了本申请技术方案的可实现性。
结合第一方面、第一方面的第一种至第五种实现方式中的任一种,本申请实施例第一方面的第六种实现方式中,通道的时延包括往返时延(round trip time,RTT)。
结合第一方面、第一方面的第一种至第六种实现方式中的任一种,本申请实施例第一方面的第六七种实现方式中,源设备可以基于不同的传输协议向目的设备发送投屏音频数据或者投屏视频数据,这些传输协议包括传输控制协议(transmission controlprotocol,TCP)或者用户数据报协议(user datagram protocol,UDP)。
本申请实施例中,源设备可基于不同的传输协议向目的设备发送音频数据或者视频数据,提升了本申请技术方案的灵活性。
本申请实施例第二方面提供了一种投屏音视频数据的传输方法,包括:
源设备可以和目的设备建立通信连接,形成WIFI局域网通道和WIFI P2P通道。源设备和目的设备建立通信连接的方式,与第一方面中源设备连接目的设备的方式相似,详见第一方面所示,此处不再赘述。源设备可以根据数据标识,确定出向目的设备发送的数据是否为投屏音频数据或者投屏视频数据,若是,则源设备发送投屏视频数据或者投屏音频数据时,会使用WIFI局域网通道和WIFI P2P通道,将相同的数据重复地发送给目的设备。
本申请实施例中,源设备会分别使用WIFI局域网通道和WIFI P2P通道向目的设备发送相同的投屏音频数据或者相同的投屏视频数据,降低数据丢失的可能性,提升了数据传输的可靠性。
结合第二方面,本申请实施例第二方面的第一种实现方式中,数据标识可以是标识值,源设备可以根据标识值确定出待发送数据的数据类型。若数据标识为第一标识值,则源设备可以确定待发送数据的数据类型为投屏音频数据;若数据标识为第二标识值,则源设备可以确定待发送数据的数据类型为投屏视频数据。
本申请实施例中,源设备可以根据不同的数据标识,确定出待发送数据是否为投屏音频数据或者投屏视频数据,从而触发投屏音视频数据的业务,也为数据分流提供了依据,提升了本申请技术方案的可实现性。
结合第二方面,或第二方面的第一种实现方式,本申请实施例第二方面的第二种实现方式中,源设备发送的投屏音频数据或投屏视频数据中可以携带顺序标识,使得目的设备可以根据该顺序标识对接收的数据进行排序和/或去重,从而保证投屏的效果。
结合第二方面、第二方面点的第一种至第三种实现方式中的任一种,本申请实施例第二方面的第四种实现方式中,源设备可以基于不同的传输协议向目的设备发送投屏音频数据或投屏视频数据,这些传输协议包括TCP协议或者UDP协议。
本申请实施例中,源设备可基于不同的传输协议向目的设备发送音频数据或者视频数据,提升了本申请技术方案的灵活性。
本申请实施例第三方面提供了一种投屏音视频数据的传输方法,包括:
目的设备可以分别通过WIFI局域网通道和WIFI P2P通道,接收源设备发送的相同的投屏音频数据或者相同的投屏视频数据。然后根据投屏音频数据或者投屏视频数据中携带的顺序标识,对接收到的数据进行排序,和/或丢弃重复的数据。
结合第三方面,本申请实施例第三方面的第一种实现方式中,目的设备可以基于不同的传输协议接收到源设备发送的投屏音频数据或者投屏视频数据,这些传输协议包括TCP协议或者UDP协议。
本方面所示的有益效果,与第二方面的有益效果相似,详见第二方面所示,此处不再赘述。
本申请实施例第四方面提供了一种投屏音视频数据的传输装置,包括:
通信单元,用于建立与目的设备之间的无线局域网通道和无线对等网络通道;
处理单元,用于:
建立投屏音频数据对应的与目的设备之间的第一套接字连接;
建立投屏视频数据对应的与目的设备之间的第二套接字连接;
发送单元,用于:
根据第一套接字连接,向目的设备发送投屏音频数据时,从无线局域网通道和无线对等网络通道中,选择时延较短的通道发送投屏音频数据;
根据第二套接字连接,向目的设备发送投屏视频数据时,从无线局域网通道和无线对等网络通道中,选择剩余带宽较高的通道发送投屏视频数据。
该投屏音视频数据的传输装置用于执行前述第一方面的方法。
本方面所示的有益效果,与第一方面的有益效果相似,详见第一方面所示,此处不再赘述。
本申请实施例第五方面提供了一种投屏音视频数据的传输装置,包括:
通信单元,用于建立与目的设备之间的无线局域网通道和无线对等网络通道;
确定单元,用于根据待发送数据的数据标识,确定待发送数据的数据类型,数据标识用于表示数据的类型;
发送单元,用于若待发送数据为投屏音频数据或投屏视频数据,则使用无线局域网通道发送投屏音频数据或投屏视频数据,并使用无线对等网络通道发送投屏音频数据或投屏视频数据。
该投屏音视频数据的传输装置用于执行前述第二方面的方法。
本方面所示的有益效果,与第二方面的有益效果相似,详见第二方面所示,此处不再赘述。
本申请实施例第六方面提供了一种投屏音视频数据的传输装置,包括:
接收单元,用于:
通过无线对等网络通道接收源设备发送的目标数据,目标数据包括投屏音频数据或投屏视频数据;
通过无线局域网通道接收源设备发送的目标数据;
处理单元,用于根据目标数据携带的顺序标识,对目标数据进行排序,并丢弃目标数据中重复的数据。
该投屏音视频数据的传输装置用于执行前述第三方面的方法。
本方面所示的有益效果,与第三方面的有益效果相似,详见第三方面所示,此处不再赘述。
本申请实施例第七方面提供了一种源设备,包括:
处理器、存储器、输入输出设备以及总线。其中,处理器、存储器、输入输出设备与总线相连。处理器中存储计算机指令,处理器用于执行计算机指令,使得计算机设备执行以下步骤:
建立与目的设备之间的无线局域网通道和无线对等网络通道;
建立投屏音频数据对应的与目的设备之间的第一套接字连接;
建立投屏视频数据对应的与目的设备之间的第二套接字连接;
根据第一套接字连接,向目的设备发送投屏音频数据时,从无线局域网通道和无线对等网络通道中,选择时延较短的通道发送投屏音频数据;
根据第二套接字连接,向目的设备发送投屏视频数据时,从无线局域网通道和无线对等网络通道中,选择剩余带宽较高的通道发送投屏视频数据。
该源设备用于执行前述第一方面的方法。
本申请实施例第八方面提供了一种源设备,包括:
处理器、存储器、输入输出设备以及总线。其中,处理器、存储器、输入输出设备与总线相连。处理器中存储计算机指令,处理器用于执行计算机指令,使得计算机设备执行以下步骤:
建立与目的设备之间的无线局域网通道和无线对等网络通道;
根据待发送数据的数据标识,确定待发送数据的数据类型,数据标识用于表示数据的类型;
若待发送数据为投屏音频数据或投屏视频数据,则使用无线局域网通道发送投屏音频数据或投屏视频数据,并使用无线对等网络通道发送投屏音频数据或投屏视频数据。
该源设备用于执行前述第二方面的方法。
本申请实施例第九方面提供了一种目的设备,包括:
处理器、存储器、输入输出设备以及总线。其中,处理器、存储器、输入输出设备与总线相连。处理器中存储计算机指令,处理器用于执行计算机指令,使得计算机设备执行以下步骤:
通过无线对等网络通道接收源设备发送的目标数据,目标数据包括投屏音频数据或投屏视频数据;
通过无线局域网通道接收源设备发送的目标数据;
根据目标数据携带的顺序标识,对目标数据进行排序,并丢弃目标数据中重复的数据。
该目的设备用于执行前述第三方面的方法。
本申请实施例第十方面提供了一种计算机可读存储介质,该计算机可读存储介质中保存有程序,当计算机执行程序时,执行前述第一方面、第二方面或者第三方面的方法。
本申请实施例第十一方面提供了一种计算机程序产品,当计算机程序产品在计算机上执行时,计算机执行前述第一方面、第二方面或者第三方面的方法。
附图说明
图1为本申请实施例中投屏音视频数据的传输方法的一个应用场景示意图;
图2为本申请实施例中投屏音视频数据的传输方法的另一个应用场景示意图;
图3为本申请实施例中投屏音视频数据的传输方法的一个流程示意图;
图4为本申请实施例中实时传输协议报文的一个格式示意图;
图5为本申请实施例中投屏音视频数据的传输方法的另一个流程示意图;
图6为本申请实施例中投屏音视频数据的传输装置的一个结构示意图;
图7为本申请实施例中投屏音视频数据的传输装置的另一个结构示意图;
图8为本申请实施例中投屏音视频数据的传输装置的另一个结构示意图;
图9为本申请实施例中源设备的一个结构示意图;
图10为本申请实施例中源设备的另一个结构示意图;
图11为本申请实施例中目的设备的一个结构示意图。
具体实施方式
本申请实施例提供了投屏音视频数据的传输方法以及相关设备,通过多路并发数据均衡负载,或者通过多路交叉重复发送数据,从而减少数据的丢包率,提高了数据传输的可靠性,提升了用户体验。
随着科技的快速发展和大众对于便利生活的追求,同一个用户可以拥有多个智能产品,用户可能会使用投屏功能将源设备的音频数据或者视频数据发送给目的设备,使得源设备的界面内容显示在目的设备上,或者将源设备的音频数据通过目的设备进行播放。目前,可以通过以下几种协议或者技术实现投屏功能:Miracast协议、Chromecast协议、AirPlay协议、无线高清技术(intel wireless display,WiDi)、或者无线家庭数字接口标准(wireless home digital interface,WDHI)。
通常情况下,在投屏的场景中,发送数据的设备被称为源设备,接收并播放数据的设备被称为目的设备。源设备或目的设备可以是可穿戴电子设备、虚拟现实设备或者超级移动个人计算机(ultra-mobile personal computer,UMPC),除此之外,还可以是其他的设备,例如智能手机、智能手表等电子设备,具体此处不做限定。源设备和目的设备可以是相同类型的电子设备,也可以是不同类型的电子设备,具体此处不做限定。
投屏功能为多屏协同功能提供了基础,多屏协同功能是一种分布式技术,可以实现跨系统、跨设备的协同,通过将源设备和目的设备进行连接,能够在目的设备侧对源设备的数据进行处理,例如在将手机的界面投屏到电脑上时,作为目的设备的电脑可以通过点击电脑屏幕回复手机收到的短信,接听电话,或者通过拖拽传输文件。简单地说,多屏协同功可以把源设备和目的设备集合成一个虚拟的设备,从而实现多个电子设备之间的资源共享,协同操作。
下面对本申请实施例的应用场景进行简单介绍,请参阅图1,图1为本申请实施例中投屏音视频数据传输方法的一个应用场景图。
如图1所示,多个电子设备之间可以通过局域网(local area network,LAN)或者广域网(wide area network,WAN)进行通信,这些电子设备可以是智能手机101、笔记本电脑102、台式电脑103、平板电脑104或者智能手表105,还可以是具有较大屏幕并能够播放音视频的大屏设备,比如智能电视等,根据实际应用的需要进行选择,具体此处不做限定。
可选的,用户使用同一个账号在多个电子设备登录时,这些电子设备之间通过广域网进行通信。
可选的,可以将多个电子设备连接到同一个路由器106中,使得这些电子设备可以通过路由器106提供的局域网进行通信。
可选的,多个电子设备可以通过无线通信方式组成一个P2P网络。例如,用户可以将多个电子设备加入到同一个WIFI局域网,该WIFI局域网中的任意两个电子设备之间形成一个P2P网络。
其中,建立无线通信的方式有多种,例如WIFI连接、蓝牙连接、扫码连接或者使用近距离无线通信技术(near field communication,NFC)建立连接,根据实际应用的需要进行选择,具体此处不做限定。使用的无线网络可以是WIFI网络或者P2P网络等。电子设备可以基于不同的协议发现WIFI局域网设备,这些协议可以是HiLink协议、简单服务发现协议(simple service discovery protocol,SSDP)或者通用即插即用协议(universal plugand play,UPNP),除此之外,还可以是其他的协议,例如多播域名系统(multicast domainname system,MDNS)协议,根据实际应用的需要进行选择,具体此处不做限定。
可选的,多个电子设备之间还可以通过蜂窝网络互相连接,或者,各个电子设备之间还可以通过转接设备实现互联,转接设备可以是通用串行总线(universal serial bus,USB)数据线或者Type-C数据线,具体此处不做限定。
本申请实施例不对源设备和目的设备的数量进行限制,可以是至少一个源设备向同一个目的设备投屏,也可以是同一个源设备向多个目的设备投屏,根据实际应用的需要进行选择,具体此处不做限定。因此,本申请实施例提供的数据传输方法的应用场景有多种可能,请参阅图2,图2为本申请实施例中数据处理方法的一个应用场景示意图。
在本申请的一些可选实施例中,可以是多个源设备向同一个目的设备发送数据,如图2所示,智能手表201和智能手机202,可以向笔记本电脑204发送需要投屏的音视频数据。
可选的,智能手表201和智能手机202投屏的数据可以在笔记本电脑204屏幕的不同区域进行显示,不同的区域可以按照不同的方式划分,例如,将笔记本电脑204的屏幕分为上下两个投屏区域,除此之外,还有其他的划分方式,例如,将笔记本电脑204的屏幕分为左右两个投屏区域,具体此处不做限定。每个投屏区域的面积可以相同,也可以不同,具体此处不做限定。若投屏的数据是音频数据,也可以不在笔记本电脑204的屏幕上进行显示,而是通过笔记本电脑204的音箱设备进行播放。
在本申请的一些可选实施例中,可以是一个源设备向多个目的设备发送数据,如图2所示,智能手机202可以分别向笔记本电脑204和台式电脑205发送需要投屏的音视频数据。智能手机202向多个目的设备发送的数据可以是相同的,也可以是不同的,具体此处不做限定。
在本申请的一些可选实施例中,可以是一个源设备向一个目的设备发送数据,如图2所示,可以是智能手表201向笔记本电脑204发送数据,也可以是平板电脑203向台式电脑205发送数据。
本申请实施例,是以传输音视频数据的投屏业务为例,介绍源设备和目的设备之间的数据传输过程,在实际应用中,本实施例的技术方案还可以应用到其他两个设备之间音视频数据传输的业务中。
下面,对本申请实施例提供的投屏音视频数据的传输方法进行说明,根据这个方法,源设备可以根据数据类型和网络状态,从多个通道中选择适合当前数据的一个通道发送数据,考虑到了不同通道间的资源差异,充分利用了通道资源。除此之外,本申请实施例中,源设备也可以分别在多个通道上发送相同的数据,降低丢包风险,下面分别进行说明。
一、源设备使用多通道交叉发送数据包。
请参阅图3,图3为本申请提供的投屏音视频数据的传输方法的一个实施例,包括:
301、源设备和目的设备之间建立通信连接。
当用户需要将源设备的投屏数据进行投屏时,用户可以触发设备发现过程,在同一个WIFI局域网下的设备(例如,可以是连接到同一个路由器的设备)中,基于发现协议,例如Hilink、SSDP、UPNP或者MDNS,进行局域网设备的发现,并选择其中一个设备作为投屏业务的目的设备,并进行源设备和目的设备配对认证,从而在WIFI局域网中建立投屏业务连接。
配对认证的方式有很多种,例如通过个人身份识别码(personal identificationnumber,PIN)、用户的信任账号等进行认证,还可以是其他的认证方式,例如验证码等,根据实际应用的需要进行选择,具体此处不做限定。
一种可选的实施例中,目的设备可以基于在WIFI局域网中的投屏连接,将用于建立同一个投屏业务的目的设备的IP地址和目的设备的端口信息发送给源设备,从而建立源设备和目的设备之间的WIFI P2P通道。
一种可选的实施例中,源设备可以通过蓝牙连接到目的设备,通过蓝牙创建源设备和目的设备的WIFI P2P连接。
源设备根据基于WIFI局域网通道建立的投屏业务和WIFI P2P通道,可以确定和保存两个通道或者两个通道中目的设备的两个IP地址,及其投屏业务中目的设备的两个端口号之间的关联关系,从而根据关联关系,以及一个或两个目的设备的IP地址和目的设备的端口号,在源设备和目的设备上分别建立两个用于同一个投屏业务的套接字连接。本申请实施例中,建立套接字时使用的IP地址是服务端的IP地址。需要注意的是,本申请实施例中,源设备可以是客户端,也可以是服务端,若源设备作为客户端时,相应地,在这种情况下,目的设备作为服务端。
可选的,目的设备可以是客户端,也可以是服务端,若目的设备是客户端,源设备为服务端。源设备和目的设备,与服务端和客户端之间的对应关系根据实际应用的需要进行选择,具体此处不做限定。本申请实施例,以源设备是客户端,目的设备是服务端为例,进行说明。
源设备在建立套接字连接时,这两个套接字连接的目的设备的IP地址可以是相同的,也可以是不同的,具体此处不做限定。需要注意的是,如果是使用两个IP地址分别建立两个套接字连接,这两个IP地址应该是同一个目的设备在两个通道的两个IP地址,使得源设备的数据传输到相同的目的设备上,避免出现错误。比如在投屏视频的时候,同一个视频的音频数据和视频数据需要投屏到同一个目的设备上,才不会影响用户的体验。目的设备的套接字连接使用的IP地址需要和源设备的套接字连接使用的IP地址保持一致,从而保障数据传输的稳定。源设备建立的两个套接字连接分别用于实现投屏音频数据或投屏视频数据的传输。在本申请实施例中,第一套接字连接对应于投屏音频数据,第二套接字连接对应于投屏视频数据。
其中,套接字(socket),是一个基于客户端和服务端建立的用于业务连接的通信编程框架,可以是在应用层和传输层之间的抽象实现。能够为上层应用提供socket编程接口,其内部实现方式可以是调用协议栈,从而实现数据之间的传输。在实际应用中,可以根据协议和服务端的通信地址创建一个套接字连接。
本申请实施例中,投屏的数据包括投屏音频数据和投屏视频数据,其中,投屏音频数据即是数字化的声音数据,表现为音乐、语音和其他的声音形式,能够被用户的听觉所感知。投屏音频数据的编码方式有多种,例如脉冲编码调制(pulse code modulation,PCM)编码、(windows media audio,WMA)编码或者线性预测编码(linear predictive coding,LPC),除此之外,还可以是其他的编码方式,例如码激励线性预测编码(code excitedlinear prediction,CELP),或者先进音频编码(advanced audio coding,AAC)具体此处不做限定。投屏音频数据的文件格式也有多种,例如WAVE或者(musical instrument digitalinterface,MIDI),除此之外,还可以是其他的文件格式,例如APE格式,或者资源互换文件格式(resources interchange file format,RIFF),具体此处不做限定。投屏音频数据常用的协议有多种,例如电路内置音频总线协议(inter-IC sound,I2S)或者电话免提协议(hands free profile,HPF),除此之外,还可以是其他的协议,例如数字音频接口(Sony/Philips digital interface format,SPDIF),具体此处不做限定。投屏视频数据是不包括音频的图像数据,可以是在时间上连续的图像序列,能够显示在屏幕上,被用户的视觉所感知。投屏视频数据的编码方式有多种,例如动态图像专家组(moving pictures expertgroup,MPGE)或者高级视频编码(advanced video coding,AVC),除此之外,还可以是其他的编码方式,例如技术即运动静止图像压缩技术(motion-join photographic expertsgroup),具体此处不做限定。投屏视频数据的文件格式也有多种,例如图像互换格式(graphics interchange format,GIF)、MP4,除此之外,还可以是其他的文件格式,例如MOV、流媒体格式(flash video,FLV),具体此处不做限定。投屏视频数据常用的协议有多种,例如实时传输协议(real time transport protocol,RTP)或者实时流协议(real timestreaming protocol,RTSP),除此之外,还可以是其他的传输协议,例如安全实时传输协议(secure real time transport protocol,SRTP),具体此处不做限定。
302、源设备确定待发送数据是投屏音频数据或者投屏视频数据。
在建立通道之后,源设备可以向目的设备发送待发送数据,由于不同数据类型的待发送数据的发送通道不同,因此,源设备需要根据数据标识,确定出待发送数据是投屏音频数据还是投屏视频数据。其中,数据标识是用来表示待发送数据的数据类型。由于在实际的应用中,各个套接字链接的基础代码构成是大致相同的,因此,也需要使用数据标识,反映不同套接字连接对应的数据类型。
示例的,数据标识可以体现为标识(mark)值,标识值与数据类型的对应关系可以如表1所示:
表1
mark值 | 数据类型 |
1 | 音频数据 |
2 | 视频数据 |
如表1所示,mark值为1,表示该数据为投屏音频数据。需要注意的是,表1反映的是mark值与数据类型的对应关系,并不意味在实际应用中一定存在这样的表格。此外,mark值的取值除了是1或2之外,还可以有其他的取值,可以是其他的数字,或者字母等,具体此处不做限定,只有能够使得不同数据类型的mark值不同即可。
数据标识可以和套接字连接或者源设备的端口之间具有对应关系,下面分别进行说明。
1、标识值与套接字连接之间的对应关系。
源设备可以使用伪代码定义标识值与套接字连接之间的对应关系,使得不同的数据类型对应不同的套接字连接。定义标识值与套接字连接之间的对应关系的伪代码可以如下所示:
“mark=1;
set sockopt(client_socket,SOL_SOCKET,SO_MARK,&mark,size of(mark));”
示例的,mark值为1表示的含义可以是该数据类型为投屏音频数据。需要注意的是,mark值可以是socket内部中的数据,存储在独立于报文的数据区域,数据包在离开源设备后可以不携带mark值。
源设备向同一个目的设备发送投屏音频数据或者投屏视频数据的端口(port)是不同的,在这种情况下,源设备在标记数据类型时并不感知端口信息,在发送数据时,源设备会根据mark值,确定上层下发的数据是音频数据还是视频数据,从而选择对应的端口以及通道,向目的设备发送数据包。
2、标识值与源设备的端口之间的对应关系。
源设备可以在协议栈中配置防火墙规则,来定义源设备的端口和标识值之间的对应关系,使得下层在发送数据时,可以直接获取到端口信息。源设备可以使用如下所示的伪代码定义源设备的端口和标识值之间的对应关系。
“iptables–t mangle–A INPUT–p tcp–dport 1–j MARK--set-mark 1”
示例的,上述代码可以表示1号端口对应的mark值为1,结合mark值和数据类型的对应关系可知,该数据为投屏音频数据。
源设备在对投屏视频数据或者投屏音频数据做好标记之后,可以对数据进行封装。在投屏音频数据或者投屏视频数据传输的过程中,为了使得目的设备最终播放数据的顺序和数据包的发送顺序保持一致,源设备可以使用实时传输协议(real time transportprotocol,RTP)封装数据,可以在RTP报文的SN字段,也即图4所示的Sequence Number字段中,添加数据包的顺序标识。目的设备可以根据该顺序标识对收到的数据包进行排序。如图4所示,图4为RTP报文的一种格式示意图。
源设备可以连续地向目的设备发送投屏音频数据或者投屏视频数据,示例的,在一分钟内源设备可能会同时发送10个投屏音频数据包和10个投屏视频数据包。10个投屏音频数据包的SN字段中,可以按照发出的顺序依次标记1至10,10个投屏视频数据包的SN字段中,也可以按照发出的顺序依次标记1至10,目的设备接收投屏音频数据包和投屏视频数据包的端口不同,会各自记录投屏音频数据包和投屏视频数据包的顺序。
303、源设备加密待发送数据。
为了保证数据传输的安全性,源设备可以对发送的数据包进行加密处理。可以使用动态密钥进行加密,也可以使用静态密钥进行加密,或者是采用其他的加密方式,根据实际应用的需要进行选择,具体此处不做限定。
304、源设备根据数据类型和网络状态,确定投屏音频数据包或投屏视频数据包的传输通道。
可选的源设备可以实时监测网络状态,本申请实施例中,源设备重点关注的是网路的带宽和时延。源设备可以根据现有的WIFI协议的带宽协商能力,监测WIFI局域网通道或者WIFI P2P通道的带宽使用情况,从而确定出当前剩余带宽较高的通道。源设备还可以根据现有的WIFI协议的RTT指标能力,监测WIFI局域网通道或者WIFI P2P通道的RTT时延信息,从而确定出RTT时延较短的通道。
可选的,源设备可以按照一定的周期监测网络状态,源设备可以根据现有的WIFI协议的带宽协商能力,记录上一个发送周期中WIFI局域网通道或者WIFI P2P通道的带宽使用情况,从而确定出在上一个发送周期中剩余带宽较高的通道。源设备还可以根据现有的WIFI协议的RTT指标能力,记录上一个发送周期中WIFI局域网通道或者WIFI P2P通道的RTT时延信息,从而确定出在上一个发送周期中RTT时延较短的通道。在实际应用中,可以根据源设备的性能确定时延或带宽所对应的时刻,具体此处不做限定。源设备在发送数据包时,会结合数据类型和网络状态,确定出投屏音频数据包或者投屏视频数据包的传输通道。同时,源设备还可以根据mark值和端口的对应关系,确定出发送投屏音频数据包或者投屏视频数据包的端口。
若源设备确定发送的数据包是投屏音频数据包,会确定发送投屏音频数据包的传输通道是RTT时延较短的通道。若源设备确定发送的数据包是投屏视频数据包,会确定发送投屏视频数据包的传输通道是剩余带宽较高的通道。
需要注意的是,由于WIFI局域网通道和WIFI P2P通道的各种资源信息在使用过程中是处于变化的状态的,所以投屏音频数据或者投屏视频数据的传输通道也会随之产生变化。示例的,假设源设备在创建投屏音频数据的第一套接字连接和投屏视频数据的第二套接字连接时,使用的是同一个目的设备的WIFI局域网通道的IP地址,在进行数据传输时,监测发现WIFI P2P通道的RTT时延短于WIFI局域网通道,源设备会使用WIFI P2P通道传输音频数据。也就是说,在创建套接字连接时使用的IP地址并不会对传输数据过程中的通道选择造成限定。
可选的,在通常情况下,WIFI局域网通道的带宽会高于WIFI P2P通道的带宽,源设备可以根据如下所示的伪代码,定义视频数据的传输通道。
可选的,在实际应用中,源设备和目的设备之间的WIFI局域网通道和WIFI P2P通道中,还可能存在一个RTT时延较短,同时剩余带宽较高的通道。在这种情况下,源设备可以使用这一个通道,既传输投屏音频数据,又传输投屏视频数据。
需要注意的是,源设备和目的设备之间并不是时刻都存在多个通道,所以在源设备和目的设备之间刚开始建立连接,只有一个传输通道的情况下,源设备向目的设备发送数据包时可以默认使用这一个传输通道。在这种情况下,源设备可以不标记数据类型,从而减少运算资源。
或者,在源设备和目的设备之间的多个通道中的部分通道断开,只剩下一个传输通道的情况下,源设备向目的设备发送数据包时也可以默认使用这一个传输通道,减少数据丢失的可能性。
在一些可选实施例中,如果源设备和目的设备之间先建立了WIFI P2P通道,此时的默认通道就是WIFI P2P通道,建立默认路由的依据是源IP和目的IP。在源设备和目的设备之间又建立了WIFI局域网通道时,源设备会根据网络状态修改路由,确定不同数据包的下一跳,实现不同数据包的分流。如果数据是使用WIFI P2P通道传输的,这些数据的下一跳地址可以是目的设备的IP地址。如果数据是使用WIFI局域网通道传输的,这些数据的下一跳是路由器的MAC地址。
需要注意的是,步骤303和步骤304没有必然的先后顺序,可以先执行步骤303,也可以先执行步骤304,具体此处不做限定。
305、源设备使用时延较短的通道传输加密的投屏音频数据包。
在源设备确定出发送的数据包是音频数据包,且源设备和目的设备之间存在WIFI局域网通道和WIFI P2P通道时,源设备可以基于TCP协议或者UDP协议,使用时延较短的通道通道,向目的设备发送加密的音频数据包。其中,时延较短的通道包括在发送投屏音频数据包时,当前时刻时延较短的通道,或者在上一个发送周期中,时延较短的通道;
306、源设备使用剩余带宽较高的通道传输加密的投屏视频数据包。
在源设备确定出发送的数据包是视频数据包,且源设备和目的设备之间存在WIFI局域网通道和WIFI P2P通道时,源设备可以基于TCP协议或者UDP协议,使用剩余带宽较高的通道,向目的设备发送加密的视频数据包。其中,剩余带宽较高的通道包括在发送投屏音频数据包时,当前时刻剩余带宽较高的通道,或者在上一个发送周期中,剩余带宽较高的通道。
需要注意的是,步骤305和步骤306并不具有必然的先后顺序,可以先执行步骤305,也可以先执行步骤306,具体此处不做限定。
307、目的设备解密数据包。
为了成功读取数据包中的信息,目的设备需要对接收到的数据包进行解密。目的设备解密数据包的方式与源设备加密数据包的方式保持一致。
308、目的设备对数据包进行排序。
目的设备在收到源设备发送的数据包后,可以根据RTP报文的SN字段中携带的顺序标识,在缓存中对数据包进行排序,使得最终播放的数据顺序正确,保证投屏的效果。
309、目的设备播放数据。
目的设备在解密数据包之后,会对数据包中的数据进行播放。如果是音频数据,可以通过目的设备的音箱设备进行播放。如果是视频数据,可以显示在目的设备的屏幕上。
需要注意的是,本申请实施例中,在网络安全性能较好的情况下,也可以不执行步骤303,若不执行步骤303,在步骤305和步骤306中,源设备向目的设备发送的就是没有加密的数据包,目的设备也不需要执行步骤307。
本申请实施例中,在源设备和目的设备之间有多个通道的情况下,源设备可以根据数据包的类型和网络状态,选择出最适合当前数据包的传输通道,向目的设备发送数据包,使得各个通道的负载均衡,提高数据传输的可靠性,提升了用户体验。
进一步的,在多个通道的某些通道断开的情况下,源设备可以使用其他未断开通道,传输所有的数据包,从而降低数据丢失的可能性。
二、源设备使用双通道并行发送数据包。
请参阅图5,图5为本申请提供的投屏音视频数据传输方法的一个实施例,包括:
501、源设备和目的设备之间建立通信连接。
502、源设备确定待发送数据是投屏音频数据或者投屏视频数据。
503、源设备加密待发送数据。
本申请实施例中,步骤501至步骤503与图3所示实施例中步骤301至步骤303类似,具体此处不再赘述。
504、源设备根据数据类型,确定投屏音频数据包或投屏视频数据包的传输通道。
在投屏或者多屏协同的业务中,重点需要保证的是投屏音频数据和投屏视频数据的传输可靠性。因此,在源设备在确定出需要发送的数据包是投屏音频数据包或者投屏视频数据包时,可以确定出数据的传输通道是WIFI P2P通道和WIFI局域网通道。
需要注意的是,步骤503和步骤504没有必然的先后顺序,可以先执行步骤503,也可以先执行步骤504,具体此处不做限定。
505、源设备向目的设备发送加密的数据包。
源设备在确定出需要发送的数据包是投屏音频数据包或者投屏视频数据包时,可以通过WIFI P2P通道和WIFI局域网通道,并行发送相同的投屏音频数据包或者相同的投屏视频数据包。
并行发送的方式有多种可能,一种情况是,源设备默认所有数据包的传输通道都是WIFI P2P通道,当确认发送的数据包是音频数据包或视频数据包时,会将这些数据包复制到WIFI局域网通道上,然后使用双通道并行发送这些数据包。在这种情况下,源设备可以根据如下所示的伪代码,将音频数据包复制到WIFI局域网通道上,实现双路并发。
另一种情况是,源设备默认所有数据包的传输通道都是WIFI局域网通道,当确认发送的数据包是音频数据包或视频数据包时,会将这些数据包复制到WIFI P2P通道上,然后使用双通道并行发送这些数据包。
506、目的设备解密数据包。
507、目的设备对数据包进行排序。
本申请实施例中,步骤506至步骤507与图3所示实施例中步骤307至步骤308类似,具体此处不再赘述。
508、目的设备去重数据包。
由于源设备使用了多个通道传输相同的数据包,在正常情况下,目的设备会接收到重复的数据包,为了保证投屏的效果,目的设备需要去掉重复的数据包。去重的方式可以是在缓存区中保存数据包的顺序标识,当接收到顺序标识相同的数据包时,目的设备会丢弃后收到的数据包。同时,为了减少运算资源,目的设备还可以限制缓存区的大小。
示例的,以目的设备接收的数据包是投屏音频数据包,且缓存区中存储的顺序标识是20个为例。假设第一个收到的数据包是1号数据包,缓存区中会存储1号包的顺序标识,在收到20个数据包以内,再次收到1号数据包,目的设备可以将后收到的1号数据包丢弃,同时在缓存区中丢弃1号数据包的标识。假如在目的设备收到20个数据包之后,还没有收到第2个1号数据包,则可以认为1号数据包的实时性较差,会在缓存区中丢弃1号数据包的标识,不会再对第2个1号数据包进行处理。对缓存区中存储的顺序标识个数进行限制,既能及时处理重复的数据包,又能节约运算资源,更好地实现去重效果。
509、目的设备播放数据。
目的设备在解密数据包之后,会对数据包中的数据进行播放。如果是投屏音频数据,可以通过目的设备的音箱设备进行播放。如果是投屏视频数据,可以显示在目的设备的屏幕上。
本申请实施例中,在源设备和目的设备之间具有多个通道的情况下,源设备可以在多个通道上重复发送相同的音频数据包和相同的视频数据包,降低了数据丢失的可能性,提升了用户体验。
下面对本申请实施例提供的投屏音视频的传输装置进行说明,请参阅图6,图6为本申请实施例中投屏音视频的传输装置600的一个结构示意图,投屏音视频的传输装置600,包括:
通信单元601,用于建立与目的设备之间的无线局域网通道和无线对等网络通道;
处理单元602,用于:
建立投屏音频数据对应的与目的设备之间的第一套接字连接;
建立投屏视频数据对应的与目的设备之间的第二套接字连接;
发送单元603,用于:
根据第一套接字连接,向目的设备发送投屏音频数据时,从无线局域网通道和无线对等网络通道中,选择时延较短的通道发送投屏音频数据;
根据第二套接字连接,向目的设备发送投屏视频数据时,从无线局域网通道和无线对等网络通道中,选择剩余带宽较高的通道发送投屏视频数据。
在一些可选的实施例中,投屏音视频数据的传输装置600,还包括确定单元604。
确定单元604,用于:
根据待发送数据的数据标识,确定待发送数据为投屏音频数据或投屏视频数据,数据标识用于表示待发送数据的数据类型;
若数据标识为第一标识值,则源设备确定待发送数据为投屏音频数据;
若数据标识为第二标识值,则源设备确定待发送数据为投屏视频数据。
在一些可选的实施例中,还包括发送单元603,具体用于:
通过第一端口,使用时延较短的通道,向目的设备发送投屏音频数据,第一端口对应于第一标识值;
通过第二端口,使用剩余带宽较高的通道,向目的设备发送投屏视频数据,第二端口对应于第二标识值。
在一些可选的实施例中,处理单元602,具体用于:
接收目的设备在无线局域网通道的第一IP地址,或目的设备在无线对等网络通道的第二IP地址;
根据第一IP地址,或第二IP地址,建立与投屏音频数据对应的第一套接字连接;
接收目的设备的第一IP地址,或目的设备的第二IP地址;
根据第一IP地址,或第二IP地址,建立与投屏视频数据对应的第二套接字连接。
在一些可选的实施例中,发送单元603,具体用于:
若第一套接字连接是根据第一IP地址建立的,且时延较短的通道为无线对等网络通道,则确定投屏音频数据的目的地址为第二IP地址,使用无线对等网络通道发送投屏音频数据;
若第一套接字连接是根据第二IP地址建立的,且时延较短的通道为无线局域网通道,则确定投屏音频数据的目的地址为第一IP地址,使用无线局域网通道发送投屏音频数据;
若第二套接字连接是根据第一IP地址建立的,且剩余带宽较高的通道为无线对等网络通道,则确定投屏视频数据的目的地址为第二IP地址,使用无线对等网络通道发送投屏视频数据;
若第二套接字连接是根据第二IP地址建立的,且剩余带宽较高的通道为无线局域网通道,则确定投屏视频数据的目的地址为第一IP地址,使用无线局域网通道发送投屏视频数据。
在一些可选的实施例中,时延较短的通道包括在发送投屏音频数据包时,时延较短的通道,或者在上一个发送周期中时延较短的通道;
剩余带宽较高的通道包括在发送投屏音频数据包时,剩余带宽较高的通道,或者在上一个发送周期中剩余带宽较高的通道。
在一些可选的实施例中,网络状态中的时延包括往返时延。
在一些可选的实施例中,发送单元603,具体用于:
基于传输控制协议或用户数据报协议,使用时延较短的通道向目的设备发送投屏音频数据;
基于传输控制协议或用户数据报协议,使用剩余带宽较高的通道向目的设备发送投屏视频数据。
投屏音视频的传输装置600可以执行图3所示实施例中源设备所执行的操作,具体此处不再赘述。
请参阅图7,图7为本申请实施例中投屏音视频的传输装置700的一个结构示意图,投屏音视频的传输装置700,包括:
通信单元701,用于建立与目的设备之间的无线局域网通道和无线对等网络通道;
确定单元702,用于根据待发送数据的数据标识,确定待发送数据的数据类型,数据标识用于表示数据的类型;
发送单元703,用于:
若待发送数据为投屏音频数据,则使用无线局域网通道向目的设备发送投屏音频数据,并使用无线对等网络通道向目的设备发送投屏音频数据;
若待发送数据为投屏视频数据,则使用无线局域网通道向目的设备发送投屏视频数据,并使用无线对等网络通道向目的设备发送投屏视频数据。
在一些可选的实施例中,确定单元702,具体用于:
若数据标识为第一标识值,则确定待发送数据的数据类型为投屏音频数据;
若数据标识为第二标识值,则确定待发送数据的数据类型为投屏视频数据。
在一些可选的实施例中,投屏音频数据或投屏视频数据携带顺序标识,其中,顺序标识用于目的设备对接收的数据进行排序和/或去重。
在一些可选的实施例中,发送单元703,具体用于:
基于传输控制协议或用户数据报协议,使用无线局域网通道向目的设备发送投屏音频数据,并使用无线对等网络通道向目的设备发送投屏音频数据;
基于传输控制协议或用户数据报协议,使用无线局域网通道向目的设备发送投屏视频数据,并使用无线对等网络通道向目的设备发送投屏视频数据。
投屏音视频的传输装置700可以执行图5所示实施例中源设备所执行的操作,具体此处不再赘述。
请参阅图8,图8为本申请实施例中投屏音视频的传输装置800的一个结构示意图,投屏音视频的传输装置800,包括:
接收单元801,用于:
通过无线对等网络通道接收源设备发送的目标数据,目标数据包括投屏音频数据或投屏视频数据;
通过无线局域网通道接收源设备发送的目标数据;
处理单元802,用于根据目标数据携带的顺序标识,对目标数据进行排序,并丢弃目标数据中重复的数据。
在一些可选实施例中,接收单元801可以基于不同的传输协议接收到源设备发送的目标数据,这些传输协议包括TCP协议或者UDP协议。
投屏音视频的传输装置800可以执行图3或图5所示实施例中目的设备所执行的操作,具体此处不再赘述。
示例性的,图9示出了一种源设备的结构示意图。
其中,源设备900可以包括标记模块901,分包模块902,传感器模块903,内部存储器904,外部存储器接口905,处理器906,音频模块907,显示屏908,指示器909,USB接口910,充电管理模块911,电源管理模块9111,电池9112,移动通信模块912,无线通信模块913,天线1,天线2等。
可以理解的是,本实施例示意的结构并不构成对源设备900的具体限定。在另一些实施例中,源设备900可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以通过全硬件、全软件或者软件与硬件的组合实现。
源设备900的无线通信功能可以通过天线1,天线2,移动通信模块912,无线通信模块913,调制解调处理器以及基带处理器等实现。
天线1和天线2用于发射和接收电磁波信号。源设备900中的每个天线可用于覆盖单个或多个通信频带。不同的天线还可以复用,以提高天线的利用率。例如:可以将天线1复用为无线局域网的分集天线。在另外一些实施例中,天线可以和调谐开关结合使用。
移动通信模块912可以提供应用在源设备900上的包括2G/3G/4G/5G等无线通信的解决方案。移动通信模块913可以包括至少一个滤波器,开关,功率放大器,低噪声放大器(low noise amplifier,LNA)等。移动通信模块912可以由天线1接收电磁波,并对接收的电磁波进行滤波,放大等处理,传送至调制解调处理器进行解调。移动通信模块912还可以对经调制解调处理器调制后的信号放大,经天线1转为电磁波辐射出去。在一些实施例中,移动通信模块912的部分功能模块可以被设置于处理器906中。
调制解调处理器可以包括调制器和解调器。其中,调制器用于将待发送的低频基带信号调制成中高频信号。解调器用于将接收的电磁波信号解调为低频基带信号。随后解调器将解调得到的低频基带信号传送至基带处理器处理。低频基带信号经基带处理器处理后,被传递给应用处理器。应用处理器通过音频设备输出声音信号,或通过显示屏908显示图像或视频。在一些实施例中,调制解调处理器可以是独立的器件。在另一些实施例中,调制解调处理器可以独立于处理器906,与移动通信模块912或其他功能模块设置在同一个器件中。
无线通信模块913可以提供应用在源设备900上的包括无线局域网(wirelesslocal area networks,WLAN),蓝牙(blue tooth,BT),全球导航卫星系统(globalnavigation satellite system,GNSS),调频(frequency modulation,FM),NFC,红外技术(infrared,IR)等无线通信的解决方案。无线通信模块913可以是集成至少一个通信处理模块的一个或多个器件。无线通信模块913经由天线2接收电磁波,将电磁波信号调频以及滤波处理,将处理后的信号发送到处理器906。无线通信模块913还可以从处理器906接收待发送的信号,对其进行调频,放大,经天线2转为电磁波辐射出去。
在一些实施例中,源设备900的天线1和移动通信模块912耦合,天线2和无线通信模块913耦合,使得源设备900可以通过无线通信技术与网络以及其他设备通信。所述无线通信技术可以包括全球移动通讯系统(global system for mobile communications,GSM),通用分组无线服务(general packet radio service,GPRS),码分多址接入(codedivision multiple access,CDMA),宽带码分多址(wideband code division multipleaccess,WCDMA),时分码分多址(time-division code division multiple access,TD-SCDMA),长期演进(long term evolution,LTE),BT,GNSS,WLAN,NFC,FM,和/或IR技术等。所述GNSS可以包括全球卫星定位系统(global positioning system,GPS),全球导航卫星系统(global navigation satellite system,GLONASS),北斗卫星导航系统(beidounavigation satellite system,BDS),准天顶卫星系统(quasi-zenith satellitesystem,QZSS)和/或星基增强系统(satellite based augmentation systems,SBAS)。
在一些实施例中,标记模块901用于对数据进行标记。
在一些实施例中,分包模块902用于确定数据的传输通道,将不同类型的数据送到各自的传输通道上进行传输。
传感器模块903可以包括压力传感器,陀螺仪传感器,气压传感器,磁传感器,距离传感器,温度传感器,指纹传感器,触摸传感器,环境光传感器,骨传导传感器等。触摸传感器可以设置于显示屏908,由触摸传感器和显示屏908组成触摸屏,也称为“触控屏”。
内部存储器904可以用于存储计算机可执行程序代码,所述可执行程序代码包括指令。处理器906通过运行存储在内部存储器904的指令,从而使得源设备900执行本申请实施例中所提供的数据传输方法,以及各种功能应用和数据处理。
外部存储器接口905可以用于连接外部存储卡,扩展源设备900的存储能力。外部存储卡通过外部存储器接口905与处理器906通信,实现数据存储功能。例如,将音乐、视频等文件保存在外部存储卡中。
处理器906可以包括一个或多个处理单元,这些处理单元可以是应用处理器(application processor,AP),调制解调处理器,图形处理器(graphics processingunit,GPU),图像信号处理器(image signal processor,ISP),控制器,视频编解码器,数字信号处理器(digital signal processor,DSP),基带处理器,和/或神经网络处理器(neural-network processing unit,NPU)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。
音频模块907用于将数字音频信息转换成模拟音频信号输出,也用于将模拟音频输入转换为数字音频信号。音频模块907还可以用于对音频信号编码和解码。音频模块907包括至少一个功能模块,这些功能模块可以是扬声器、受话器或者麦克风,具体此处不做限定。在一些实施例中,音频模块907可以设置于处理器906中,或将音频模块907的部分功能模块设置于处理器906中。
指示器909可以是指示灯,可以用于指示充电状态,电量变化,也可以用于指示消息,未接来电,通知等。
充电管理模块911用于从充电器接收充电输入。其中,充电器可以是无线充电器,也可以是有线充电器。在一些有线充电的实施例中,充电管理模块911可以通过USB接口910接收有线充电器的充电输入。在一些无线充电的实施例中,充电管理模块911可以通过源设备900的无线充电线圈接收无线充电输入。充电管理模块911为电池9112充电的同时,还可以通过电源管理模块9111为电子设备供电。
电源管理模块9111用于连接电池9112,充电管理模块911与处理器906。电源管理模块9111,接收电池9112和/或充电管理模块911的输入,为处理器906,内部存储器904,显示屏908,和无线通信模块913等供电。电源管理模块9111还可以用于监测电池容量,电池循环次数,电池健康状态(漏电,阻抗)等参数。在其他一些实施例中,电源管理模块9111也可以设置于处理器906中。在另一些实施例中,电源管理模块9111和充电管理模块911也可以设置于同一个器件中。
另外,源设备900还可以包括按键、马达、指示器、摄像头以及用户身份识别模块(subscriber identity module,SIM)卡接口等一种或多种部件,本申请实施例对此不作任何限制。
源设备900可以执行图3或图5所示实施例中源设备所执行的操作,具体此处不再赘述。
图10是本申请实施例提供的一种源设备的结构示意图,该源设备1000可以包括一个或一个以上中央处理器(central processing units,CPU)1001和存储器1005,该存储器1005中存储有一个或一个以上的应用程序或数据。
其中,存储器1005可以是易失性存储或持久存储。存储在存储器1005的程序可以包括一个或一个以上模块,每个模块可以用于执行源设备1000所执行的一系列操作。更进一步地,中央处理器1001可以设置为与存储器1005通信,在源设备1000上执行存储器1005中的一系列指令操作。
源设备1000还可以包括一个或一个以上电源1002,一个或一个以上有线或无线接口1003,一个或一个以上输入输出接口1004,和/或,一个或一个以上操作系统,例如Windows ServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM等。
中央处理器1001可以执行前述图3所示实施例中源设备所执行的操作,或者前述图5所示实施例中源设备所执行的操作,具体此处不再赘述。
图11是本申请实施例提供的一种目的设备的结构示意图,该目的设备1100可以包括一个或一个以上中央处理器1101和存储器1105,该存储器1105中存储有一个或一个以上的应用程序或数据。
其中,存储器1105可以是易失性存储或持久存储。存储在存储器1105的程序可以包括一个或一个以上模块,每个模块可以用于执行目的设备1100所执行的一系列操作。更进一步地,中央处理器1101可以设置为与存储器1105通信,在目的设备1100上执行存储器1105中的一系列指令操作。
目的设备1100还可以包括一个或一个以上电源1102,一个或一个以上有线或无线接口1103,一个或一个以上输入输出接口1104,和/或,一个或一个以上操作系统,例如Windows ServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM等。
中央处理器1101可以执行前述图3所示实施例中目的设备所执行的操作,或者前述图5所示实施例中目的设备所执行的操作,具体此处不再赘述。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(read-only memory,ROM)、随机存取存储器(random access memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
Claims (30)
1.一种投屏音视频数据的传输方法,其特征在于,包括:
源设备建立与目的设备之间的无线局域网通道和无线对等网络通道;
所述源设备建立投屏音频数据对应的与所述目的设备之间的第一套接字连接;
所述源设备建立投屏视频数据对应的与所述目的设备之间的第二套接字连接;
所述源设备根据所述第一套接字连接,向所述目的设备发送所述投屏音频数据时,从所述无线局域网通道和所述无线对等网络通道中,选择时延较短的通道发送所述投屏音频数据;
所述源设备根据所述第二套接字连接,向所述目的设备发送所述投屏视频数据时,从所述无线局域网通道和所述无线对等网络通道中,选择剩余带宽较高的通道发送所述投屏视频数据。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
所述源设备根据待发送数据的数据标识,确定所述待发送数据为所述投屏音频数据或所述投屏视频数据,所述数据标识用于表示所述待发送数据的数据类型;
若所述数据标识为第一标识值,则所述源设备确定所述待发送数据为所述投屏音频数据;
若所述数据标识为第二标识值,则所述源设备确定所述待发送数据为所述投屏视频数据。
3.根据权利要求2所述的方法,其特征在于,所述选择时延较短的通道发送所述投屏音频数据,包括:
所述源设备通过所述第一端口,使用所述时延较短的通道,向所述目的设备发送所述投屏音频数据,所述第一端口对应于所述第一标识值;
所述源设备通过所述第二端口,使用所述剩余带宽较高的通道,向所述目的设备发送所述投屏视频数据,所述第二端口对应于所述第二标识值。
4.根据权利要求1至3中任一项所述的方法,其特征在于,所述源设备建立投屏音频数据对应的与所述目的设备之间的第一套接字连接,包括:
所述源设备接收所述目的设备在所述无线局域网通道的第一IP地址,或所述目的设备在所述无线对等网络通道的第二IP地址;
所述源设备根据所述第一IP地址,或所述第二IP地址,建立与所述投屏音频数据对应的所述第一套接字连接;
所述源设备建立投屏视频数据对应的与所述目的设备之间的第二套接字连接,包括:
所述源设备接收所述目的设备的所述第一IP地址,或所述目的设备的所述第二IP地址;
所述源设备根据所述第一IP地址,或所述第二IP地址,建立与所述投屏视频数据对应的所述第二套接字连接。
5.根据权利要求4所述的方法,其特征在于,所述选择时延较短的通道发送所述投屏音频数据,包括:
若所述第一套接字连接为根据所述第一IP地址建立的,且所述时延较短的通道为所述无线对等网络通道,则所述源设备确定所述投屏音频数据的目的地址为所述第二IP地址,所述源设备使用所述无线对等网络通道发送所述投屏音频数据;
若所述第一套接字连接为根据所述第二IP地址建立的,且所述时延较短的通道为所述无线局域网通道,则所述源设备确定所述投屏音频数据的目的地址为所述第一IP地址,所述源设备使用所述无线局域网通道发送所述投屏音频数据;
所述选择剩余带宽较高的通道发送所述投屏视频数据,包括:
若所述第二套接字连接为根据所述第一IP地址建立的,且所述剩余带宽较高的通道为所述无线对等网络通道,则所述源设备确定所述投屏视频数据的目的地址为所述第二IP地址,所述源设备使用所述无线对等网络通道发送所述投屏视频数据;
若所述第二套接字连接为根据所述第二IP地址建立的,且所述剩余带宽较高的通道为所述无线局域网通道,则所述源设备确定所述投屏视频数据的目的地址为所述第一IP地址,所述源设备使用所述无线局域网通道发送所述投屏视频数据。
6.根据权利要求1至5中任一项所述的方法,其特征在于,所述时延较短的通道包括:在上一个发送周期中的时延较短的通道,或者在发送所述投屏音频数据时,时延较短的通道;
所述剩余带宽较高的通道包括:在上一个发送周期中的剩余带宽较高的通道,或者在在发送所述投屏视频数据时,剩余带宽较高的通道。
7.根据权利要求1至5中任一项所述的方法,其特征在于,所述时延包括往返时延。
8.根据权利要求1至5中任一项所述的方法,其特征在于,所述选择时延较短的通道发送所述投屏音频数据,包括:
所述源设备基于传输控制协议或用户数据报协议,使用所述时延较短的通道向所述目的设备发送所述投屏音频数据;
所述选择剩余带宽较高的通道发送所述投屏视频数据,包括:
所述源设备基于所述传输控制协议或所述用户数据报协议,使用所述剩余带宽较高的通道向所述目的设备发送所述投屏视频数据。
9.一种投屏音视频数据的传输方法,其特征在于,包括:
源设备建立与目的设备之间的无线局域网通道和无线对等网络通道;
所述源设备根据待发送数据的数据标识,确定所述待发送数据的数据类型,所述数据标识用于表示数据的类型;
若所述待发送数据为投屏音频数据,则所述源设备使用所述无线局域网通道向所述目的设备发送所述投屏音频数据,并使用所述无线对等网络通道向所述目的设备发送所述投屏音频数据;
若所述待发送数据为投屏视频数据,则所述源设备使用所述无线局域网通道向所述目的设备发送所述投屏视频数据,并使用所述无线对等网络通道向所述目的设备发送所述投屏视频数据。
10.根据权利要求9所述的方法,其特征在于,所述源设备根据待发送数据的数据标识,确定所述待发送数据的数据类型,包括:
若所述数据标识为第一标识值,则所述源设备确定所述待发送数据的数据类型为所述投屏音频数据;
若所述数据标识为第二标识值,则所述源设备确定所述待发送数据的数据类型为所述投屏视频数据。
11.根据权利要求9或10所述的方法,其特征在于,所述投屏音频数据或所述投屏视频数据携带顺序标识,其中,所述顺序标识用于所述目的设备对接收的数据进行排序和/或去重。
12.根据权利要求9或10中任一项所述的方法,其特征在于,所述源设备使用所述无线局域网通道向所述目的设备发送所述投屏音频数据,并使用所述无线对等网络通道向所述目的设备发送所述投屏音频数据,包括:
所述源设备基于传输控制协议或用户数据报协议,使用所述无线局域网通道向所述目的设备发送所述投屏音频数据,并使用所述无线对等网络通道向所述目的设备发送所述投屏音频数据;
所述源设备使用所述无线局域网通道向所述目的设备发送所述投屏视频数据,并使用所述无线对等网络通道向所述目的设备发送所述投屏视频数据,包括:
所述源设备基于传输控制协议或用户数据报协议,使用所述无线局域网通道向所述目的设备发送所述投屏视频数据,并使用所述无线对等网络通道向所述目的设备发送所述投屏视频数据。
13.一种投屏音视频数据的传输方法,其特征在于,包括:
目的设备通过无线对等网络通道接收源设备发送的目标数据,所述目标数据包括投屏音频数据或投屏视频数据;
所述目的设备通过无线局域网通道接收源设备发送的所述目标数据;
所述目的设备根据所述目标数据携带的顺序标识,对所述目标数据进行排序,并丢弃所述目标数据中重复的数据。
14.一种投屏音视频数据的传输装置,其特征在于,包括:
通信单元,用于建立与目的设备之间的无线局域网通道和无线对等网络通道;
处理单元,用于:
建立投屏音频数据对应的与所述目的设备之间的第一套接字连接;
建立投屏视频数据对应的与所述目的设备之间的第二套接字连接;
发送单元,用于:
根据所述第一套接字连接,向所述目的设备发送所述投屏音频数据时,从所述无线局域网通道和所述无线对等网络通道中,选择时延较短的通道发送所述投屏音频数据;
根据所述第二套接字连接,向所述目的设备发送所述投屏视频数据时,从所述无线局域网通道和所述无线对等网络通道中,选择剩余带宽较高的通道发送所述投屏视频数据。
15.根据权利要求14所述的传输装置,其特征在于,所述传输装置还包括确定单元;
所述确定单元,具体用于:
根据待发送数据的数据标识,确定所述待发送数据为所述投屏音频数据或所述投屏视频数据,所述数据标识用于表示所述待发送数据的数据类型;
若所述数据标识为第一标识值,则所述源设备确定所述待发送数据为所述投屏音频数据;
若所述数据标识为第二标识值,则所述源设备确定所述待发送数据为所述投屏视频数据。
16.根据权利要求15所述的传输装置,其特征在于,所述发送单元,具体用于:
通过所述第一端口,使用所述时延较短的通道,向所述目的设备发送所述投屏音频数据,所述第一端口对应于所述第一标识值;
通过所述第二端口,使用所述剩余带宽较高的通道,向所述目的设备发送所述投屏视频数据,所述第二端口对应于所述第二标识值。
17.根据权利要求14至16中任一项所述的传输装置,其特征在于,所述处理单元,具体用于:
接收所述目的设备在所述无线局域网通道的第一IP地址,或所述目的设备在所述无线对等网络通道的第二IP地址;
根据所述第一IP地址,或所述第二IP地址,建立与所述投屏音频数据对应的所述第一套接字连接;
接收所述目的设备的所述第一IP地址,或所述目的设备的所述第二IP地址;
根据所述第一IP地址,或所述第二IP地址,建立与所述投屏视频数据对应的所述第二套接字连接。
18.根据权利要求17所述的传输装置,其特征在于,所述发送单元,具体用于:
若所述第一套接字连接为根据所述第一IP地址建立的,且所述时延较短的通道为所述无线对等网络通道,则确定所述投屏音频数据的目的地址为所述第二IP地址,使用所述无线对等网络通道发送所述投屏音频数据;
若所述第一套接字连接为根据所述第二IP地址建立的,且所述时延较短的通道为所述无线局域网通道,则确定所述投屏音频数据的目的地址为所述第一IP地址,使用所述无线局域网通道发送所述投屏音频数据;
若所述第二套接字连接为根据所述第一IP地址建立的,且所述剩余带宽较高的通道为所述无线对等网络通道,则确定所述投屏视频数据的目的地址为所述第二IP地址,使用所述无线对等网络通道发送所述投屏视频数据;
若所述第二套接字连接为根据所述第二IP地址建立的,且所述剩余带宽较高的通道为所述无线局域网通道,则确定所述投屏视频数据的目的地址为所述第一IP地址,使用所述无线局域网通道发送所述投屏视频数据。
19.根据权利要求14至18中任一项所述的传输装置,其特征在于,所述时延较短的通道包括:在上一个发送周期中的时延较短的通道,或者在发送所述投屏音频数据时,时延较短的通道;
所述剩余带宽较高的通道包括:在上一个发送周期中的剩余带宽较高的通道,或者在发送所述投屏视频数据时,剩余带宽较高的通道。
20.根据权利要求14至18中任一项所述的传输装置,其特征在于,所述时延包括往返时延。
21.根据权利要求14至18中任一项所述的传输装置,其特征在于,所述发送单元,具体用于:
基于传输控制协议或用户数据报协议,使用所述时延较短的通道向所述目的设备发送所述投屏音频数据;
基于所述传输控制协议或所述用户数据报协议,使用所述剩余带宽较高的通道向所述目的设备发送所述投屏视频数据。
22.一种投屏音视频数据的传输装置,其特征在于,包括:
通信单元,用于建立与目的设备之间的无线局域网通道和无线对等网络通道;
确定单元,用于根据待发送数据的数据标识,确定所述待发送数据的数据类型,所述数据标识用于表示数据的类型;
发送单元,用于:
若所述待发送数据为投屏音频数据,则使用所述无线局域网通道向所述目的设备发送所述投屏音频数据,并使用所述无线对等网络通道向所述目的设备发送所述投屏音频数据;
若所述待发送数据为投屏视频数据,则使用所述无线局域网通道向所述目的设备发送所述投屏视频数据,并使用所述无线对等网络通道向所述目的设备发送所述投屏视频数据。
23.根据权利要求22所述的传输装置,其特征在于,所述确定单元,具体用于:
若所述数据标识为第一标识值,则确定所述待发送数据的数据类型为所述投屏音频数据;
若所述数据标识为第二标识值,则确定所述待发送数据的数据类型为所述投屏视频数据。
24.根据权利要求22或23所述的传输装置,其特征在于,所述投屏音频数据或所述投屏视频数据携带顺序标识,其中,所述顺序标识用于所述目的设备对接收的数据进行排序和/或去重。
25.根据权利要求22或23所述的传输装置,其特征在于,所述发送单元,具体用于:
基于传输控制协议或用户数据报协议,使用所述无线局域网通道向所述目的设备发送所述投屏音频数据,并使用所述无线对等网络通道向所述目的设备发送所述投屏音频数据;
基于传输控制协议或用户数据报协议,使用所述无线局域网通道向所述目的设备发送所述投屏视频数据,并使用所述无线对等网络通道向所述目的设备发送所述投屏视频数据。
26.一种投屏音视频数据的传输装置,其特征在于,包括:
接收单元,用于:
通过无线对等网络通道接收源设备发送的目标数据,所述目标数据包括投屏音频数据或投屏视频数据;
通过无线局域网通道接收源设备发送的所述目标数据;
处理单元,用于根据所述目标数据携带的顺序标识,对所述目标数据进行排序,并丢弃所述目标数据中重复的数据。
27.一种源设备,其特征在于,包括:
处理器、存储器、输入输出设备以及总线;
所述处理器、所述存储器、所述输入输出设备与所述总线相连;
所述处理器用于执行权利要求1至8,或权利要求9至12中任一项所述的方法。
28.一种目的设备,其特征在于,包括:
处理器、存储器、输入输出设备以及总线;
所述处理器、存储器、输入输出设备与所述总线相连;
所述处理器用于执行权利要求13所述的方法。
29.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中保存有程序,当所述计算机执行所述程序时,执行如权利要求1至13中任一项所述的方法。
30.一种计算机程序产品,其特征在于,当所述计算机程序产品在计算机上执行时,所述计算机执行如权利要求1至13中任一项所述的方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011638678.4A CN114697733B (zh) | 2020-12-31 | 2020-12-31 | 投屏音视频数据的传输方法以及相关设备 |
PCT/CN2021/136036 WO2022143034A1 (zh) | 2020-12-31 | 2021-12-07 | 投屏音视频数据的传输方法以及相关设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011638678.4A CN114697733B (zh) | 2020-12-31 | 2020-12-31 | 投屏音视频数据的传输方法以及相关设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114697733A true CN114697733A (zh) | 2022-07-01 |
CN114697733B CN114697733B (zh) | 2023-06-06 |
Family
ID=82136189
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011638678.4A Active CN114697733B (zh) | 2020-12-31 | 2020-12-31 | 投屏音视频数据的传输方法以及相关设备 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN114697733B (zh) |
WO (1) | WO2022143034A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117877343A (zh) * | 2023-06-02 | 2024-04-12 | 广东精天防务科技有限公司 | 伞降模拟训练信息处理系统及伞降模拟训练系统 |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116055790B (zh) * | 2022-07-29 | 2024-03-19 | 荣耀终端有限公司 | 视频播放方法和系统、电子设备 |
CN115499944A (zh) * | 2022-08-22 | 2022-12-20 | 北京奇艺世纪科技有限公司 | 投屏处理方法、系统、装置及计算机可读存储介质 |
EP4336392A3 (en) * | 2022-09-07 | 2024-06-19 | Shenzhen Aizuo Technology Innovation Co., Ltd | Digital photo frame, a system thereof, and a method thereof |
CN115623068A (zh) * | 2022-09-14 | 2023-01-17 | 深圳市湘凡科技有限公司 | 一种视频投屏播放方法及装置 |
CN116136751B (zh) * | 2023-04-04 | 2023-07-25 | 北京智象信息技术有限公司 | 一种用于主屏以及次屏跨操作系统的镜像方法 |
CN116567720B (zh) * | 2023-07-10 | 2023-09-22 | 北京采立播科技有限公司 | 基于无线网络的虚拟现实交互的通信方法 |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104519129A (zh) * | 2014-12-16 | 2015-04-15 | 京信通信系统(中国)有限公司 | 一种数据传输方法、设备及系统 |
US20160112673A1 (en) * | 2006-08-07 | 2016-04-21 | Oovoo, Llc | Video conferencing over ip networks |
CN106534956A (zh) * | 2015-09-11 | 2017-03-22 | 中兴通讯股份有限公司 | 屏幕投射的视频数据传输方法、装置及系统 |
CN107333184A (zh) * | 2017-06-19 | 2017-11-07 | 依偎科技(南昌)有限公司 | 一种基于远程桌面的直播方法及直播设备 |
CN107579804A (zh) * | 2017-07-17 | 2018-01-12 | 福建星网锐捷通讯股份有限公司 | 一种过滤重复数据的方法和系统 |
CN109618373A (zh) * | 2019-01-15 | 2019-04-12 | Oppo广东移动通信有限公司 | 链路选取方法及相关装置 |
CN109996097A (zh) * | 2019-03-12 | 2019-07-09 | 广州虎牙信息科技有限公司 | 一种投屏方法、系统及存储装置 |
CN110062268A (zh) * | 2019-04-19 | 2019-07-26 | 北京那镁克科技有限公司 | 一种音视频同屏播放的发送和接收处理方法及装置 |
CN110121157A (zh) * | 2019-04-28 | 2019-08-13 | 天通畅达(深圳)科技有限公司 | 多网络融合通信终端、通信系统及融合通信方法 |
CN110266437A (zh) * | 2019-06-26 | 2019-09-20 | 北京奇艺世纪科技有限公司 | 投屏消息发送方法、投屏消息处理方法、装置及终端 |
CN111225173A (zh) * | 2020-02-20 | 2020-06-02 | 深圳市昊一源科技有限公司 | 音视频传输装置及音视频传输系统 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7555559B2 (en) * | 2003-02-28 | 2009-06-30 | Onion Networks, KK | Parallel data transfer over multiple channels with data order prioritization |
CN101001195A (zh) * | 2006-12-19 | 2007-07-18 | 科博技术有限公司 | 一种数据传输系统及方法 |
WO2020014880A1 (zh) * | 2018-07-17 | 2020-01-23 | 华为技术有限公司 | 一种多屏互动方法及设备 |
-
2020
- 2020-12-31 CN CN202011638678.4A patent/CN114697733B/zh active Active
-
2021
- 2021-12-07 WO PCT/CN2021/136036 patent/WO2022143034A1/zh active Application Filing
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160112673A1 (en) * | 2006-08-07 | 2016-04-21 | Oovoo, Llc | Video conferencing over ip networks |
CN104519129A (zh) * | 2014-12-16 | 2015-04-15 | 京信通信系统(中国)有限公司 | 一种数据传输方法、设备及系统 |
CN106534956A (zh) * | 2015-09-11 | 2017-03-22 | 中兴通讯股份有限公司 | 屏幕投射的视频数据传输方法、装置及系统 |
CN107333184A (zh) * | 2017-06-19 | 2017-11-07 | 依偎科技(南昌)有限公司 | 一种基于远程桌面的直播方法及直播设备 |
CN107579804A (zh) * | 2017-07-17 | 2018-01-12 | 福建星网锐捷通讯股份有限公司 | 一种过滤重复数据的方法和系统 |
CN109618373A (zh) * | 2019-01-15 | 2019-04-12 | Oppo广东移动通信有限公司 | 链路选取方法及相关装置 |
CN109996097A (zh) * | 2019-03-12 | 2019-07-09 | 广州虎牙信息科技有限公司 | 一种投屏方法、系统及存储装置 |
CN110062268A (zh) * | 2019-04-19 | 2019-07-26 | 北京那镁克科技有限公司 | 一种音视频同屏播放的发送和接收处理方法及装置 |
CN110121157A (zh) * | 2019-04-28 | 2019-08-13 | 天通畅达(深圳)科技有限公司 | 多网络融合通信终端、通信系统及融合通信方法 |
CN110266437A (zh) * | 2019-06-26 | 2019-09-20 | 北京奇艺世纪科技有限公司 | 投屏消息发送方法、投屏消息处理方法、装置及终端 |
CN111225173A (zh) * | 2020-02-20 | 2020-06-02 | 深圳市昊一源科技有限公司 | 音视频传输装置及音视频传输系统 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117877343A (zh) * | 2023-06-02 | 2024-04-12 | 广东精天防务科技有限公司 | 伞降模拟训练信息处理系统及伞降模拟训练系统 |
CN117877343B (zh) * | 2023-06-02 | 2024-06-07 | 广东精天防务科技有限公司 | 伞降模拟训练信息处理系统及伞降模拟训练系统 |
Also Published As
Publication number | Publication date |
---|---|
WO2022143034A1 (zh) | 2022-07-07 |
CN114697733B (zh) | 2023-06-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN114697733B (zh) | 投屏音视频数据的传输方法以及相关设备 | |
WO2021004381A1 (zh) | 一种投屏显示方法及电子设备 | |
US20220256626A1 (en) | Device Control Method and Terminal | |
CN111372325B (zh) | 建立Wi-Fi点对点连接的方法和装置 | |
WO2020119823A1 (zh) | 投屏方法、投屏装置、投屏设备 | |
EP4007374B1 (en) | Information processing method and apparatus, communication device and storage medium | |
US20220321455A1 (en) | Multipath transmission method and device | |
CN106797335B (zh) | 数据传输方法、数据传输装置、电子设备和计算机程序产品 | |
WO2022143071A1 (zh) | 连接建立方法及电子设备 | |
US12081971B2 (en) | Key information synchronization method and system, and device | |
CN113038627B (zh) | 一种文件分享方法、移动设备、计算机存储介质 | |
US11140480B2 (en) | Indirect sourced cognitive loudspeaker system | |
CN113950048B (zh) | 连接建立方法、电子设备及存储介质 | |
CN113891310B (zh) | 协作通信方法、用户设备及系统 | |
CN117332398A (zh) | 签发设备证书的方法、设备和系统 | |
CN115250453A (zh) | 一种数据传输方法及设备 | |
WO2024199488A1 (zh) | 一种链路切换方法、系统及相关装置 | |
CN117156190B (zh) | 投屏管理方法和装置 | |
CN112615891B (zh) | 配对方法及设备 | |
CN115695577A (zh) | Udp数据传输的方法及其相关设备 | |
WO2022228234A1 (zh) | 一种无线局域网中传输报文的方法及电子设备 | |
CN118474087A (zh) | 媒体流传输方法和装置 | |
CN118368750A (zh) | 组网保活的方法及其装置 | |
CN117201471A (zh) | 使用WebSocket协议的数据传输方法及其相关设备 | |
CN118055184A (zh) | 分享方法、电子设备及计算机存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |