CN107707928B - 一种数据流延迟的控制方法、装置及接收设备 - Google Patents

一种数据流延迟的控制方法、装置及接收设备 Download PDF

Info

Publication number
CN107707928B
CN107707928B CN201711042911.0A CN201711042911A CN107707928B CN 107707928 B CN107707928 B CN 107707928B CN 201711042911 A CN201711042911 A CN 201711042911A CN 107707928 B CN107707928 B CN 107707928B
Authority
CN
China
Prior art keywords
data packet
queue
time value
packet
latest
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
Application number
CN201711042911.0A
Other languages
English (en)
Other versions
CN107707928A (zh
Inventor
李洋
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Guangzhou Qianjun Network Technology Co ltd
Original Assignee
Guangzhou Qianjun Network Technology Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Guangzhou Qianjun Network Technology Co ltd filed Critical Guangzhou Qianjun Network Technology Co ltd
Priority to CN201711042911.0A priority Critical patent/CN107707928B/zh
Publication of CN107707928A publication Critical patent/CN107707928A/zh
Application granted granted Critical
Publication of CN107707928B publication Critical patent/CN107707928B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/45Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
    • H04N21/458Scheduling content for creating a personalised stream, e.g. by combining a locally stored advertisement with an incoming stream; Updating operations, e.g. for OS modules ; time-related management operations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/21Server components or server architectures
    • H04N21/218Source of audio or video content, e.g. local disk arrays
    • H04N21/2187Live feed
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/262Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists
    • H04N21/26258Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists for generating a list of items to be played back in a given order, e.g. playlist, or scheduling item distribution according to such list

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明提供了一种数据流延迟的控制方法、装置及接收设备,本发明中当存在积累延迟时,丢弃数据包队列中除所述最新的数据包之外的部分数据包,进而接收的最新的数据包就能够尽早播放,进而消除积累延迟,本方案中不需要断开直播流和重新连接直播流,进而不会存在当采集端或接收端的网速不稳定时,就会造成直播连接失败,进而影响用户体验的问题。

Description

一种数据流延迟的控制方法、装置及接收设备
技术领域
本发明涉及直播领域,更具体的说,涉及一种数据流延迟的控制方法、装置及接收设备。
背景技术
现今移动互联网在社交场景的使用越来越广泛,随着大众的需求,直播逐渐走进大众的视野中。
在直播的过程中,采集端采集端将采集的音视频数据经过网络分段发送,接收端接收到音视频数据后,就可以进行播放。当采集端或者接收端的网速不稳定时,就会导致部分数据包需要重复发送多次才能成功,进而导致延迟,随着直播时间的增加,这个延迟会积累起来,称为积累延迟。
现有技术中,当出现积累延迟时,采用断开当前的直播流,然后重新连接直播流的方法来消除积累延迟。但是当采集端或接收端的网速不稳定时,就会造成直播连接失败,进而影响用户体验。
发明内容
有鉴于此,本发明提供一种数据流延迟的控制方法、装置及接收设备,以解决采用断开当前的直播流,然后重新连接直播流的方法来消除积累延迟时,当采集端或接收端的网速不稳定时,就会造成直播连接失败,进而影响用户体验的问题。
为解决上述技术问题,本发明采用了如下技术方案:
一种数据流延迟的控制方法,应用于接收设备,包括:
接收发送设备发送的最新的数据包;
将所述最新的数据包保存到数据包队列中的末端;其中,所述数据包队列中的每个数据包包括一个所述发送设备开始采集所述数据包时的时间值,且所述数据包队列中的数据包按照时间值的先后顺序进行排序;
根据所述数据包队列中的第一个数据包的时间值和所述最新的数据包的时间值,判断直播是否存在积累延迟;
当判断出直播存在积累延迟,丢弃所述数据包队列中除所述最新的数据包之外的部分数据包,以消除所述积累延迟。
优选地,根据所述数据包队列中的第一个数据包的时间值和所述最新的数据包的时间值,判断直播是否存在积累延迟,包括:
根据所述数据包队列中的第一个数据包的时间值和所述最新的数据包的时间值,计算所述第一个数据包的时间值和所述最新的数据包的时间值的时间差;
判断所述时间差是否大于预设数值;
其中,当所述时间差不大于预设数值时,所述直播不存在积累延迟;
当所述时间差大于预设数值时,所述直播存在积累延迟。
优选地,丢弃所述数据包队列中除所述最新的数据包之外的部分数据包,以消除所述积累延迟,包括:
丢弃所述数据包队列中的第一个数据包;
计算所述数据包队列中的新的第一个数据包的时间值和所述最新的数据包的时间值的数据包时间差;
判断所述数据包时间差是否大于所述预设数值;
当判断出所述数据包时间差大于所述预设数值,返回所述丢弃所述数据包队列中的第一个数据包步骤。
优选地,所述数据包包括音频数据包或视频数据包。
一种数据流延迟的控制装置,应用于接收设备,包括:
接收模块,用于接收发送设备发送的最新的数据包;
保存模块,用于将所述最新的数据包保存到数据包队列中的末端;其中,所述数据包队列中的每个数据包包括一个所述发送设备开始采集所述数据包时的时间值,且所述数据包队列中的数据包按照时间值的先后顺序进行排序;
判断模块,用于根据所述数据包队列中的第一个数据包的时间值和所述最新的数据包的时间值,判断直播是否存在积累延迟;
处理模块,用于当所述判断模块判断出直播存在积累延迟,丢弃所述数据包队列中除所述最新的数据包之外的部分数据包,以消除所述积累延迟。
优选地,所述判断模块包括:
第一计算子模块,用于根据所述数据包队列中的第一个数据包的时间值和所述最新的数据包的时间值,计算所述第一个数据包的时间值和所述最新的数据包的时间值的时间差;
第一判断子模块,用于判断所述时间差是否大于预设数值;
其中,当所述时间差不大于预设数值时,所述直播不存在积累延迟;
当所述时间差大于预设数值时,所述直播存在积累延迟。
优选地,所述处理模块包括:
丢弃子模块,用于丢弃所述数据包队列中的第一个数据包;
第二计算子模块,用于计算所述数据包队列中的新的第一个数据包的时间值和所述最新的数据包的时间值的数据包时间差;
第二判断子模块,用于判断所述数据包时间差是否大于所述预设数值;
所述丢弃子模块,还用于当所述第二判断子模块判断出所述数据包时间差大于所述预设数值,丢弃所述数据包队列中的第一个数据包。
优选地,所述数据包包括音频数据包或视频数据包。
一种接收设备,包括接收端口和处理器;
所述接收端口,用于接收发送设备发送的最新的数据包;
所述处理器,用于将所述最新的数据包保存到数据包队列中的末端,根据所述数据包队列中的第一个数据包的时间值和所述最新的数据包的时间值,判断直播是否存在积累延迟,当判断出直播存在积累延迟,丢弃所述数据包队列中除所述最新的数据包之外的部分数据包,以消除所述积累延迟;
其中,所述数据包队列中的每个数据包包括一个所述发送设备开始采集所述数据包时的时间值,且所述数据包队列中的数据包按照时间值的先后顺序进行排序。
相较于现有技术,本发明具有以下有益效果:
本发明提供了一种数据流延迟的控制方法、装置及接收设备,本发明中当存在积累延迟时,丢弃数据包队列中除所述最新的数据包之外的部分数据包,进而接收的最新的数据包就能够尽早播放,进而消除积累延迟,本方案中不需要断开直播流和重新连接直播流,进而不会存在当采集端或接收端的网速不稳定时,就会造成直播连接失败,进而影响用户体验的问题。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本发明提供的一种数据流延迟的控制方法的方法流程图;
图2为本发明提供的另一种数据流延迟的控制方法的方法流程图;
图3为本发明提供的一种数据流延迟的控制装置的结构示意图;
图4为本发明提供的另一种数据流延迟的控制装置的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例提供了一种数据流延迟的控制方法,可以应用于直播领域的接收设备,其中,接收设备可以是手机、平板、笔记本等设备上的处理模块或者是播放器。
参照图1,数据流延迟的控制方法可以包括:
S11、接收发送设备发送的最新的数据包;
其中,发送设备为采集端的设备,数据包包括音频数据包或视频数据包。发送设备将采集的连续的数据包经过压缩后,经过网络分段发送至接收设备,使用接收设备的用户就能够实时观看到直播。
由于采集端是不间断的发送数据包的,所述接收设备也会不间断的接收到数据包。
S12、将所述最新的数据包保存到数据包队列中的末端;
其中,所述数据包队列中的每个数据包包括一个所述发送设备开始采集所述数据包时的时间值,且所述数据包队列中的数据包按照时间值的先后顺序进行排序。
具体的,接收设备接收到数据包后,会先解析是音频数据包还是视频数据包,若是音频数据包,则将该音频数据包保存到音频数据包队列的末端,若是视频数据包,则将该视频数据包保存到视频数据包队列的末端。
需要说明的是,发送设备在采集数据包时,会将开始采集数据包的时间值保存到相应的数据包中。
接收设备接收到数据包后,会将数据包保存到数据包队列中,由于发送端或接收端网速不好或者是数据包传输失败时,会造成接收设备的数据包队列中会保存有若干个数据包。数据包队列中的数据包是按照数据包中的时间值的先后顺序进行排列的,时间值较早的数据包在数据包队列中序号较小,时间值较晚的数据包在数据包队列中序号较大。如有A、B和C三个数据包,时间值分别是1.03、1.01、1.02,则在数据包队列中的排列顺序为B、C、A。
S13、判断直播是否存在积累延迟;当判断出直播存在积累延迟,执行步骤S14;当判断出直播不存在积累延迟,执行步骤S15。
具体的,根据所述数据包队列中的第一个数据包的时间值和所述最新的数据包的时间值,判断直播是否存在积累延迟。
可选的,在本实施例的基础上,步骤S13可以包括:
1)根据所述数据包队列中的第一个数据包的时间值和所述最新的数据包的时间值,计算所述第一个数据包的时间值和所述最新的数据包的时间值的时间差;
如,第一个数据包的时间值为1.00,最新的数据包的时间值为1.05,则时间差为1.05-1.00=0.05。
2)判断所述时间差是否大于预设数值;
其中,当所述时间差不大于预设数值时,所述直播不存在积累延迟;
当所述时间差大于预设数值时,所述直播存在积累延迟。预设数据为技术人员根据具体直播应用场景进行设定的。
具体的,采用第一个数据包的时间值和所述最新的数据包的时间值的时间差与预设数值的比较结果来判断是否存在积累延迟,是由于第一个数据包的时间值和所述最新的数据包的时间值的时间差,能够说明数据包队列中的数据包需要播放该时间差的时间才能够播放完成,当时间差较长时,说明最新的数据包需要经过时间差的时间才能够播放,但是最新的数据包是发送设备最新发送的数据包,说明需要接收设备开始播放最新的数据包了,而接收设备这端还有时间差的时间才能够播放到该最新的数据包,进而能够推测出接收设备端存在积累延迟。
S14、丢弃所述数据包队列中除所述最新的数据包之外的部分数据包,以消除所述积累延迟。
具体的,当存在积累延迟时,可以丢弃所述数据包队列中除所述最新的数据包之外的部分数据包,进而该最新的数据包就能够尽早的播放,以此来消除积累延迟。
S15、按照数据包的排列顺序依次播放数据包队列中的数据包,或将数据包队列中的数据包发送到播放设备,以使播放设备按照数据包的排列顺序依次播放数据包队列中的数据包。
具体的,当判断出直播不存在积累延迟时。当接收设备为播放器时,可以按照数据包的排列顺序依次播放数据包队列中的数据包;当接收设备为处理模块时,可以将数据包队列中的数据包发送到播放设备,以使播放设备按照数据包的排列顺序依次播放数据包队列中的数据包。其中,播放设备可以是播放器。
其中,在播放数据包时,首先将数据包从数据包队列中取出,然后解析成相应的音频或视频进行播放。其中,当数据包为音频数据包时,应该将数据包解析成音频,当数据包为视频数据包时,应该将视频数据包解析成视频。
本实施例中,当存在积累延迟时,丢弃数据包队列中除所述最新的数据包之外的部分数据包,进而接收的最新的数据包就能够尽早播放,进而消除积累延迟,本方案中不需要断开直播流和重新连接直播流,进而不会存在当采集端或接收端的网速不稳定时,就会造成直播连接失败,进而影响用户体验的问题。
可选的,在上述任一数据流延迟的控制方法的实施例的基础上,参照图2,步骤S14可以包括:
S21、丢弃所述数据包队列中的第一个数据包;
具体的,本步骤可以直接删除数据包队列中的第一个数据包。第一个数据包是数据包中列中序号最小的数据包。
S22、计算所述数据包队列中的新的第一个数据包的时间值和所述最新的数据包的时间值的数据包时间差;
其中,计算得到数据包时间差和计算得到时间差的过程类似,请参照计算得到时间差的计算过程。
S23、判断所述数据包时间差是否大于所述预设数值;当判断出所述数据包时间差大于所述预设数值,执行步骤S21;当判断出所述数据包时间差不大于所述预设数值,执行步骤S24。
具体的,当数据包时间差仍大于预设数值时,说明直播仍存在积累延迟,此时按照数据包队列中的数据包的先后顺序,再次丢弃一个数据包,然后判断是否存在延迟。
S24、按照数据包的排列顺序依次播放所述数据包队列中的数据包,或将所述数据包队列中的数据包发送到播放设备,以使所述播放设备按照数据包的排列顺序依次播放所述数据包队列中的数据包;
具体的,当判断出所述数据包时间差不大于所述预设数值,说明不存在积累延迟,此时可以正常播放数据包队列中的数据包。具体播放过程请参照上述实施例中的相应说明,在此不再赘述。
本实施例中,按照数据包中的数据包的先后顺序,依次丢弃数据包来达到缩短积累延迟的目的,进而能够使得用户能够正常的观看直播,提升用户体验。
可选的,在上述数据流延迟的控制方法的实施例的基础上,本发明的另一实施例提供了一种数据流延迟的控制装置,应用于接收设备,参照图3,数据流延迟的控制装置可以包括:
接收模块101,用于接收发送设备发送的最新的数据包;
保存模块102,用于将所述最新的数据包保存到数据包队列中的末端;其中,所述数据包队列中的每个数据包包括一个所述发送设备开始采集所述数据包时的时间值,且所述数据包队列中的数据包按照时间值的先后顺序进行排序;
判断模块103,用于根据所述数据包队列中的第一个数据包的时间值和所述最新的数据包的时间值,判断直播是否存在积累延迟;
处理模块104,用于当所述判断模块判断出直播存在积累延迟,丢弃所述数据包队列中除所述最新的数据包之外的部分数据包,以消除所述积累延迟。
进一步,所述判断模块103包括:
第一计算子模块,用于根据所述数据包队列中的第一个数据包的时间值和所述最新的数据包的时间值,计算所述第一个数据包的时间值和所述最新的数据包的时间值的时间差;
第一判断子模块,用于判断所述时间差是否大于预设数值;
其中,当所述时间差不大于预设数值时,所述直播不存在积累延迟;
当所述时间差大于预设数值时,所述直播存在积累延迟。
进一步,所述数据包包括音频数据包或视频数据包。
本实施例中,当存在积累延迟时,丢弃数据包队列中除所述最新的数据包之外的部分数据包,进而接收的最新的数据包就能够尽早播放,进而消除积累延迟,本方案中不需要断开直播流和重新连接直播流,进而不会存在当采集端或接收端的网速不稳定时,就会造成直播连接失败,进而影响用户体验的问题。
需要说明的是,本实施例中的各个模块和子模块的工作过程,请参照上述实施例中的相应说明,在此不再赘述。
在上述任一数据流延迟的控制装置的实施例的基础上,参照图4,所述处理模,104可以包括:
丢弃子模块1041,用于丢弃所述数据包队列中的第一个数据包;
第二计算子模块1042,用于计算所述数据包队列中的新的第一个数据包的时间值和所述最新的数据包的时间值的数据包时间差;
第二判断子模块1043,用于判断所述数据包时间差是否大于所述预设数值;
所述丢弃子模块1041,还用于当所述第二判断子模块1043判断出所述数据包时间差大于所述预设数值,丢弃所述数据包队列中的第一个数据包。
本实施例中,按照数据包中的数据包的先后顺序,依次丢弃数据包来达到缩短积累延迟的目的,进而能够使得用户能够正常的观看直播,提升用户体验。
需要说明的是,本实施例中的各个模块和子模块的工作过程,请参照上述实施例中的相应说明,在此不再赘述。
可选的,在上述数据流延迟的控制方法和装置的实施例的基础上,本发明的另一实施例中提供了一种接收设备,可以包括接收端口和处理器;
所述接收端口,用于接收发送设备发送的最新的数据包;
所述处理器,用于将所述最新的数据包保存到数据包队列中的末端,根据所述数据包队列中的第一个数据包的时间值和所述最新的数据包的时间值,判断直播是否存在积累延迟,当判断出直播存在积累延迟,丢弃所述数据包队列中除所述最新的数据包之外的部分数据包,以消除所述积累延迟;
其中,所述数据包队列中的每个数据包包括一个所述发送设备开始采集所述数据包时的时间值,且所述数据包队列中的数据包按照时间值的先后顺序进行排序。
本实施例中,当存在积累延迟时,丢弃数据包队列中除所述最新的数据包之外的部分数据包,进而接收的最新的数据包就能够尽早播放,进而消除积累延迟,本方案中不需要断开直播流和重新连接直播流,进而不会存在当采集端或接收端的网速不稳定时,就会造成直播连接失败,进而影响用户体验的问题。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

Claims (12)

1.一种数据流延迟的控制方法,其特征在于,应用于接收设备,所述接收设备为播放器,所述方法包括:
接收发送设备发送的最新的数据包;
将所述最新的数据包保存到数据包队列中的末端;其中,所述数据包队列中的每个数据包包括一个所述发送设备开始采集所述数据包时的时间值,且所述数据包队列中的数据包按照时间值的先后顺序进行排序;
根据所述数据包队列中的第一个数据包的时间值和所述最新的数据包的时间值,计算所述第一个数据包的时间值和所述最新的数据包的时间值的时间差;
判断所述时间差是否大于预设数值;其中,当所述时间差不大于预设数值时,直播不存在积累延迟;当所述时间差大于预设数值时,直播存在积累延迟;
当判断出直播存在积累延迟,丢弃所述数据包队列中的第一个数据包,将数据包队列中的第二个数据包作为新的第一个数据包,并返回根据所述数据包队列中新的第一个数据包的时间值和所述最新的数据包的时间值,计算所述第一个数据包的时间值和所述最新的数据包的时间值的时间差这个步骤;
当判断出直播不存在积累延迟时,按照数据包的排列顺序依次播放数据包队列中的数据包。
2.根据权利要求1所述的控制方法,其特征在于,所述丢弃所述数据包队列中的第一个数据包,将数据包队列中的第二个数据包作为新的第一个数据包,并返回根据所述数据包队列中新的第一个数据包的时间值和所述最新的数据包的时间值,计算所述第一个数据包的时间值和所述最新的数据包的时间值的时间差这个步骤,包括:
丢弃所述数据包队列中的第一个数据包;
计算所述数据包队列中的新的第一个数据包的时间值和所述最新的数据包的时间值的数据包时间差;
判断所述数据包时间差是否大于所述预设数值;
当判断出所述数据包时间差大于所述预设数值,返回所述丢弃所述数据包队列中的第一个数据包步骤。
3.根据权利要求1所述的控制方法,其特征在于,所述数据包包括音频数据包或视频数据包。
4.一种数据流延迟的控制方法,其特征在于,应用于接收设备,所述接收设备为处理设备,所述方法包括:
接收发送设备发送的最新的数据包;
将所述最新的数据包保存到数据包队列中的末端;其中,所述数据包队列中的每个数据包包括一个所述发送设备开始采集所述数据包时的时间值,且所述数据包队列中的数据包按照时间值的先后顺序进行排序;
根据所述数据包队列中的第一个数据包的时间值和所述最新的数据包的时间值,计算所述第一个数据包的时间值和所述最新的数据包的时间值的时间差;
判断所述时间差是否大于预设数值;其中,当所述时间差不大于预设数值时,直播不存在积累延迟;当所述时间差大于预设数值时,直播存在积累延迟;
当判断出直播存在积累延迟,丢弃所述数据包队列中的第一个数据包,将数据包队列中的第二个数据包作为新的第一个数据包,并返回根据所述数据包队列中新的第一个数据包的时间值和所述最新的数据包的时间值,计算所述第一个数据包的时间值和所述最新的数据包的时间值的时间差这个步骤;
当判断出直播不存在积累延迟时,将数据包队列中的数据包依次发送到播放设备,以使播放设备按照数据包的排列顺序依次播放数据包队列中的数据包。
5.根据权利要求4所述的控制方法,其特征在于,所述丢弃所述数据包队列中的第一个数据包,将数据包队列中的第二个数据包作为新的第一个数据包,并返回根据所述数据包队列中新的第一个数据包的时间值和所述最新的数据包的时间值,计算所述第一个数据包的时间值和所述最新的数据包的时间值的时间差这个步骤,包括:
丢弃所述数据包队列中的第一个数据包;
计算所述数据包队列中的新的第一个数据包的时间值和所述最新的数据包的时间值的数据包时间差;
判断所述数据包时间差是否大于所述预设数值;
当判断出所述数据包时间差大于所述预设数值,返回所述丢弃所述数据包队列中的第一个数据包步骤。
6.一种数据流延迟的控制装置,其特征在于,应用于接收设备,所述接收设备为播放器,所述控制装置包括:
接收模块,用于接收发送设备发送的最新的数据包;
保存模块,用于将所述最新的数据包保存到数据包队列中的末端;其中,所述数据包队列中的每个数据包包括一个所述发送设备开始采集所述数据包时的时间值,且所述数据包队列中的数据包按照时间值的先后顺序进行排序;
判断模块,用于根据所述数据包队列中的第一个数据包的时间值和所述最新的数据包的时间值,判断直播是否存在积累延迟;
处理模块,用于当所述判断模块判断出直播存在积累延迟,丢弃所述数据包队列中的第一个数据包,将数据包队列中的第二个数据包作为新的第一个数据包,并判断新的第一个数据包是否存在积累延迟;
所述处理模块,还用于当判断出直播不存在积累延迟时,按照数据包的排列顺序依次播放数据包队列中的数据包;
其中,所述判断模块包括:
第一计算子模块,用于根据所述数据包队列中的第一个数据包的时间值和所述最新的数据包的时间值,计算所述第一个数据包的时间值和所述最新的数据包的时间值的时间差;
第一判断子模块,用于判断所述时间差是否大于预设数值;当所述时间差不大于预设数值时,所述直播不存在积累延迟;当所述时间差大于预设数值时,所述直播存在积累延迟。
7.根据权利要求6所述的控制装置,其特征在于,所述处理模块包括:
丢弃子模块,用于丢弃所述数据包队列中的第一个数据包;
第二计算子模块,用于计算所述数据包队列中的新的第一个数据包的时间值和所述最新的数据包的时间值的数据包时间差;
第二判断子模块,用于判断所述第二计算子模块所计算出的所述数据包时间差是否大于所述预设数值;
所述丢弃子模块,还用于当所述第二判断子模块判断出所述数据包时间差大于所述预设数值,丢弃所述数据包队列中的第一个数据包。
8.根据权利要求6所述的控制装置,其特征在于,所述数据包包括音频数据包或视频数据包。
9.一种数据流延迟的控制装置,其特征在于,应用于接收设备,所述接收设备为处理设备,所述控制装置包括:
接收模块,用于接收发送设备发送的最新的数据包;
保存模块,用于将所述最新的数据包保存到数据包队列中的末端;其中,所述数据包队列中的每个数据包包括一个所述发送设备开始采集所述数据包时的时间值,且所述数据包队列中的数据包按照时间值的先后顺序进行排序;
判断模块,用于根据所述数据包队列中的第一个数据包的时间值和所述最新的数据包的时间值,判断直播是否存在积累延迟;
处理模块,用于当所述判断模块判断出直播存在积累延迟,丢弃所述数据包队列中的第一个数据包,将数据包队列中的第二个数据包作为新的第一个数据包,并判断新的第一个数据包是否存在积累延迟;
所述处理模块,还用于当判断出直播不存在积累延迟时,将数据包队列中的数据包依次发送到播放设备,以使播放设备按照数据包的排列顺序依次播放数据包队列中的数据包;
其中,所述判断模块包括:
第一计算子模块,用于根据所述数据包队列中的第一个数据包的时间值和所述最新的数据包的时间值,计算所述第一个数据包的时间值和所述最新的数据包的时间值的时间差;
第一判断子模块,用于判断所述时间差是否大于预设数值;当所述时间差不大于预设数值时,所述直播不存在积累延迟;当所述时间差大于预设数值时,所述直播存在积累延迟。
10.根据权利要求9所述的控制装置,其特征在于,所述处理模块包括:
丢弃子模块,用于丢弃所述数据包队列中的第一个数据包;
第二计算子模块,用于计算所述数据包队列中的新的第一个数据包的时间值和所述最新的数据包的时间值的数据包时间差;
第二判断子模块,用于判断所述第二计算子模块所计算出的所述数据包时间差是否大于所述预设数值;
所述丢弃子模块,还用于当所述第二判断子模块判断出所述数据包时间差大于所述预设数值,丢弃所述数据包队列中的第一个数据包。
11.一种接收设备,其特征在于,所述接收设备为播放器,所述接收设备包括接收端口和处理器;
所述接收端口,用于接收发送设备发送的最新的数据包;
所述处理器,用于将所述最新的数据包保存到数据包队列中的末端,
根据所述数据包队列中的第一个数据包的时间值和所述最新的数据包的时间值,计算所述第一个数据包的时间值和所述最新的数据包的时间值的时间差;判断所述时间差是否大于预设数值;其中,当所述时间差不大于预设数值时,直播不存在积累延迟;当所述时间差大于预设数值时,直播存在积累延迟;当判断出直播存在积累延迟,丢弃所述数据包队列中的第一个数据包,将数据包队列中的第二个数据包作为新的第一个数据包,并返回根据所述数据包队列中新的第一个数据包的时间值和所述最新的数据包的时间值,计算所述第一个数据包的时间值和所述最新的数据包的时间值的时间差这个步骤;当判断出直播不存在积累延迟时,按照数据包的排列顺序依次播放数据包队列中的数据包;
其中,所述数据包队列中的每个数据包包括一个所述发送设备开始采集所述数据包时的时间值,且所述数据包队列中的数据包按照时间值的先后顺序进行排序。
12.一种接收设备,其特征在于,所述接收设备为处理设备,所述接收设备包括接收端口和处理器;
所述接收端口,用于接收发送设备发送的最新的数据包;
所述处理器,用于将所述最新的数据包保存到数据包队列中的末端,
根据所述数据包队列中的第一个数据包的时间值和所述最新的数据包的时间值,计算所述第一个数据包的时间值和所述最新的数据包的时间值的时间差;判断所述时间差是否大于预设数值;其中,当所述时间差不大于预设数值时,直播不存在积累延迟;当所述时间差大于预设数值时,直播存在积累延迟;当判断出直播存在积累延迟,丢弃所述数据包队列中的第一个数据包,将数据包队列中的第二个数据包作为新的第一个数据包,并返回根据所述数据包队列中新的第一个数据包的时间值和所述最新的数据包的时间值,计算所述第一个数据包的时间值和所述最新的数据包的时间值的时间差这个步骤;当判断出直播不存在积累延迟时;将数据包队列中的数据包依次发送到播放设备,以使播放设备按照数据包的排列顺序依次播放数据包队列中的数据包;
其中,所述数据包队列中的每个数据包包括一个所述发送设备开始采集所述数据包时的时间值,且所述数据包队列中的数据包按照时间值的先后顺序进行排序。
CN201711042911.0A 2017-10-30 2017-10-30 一种数据流延迟的控制方法、装置及接收设备 Active CN107707928B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201711042911.0A CN107707928B (zh) 2017-10-30 2017-10-30 一种数据流延迟的控制方法、装置及接收设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201711042911.0A CN107707928B (zh) 2017-10-30 2017-10-30 一种数据流延迟的控制方法、装置及接收设备

Publications (2)

Publication Number Publication Date
CN107707928A CN107707928A (zh) 2018-02-16
CN107707928B true CN107707928B (zh) 2021-03-23

Family

ID=61177154

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201711042911.0A Active CN107707928B (zh) 2017-10-30 2017-10-30 一种数据流延迟的控制方法、装置及接收设备

Country Status (1)

Country Link
CN (1) CN107707928B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108966022A (zh) * 2018-06-29 2018-12-07 广州市千钧网络科技有限公司 一种直播方法、装置及终端

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1684445A (zh) * 2004-04-15 2005-10-19 汤姆森许可贸易公司 在接收机设备中处理数据包的序列的方法和接收机设备
CN1921450A (zh) * 2006-08-25 2007-02-28 华为技术有限公司 数据流量控制装置与流量控制方法
CN101662640A (zh) * 2009-09-11 2010-03-03 中兴通讯股份有限公司 一种抓取图片的方法及装置
CN105049906A (zh) * 2015-08-07 2015-11-11 虎扑(上海)文化传播股份有限公司 一种数据处理方法及电子设备

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6641819B2 (ja) * 2015-09-15 2020-02-05 富士通株式会社 ネットワーク監視装置、ネットワーク監視方法及びネットワーク監視プログラム

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1684445A (zh) * 2004-04-15 2005-10-19 汤姆森许可贸易公司 在接收机设备中处理数据包的序列的方法和接收机设备
CN1921450A (zh) * 2006-08-25 2007-02-28 华为技术有限公司 数据流量控制装置与流量控制方法
CN101662640A (zh) * 2009-09-11 2010-03-03 中兴通讯股份有限公司 一种抓取图片的方法及装置
CN105049906A (zh) * 2015-08-07 2015-11-11 虎扑(上海)文化传播股份有限公司 一种数据处理方法及电子设备

