CN105656602B - 数据传输方法及装置 - Google Patents
数据传输方法及装置 Download PDFInfo
- Publication number
- CN105656602B CN105656602B CN201511029296.0A CN201511029296A CN105656602B CN 105656602 B CN105656602 B CN 105656602B CN 201511029296 A CN201511029296 A CN 201511029296A CN 105656602 B CN105656602 B CN 105656602B
- Authority
- CN
- China
- Prior art keywords
- data
- equipment
- service quality
- parameter
- value range
- 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.)
- Active
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/0001—Systems modifying transmission characteristics according to link quality, e.g. power backoff
- H04L1/0002—Systems modifying transmission characteristics according to link quality, e.g. power backoff by adapting the transmission rate
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/75—Media network packet handling
- H04L65/762—Media network packet handling at the source
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/80—Responding to QoS
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Quality & Reliability (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本公开提供了一种数据传输方法及装置,属于无线网络技术领域。所述方法包括:根据接收到的第一设备的数据包,获取第一设备的数据发送参数和第二设备的数据接收参数;根据数据发送参数和数据接收参数,计算第一设备和第二设备之间的数据服务质量;若数据服务质量不在第一服务质量的取值范围内,则根据数据服务质量和数据发送参数,计算期望数据发送参数,并发送给第一设备,由第一设备根据期望数据发送参数向第二设备发送数据。由于第二设备能够实时地根据当前的数据服务质量,向第一设备反馈期望数据发送参数,使得第一设备发送的数据更加适应当前的无线网络环境,保证了第二设备的数据接收质量,因此该种数据传输方式灵活、传输质量高。
Description
技术领域
本公开涉及无线网络技术领域,尤其涉及一种数据传输方法及装置。
背景技术
随着无线网络技术的发展和智能终端的普及,采用Miracast、WiDi(IntelWirelessDisplay,无线高清技术)等无线显示技术,可在不同WiFi(Wireless Fidelity,无线保真)设备之间直接建立无线连接,并通过建立的无线连接进行数据传输。
比如,手机可通过与智能电视建立的无线连接,将屏幕数据或其他多媒体数据传输到智能电视,由智能电视显示接收到的屏幕数据或播放接收到的多媒体数据,实现屏幕分享和互动。由于Miracast或WiDi无线显示技术中规定了数据传输双方需采用H.264编码方式进行编码。因此,不同WiFi设备在进行数据传输时,发送端需要根据H.264编码方式对数据进行编码,得到具有固定传输速率的数据,之后将具有固定传输速率的数据发送至接收端,接收端通过解码得到对应的数据。
发明内容
为克服相关技术中存在的问题,本公开提供一种数据传输方法及装置,所述技术方案如下:
根据本公开实施例的第一方面,提供一种数据传输方法,包括:
根据接收到的第一设备的数据包,获取所述第一设备的数据发送参数和第二设备的数据接收参数;
根据所述数据发送参数和所述数据接收参数,计算所述第一设备和所述第二设备之间的数据服务质量;
若所述数据服务质量不在第一服务质量的取值范围内,则根据所述数据服务质量和所述数据发送参数,计算期望数据发送参数;
将所述期望数据发送参数发送给所述第一设备,由所述第一设备根据所述期望数据发送参数向所述第二设备发送数据。
可选地,所述根据接收到的第一设备的数据包,获取所述第一设备的数据发送参数和第二设备的数据接收参数包括:
对所述数据包进行解析,获取所述第一设备的数据发送速率、数据分辨率、数据发送帧率;
获取所述第二设备在接收所述数据包的数据接收速率、数据接收帧率、所述数据包的编号和数据包接收数目,并将所述数据接收速率、所述数据接收帧率、所述数据包的编号和所述数据包接收数目,确定为所述数据接收参数。
可选地,所述根据所述数据发送参数和所述数据接收参数,计算所述第一设备和所述第二设备之间的数据服务质量包括:
根据所述数据发送速率和所述数据接收速率,计算数据接收率;
根据所述数据发送帧率和所述数据接收帧率,计算丢帧率;
根据所述数据包接收数目和所述数据包的编号,计算丢包率;
根据所述数据接收率、所述丢帧率和所述丢包率,计算所述数据服务质量。
可选地,所述根据所述数据服务质量和所述数据发送参数,计算期望数据发送参数包括:
若所述数据服务质量在第二服务质量的取值范围内,则根据所述数据发送速率,计算期望数据发送速率;
若所述数据服务质量在第三服务质量的取值范围内,则根据所述数据分辨率,计算期望数据分辨率;
若所述数据服务质量在第四服务质量的取值范围内,则根据所述数据发送帧率,计算期望数据发送帧率。
可选地,所述第一服务质量的取值范围大于所述第二服务质量的取值范围,所述第二服务质量的取值范围大于所述第三服务质量的取值范围,所述第三服务质量的取值范围大于所述第四服务质量的取值范围。
可选地,所述第二设备通过实时传输控制协议RTCP通道,将所述期望数据发送参数发送给所述第一设备。
可选地,所述第一设备和所述第二设备均采用可伸缩视频编码方式进行编码。
根据本公开实施例的第二方面,提供一种数据传输装置,包括:
获取模块,用于根据接收到的第一设备的数据包,获取所述第一设备的数据发送参数和第二设备的数据接收参数;
第一计算模块,用于根据所述数据发送参数和所述数据接收参数,计算所述第一设备和所述第二设备之间的数据服务质量;
第二计算模块,用于若所述数据服务质量不在第一服务质量的取值范围内,则根据所述数据服务质量和所述数据发送参数,计算期望数据发送参数;
发送模块,用于将所述期望数据发送参数发送给所述第一设备,由所述第一设备根据所述期望数据发送参数向所述第二设备发送数据。
可选地,所述获取模块,用于对所述数据包进行解析,获取所述第一设备的数据发送速率、数据分辨率、数据发送帧率;获取所述第二设备在接收所述数据包的数据接收速率、数据接收帧率、所述数据包的编号和数据包接收数目,并将所述数据接收速率、所述数据接收帧率、所述数据包的编号和所述数据包接收数目,确定为所述数据接收参数。
可选地,所述第一计算模块,用于根据所述数据发送速率和所述数据接收速率,计算数据接收率;根据所述数据发送帧率和所述数据接收帧率,计算丢帧率;根据所述数据包接收数目和所述数据包的编号,计算丢包率;根据所述数据接收率、所述丢帧率和所述丢包率,计算所述数据服务质量。
可选地,所述第二计算模块,用于若所述数据服务质量在第二服务质量的取值范围内,则根据所述数据发送速率,计算期望数据发送速率;若所述数据服务质量在第三服务质量的取值范围内,则根据所述数据分辨率,计算期望数据分辨率;若所述数据服务质量在第四服务质量的取值范围内,则根据所述数据发送帧率,计算期望数据发送帧率。
可选地,所述第一服务质量的取值范围大于所述第二服务质量的取值范围,所述第二服务质量的取值范围大于所述第三服务质量的取值范围,所述第三服务质量的取值范围大于所述第四服务质量的取值范围。
可选地,所述第二设备通过实时传输控制协议RTCP通道,将所述期望数据发送参数发送给所述第一设备。
可选地,所述第一设备和所述第二设备均采用可伸缩视频编码方式进行编码。
根据本公开实施例的第三方面,提供一种数据传输装置,包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为:根据接收到的第一设备的数据包,获取所述第一设备的数据发送参数和第二设备的数据接收参数;根据所述数据发送参数和所述数据接收参数,计算所述第一设备和所述第二设备之间的数据服务质量;若所述数据服务质量不在第一服务质量的取值范围内,则根据所述数据服务质量和所述数据发送参数,计算期望数据发送参数;将所述期望数据发送参数发送给所述第一设备,由所述第一设备根据所述期望数据发送参数向所述第二设备发送数据。
本公开的实施例提供的技术方案可以包括以下有益效果:
根据接收到的第一设备的数据包,获取第一设备的数据发送参数和第二设备的数据接收参数;根据数据发送参数和数据接收参数,计算第一设备和第二设备之间的数据服务质量;若数据服务质量不在第一服务质量的取值范围内,则根据数据服务质量和数据发送参数,计算期望数据发送参数;将期望数据发送参数发送给第一设备,由第一设备根据期望数据发送参数向第二设备发送数据。由于第二设备能够实时地根据当前的数据服务质量,向第一设备反馈期望数据发送参数,使得第一设备根据期望数据发送参数发送的数据更加适应当前的无线网络环境,保证了第二设备的数据显示质量或数据播放质量,因此该种数据传输方式灵活、传输质量高。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。
图1是根据一示例性实施例示出的一种数据传输方法的流程图。
图2是根据一示例性实施例示出的一种数据传输方法的流程图。
图3是根据一示例性实施例示出的一种数据传输装置的框图。
图4是根据一示例性实施例示出的一种数据传输装置的框图。
具体实施方式
为使本公开的目的、技术方案和优点更加清楚,下面将结合附图对本公开实施方式作进一步地详细描述。
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
图1是根据一示例性实施例示出的一种数据传输方法的流程图,如图1所示,包括以下步骤:
在步骤101中,根据接收到的第一设备的数据包,获取第一设备的数据发送参数和第二设备的数据接收参数。
在步骤102中,根据数据发送参数和数据接收参数,计算第一设备和第二设备之间的数据服务质量。
在步骤103中,若数据服务质量不在第一服务质量的取值范围内,则根据数据服务质量和数据发送参数,计算期望数据发送参数。
在步骤104中,将期望数据发送参数发送给第一设备,由第一设备根据期望数据发送参数向第二设备发送数据。
本公开实施例提供的方法,根据接收到的第一设备的数据包,获取第一设备的数据发送参数和第二设备的数据接收参数;根据数据发送参数和数据接收参数,计算第一设备和第二设备之间的数据服务质量;若数据服务质量不在第一服务质量的取值范围内,则根据数据服务质量和数据发送参数,计算期望数据发送参数;将期望数据发送参数发送给第一设备,由第一设备根据期望数据发送参数向第二设备发送数据。由于第二设备能够实时地根据当前的数据服务质量,向第一设备反馈期望数据发送参数,使得第一设备根据期望数据发送参数发送的数据更加适应当前的无线网络环境,保证了第二设备的数据显示质量或数据播放质量,因此该种数据传输方式灵活、传输质量高。
可选地,根据接收到的第一设备的数据包,获取第一设备的数据发送参数和数据接收参数包括:
对数据包进行解析,获取第一设备的数据发送速率、数据分辨率、数据发送帧率;
获取第二设备在接收数据包的数据接收速率、数据接收帧率、数据包的编号和数据包接收数目,并将该数据接收速率、该数据接收帧率、该数据包的编号和该数据包接收数目,确定为该数据接收参数。
可选地,根据数据发送参数和数据接收参数,计算第一设备和第二设备之间的数据服务质量包括:
根据数据发送速率和数据接收速率,计算数据接收率;
根据数据发送帧率和数据接收帧率,计算丢帧率;
根据数据包接收数目和数据包的编号,计算丢包率;
根据数据接收率、丢帧率和丢包率,计算数据服务质量。
可选地,根据数据服务质量和数据发送参数,计算期望数据发送参数包括:
若数据服务质量在第二服务质量的取值范围内,则根据数据发送速率,计算期望数据发送速率;
若数据服务质量在第三服务质量的取值范围内,则根据数据分辨率,计算期望数据分辨率;
若数据服务质量在第四服务质量的取值范围内,则根据数据发送帧率,计算期望数据发送帧率。
可选地,第一服务质量的取值范围大于第二服务质量的取值范围,第二服务质量的取值范围大于第三服务质量的取值范围,第三服务质量的取值范围大于第四服务质量的取值范围。
可选地,第二设备通过实时传输控制协议RTCP通道,将期望数据发送参数发送给第一设备。
可选地,第一设备和第二设备均采用可伸缩视频编码方式进行编码。
上述所有可选技术方案,可以采用任意结合形成本公开的可选实施例,在此不再一一赘述。
图2是根据一示例性实施例示出的一种数据传输方法的流程图,如图2所示,包括以下步骤:
在步骤201中,在与第一设备建立无线连接后,根据接收到的第一设备的数据包,获取第一设备的数据发送参数和第二设备的数据接收参数。
在本公开实施例中,第一设备和第二设备支持相同的无线显示技术,比如Miracast、WiDi、AirPlay等技术,本公开实施例对此不进行具体限定。第一设备和第二设备之间通过WiFi建立无线连接,并通过建立的无线连接进行数据传输,实现屏幕共享和互动。其中,在数据传输的过程中,发送数据的设备称为传送端(即source端),接收数据的设备称为接收端(即sink端)。本公开实施例中第一设备为source端,可为手机、电脑等设备,第二设备为sink端,可为智能电视、手机、电脑等设备,本公开实施例对此不进行具体限定。
由于现有的无线显示技术针对视频编码方式进行了规定,source端和sink端进行数据传输时需使用H.264编码方式。使用该种编码方式,第一设备和第二设备在建立无线连接后,通过协商确定数据发送参数,包括数据发送速率、数据分辨率和数据发送帧率,该数据发送参数在数据传输的过程中不可更改。而在无线网络环境不好的情况下,容易造成数据包大量丢失,会严重影响sink端的数据接收质量。因此,本公开实施例对数据传输的编码方式进行了扩展,使得第一设备和第二设备可采用SVC(Scaled Video Coding,可伸缩视频编码)方式进行编码。该可伸缩视频编码方式支持输出多层码流,不同层的码流具有不同的数据发送参数。此外,为了实现在第一设备和第二设备进行数据传输的过程中,调整第一设备的数据发送参数,以保证第一设备和第二设备之间的数据服务质量,本公开实施例还提供了质量反馈机制。该质量反馈机制,由sink端根据接收到数据的数据服务质量向第一设备反馈最适合当前无线网络环境的数据发送参数,使得第一设备可将最适合当前无线网络环境的码流发送给第二设备,详细过程见下述步骤。
在本公开实施例中,第二设备在与第一设备建立无线连接后,第一设备和第二设备均采用可伸缩视频编码方式进行编码,第一设备向第二设备发送根据可伸缩视频编码方式进行编码的数据包。第二设备根据接收到的第一设备的数据包,获取第一设备的数据发送参数和第二设备的数据接收参数。即,对数据包进行解析,获取第一设备的数据发送速率、数据分辨率、数据发送帧率;获取第二设备在接收数据包的数据接收速率、数据接收帧率、数据包的编号和数据包接收数目,并将该数据接收速率、该数据接收帧率、该数据包的编号和该数据包接收数目,确定为该数据接收参数。
需要说明的是,在进行编码方式扩展时,可通过RTSP(Real Time StreamingProtocol,实时流传输协议)的wfd-video-format字段扩展,本公开实施例对此不进行具体限定。第一设备向第二设备发送的数据包为连续编号的数据包,每个数据包均携带有自己的编号。第二设备可根据接收到的数据包的编号获知第一设备的数据包发送数目,同时第二设备在接收到数据包后记录数据包接收数目。比如,第一设备发送了编号为1至5的5个数据包,第二设备仅接收到编号为2、3、5的三个数据包,则当第二设备接收到编号为5的数据包时,获知第一设备的数据包发送数目为5,同时记录数据包接收数目为3。
在步骤202中,根据数据发送参数和数据接收参数,计算第一设备与第二设备之间的数据服务质量。
在本公开实施例中,第二设备在获取到数据发送参数和数据接收参数后,根据数据发送参数和数据接收参数,计算第一设备与第二设备之间的数据服务质量,详细过程如下:
根据数据发送速率和数据接收速率,计算数据接收率;根据数据发送帧率和数据接收帧率,计算丢帧率;根据数据包接收数目和数据包的编号,计算丢包率;根据数据接收率、丢帧率和丢包率,计算数据服务质量。
其中,数据接收率为数据接收速率和数据发送速率的比值,比如第一设备的数据发送速率为1Mbps,第二设备的数据接收速率为800Kbps,则数据接收率为80%。丢帧率可为数据发送帧率和数据接收帧率差值,与数据发送帧率的比值,比如第一设备的数据发送帧率25帧每秒,而第二设备的数据接收帧率为20帧每秒,则丢帧率为20%。丢包率可为第二设备当前接收到的数据包的编号和数据包接收数目的差值,与数据包的编号的比值,比如,数据包的编号为100,数据包的接收数目为80,则丢包率为20%。
需要说明的是,丢包率还可根据第二设备在指定时间段内的数据接收数目和在该指定时间段内第一设备的数据包发送数目进行计算。比如,第二设备记录该指定时间段内接收到的第一个数据包的第一编号,和该指定时间段接收到的最后一个数据包的第二编号,并记录该指定时间段内的数据包接收数目;由第二编号和第一编号相减得到第一设备的数据包发送数目,之后,由数据包接收数目和数据包发送数目计算得到丢包率。其中,指定时间段可为1秒、2秒、3秒等,本公开实施例对此不进行具体限定。
在本公开实施例中,在计算得到数据接收率、丢帧率和丢包率之后,根据数据接收率、丢帧率和丢包率,计算数据服务质量。计算过程可为,将数据接收率、丢帧率和丢包率进行乘积运算,得到数据服务质量。由于数据接收率、丢帧率和丢包率的数值范围为[0,1],因此数据服务质量的数值范围也为[0,1],其中[]指示的范围包含边界值,即[0,1]包含数值0和数值1。对于数据服务质量,当数据服务质量的数值越大,该数据服务质量越高,第二设备上的显示效果越好。为了能够灵活动态地根据数据服务质量对第一设备的数据发送参数进行调整,本公开实施例将数据服务质量所在的[0,1]范围划分成四个服务质量的取值范围,包括第一服务质量的取值范围、第二服务质量的取值范围、第三服务质量的取值范围和第四服务质量的取值范围。其中,第一服务质量的取值范围大于第二服务质量的取值范围,第二服务质量的取值范围大于第三服务质量的取值范围,第三服务质量的取值范围大于第四服务质量的取值范围。
需要说明的是,第一服务质量的取值范围、第二服务质量的取值范围、第三服务质量的取值范围、第四服务质量的取值范围为连续的范围,例如,第一服务质量的取值范围为[0.9,1],第二服务质量的取值范围为[0.8,0.9),第三服务质量的取值范围为[0.5,0.8),第四服务质量的取值范围为[0,0.5),本公开实施例对具体的范围取值不进行具体限定。第一服务质量的取值范围大于第二服务质量的取值范围表示,第一服务质量的取值范围内的数值大于第二服务质量的取值范围内的数值,同理可得第二服务质量的取值范围大于第三服务质量的取值范围,第三服务质量的取值范围大于第四服务质量的取值范围的含义,在此不再赘述。
在步骤203中,判断计算得到的数据服务质量是否在第一服务质量的取值范围内,若该数据服务质量不在第一服务质量的取值范围内,则执行下述步骤204。
在本公开实施例中,第二设备在计算得到数据服务质量后,首先判断该数据服务质量是否在第一服务质量的取值范围内,若该数据服务质量在第一服务质量的取值范围内,则确定第一设备根据当前数据发送参数发送的数据,最适合当前的无线网络环境,即能在第二设备上达到最好的显示效果。在该种情况下,不对第一设备的数据发送参数进行调整。若该数据服务质量不在第一服务质量的取值范围内,则执行下述步骤204。
在步骤204中,若该数据服务质量不在第一服务质量的取值范围内,则根据该数据服务质量和数据发送参数,计算期望数据发送参数。
在本公开实施例中,若该数据服务质量不在第一服务质量的取值范围内,则确定第一设备根据当前数据发送参数发送的数据,受到无线网络环境的严重影响,使得接收到的数据在第二设备上的显示效果不好,比如时延大、视频播放不流畅等。在该种情况下,需要对第一设备的数据发送参数进行调整,即根据该数据服务质量和数据发送参数,计算期望数据发送参数,详细过程如下:
判断该数据服务质量所在的服务质量的取值范围,若该数据服务质量在第二服务质量的取值范围内,则根据数据发送速率,计算期望数据发送速率;若该数据服务质量在第三服务质量的取值范围内,则根据数据分辨率,计算期望数据分辨率;若该数据服务质量在第四服务质量的取值范围内,则根据数据发送帧率,计算期望数据发送帧率。
比如,以步骤202的举例中给出的服务质量的取值范围为例,若该数据服务质量为0.85,则确定该数据服务质量在第二服务质量的取值范围内,并确定需要降低第一设备的数据发送速率,以得到期望数据发送速率。在计算期望数据发送速率时,可直接将数据发送速率乘以该数据服务质量,得到比该数据发送速率小的期望数据发送速率;或者,预设一个速率缩小因子,通过将数据发送速率乘以该速率缩小因子,得到期望数据发送速率,本公开实施例对此不进行具体限定。若该数据服务质量为0.6,则确定该数据服务质量在第三服务质量的取值范围内,并确定需要降低数据分辨率,以得到期望数据分辨率。在计算期望数据分辨率时,可直接将数据分辨率乘以该数据服务质量,得到比该数据分辨率小的期望数据分辨率;或者,预设一个分辨率缩小因子,通过将数据分辨率乘以该分辨率缩小因子,得到期望数据分辨率,本公开实施例对此不进行具体限定。若该数据服务质量为0.4,则确定该数据服务质量在第三服务质量的取值范围内,并确定需要降低数据发送帧率,以得到期望数据发送帧率。在计算期望数据发送帧率时,可直接将数据发送帧率乘以该数据服务质量,得到比该数据发送帧率小的期望数据发送帧率;或者,预设一个帧率缩小因子,通过将数据发送帧率乘以该帧率缩小因子,得到期望数据发送帧率,本公开实施例对此不进行具体限定。
在步骤205中,将该期望数据发送参数发送至第一设备,由该第一设备根据该期望数据发送参数向第二设备发送数据。
在本公开实施例中,第二设备在计算得到期望数据发送参数后,将该期望数据发送参数发送至第一设备,由第一设备根据该期望数据发送参数向第二设备发送数据。即,当第二设备计算得到期望数据发送速率时,将该期望数据发送速率发送至第一设备,第一设备采用可伸缩视频编码方式对数据进行编码,将满足该期望数据发送速率的数据包发送至第二设备。当第二设备计算得到期望数据分辨率时,将该期望数据分辨率发送至第一设备,第一设备采用可伸缩视频编码方式对数据进行编码,将满足该期望数据分辨率的数据包发送至第二设备。当第二设备计算得到期望数据发送帧率时,将该期望数据发送帧率发送至第一设备,第一设备采用可伸缩视频编码方式对数据进行编码,将满足该期望数据发送帧率的数据包发送至第二设备。其中,第二设备可通过RTCP(Real-time Transport ControlProtocol,实时传输控制协议)通道,将期望数据发送参数发送给第一设备,本公开实施例对此不进行具体限定。
需要说明的是,第二设备在接收到第一设备根据期望数据发送参数发送的数据包后,继续执行上述步骤201和步骤202,得到新数据服务质量。若该新数据服务质量仍然不在第一服务质量的取值范围内,则继续对第一设备的数据发送参数进行调整,直至数据服务质量在第一服务质量的取值范围内为止。由于无线网络环境的不稳定性,第一设备和第二设备之间的数据服务质量可能处于不断变化的状态中。因此第二设备会实时地根据接收的第一设备的数据包,计算数据服务质量,并当数据服务质量不在第一服务质量的取值范围内时,对第一设备的发送参数进行调整,实现了sink端动态计算数据服务质量,并动态调整source端的数据发送参数。
本公开实施例提供的方法,根据接收到的第一设备的数据包,获取第一设备的数据发送参数和第二设备的数据接收参数;根据数据发送参数和数据接收参数,计算第一设备和第二设备之间的数据服务质量;若数据服务质量不在第一服务质量的取值范围内,则根据数据服务质量和数据发送参数,计算期望数据发送参数;将期望数据发送参数发送给第一设备,由第一设备根据期望数据发送参数向第二设备发送数据。由于第二设备能够实时地根据当前的数据服务质量,向第一设备反馈期望数据发送参数,使得第一设备根据期望数据发送参数发送的数据更加适应当前的无线网络环境,保证了第二设备的数据显示质量或数据播放质量,因此该种数据传输方式灵活、传输质量高。
图3是根据一示例性实施例示出的一种数据传输装置的框图。参照图3,该装置包括获取模块301,第一计算模块302,第二计算模块303和发送模块304。
其中,获取模块301与第一计算模块302连接,用于根据接收到的第一设备的数据包,获取第一设备的数据发送参数和第二设备的数据接收参数;第一计算模块302与第二计算模块303连接,用于根据数据发送参数和数据接收参数,计算第一设备和第二设备之间的数据服务质量;第二计算模块303与发送模块304连接,用于若数据服务质量不在第一服务质量的取值范围内,则根据数据服务质量和数据发送参数,计算期望数据发送参数;发送模块304,用于将期望数据发送参数发送给第一设备,由第一设备根据期望数据发送参数向第二设备发送数据。
可选地,获取模块301,用于对数据包进行解析,获取第一设备的数据发送速率、数据分辨率、数据发送帧率;获取第二设备在接收数据包的数据接收速率、数据接收帧率、数据包的编号和数据包接收数目,并将所述数据接收速率、所述数据接收帧率、所述数据包的编号和所述数据包接收数目,确定为所述数据接收参数。
可选地,第一计算模块302,用于根据数据发送速率和数据接收速率,计算数据接收率;根据数据发送帧率和数据接收帧率,计算丢帧率;根据数据包接收数目和数据包的编号,计算丢包率;根据数据接收率、丢帧率和丢包率,计算数据服务质量。
可选地,第二计算模块303,用于若数据服务质量在第二服务质量的取值范围内,则根据数据发送速率,计算期望数据发送速率;若数据服务质量在第三服务质量的取值范围内,则根据数据分辨率,计算期望数据分辨率;若数据服务质量在第四服务质量的取值范围内,则根据数据发送帧率,计算期望数据发送帧率。
可选地,第一服务质量的取值范围大于第二服务质量的取值范围,第二服务质量的取值范围大于第三服务质量的取值范围,第三服务质量的取值范围大于第四服务质量的取值范围。
可选地,第二设备通过实时传输控制协议RTCP通道,将期望数据发送参数发送给第一设备。
可选地,第一设备和第二设备均采用可伸缩视频编码方式进行编码。
本公开实施例提供的装置,根据接收到的第一设备的数据包,获取第一设备的数据发送参数和第二设备的数据接收参数;根据数据发送参数和数据接收参数,计算第一设备和第二设备之间的数据服务质量;若数据服务质量不在第一服务质量的取值范围内,则根据数据服务质量和数据发送参数,计算期望数据发送参数;将期望数据发送参数发送给第一设备,由第一设备根据期望数据发送参数向第二设备发送数据。由于第二设备能够实时地根据当前的数据服务质量,向第一设备反馈期望数据发送参数,使得第一设备根据期望数据发送参数发送的数据更加适应当前的无线网络环境,保证了第二设备的数据显示质量或数据播放质量,因此该种数据传输方式灵活、传输质量高。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
图4是根据一示例性实施例示出的一种数据传输装置的框图。例如,装置400可以是移动电话,计算机,数字广播终端,消息收发设备,游戏控制台,平板设备,医疗设备,健身设备,个人数字助理等。
参照图4,装置400可以包括以下一个或多个组件:处理组件402,存储器404,电源组件406,多媒体组件404,音频组件410,输入/输出(I/O)接口412,传感器组件414,以及通信组件416。
处理组件402通常控制装置400的整体操作,诸如与显示,电话呼叫,数据通信,相机操作和记录操作相关联的操作。处理组件402可以包括一个或多个处理器420来执行指令,以完成上述的方法的全部或部分步骤。此外,处理组件402可以包括一个或多个模块,便于处理组件402和其他组件之间的交互。例如,处理组件402可以包括多媒体模块,以方便多媒体组件408和处理组件402之间的交互。
存储器404被配置为存储各种类型的数据以支持在装置400的操作。这些数据的示例包括用于在装置400上操作的任何应用程序或方法的指令,联系人数据,电话簿数据,消息,图片,视频等。存储器404可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。
电源组件406为装置400的各种组件提供电力。电源组件406可以包括电源管理系统,一个或多个电源,及其他与为装置400生成、管理和分配电力相关联的组件。
多媒体组件408包括在所述装置400和用户之间的提供一个输出接口的屏幕。在一些实施例中,屏幕可以包括液晶显示器(LCD)和触摸面板(TP)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。所述触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与所述触摸或滑动操作相关的持续时间和压力。在一些实施例中,多媒体组件408包括一个前置摄像头和/或后置摄像头。当装置400处于操作模式,如拍摄模式或视频模式时,前置摄像头和/或后置摄像头可以接收外部的多媒体数据。每个前置摄像头和后置摄像头可以是一个固定的光学透镜系统或具有焦距和光学变焦能力。
音频组件410被配置为输出和/或输入音频信号。例如,音频组件410包括一个麦克风(MIC),当装置400处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器404或经由通信组件416发送。在一些实施例中,音频组件410还包括一个扬声器,用于输出音频信号。
I/O接口412为处理组件402和外围接口模块之间提供接口,上述外围接口模块可以是键盘,点击轮,按钮等。这些按钮可包括但不限于:主页按钮、音量按钮、启动按钮和锁定按钮。
传感器组件414包括一个或多个传感器,用于为装置400提供各个方面的状态评估。例如,传感器组件414可以检测到装置400的打开/关闭状态,组件的相对定位,例如所述组件为装置400的显示器和小键盘,传感器组件414还可以检测装置400或装置400一个组件的位置改变,用户与装置400接触的存在或不存在,装置400方位或加速/减速和装置400的温度变化。传感器组件414可以包括接近传感器,被配置用来在没有任何的物理接触时检测附近物体的存在。传感器组件414还可以包括光传感器,如CMOS或CCD图像传感器,用于在成像应用中使用。在一些实施例中,该传感器组件414还可以包括加速度传感器,陀螺仪传感器,磁传感器,压力传感器或温度传感器。
通信组件416被配置为便于装置400和其他设备之间有线或无线方式的通信。装置400可以接入基于通信标准的无线网络,如WiFi,2G或3G,或它们的组合。在一个示例性实施例中,通信组件416经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,所述通信组件416还包括近场通信(NFC)模块,以促进短程通信。例如,在NFC模块可基于射频识别(RFID)技术,红外数据协会(IrDA)技术,超宽带(UWB)技术,蓝牙(BT)技术和其他技术来实现。
在示例性实施例中,装置400可以被一个或多个应用专用集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理设备(DSPD)、可编程逻辑器件(PLD)、现场可编程门阵列(FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述数据传输方法。
在示例性实施例中,还提供了一种包括指令的非临时性计算机可读存储介质,例如包括指令的存储器404,上述指令可由装置400的处理器420执行以完成上述方法。例如,所述非临时性计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
在示例性实施例中,还提供了一种非临时性计算机可读存储介质,当所述存储介质中的指令由移动终端的处理器执行时,使得移动终端能够执行上述数据传输方法。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。
Claims (13)
1.一种数据传输方法,其特征在于,所述方法包括:
根据接收到的第一设备的数据包,获取所述第一设备的数据发送参数和第二设备的数据接收参数,所述第一设备的数据发送参数包括所述第一设备的数据发送速率、数据分辨率、数据发送帧率;
根据所述数据发送参数和所述数据接收参数,计算所述第一设备和所述第二设备之间的数据服务质量;
若所述数据服务质量不在第一服务质量的取值范围内,则:若所述数据服务质量在第二服务质量的取值范围内,根据所述数据发送速率,计算期望数据发送速率,期望数据发送参数包括所述期望数据发送速率;若所述数据服务质量在第三服务质量的取值范围内,根据所述数据分辨率,计算期望数据分辨率,所述期望数据发送参数包括所述期望数据分辨率;若所述数据服务质量在第四服务质量的取值范围内,根据所述数据发送帧率,计算期望数据发送帧率,所述期望数据发送参数包括所述数据发送帧率;
将所述期望数据发送参数发送给所述第一设备,由所述第一设备根据所述期望数据发送参数向所述第二设备发送数据。
2.根据权利要求1所述的方法,其特征在于,所述根据接收到的第一设备的数据包,获取第二设备的数据接收参数包括:
获取所述第二设备在接收所述数据包的数据接收速率、数据接收帧率、所述数据包的编号和数据包接收数目,并将所述数据接收速率、所述数据接收帧率、所述数据包的编号和所述数据包接收数目,确定为所述数据接收参数。
3.根据权利要求2所述的方法,其特征在于,所述根据所述数据发送参数和所述数据接收参数,计算所述第一设备和所述第二设备之间的数据服务质量包括:
根据所述数据发送速率和所述数据接收速率,计算数据接收率;
根据所述数据发送帧率和所述数据接收帧率,计算丢帧率;
根据所述数据包接收数目和所述数据包的编号,计算丢包率;
根据所述数据接收率、所述丢帧率和所述丢包率,计算所述数据服务质量。
4.根据权利要求1所述的方法,其特征在于,所述第一服务质量的取值范围内的数值大于所述第二服务质量的取值范围内的数值,所述第二服务质量的取值范围内的数值大于所述第三服务质量的取值范围内的数值,所述第三服务质量的取值范围内的数值大于所述第四服务质量的取值范围内的数值。
5.根据权利要求1所述的方法,其特征在于,所述第二设备通过实时传输控制协议RTCP通道,将所述期望数据发送参数发送给所述第一设备。
6.根据权利要求1所述的方法,其特征在于,所述第一设备和所述第二设备均采用可伸缩视频编码方式进行编码。
7.一种数据传输装置,其特征在于,所述装置包括:
获取模块,用于根据接收到的第一设备的数据包,获取所述第一设备的数据发送参数和第二设备的数据接收参数,所述第一设备的数据发送参数包括所述第一设备的数据发送速率、数据分辨率、数据发送帧率;
第一计算模块,用于根据所述数据发送参数和所述数据接收参数,计算所述第一设备和所述第二设备之间的数据服务质量;
第二计算模块,用于若所述数据服务质量不在第一服务质量的取值范围内,则:若所述数据服务质量在第二服务质量的取值范围内,根据所述数据发送速率,计算期望数据发送速率,期望数据发送参数包括所述期望数据发送速率;若所述数据服务质量在第三服务质量的取值范围内,根据所述数据分辨率,计算期望数据分辨率,所述期望数据发送参数包括所述期望数据分辨率;若所述数据服务质量在第四服务质量的取值范围内,根据所述数据发送帧率,计算期望数据发送帧率,所述期望数据发送参数包括所述数据发送帧率;
发送模块,用于将所述期望数据发送参数发送给所述第一设备,由所述第一设备根据所述期望数据发送参数向所述第二设备发送数据。
8.根据权利要求7所述的装置,其特征在于,所述获取模块,用于获取所述第二设备在接收所述数据包的数据接收速率、数据接收帧率、所述数据包的编号和数据包接收数目,并将所述数据接收速率、所述数据接收帧率、所述数据包的编号和所述数据包接收数目,确定为所述数据接收参数。
9.根据权利要求8所述的装置,其特征在于,所述第一计算模块,用于根据所述数据发送速率和所述数据接收速率,计算数据接收率;根据所述数据发送帧率和所述数据接收帧率,计算丢帧率;根据所述数据包接收数目和所述数据包的编号,计算丢包率;根据所述数据接收率、所述丢帧率和所述丢包率,计算所述数据服务质量。
10.根据权利要求7所述的装置,其特征在于,所述第一服务质量的取值范围内的数值大于所述第二服务质量的取值范围内的数值,所述第二服务质量的取值范围内的数值大于所述第三服务质量的取值范围内的数值,所述第三服务质量的取值范围内的数值大于所述第四服务质量的取值范围内的数值。
11.根据权利要求7所述的装置,其特征在于,所述第二设备通过实时传输控制协议RTCP通道,将所述期望数据发送参数发送给所述第一设备。
12.根据权利要求7所述的装置,其特征在于,所述第一设备和所述第二设备均采用可伸缩视频编码方式进行编码。
13.一种数据传输装置,其特征在于,包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为:根据接收到的第一设备的数据包,获取所述第一设备的数据发送参数和第二设备的数据接收参数,所述第一设备的数据发送参数包括所述第一设备的数据发送速率、数据分辨率、数据发送帧率;根据所述数据发送参数和所述数据接收参数,计算所述第一设备和所述第二设备之间的数据服务质量;若所述数据服务质量不在第一服务质量的取值范围内,则:若所述数据服务质量在第二服务质量的取值范围内,根据所述数据发送速率,计算期望数据发送速率,期望数据发送参数包括所述期望数据发送速率;若所述数据服务质量在第三服务质量的取值范围内,根据所述数据分辨率,计算期望数据分辨率,所述期望数据发送参数包括所述期望数据分辨率;若所述数据服务质量在第四服务质量的取值范围内,根据所述数据发送帧率,计算期望数据发送帧率,所述期望数据发送参数包括所述数据发送帧率;将所述期望数据发送参数发送给所述第一设备,由所述第一设备根据所述期望数据发送参数向所述第二设备发送数据。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201511029296.0A CN105656602B (zh) | 2015-12-31 | 2015-12-31 | 数据传输方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201511029296.0A CN105656602B (zh) | 2015-12-31 | 2015-12-31 | 数据传输方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105656602A CN105656602A (zh) | 2016-06-08 |
CN105656602B true CN105656602B (zh) | 2019-05-14 |
Family
ID=56491226
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201511029296.0A Active CN105656602B (zh) | 2015-12-31 | 2015-12-31 | 数据传输方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105656602B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106533624B (zh) * | 2016-11-15 | 2020-04-24 | 捷开通讯(深圳)有限公司 | 一种数据传输方法、数据接收装置及数据发送装置 |
CN109561340B (zh) * | 2017-09-25 | 2021-08-10 | 北京小鸟听听科技有限公司 | 多媒体服务处理方法、设备、多媒体服务群组及存储介质 |
CN109561356B (zh) * | 2018-11-08 | 2020-12-18 | 北京达佳互联信息技术有限公司 | 数据发送方法、数据发送装置、电子设备和计算机可读存储介质 |
CN113824992B (zh) * | 2020-06-19 | 2023-04-14 | 京东方科技集团股份有限公司 | 终端及上传方法、服务器及监测方法、介质、设备及系统 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1980238A (zh) * | 2006-10-30 | 2007-06-13 | 上海广电(集团)有限公司中央研究院 | 基于实时传输/控制协议的h.264流媒体传输控制方法 |
CN101075957A (zh) * | 2007-06-26 | 2007-11-21 | 上海大学 | Avs流媒体传输控制方法 |
CN101222296A (zh) * | 2008-01-31 | 2008-07-16 | 上海交通大学 | 上行蜂窝视频通信中自适应的传输方法及系统 |
CN101909208A (zh) * | 2010-08-05 | 2010-12-08 | 浙江工业大学 | 一种适用于cdma2000的视频无线传输控制方法 |
WO2013189428A3 (zh) * | 2013-02-22 | 2014-02-20 | 中兴通讯股份有限公司 | 基于分层编码的抗丢包实时通信方法、系统及相关设备 |
CN104320386A (zh) * | 2014-10-11 | 2015-01-28 | 北京凌云光技术有限责任公司 | 基于实时流传输协议的数据发送、接收方法及相应装置 |
CN104702922A (zh) * | 2013-12-10 | 2015-06-10 | 中国电信股份有限公司 | 一种视频传输方法和系统 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101924603B (zh) * | 2009-06-09 | 2014-08-20 | 华为技术有限公司 | 数据传输速率的自适应调整方法、装置及系统 |
-
2015
- 2015-12-31 CN CN201511029296.0A patent/CN105656602B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1980238A (zh) * | 2006-10-30 | 2007-06-13 | 上海广电(集团)有限公司中央研究院 | 基于实时传输/控制协议的h.264流媒体传输控制方法 |
CN101075957A (zh) * | 2007-06-26 | 2007-11-21 | 上海大学 | Avs流媒体传输控制方法 |
CN101222296A (zh) * | 2008-01-31 | 2008-07-16 | 上海交通大学 | 上行蜂窝视频通信中自适应的传输方法及系统 |
CN101909208A (zh) * | 2010-08-05 | 2010-12-08 | 浙江工业大学 | 一种适用于cdma2000的视频无线传输控制方法 |
WO2013189428A3 (zh) * | 2013-02-22 | 2014-02-20 | 中兴通讯股份有限公司 | 基于分层编码的抗丢包实时通信方法、系统及相关设备 |
CN104702922A (zh) * | 2013-12-10 | 2015-06-10 | 中国电信股份有限公司 | 一种视频传输方法和系统 |
CN104320386A (zh) * | 2014-10-11 | 2015-01-28 | 北京凌云光技术有限责任公司 | 基于实时流传输协议的数据发送、接收方法及相应装置 |
Also Published As
Publication number | Publication date |
---|---|
CN105656602A (zh) | 2016-06-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106375772B (zh) | 视频播放方法及装置 | |
CN105656602B (zh) | 数据传输方法及装置 | |
EP2986020B1 (en) | Method and apparatus for adjusting video quality based on network environment | |
CN106231353A (zh) | VoIP通信方法及装置 | |
JP6382345B2 (ja) | ネットワークジッタ処理方法、装置、端末デバイス、プログラム及び記録媒体 | |
KR20170091592A (ko) | 상호작용 비디오 회의 | |
TWI484827B (zh) | 視訊會議系統、視訊會議終端裝置及用於視訊會議之影像擷取方法 | |
CN105120301B (zh) | 视频处理方法和装置、智能设备 | |
CN104636110B (zh) | 控制音量的方法及装置 | |
CN108521609B (zh) | 确定推送视频类型的方法、装置及终端 | |
CN111988555B (zh) | 一种数据处理方法、装置、设备和机器可读介质 | |
CN105163391B (zh) | 数据传输方法、终端及无线访问接入点 | |
CN113099428A (zh) | 音频信息传输方法、音频信息传输装置及存储介质 | |
CN107404462B (zh) | 调整通话参数的方法及装置 | |
CN112203126B (zh) | 投屏方法、投屏装置及存储介质 | |
JP2015119335A (ja) | 動き変化量に応じて撮影動画像のフレームを間引く端末、システム、プログラム及び方法 | |
WO2023216119A1 (zh) | 音频信号编码方法、装置、电子设备和存储介质 | |
US20160050398A1 (en) | Method and apparatus for adjusting video quality based on network environment | |
CN104618165B (zh) | 一种网络评估方法及装置 | |
US20230269437A1 (en) | Screen sharing method and system and electronic device | |
CN107087254A (zh) | 发包方法、装置和蓝牙低能耗从设备 | |
KR20150110520A (ko) | 오디오/비디오 통화를 향상시키기 위해 스마트 tv 능력을 사용하는 방법 | |
CN110166797A (zh) | 视频转码方法、装置、电子设备及存储介质 | |
CN106020754A (zh) | 同步显示方法及装置 | |
CN104717516A (zh) | 一种多媒体数据的传输方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |