CN107566318B - 流媒体数据的修复方法及装置 - Google Patents
流媒体数据的修复方法及装置 Download PDFInfo
- Publication number
- CN107566318B CN107566318B CN201610506772.1A CN201610506772A CN107566318B CN 107566318 B CN107566318 B CN 107566318B CN 201610506772 A CN201610506772 A CN 201610506772A CN 107566318 B CN107566318 B CN 107566318B
- Authority
- CN
- China
- Prior art keywords
- network
- time
- receiving end
- sending
- preset
- 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
- 238000000034 method Methods 0.000 title claims abstract description 38
- 238000001514 detection method Methods 0.000 claims abstract description 31
- 230000005540 biological transmission Effects 0.000 claims description 37
- 230000002159 abnormal effect Effects 0.000 claims description 33
- 238000011084 recovery Methods 0.000 claims description 33
- 230000005856 abnormality Effects 0.000 claims description 15
- 230000001934 delay Effects 0.000 claims description 11
- 230000002035 prolonged effect Effects 0.000 abstract description 3
- 238000010586 diagram Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 2
- 230000014759 maintenance of location Effects 0.000 description 2
- 238000012935 Averaging Methods 0.000 description 1
- 230000002547 anomalous effect Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000000903 blocking effect Effects 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 230000008707 rearrangement Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Landscapes
- Communication Control (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种流媒体数据的修复方法及装置。发送端根据接收端发送的心跳包进行网络异常检测;当检测出网络异常时,获取重传数据;根据预设发送间隔向所述接收端发送所述重传数据本发明实施例中发送端能够根据心跳包的接收情况确定是否存在网络异常,当发生网络异常时按照预设发送间隔向接收端发送所述重传数据。本发明实施例中当网络存在异常时心跳包的更新周期将延长,发送端根据心跳包的接收情况即可推断出是否存在网络异常,进而提高网络异常的检测效率。在及时发现网络异常后能够及时向接收端发送重传数据,实现流媒体数据的及时修复,提高重传效率。
Description
技术领域
本发明实施例涉及流媒体技术,尤其涉及一种流媒体数据的修复方法及装置。
背景技术
在多媒体网络传输中,时常出现乱序、迟延、丢包等网络侧问题。这些网络问题将极大的影响接收端接收到的媒体质量,导致流媒体出现花屏、黑屏、马赛克、卡顿等不良用户体验。
为了保证流媒体质量需要对网络丢失的数据包进行重传,现有技术的重传机制为,由接收端发出重传请求,发送端接收到重传请求后向接收端发送相应的帧数据。
然而,在网络情况异常时接收端的重传请求恐无法及时的发送到发送端,导致发送端无法及时重传相应的帧数据,甚至加重网络拥堵,重传效率低。
发明内容
本发明提供一种流媒体数据的修复方法及装置,以实现高效的对流媒体数据进行重传修复。
第一方面,本发明实施例提供了一种流媒体数据的修复方法,包括:
发送端根据接收端发送的心跳包进行网络异常检测;
当检测出网络异常时,获取重传数据;
根据预设发送间隔向所述接收端发送所述重传数据。
第二方面,本发明实施例还提供了一种流媒体数据的修复装置,所述装置位于发送端,包括:
接收单元,用于接收端发送的心跳包;
异常检测单元,用于根据所述接收单元接收到的所述心跳包进行网络异常检测;
重传数据获取单元,用于当所述异常检测单元检测出网络异常时,获取重传数据;
发送单元,用于根据预设发送间隔向所述接收端发送所述重传数据获取单元获取的所述重传数据。
本发明实施例中发送端能够根据心跳包的接收情况确定是否存在网络异常,当发生网络异常时按照预设发送间隔向接收端发送所述重传数据。现有技术中发送端只有接收到重传指令时才进行重传,然而当网络异常时发送端往往无法及时接收到重传执行,修复效率低。本发明实施例中当网络存在异常时心跳包的更新周期将延长,发送端根据心跳包的接收情况即可推断出是否存在网络异常,进而提高网络异常的检测效率。在及时发现网络异常后能够及时向接收端发送重传数据,实现流媒体数据的及时修复,提高重传效率。
附图说明
图1是本发明实施例一中的流媒体数据的修复方法的流程图;
图2是本发明实施例一中的数据流示意图;
图3是本发明实施例二中的流媒体数据的修复方法的流程图;
图4是本发明实施例三中的流媒体数据的修复方法的流程图;
图5是本发明实施例四中的流媒体数据的修复方法的流程图;
图6是本发明实施例五中的流媒体数据的修复方法的流程图;
图7是本发明实施例六中的流媒体数据的修复方法的流程图;
图8是本发明实施例七中的流媒体数据的修复方法的流程图;
图9是本发明实施例八中的流媒体数据的修复装置的结构示意图。
具体实施方式
下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。
实施例一
图1为本发明实施例一提供的一种流媒体数据的修复方法的流程图,本实施例可适用于流媒体数据进行重传的情况,该方法可以由流媒体数据的发送端来执行,该发送端可以为家庭影院系统也可以为流媒体网络侧服务器等,该方法具体包括如下步骤:
步骤110、发送端根据接收端发送的心跳包进行网络异常检测。
其中,如图2所示,发送端为流媒体数据的发送方,接收端为流媒体数据的接收方。流媒体,又叫流式媒体,顾名思义是一种边传边播的媒体,属于多媒体的一种。边传边播是指媒体提供商在网络上传输媒体的“同时”,用户一边不断地接收并观看或收听被传输的媒体。流媒体数据可以为音频数据或视频数据。流媒体数据的数据流和控制流可以经由实时传输协议(Real-time Transport Protocol,RTP)/实时传输控制协议(RealtimeTransport Control Protocol,RTCP)等协议封装,物理层可如无线保真WIFI/长期演进(Long Term Evolution,LTE)等有线或者无线的媒介承载。
接收端每隔一定时间发送心跳包,通知发送端连接正常。心跳包可以经由RTCP等协议封装。内容可以为确认字符(Acknowledgement,ACK)、非确认字符NACK或者其他格式。在确定心跳包内容时,可根据当前的网络类型以及资源占用比例进行确定,以便降低网路负荷。心跳包的发送间隔可根据具体的使用场景进行确定。示例性的,如果流媒体为具有强实时性,则每隔0.1秒发送一个心跳包;如果流媒体具有准实时性,则每隔1秒发送个心跳包。强实时性的流媒体可以为赛事直播等流媒体,准实时性的流媒体其实时性可以略低于强实时性的流媒体,如录制的录像流媒体等。
可选的,发送端接收数据包后,对数据包进行解封装,根据数据数据包的内容确定是否为心跳包。如果为心跳包,则记录心跳包的更新时间。根据心跳包的更新时间可确定是否存在网络异常。例如,如果在最新的更新时间后持续未收到新的心跳包更新,则确定出现网络异常。
可选的,每个心跳包具有自己的序列号,且相邻的两个心跳包具有连续的序列号。发送端根据时间对接收到的心跳包进行排序,如果心跳包的序列号不是顺序排列,则确定出现网络异常。例如,连续接收到的心跳包的序列号为{心跳包0、心跳包1、心跳包2、心跳包4、心跳包5、心跳包6},则判定网络出现异常,如心跳包3丢失。又例如,连续接收到的心跳包的序列号为{心跳包0、心跳包1、心跳包2、心跳包4、心跳包5、心跳包3、心跳包6},则判定网络出现异常,如心跳包3延迟。
步骤120、当检测出网络异常时,获取重传数据。
可选的,根据流媒体的整体时间以及当前时间,结合预算网络时间,确定重传内容。可选的,根据网络异常的时间以及已发送的流媒体数据内容确定网络异常时间段对应的重传数据。例如,从时刻A到时刻B存在网络异常,则根据时刻A之前已发送的流媒体数据确定待发送的重传数据。优选的,重传数据为帧内编码帧。
可选的,心跳包为ACK。接收端将接收到的关键帧的标识添加到心跳包并发送给发送端。发送端接收到心跳包后,通过解析心跳包得到关键帧的标识,得到接收端已接收到的关键帧标识集合。根据该关键帧标识集合确定是否发生网络异常。网络异常包括数据丢失和数据延迟。当存在网络异常时将接收端发送的关键帧的标识对应的关键帧作为重传数据。例如:关键帧标识集合为{关键帧0、关键帧1、关键帧2、关键帧4},则判定接收端未接收到关键帧3。进一步的,将关键帧3作为重传数据。又例如,关键帧标识集合为{关键帧0、关键帧1、关键帧2、关键帧4、关键帧3},则判定发生数据延迟。
可选的,心跳包为NACK。接收端将未接收到的数据包的标识通过NACK心跳包发送至发送端。数据包的标识指向流媒体数据的某个数据包,进而发送端可以根据该数据包的标识确定重传数据。
步骤130、根据预设发送间隔向接收端发送重传数据。
可以将网络异常的历史平均恢复时间作为预设发送间隔。从最后一次更新心跳包的时间开始,经过预设发送间隔之后向所述接收端发送所述重传数据。
也可根据当前统计的异常时间从历史恢复时间中查找大于等于当前异常时间的恢复时间,取平均值后得到预设发送间隔。从当前时间开始,经过得到的预设发送间隔后向所述接收端发送所述重传数据。
需要说明的是,当检测到网络异常之后,还可以先确定预设发送间隔,再获取重传数据,然后根据预设发送间隔向所述接收端发送所述重传数据。
本实施例中发送端能够根据心跳包的接收情况确定是否存在网络异常,当发生网络异常时按照预设发送间隔向接收端发送所述重传数据。现有技术中发送端只有接收到重传指令时才进行重传,然而当网络异常时发送端往往无法及时接收到重传执行,修复效率低。本实施例中当网络存在异常时心跳包的更新周期将延长,发送端根据心跳包的接收情况即可推断出是否存在网络异常,进而提高网络异常的检测效率。在及时发现网络异常后能够及时向接收端发送重传数据,实现流媒体数据的及时修复,提高重传效率。
实施例二
图3为本发明实施例二提供的一种流媒体数据的修复方法的流程图,作为对实施例一的进一步说明,步骤110、发送端根据接收端发送的心跳包进行网络异常检测,可通过下述方式进行实施:
步骤111、估算往返时延(Round-Trip Time,RTT)。
其中,往返时延表示从发送端发送数据开始,到发送端收到来自接收端的确认(接收端收到数据后便立即发送确认),总共经历的时延。往返时延对应网络传输数据所花费的时间。由于网络状态会受信号干扰、剩余带宽等因素的印象,因此往返时延也会随着网络状态的改变而变化。因此需要对往返时延进行估算。
可选的,采用往返时延估算策略动态计算往返时延。例如,通过统计一定时间(如1小时或1天)内流媒体数据包或者测试数据包对应的往返时延,得到往返时延的平均值,进而估算出往返时延。或者,统计不同网络状态下的往返时延,根据当前的网络状态参数确定当前的往返时延。
步骤112、如果预设数量的往返时延内未收到接收端发送的心跳包,则确定网络异常。
优选的,预设数量为2,即当2个往返时延内未收到接收端发送的心跳包,则确定网络异常。
本实施例能够根据预设数量的往返时延内的心跳包的接收情况确定是否存在网络异常,简化网络异常的检测步骤,提高网络异常的检测效率。
实施例三
图4为本发明实施例三提供的一种流媒体数据的修复方法的流程图,作为对上述实施例的进一步说明,步骤112、如果预设数量的往返时延内未收到接收端发送的心跳包,则确定网络异常,可通过下属方式进行实施:
步骤112a、如果预设数量的往返时延内未收到接收端发送的心跳包,则获取未收到心跳包的累计时间。
在收到更新的心跳包后开始计时。如果在预设数量的往返时延内未收到接收端发送的心跳包,则持续计时,得到累计时间。如果在预设数量的往返时延内收到接收端发送的心跳包,则取消计时。
步骤112b、根据累计时间对网络异常进行分级,得到网络异常等级。
可根据持用场景对网络异常等级进行分级。可按照帧的更新需求进行分级。例如:强实时级网络异常对应的异常时间为0.1秒,准实时级网络异常对应的异常时间为1秒,严重异常级网络异常对应的异常时间为10秒,断线级网络异常对应的异常时间为30秒。基于上述分类标准得到:如果累计时间为(0.1,1]秒,则为强实时级网络异常。如果累计时间为(1,10]秒,则为准实时级网络异常。如果累计时间为(10,30]秒,则为严重异常级网络异常。如果累计时间为大于30秒,则为断线级网络异常。
相应的,步骤120、当检测出网络异常时,获取重传数据,可实施为:
步骤120’、当检测出网络异常时,根据网络异常等级确定重传数据。
对于流媒体而言需要较高的实时性,因此如果网络异常时间过长,则无法保证接收端的路畅播放。因此,根据步骤112b中确定的网络异常等级可确定是否进行重传以及具体的重传数据内容。
具体的,如果累计时间达到严重异常级或断线级,则取消重传。并向接收端发送断线消息。对于实时性要求较高的直播流媒体内容,如果累计时间达到准实时级网络异常,则发送端向接收端发送网络异常,并取消数据重传。如果累计时间处于强实时级网络异常,则计算重传数据。
对于实时性要求较弱的录像流媒体内容,如果累计时间达到准实时级网络异常和强实时级网络异常,则计算重传数据。
本实施例能够根据网络异常时间对网络异常情况进行分级,并根据分级情况确定重传数据,实现准确判断是否有必要进行重传,进一步提高重传效率。
实施例四
图5为本发明实施例四提供的一种流媒体数据的修复方法的流程图,作为对实施例二的进一步说明,步骤120中获取重传数据,可通过下述方式进行实施:
步骤120a、将网络异常期间的关键帧确定为重传数据。或者,
步骤120b、生成帧内编码帧,并将所述帧内编码帧确定为重传数据。
另外,为了降低码率,仅重传网络异常期间的关键帧。对于视频传输,考虑到肉眼的滞留效应,可将在滞留效应内,重新生成帧内编码帧作为传输内容。
本实施例中使用已知的关键帧作为重传数据能够快速得到重传数据,减少重传数据的生成时间。使用生成的帧内编码帧作为对重传数据时,由于帧内编码帧不受其他帧影响的特性,因此能够提高重传数据的独立性以及抗干扰性。
实施例五
图6为本发明实施例五提供的一种流媒体数据的修复方法的流程图,作为对上述实施例的进一步说明,步骤130、向接收端发送重传数据,包括:
步骤131、使用预设每秒传输帧数(Frames Per Second,FPS)向接收端发送重传数据,预设每秒传输帧数小于正常的每秒传输帧数。
可选的,切换到预设FPS,预设FPS的全部视频采用帧内(intra)编码传输模式。
步骤132、当接收到稳定的心跳包反馈或者心跳包间隔收拢时提高每秒传输帧数,直至每秒传输帧数恢复到正常的每秒传输帧数。
当心跳包间隔由大于正常心跳包间隔向正常心跳包间隔变化时,确定心跳包间隔收拢。
本实施例中采用主动重传,能使视屏较快恢复和在网络状况未稳定时,仍能收到可接受的效果。当网络异常解除时,逐步提高FPS直至恢复至正常水平,达到在不影响流媒体流畅性的同时提高流媒体的音质或画质。
实施例六
图7为本发明实施例六提供的一种流媒体数据的修复方法的流程图,作为对上述实施例的进一步说明,在步骤130、根据预设发送间隔向接收端发送重传数据之前,还包括:
步骤140、根据至少一个历史恢复时长确定预设发送间隔。
其中,历史恢复时长为已记录的从发现心跳包异常到成功收到更新的心跳包的时间。
在侦测到网络异常的时候,如果立即重传,可能并不能及时到达接收端,反而加重网络拥塞状况。拥塞规避需要退避一定时间,再发起主动重传,提高重传成功概率。
可选的,至少一个历史恢复记录可以为全部历史恢复记录,此时预设发送间隔为全部历史恢复记录的平均恢复时长。
可选的,至少一个历史恢复记录还可以是与当前累计时间匹配的历史恢复记录。匹配指的是与当前实现相同或相近以及大于累计时间的历史恢复记录。计算匹配的历史恢复记录的平均值,将该平均值确定为预设发送间隔。
本实施例能够根据历史恢复记录确定预设发送间隔,进而规避因立刻重传造成网络进一步拥堵的问题,提高重传效率。
实施例七
图8为本发明实施例七提供的一种流媒体数据的修复方法的流程图,作为对上述实施例的进一步说明,步骤110、发送端根据接收端发送的心跳包进行网络异常检测,包括:
步骤110’、如果当前网络类型符合预设网络类型或者当前网络带宽大于预设网络带宽,则发送端根据接收端发送的心跳包进行网络异常检测。
在执行上述实施例所示的方法之前,判断当前网络环境是否具备持续发送心跳包的带宽。具体包括判断当前网络类型是否符合预设网络类型,或者,判断当前网络带宽是否大于预设网络带宽。
预设网络类型如LTE、点对点等。预设网络带宽可以为100Mbps或100Mbps等。
在高带宽无线应用中,遇到外界无线干扰,造成突发丢包,导致接收端数据无法解码,出现马赛克等现象。考虑到接收端发送的修复命令的时延以及同样面临丢失的可能,因此实施发送端主动重传的机制,应对受干扰时突发丢包问题。
本实施例能够在执行网络异常检测之前,根据当前的网络类型或带宽确定当前场景是否适用于进行基于心跳包的网络异常检测,避免因带宽不够导致网络无法支持上述实施例提供的网络异常恢复的技术法案,提高流媒体数据恢复的可靠性。
实施例八
图9为本发明实施例八提供的一种流媒体数据的修复装置的结构示意图,该装置位于流媒体数据的发送端中,包括:
接收单元11,用于接收端发送的心跳包;
异常检测单元12,用于根据所述接收单元11接收到的所述心跳包进行网络异常检测;
重传数据获取单元13,用于当所述异常检测单元12检测出网络异常时,获取重传数据;
发送单元14,用于根据预设发送间隔向所述接收端发送所述重传数据获取单元13获取的所述重传数据。
进一步的,所述异常检测单元12包括:
往返时延估算子单元121,用于估算往返时延;
网络异常确定子单元122,用于如果预设数量的往返时延内未收到接收端发送的心跳包,则确定网络异常。
进一步的,网络异常确定子单元122具体用于:
如果预设数量的往返时延内未收到接收端发送的心跳包,则获取未收到心跳包的累计时间;
根据所述累计时间对网络异常进行分级,得到网络异常等级;
相应的,所述重传数据获取单元13具体用于,当检测出网络异常时,根据所述网络异常确定子单元122确定的所述网络异常等级确定重传数据。
进一步的,所述重传数据获取单元13具体用于:
将网络异常期间的关键帧确定为重传数据;或者,
生成帧内编码帧,并将所述帧内编码帧确定为重传数据。
进一步的,所述发送单元14具体用于:
使用预设每秒传输帧数向所述接收端发送所述重传数据,所述预设每秒传输帧数小于正常的每秒传输帧数;
当接收到稳定的心跳包反馈或者心跳包间隔收拢时提高每秒传输帧数,直至每秒传输帧数恢复到所述正常的每秒传输帧数。
进一步的,还包括:
预设发送间隔确定单元15,用于根据至少一个历史恢复时长确定所述预设发送间隔,所述历史恢复时长为已记录的从发现心跳包异常到成功收到更新的心跳包的时间。
进一步的,所述异常检测单元12具体用于,如果当前网络类型符合预设网络类型或者当前网络带宽大于预设网络带宽,则根据所述接收单元11接收到的所述心跳包进行网络异常检测。
上述装置可执行本发明实施例一至实施例七所提供的方法,具备执行上述方法相应的功能模块和有益效果。未在本实施例中详尽描述的技术细节,可参见本发明实施例一至实施例七所提供的方法。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。
Claims (10)
1.一种流媒体数据的修复方法,其特征在于,包括:
发送端根据接收端发送的心跳包进行网络异常检测;
当检测出网络异常时,获取重传数据;
根据预设发送间隔向所述接收端发送所述重传数据;
所述发送端根据接收端发送的心跳包进行网络异常检测,包括:
估算往返时延;
如果预设数量的往返时延内未收到接收端发送的心跳包,则获取未收到心跳包的累计时间;
根据所述累计时间对网络异常进行分级,得到网络异常等级,所述网络异常等级包括严重异常级、断线级、准实时级和强实时;
所述当检测出网络异常时,获取重传数据,包括:
如果所述累计时间达到严重异常级或断线级,则取消重传,并向所述接收端发送断线消息;
如果所述累计时间达到准实时级网络异常,则向所述接收端发送网络异常,并取消数据重传;
如果所述累计时间处于强实时级网络异常,则计算重传数据;
所述估算往返时延,包括:
通过统计一定时间内流媒体数据包或者测试数据包对应的往返时延,得到往返时延的平均值;或者,统计不同网络状态下的往返时延,根据当前的网络状态参数确定当前的往返时延;
根据预设发送间隔向所述接收端发送所述重传数据,包括:
根据当前统计的异常时间从历史恢复时间中查找大于等于所述异常时间的恢复时间,根据所述恢复时间求取平均值,得到预设发送间隔;从当前时间开始,经过所述预设发送间隔后向所述接收端发送所述重传数据。
2.根据权利要求1所述的流媒体数据的修复方法,其特征在于,所述获取重传数据,包括:
将网络异常期间的关键帧确定为重传数据;或者,
生成帧内编码帧,并将所述帧内编码帧确定为重传数据。
3.根据权利要求2所述的流媒体数据的修复方法,其特征在于,所述向所述接收端发送所述重传数据,包括:
使用预设每秒传输帧数向所述接收端发送所述重传数据,所述预设每秒传输帧数小于正常的每秒传输帧数;
当接收到稳定的心跳包反馈或者心跳包间隔收拢时提高每秒传输帧数,直至每秒传输帧数恢复到所述正常的每秒传输帧数。
4.根据权利要求1所述的流媒体数据的修复方法,其特征在于,在根据预设发送间隔向所述接收端发送所述重传数据之前,还包括:
根据至少一个历史恢复时长确定所述预设发送间隔,所述历史恢复时长为已记录的从发现心跳包异常到成功收到更新的心跳包的时间。
5.根据权利要求1-4中任一项所述的流媒体数据的修复方法,其特征在于,所述发送端根据接收端发送的心跳包进行网络异常检测,包括:
如果当前网络类型符合预设网络类型或者当前网络带宽大于预设网络带宽,则发送端根据接收端发送的心跳包进行网络异常检测。
6.一种流媒体数据的修复装置,其特征在于,所述装置位于发送端,包括:
接收单元,用于接收端发送的心跳包;
异常检测单元,用于根据所述接收单元接收到的所述心跳包进行网络异常检测;
重传数据获取单元,用于当所述异常检测单元检测出网络异常时,获取重传数据;
发送单元,用于根据预设发送间隔向所述接收端发送所述重传数据获取单元获取的所述重传数据;
所述异常检测单元,用于估算往返时延;
如果预设数量的往返时延内未收到接收端发送的心跳包,则获取未收到心跳包的累计时间;
根据所述累计时间对网络异常进行分级,得到网络异常等级,所述网络异常等级包括严重异常级、断线级、准实时级和强实时;
所述重传数据获取单元用于,如果所述累计时间达到严重异常级或断线级,则取消重传,并向所述接收端发送断线消息;
如果所述累计时间达到准实时级网络异常,则向所述接收端发送网络异常,并取消数据重传;
如果所述累计时间处于强实时级网络异常,则计算重传数据;
所述估算往返时延,包括:
通过统计一定时间内流媒体数据包或者测试数据包对应的往返时延,得到往返时延的平均值;或者,统计不同网络状态下的往返时延,根据当前的网络状态参数确定当前的往返时延;
所述发送单元用于,根据当前统计的异常时间从历史恢复时间中查找大于等于所述异常时间的恢复时间,根据所述恢复时间求取平均值,得到预设发送间隔;从当前时间开始,经过所述预设发送间隔后向所述接收端发送所述重传数据。
7.根据权利要求6所述的流媒体数据的修复装置,其特征在于,所述重传数据获取单元具体用于:
将网络异常期间的关键帧确定为重传数据;或者,
生成帧内编码帧,并将所述帧内编码帧确定为重传数据。
8.根据权利要求7所述的流媒体数据的修复装置,其特征在于,所述发送单元具体用于:
使用预设每秒传输帧数向所述接收端发送所述重传数据,所述预设每秒传输帧数小于正常的每秒传输帧数;
当接收到稳定的心跳包反馈或者心跳包间隔收拢时提高每秒传输帧数,直至每秒传输帧数恢复到所述正常的每秒传输帧数。
9.根据权利要求6所述的流媒体数据的修复装置,其特征在于,还包括:
预设发送间隔确定单元,用于根据至少一个历史恢复时长确定所述预设发送间隔,所述历史恢复时长为已记录的从发现心跳包异常到成功收到更新的心跳包的时间。
10.根据权利要求6-9中任一项所述的流媒体数据的修复装置,其特征在于,所述异常检测单元具体用于,如果当前网络类型符合预设网络类型或者当前网络带宽大于预设网络带宽,则根据所述接收单元接收到的所述心跳包进行网络异常检测。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610506772.1A CN107566318B (zh) | 2016-06-30 | 2016-06-30 | 流媒体数据的修复方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610506772.1A CN107566318B (zh) | 2016-06-30 | 2016-06-30 | 流媒体数据的修复方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107566318A CN107566318A (zh) | 2018-01-09 |
CN107566318B true CN107566318B (zh) | 2021-08-03 |
Family
ID=60968765
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610506772.1A Active CN107566318B (zh) | 2016-06-30 | 2016-06-30 | 流媒体数据的修复方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107566318B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113824539A (zh) * | 2021-08-25 | 2021-12-21 | 通号城市轨道交通技术有限公司 | 联锁监测机与mss系统数据传输方法及装置 |
CN114553778B (zh) * | 2022-02-25 | 2024-08-30 | 杭州网易云音乐科技有限公司 | 心跳控制方法及装置、存储介质、电子设备 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103036904A (zh) * | 2012-12-27 | 2013-04-10 | 东方通信股份有限公司 | 一种在通信网络中使用udp协议进行数据可靠传输的方法 |
CN104125034A (zh) * | 2013-04-23 | 2014-10-29 | 深圳市同洲电子股份有限公司 | Udp数据包的传输方法及系统 |
CN104270450A (zh) * | 2014-10-10 | 2015-01-07 | 浪潮集团有限公司 | 一种采用udp协议的双控制器多链路心跳监测方法 |
CN105553879A (zh) * | 2015-12-18 | 2016-05-04 | 湖南大学 | 一种基于服务器的流调度方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9806896B2 (en) * | 2014-09-30 | 2017-10-31 | Nicira, Inc. | Optimized message retransmission mechanism for distributed storage virtualization directory system |
-
2016
- 2016-06-30 CN CN201610506772.1A patent/CN107566318B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103036904A (zh) * | 2012-12-27 | 2013-04-10 | 东方通信股份有限公司 | 一种在通信网络中使用udp协议进行数据可靠传输的方法 |
CN104125034A (zh) * | 2013-04-23 | 2014-10-29 | 深圳市同洲电子股份有限公司 | Udp数据包的传输方法及系统 |
CN104270450A (zh) * | 2014-10-10 | 2015-01-07 | 浪潮集团有限公司 | 一种采用udp协议的双控制器多链路心跳监测方法 |
CN105553879A (zh) * | 2015-12-18 | 2016-05-04 | 湖南大学 | 一种基于服务器的流调度方法 |
Also Published As
Publication number | Publication date |
---|---|
CN107566318A (zh) | 2018-01-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9094200B2 (en) | Method, apparatus and system for sending and receiving a media stream | |
CN101719809B (zh) | 一种媒体数据包丢包恢复的方法及系统 | |
CN101861709B (zh) | 用于具有合并的自动重复请求的自适应前向纠错以在无线局域网中进行可靠多播的方法和装置 | |
US8566662B2 (en) | Transmission apparatus, receiving apparatus, and method | |
US9781488B2 (en) | Controlled adaptive rate switching system and method for media streaming over IP networks | |
CN106850595A (zh) | 一种流媒体传输优化方法及装置 | |
JP2004007823A (ja) | データ伝送方法および装置 | |
WO2011093836A1 (en) | A method and apparatus for retransmission decision making | |
US10230651B2 (en) | Effective intra-frame refresh in multimedia communications over packet networks | |
WO2017215583A1 (zh) | 视频业务质量评估的方法及装置 | |
US20100095181A1 (en) | Adaptive and scalable packer error correction apparatus and method | |
CN112436924B (zh) | 一种数据传输方法及电子设备 | |
Wu et al. | Streaming high-definition real-time video to mobile devices with partially reliable transfer | |
US8811180B2 (en) | Communication apparatus and communication method | |
CN103166808A (zh) | 一种iptv业务质量的监测方法,装置及系统 | |
CN111163362B (zh) | 一种自适应重传等待时间的视频接收方法及系统 | |
CN107566318B (zh) | 流媒体数据的修复方法及装置 | |
US20130003524A1 (en) | Selective Caching in a Packet Network and Packet Loss Repair Using Selective Caching | |
CN116094661A (zh) | 一种数据传输控制方法、装置、设备、存储介质及产品 | |
JP5682292B2 (ja) | 映像配信装置及び映像配信方法 | |
CN110248257B (zh) | 数据传输方法、装置、网络接入设备和存储介质 | |
JP5523163B2 (ja) | 送信装置、送信方法、プログラム | |
KR100720592B1 (ko) | 인트라 프레임의 전송오류 복구 방법 | |
JP2014003371A (ja) | 受信装置及び受信装置用プログラム | |
KR101725345B1 (ko) | 무선 랜에서 브로드캐스팅/멀티캐스팅 전송과 유니캐스팅 전송을 혼용한 방송 패킷 재전송 시스템 및 방법 |
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 | ||
EE01 | Entry into force of recordation of patent licensing contract |
Application publication date: 20180109 Assignee: Shanghai Li Ke Semiconductor Technology Co., Ltd. Assignor: Leadcore Technology Co., Ltd. Contract record no.: 2018990000159 Denomination of invention: Streaming media data restoration method and device License type: Common License Record date: 20180615 |
|
EE01 | Entry into force of recordation of patent licensing contract | ||
GR01 | Patent grant | ||
GR01 | Patent grant |