Also Published As

Publication number Publication date
CN107707928A (zh) 2018-02-16

Similar Documents

Publication Publication Date Title
CN111246284B (zh) 视频流播放方法、系统、终端及存储介质
CN108696773B (zh) 一种实时视频的传输方法及装置
US8897144B2 (en) Quality of user experience testing for video transmissions
CN108347580B (zh) 一种处理视频帧数据的方法及电子设备
CN109644162B (zh) 媒体缓冲
EP3448041A1 (en) Video player client, system, and method for live broadcast video synchronization
CN108174280B (zh) 一种音视频在线播放方法及系统
US11005975B2 (en) Rapid optimization of media stream bitrate
CN104811751A (zh) 一种流媒体播放时的卡顿识别方法和装置
US20180367827A1 (en) Player client terminal, system, and method for implementing live video synchronization
CN109714622A (zh) 一种视频数据处理方法、装置及电子设备
CN112738538B (zh) 直播间挂机行为检测方法、装置、电子设备和计算机可读存储介质
CN113891175B (zh) 直播推流方法、装置及系统
CN107071549A (zh) 单解码器下多播放器快速切换方法、装置及存储介质
CN105898625B (zh) 一种播放处理方法及终端设备
CN114189711A (zh) 视频处理方法和装置、电子设备、存储介质
CN106331820B (zh) 音视频的同步处理方法和装置
CN113490055A (zh) 数据处理方法和装置
CN107707928B (zh) 一种数据流延迟的控制方法、装置及接收设备
CN105791987A (zh) 媒体数据播放的方法及终端
US8320449B2 (en) Method for controlling video frame stream
CN106302375B (zh) 去除流媒体播放器时延累积的方法及装置
WO2017071428A1 (zh) 快进快退的处理方法及终端
CN112565016B (zh) 异常时延的定位方法、系统、装置、电子设备及存储介质
CN107979482B (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