CN105916059A - 视频传输处理方法及装置 - Google Patents

视频传输处理方法及装置 Download PDF

Info

Publication number
CN105916059A
CN105916059A CN201610282505.0A CN201610282505A CN105916059A CN 105916059 A CN105916059 A CN 105916059A CN 201610282505 A CN201610282505 A CN 201610282505A CN 105916059 A CN105916059 A CN 105916059A
Authority
CN
China
Prior art keywords
video
frame
packet loss
queue length
transmit queue
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.)
Pending
Application number
CN201610282505.0A
Other languages
English (en)
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.)
Beijing Qihoo Technology Co Ltd
Qizhi Software Beijing Co Ltd
Original Assignee
Beijing Qihoo Technology Co Ltd
Qizhi Software Beijing 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 Beijing Qihoo Technology Co Ltd, Qizhi Software Beijing Co Ltd filed Critical Beijing Qihoo Technology Co Ltd
Priority to CN201610282505.0A priority Critical patent/CN105916059A/zh
Publication of CN105916059A publication Critical patent/CN105916059A/zh
Priority to PCT/CN2017/081504 priority patent/WO2017186067A1/zh
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network 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/63Control 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/647Control signaling between network components and server or clients; Network processes for video distribution between server and clients, e.g. controlling the quality of the video stream, by dropping packets, protecting content from unauthorised alteration within the network, monitoring of network load, bridging between two different networks, e.g. between IP and wireless
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network 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/63Control 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/647Control signaling between network components and server or clients; Network processes for video distribution between server and clients, e.g. controlling the quality of the video stream, by dropping packets, protecting content from unauthorised alteration within the network, monitoring of network load, bridging between two different networks, e.g. between IP and wireless
    • H04N21/64784Data processing by the network
    • H04N21/64792Controlling the complexity of the content stream, e.g. by dropping packets
    • 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/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/238Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明公开了一种视频传输处理方法及装置。其中,视频传输处理方法包括:接收至少一视频帧;根据视频帧发送队列长度与参考队列长度的偏差值以及上一次计算得到的丢包率,计算本次的丢包率;根据本次的丢包率,确定对接收到的视频帧是否进行丢弃处理。基于上述实施方案,可以动态调整视频帧的丢包率,从而能够精确地确定是否对视频帧进行丢弃处理,避免了仅用同一丢包率对视频帧进行丢弃处理造成的不合理丢弃问题,以及在网络出现问题时而导致的集中丢弃一段连续的视频帧的问题,使得对视频帧丢弃处理更为合理,实现了在网络状况较差时,也能够流畅播放视频的效果,避免出现视频画面不清晰,甚至出现视频画面卡住的情况。

Description

视频传输处理方法及装置
技术领域
本发明涉及通信技术领域,具体涉及一种视频传输处理方法及装置。
背景技术
随着Internet的不断发展,人们希望在网上传送更多的多媒体信息。视频信号的传输是多媒体信息传输的核心。视频传输一般是采用无线网络传输,然而,受无线网络的稳定性和带宽不足的影响,很容易出现不合理丢包的问题。
在无线网络环境较差时,很容易出现视频帧发送队列中的视频帧未被及时发送出去的情况,而当视频帧发送队列的长度达到极限值后,在后续的视频传输过程中,视频发送装置所接收到的视频帧将会被直接丢弃,待视频帧发送队列有空间放入视频帧后,才会将后续接收到的视频帧放入到视频帧发送队列,若无线网络环境差的情况持续时间较长时,就很可能出现一段连续的视频帧被集中丢弃,这样就会造成视频接收装置所接收到的视频帧也会不完整,导致严重的数据缺失,在对视频帧进行解码后,得到的不再是完整的视频画面,容易出现视频画面不清晰,甚至出现视频画面卡住的情况,视频的播放不流畅。因此如何在网络不稳定、带宽有限的无线网络上进行视频的流畅播放,是一个迫切需要解决的问题。
发明内容
鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的视频传输处理方法和相应的视频传输处理装置。
根据本发明的一个方面,提供了一种视频传输处理方法,包括:
接收至少一视频帧;
根据视频帧发送队列长度与参考队列长度的偏差值以及上一次计算得到的丢包率,计算本次的丢包率;
根据本次的丢包率,确定对接收到的视频帧是否进行丢弃处理。
根据本发明的另一方面,提供了一种视频传输处理装置,包括:
接收模块,适于接收至少一视频帧;
计算模块,适于根据视频帧发送队列长度与参考队列长度的偏差值以及上一次计算得到的丢包率,计算本次的丢包率;
处理模块,适于根据本次的丢包率,确定对接收到的视频帧是否进行丢弃处理。
根据本发明提供的方案,接收至少一视频帧;根据视频帧发送队列长度与参考队列长度的偏差值以及上一次计算得到的丢包率,计算本次的丢包率;根据本次的丢包率,确定对接收到的视频帧是否进行丢弃处理。基于上述实施方案,可以动态调整视频帧的丢包率,从而能够精确地确定是否对视频帧进行丢弃处理,避免了仅用同一丢包率对视频帧进行丢弃处理造成的不合理丢弃问题,以及在网络出现问题时而导致的集中丢弃一段连续的视频帧的问题,使得对视频帧丢弃处理更为合理,实现了在网络状况较差时,也能够流畅播放视频的效果,避免出现视频画面不清晰,甚至出现视频画面卡住的情况。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1示出了根据本发明一个实施例的视频传输处理方法的流程示意图;
图2示出了根据本发明另一个实施例的视频传输处理方法的流程示意图;
图3示出了根据本发明一个实施例的视频传输处理装置的结构框图;
图4示出了根据本发明另一个实施例的视频传输处理装置的结构框图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
本发明的实施例提供一种视频传输处理方法,可以应用于进行实时视频的网络传输的应用场景中,例如视频会议,视频点播等。本发明的实施例以视频点播的应用场景为例进行说明。概括地讲,视频点播系统包括视频发送装置和视频接收装置。其中,视频发送装置通过摄像获取视频帧队列,并对视频帧队列进行编码后通过网络向视频接收装置发送。发送方式包括宽带网络、3G网络或者4G网络等,不断变化的网络环境对视频播放流畅度的影响十分显著,本发明的实施例所提供的视频传输处理方法,其目的即在于在不断变化的网络环境下进行视频网络点播时,提高视频播放的流畅度。
图1示出了根据本发明一个实施例的视频传输处理方法的流程示意图。如图1所示,该方法包括以下步骤:
步骤S100,接收至少一视频帧。
具体地,视频帧是视频中最小单位的视频画面,一个视频由多个视频帧组成,视频发送装置通过摄像获取视频帧队列,即接收至少一视频帧。
步骤S101,根据视频帧发送队列长度与参考队列长度的偏差值以及上一次计算得到的丢包率,计算本次的丢包率。
其中,视频帧发送队列长度指视频发送装置通过网络发送至视频接收装置的视频帧的长度,视频帧数体现了视频帧发送队列的长度;参考队列长度是根据视频帧发送队列长度的极限值确定的,在实际情况中,视频帧发送队列长度可能小于或等于参考队列长度。参考队列长度是根据当前网络状况等进行设定的,本领域技术人员可以根据实际需要进行设定,这里不做具体限定。
在本发明实施例中,在计算本次的丢包率时,需要将上一次计算得到的丢包率作为参考因数来计算本次的丢包率,也就是说,上一次计算得到的丢包率对本次的丢包率具有一定的影响;视频帧发送队列长度与参考队列长度的偏差值体现了视频帧发送队列还能放入的视频帧数,该偏差值作为参考因数来计算本次的丢包率,也就是说,该偏差值对本次的丢包率具有一定的影响,具体地,根据视频帧发送队列长度与参考队列长度的偏差值以及上一次计算得到的丢包率,计算本次的丢包率。
步骤S102,根据本次的丢包率,确定对接收到的视频帧是否进行丢弃处理。
在根据步骤S101计算得到本次的丢包率后,则能够确定是否对接收到的视频帧进行丢弃处理。
根据本发明上述实施例提供的视频传输处理方法,接收至少一视频帧;根据视频帧发送队列长度与参考队列长度的偏差值以及上一次计算得到的丢包率,计算本次的丢包率;根据本次的丢包率,确定对接收到的视频帧是否进行丢弃处理。基于上述实施方案,可以动态调整视频帧的丢包率,从而能够精确地确定是否对视频帧进行丢弃处理,避免了仅用同一丢包率对视频帧进行丢弃处理造成的不合理丢弃问题,以及在网络出现问题时而导致的集中丢弃一段连续的视频帧的问题,使得对视频帧丢弃处理更为合理,实现了在网络状况较差时,也能够流畅播放视频的效果,避免出现视频画面不清晰,甚至出现视频画面卡住的情况。
图2示出了根据本发明另一个实施例的视频传输处理方法的流程示意图。如图2所示,该方法包括以下步骤:
步骤S200,接收至少一视频帧。
步骤S201,根据视频帧发送队列长度与参考队列长度的偏差值以及上一次计算得到的丢包率,计算本次的丢包率。
其中,视频帧发送队列长度指视频发送装置通过网络发送至视频接收装置的视频帧的长度,视频帧数体现了视频帧发送队列的长度;参考队列长度是根据视频帧发送队列长度的极限值确定的,在实际情况中,视频帧发送队列长度可能小于或等于参考队列长度。参考队列长度是根据当前网络状况等进行设定的,本领域技术人员可以根据实际需要进行设定,这里不做具体限定。
在本发明实施例中,具体可以采用如下方法计算本次的丢包率:
方法一:
当到达定时时间时,根据视频帧发送队列长度与参考队列长度的偏差值以及上一次计算得到的丢包率,计算本次的丢包率,也就是说,需要预先设定好计算丢包率的时间,当到达设定时间时,根据视频帧发送队列长度与参考队列长度的偏差值以及上一次计算得到的丢包率,计算本次的丢包率,举例说明,预先设定每隔5秒钟计算一次丢包率,当距离上一次计算丢包率的时间为5秒钟时,根据视频帧发送队列长度与参考队列长度的偏差值以及上一次计算得到的丢包率,计算本次的丢包率,这里对所设定的时间仅仅是举例说明,不具有任何限定作用,本领域技术人员可以根据实际需要进行设定,在此不再赘述。
方法二:
当视频帧发送队列长度达到第一预设阈值时,根据视频帧发送队列长度与参考队列长度的偏差值以及上一次计算得到的丢包率,计算本次的丢包率。
其中,第一预设阈值可以根据参考队列长度进行设定,一般情况下,第一预设阈值小于参考队列长度,例如可以将第一预设阈值设定为参考队列长度的二分之一,当视频帧发送队列长度达到第一预设阈值时,说明此时需要计算所接收到的视频帧的丢包率,从而进一步确定是否需要对接收到的视频帧进行丢弃处理,对于第一预设阈值的设定这里仅仅是举例说明,不具有任何限定作用,本领域技术人员可以根据实际需要进行设定。
方法三:
当视频帧发送队列长度变化值达到第二预设阈值时,根据视频帧发送队列长度与参考队列长度的偏差值以及上一次计算得到的丢包率,计算本次的丢包率。
其中,视频帧发送队列长度变化值体现了单位时间内新放入到视频帧发送队列中的视频帧数,例如,可以设定第二预设阈值为20帧/毫秒,每隔预定时间例如10毫秒检测一下视频帧发送队列长度,确定视频帧发送队列长度变化值,当视频帧发送队列长度变化值达到20帧/毫秒时,说明此时需要计算所接收到的视频帧的丢包率,从而进一步确定是否需要对接收到的视频帧进行丢弃处理,若视频帧发送队列长度变化值未达到20帧/毫秒,则不进行丢包率计算。对于第二预设阈值的设定这里仅仅是举例说明,不具有任何限定作用,本领域技术人员可以根据实际需要进行设定。
在本发明实施例中,可以利用如下公式计算第k次的丢包率:
p(k)=p(k-1)+Kp[e(k)-e(k-1)]+Kie(k)+Kd[e(k)-2e(k-1)+e(k-2)];
其中,p(k),p(k-1)分别表示第k次和第k-1次的丢包率;e(k),e(k-1),e(k-2)分别表示第k次、第k-1次和第k-2次的视频帧发送队列长度与参考队列长度的偏差值;Kp,Ki,Kd分别表示比例系数、积分系数和微分系数。
利用上述公式能够精确地计算得到本次的丢包率,进一步提升了对视频帧丢弃处理的准确性。
步骤S202,根据标志位对视频帧进行识别处理,确定视频帧是否为关键帧,若否,则执行步骤S203;若是,则执行步骤S206。
其中,经过编码所得的视频帧可以是关键帧(I帧)或者非关键帧(P帧)。关键帧记录了一帧完整的视频画面,如果一个视频帧为关键帧,视频播放装置通过解码该视频帧就可以得到完整的视频画面。非关键帧记录了一帧视频与另一帧视频(参考帧)所不同的部分,如果一个视频帧为非关键帧,视频接收装置需要基于该视频的参考帧对该视频帧进行解码,得到完整的视频画面。一个非关键帧可以引用关键帧为参考帧,对于一个非关键帧,如果其参考帧丢失,视频接收装置即使接收到该视频帧,在播放该帧时也可能出现花屏或者马赛克。
视频中,每个关键帧都有唯一的标志位,将关键帧彼此区分开,将关键帧与非关键帧区分开。在本实施例中,根据标志位可以确定视频帧是否为关键帧,而确定视频帧是否为关键帧主要是为了确定是否对视频帧进行丢弃处理,若不是关键帧,则可以根据所计算得到的丢包率对视频帧进行丢弃处理,若是关键帧,则不能丢弃,需要放入到视频帧发送队列。
步骤S203,设定随机数生成区间,并根据本次的丢包率在随机数生成区间内设定丢包区间。
具体地,预先设定一最大值和一最小值,构成随机数生成区间,即,预先设定随机数生成区间,在设定好随机数生成区间后,随机数仅能在该随机数生成区间中生成。
在根据步骤S202计算得到本次的丢包率后,根据本次的丢包率在随机数生成区间内设定丢包区间,也就是说,该丢包区间确定了对非关键帧进行丢弃处理的最大值和最小值,例如,设定随机数生成区间为[0,1],根据步骤S202计算得到本次的丢包率为0.6,根据本次的丢包率在随机数生成区间内设定丢包区间为[0,0.6],也就是说,在该区间内将丢弃对非关键帧进行丢弃处理。
步骤S204,生成位于随机数生成区间内的一随机数,判断随机数是否位于丢包区间内,若是,则执行步骤S205;若否,则执行步骤206。
具体地,在根据步骤S203设定丢包区间后,便可以进行视频帧的丢弃处理,对于视频帧的丢弃处理是随机的,也就是说,在随机数生成区间中随机生成一数值,作为视频帧是否被丢弃处理的判断依据,当随机数位于丢包区间时,则需要对视频帧进行丢弃处理,当随机数不在丢包区间时,则不对视频帧进行丢弃处理。
步骤S205,对接收到的视频帧进行丢弃处理。
具体地,在根据步骤S204判断出随机数位于丢包区间内的情况下,将对接收到的非关键帧进行丢弃处理。
步骤S206,将接收的视频帧中的未被丢弃的视频帧放入视频帧发送队列。
具体地,在根据步骤S204判断出随机数不在丢包区间内的情况下,将不对接收到的非关键帧进行丢弃处理,而是将该非关键帧放入视频帧发送队列。在视频帧为关键帧的情况下,将该关键帧放入视频帧发送队列,等待发送。
根据本发明上述实施例提供的视频传输处理方法,接收至少一视频帧,根据视频帧发送队列长度与参考队列长度的偏差值以及上一次计算得到的丢包率,计算本次的丢包率,根据标志位对视频帧进行识别处理,确定视频帧是否为关键帧,若否,则设定随机数生成区间,并根据本次的丢包率在随机数生成区间内设定丢包区间,生成位于随机数区间内的一随机数,判断随机数是否位于丢包区间内,若是,则对接收到的视频帧进行丢弃处理。基于上述实施方案,可以动态调整视频帧的丢包率,从而能够精确地确定是否对视频帧进行丢弃处理,避免了仅用同一丢包率对视频帧进行丢弃处理造成的不合理丢弃问题,以及在网络出现问题时而导致的集中丢弃一段连续的视频帧的问题,而且,可以仅针对非关键帧进行丢弃处理,避免了因丢弃关键帧而导致非关键帧因没有参考帧而无法正确显示画面的缺陷,使得对视频帧丢弃处理更为合理,实现了在网络状况较差时,也能够流畅播放视频的效果,避免出现视频画面不清晰,甚至出现视频画面卡住的情况。
图3示出了根据本发明一个实施例的视频传输处理装置的结构框图。如图3所示,该装置包括:接收模块300、计算模块310和处理模块320。
接收模块300,适于接收至少一视频帧。
计算模块310,适于根据视频帧发送队列长度与参考队列长度的偏差值以及上一次计算得到的丢包率,计算本次的丢包率。
处理模块320,适于根据本次的丢包率,确定对接收到的视频帧是否进行丢弃处理。
根据本发明上述实施例提供的视频传输处理装置,接收至少一视频帧;根据视频帧发送队列长度与参考队列长度的偏差值以及上一次计算得到的丢包率,计算本次的丢包率;根据本次的丢包率,确定对接收到的视频帧是否进行丢弃处理。基于上述实施方案,可以动态调整视频帧的丢包率,从而能够精确地确定是否对视频帧进行丢弃处理,避免了仅用同一丢包率对视频帧进行丢弃处理造成的不合理丢弃问题,以及在网络出现问题时而导致的集中丢弃一段连续的视频帧的问题,使得对视频帧丢弃处理更为合理,实现了在网络状况较差时,也能够流畅播放视频的效果,避免出现视频画面不清晰,甚至出现视频画面卡住的情况。
图4示出了根据本发明另一个实施例的视频传输处理装置的结构框图。如图4所示,该装置包括:接收模块400、计算模块410和处理模块420。
接收模块400,适于接收至少一视频帧。
计算模块410,适于根据视频帧发送队列长度与参考队列长度的偏差值以及上一次计算得到的丢包率,计算本次的丢包率。
处理模块420,适于根据本次的丢包率,确定对接收到的视频帧是否进行丢弃处理。
可选地,计算模块410进一步适于:当到达定时时间时,根据视频帧发送队列长度与参考队列长度的偏差值以及上一次计算得到的丢包率,计算本次的丢包率。
可选地,计算模块410进一步适于:当视频帧发送队列长度达到第一预设阈值时,根据视频帧发送队列长度与参考队列长度的偏差值以及上一次计算得到的丢包率,计算本次的丢包率。
可选地,计算模块410进一步适于:当视频帧发送队列长度变化值达到第二预设阈值时,根据视频帧发送队列长度与参考队列长度的偏差值以及上一次计算得到的丢包率,计算本次的丢包率。
可选地,参考队列长度是根据视频帧发送队列长度的极限值确定的。
可选地,处理模块420进一步包括:设定单元421和处理单元422。
设定单元421,适于设定随机数生成区间,并根据本次的丢包率在随机数生成区间内设定丢包区间。
处理单元422,适于生成位于随机数生成区间内的一随机数,判断随机数是否位于丢包区间内,若是,则对接收到的视频帧进行丢弃处理。
可选地,装置还包括:识别模块430,适于根据标志位对视频帧进行识别处理,确定视频帧是否为关键帧。
处理模块420进一步适于:在识别模块识别出视频帧不是关键帧的情况下,根据本次的丢包率,确定对接收到的视频帧是否进行丢弃处理。
可选地,计算模块410进一步适于:
利用公式:计算第k次的丢包率;
其中,p(k),p(k-1)分别表示第k次和第k-1次的丢包率;
e(k),e(k-1),e(k-2)分别表示第k次、第k-1次和第k-2次的视频帧发送队列长度与参考队列长度的偏差值;
Kp,Ki,Kd分别表示比例系数、积分系数和微分系数。
可选地,装置还包括:添加模块440,适于将接收的视频帧中的未被丢弃的视频帧放入视频帧发送队列。
根据本发明上述实施例提供的视频传输处理装置,接收至少一视频帧,根据视频帧发送队列长度与参考队列长度的偏差值以及上一次计算得到的丢包率,计算本次的丢包率,根据标志位对视频帧进行识别处理,确定视频帧是否为关键帧,若否,则设定随机数生成区间,并根据本次的丢包率在随机数生成区间内设定丢包区间,生成位于随机数区间内的一随机数,判断随机数是否位于丢包区间内,若是,则对接收到的视频帧进行丢弃处理。基于上述实施方案,可以动态调整视频帧的丢包率,从而能够精确地确定是否对视频帧进行丢弃处理,避免了仅用同一丢包率对视频帧进行丢弃处理造成的不合理丢弃问题,以及在网络出现问题时而导致的集中丢弃一段连续的视频帧的问题,而且,可以仅针对非关键帧进行丢弃处理,避免了因丢弃关键帧而导致非关键帧因没有参考帧而无法正确显示画面的缺陷,使得对视频帧丢弃处理更为合理,实现了在网络状况较差时,也能够流畅播放视频的效果,避免出现视频画面不清晰,甚至出现视频画面卡住的情况。
在此提供的算法和显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的视频传输处理设备中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。
本发明公开了:A1、一种视频传输处理方法,包括:
接收至少一视频帧;
根据视频帧发送队列长度与参考队列长度的偏差值以及上一次计算得到的丢包率,计算本次的丢包率;
根据所述本次的丢包率,确定对接收到的视频帧是否进行丢弃处理。
A2、根据A1所述的方法,其中,所述根据视频帧发送队列长度与参考队列长度的偏差值以及上一次计算得到的丢包率,计算本次的丢包率进一步包括:
当到达定时时间时,根据视频帧发送队列长度与参考队列长度的偏差值以及上一次计算得到的丢包率,计算本次的丢包率。
A3、根据A1所述的方法,其中,所述根据视频帧发送队列长度与参考队列长度的偏差值以及上一次计算得到的丢包率,计算本次的丢包率进一步包括:
当视频帧发送队列长度达到第一预设阈值时,根据视频帧发送队列长度与参考队列长度的偏差值以及上一次计算得到的丢包率,计算本次的丢包率。
A4、根据A1所述的方法,其中,所述根据视频帧发送队列长度与参考队列长度的偏差值以及上一次计算得到的丢包率,计算本次的丢包率进一步包括:
当视频帧发送队列长度变化值达到第二预设阈值时,根据视频帧发送队列长度与参考队列长度的偏差值以及上一次计算得到的丢包率,计算本次的丢包率。
A5、根据A1-A4任一项所述的方法,其中,所述参考队列长度是根据视频帧发送队列长度的极限值确定的。
A6、根据A1-A5任一项所述的方法,其中,所述根据本次的丢包率,确定对接收到的视频帧是否进行丢弃处理进一步包括:
设定随机数生成区间,并根据本次的丢包率在所述随机数生成区间内设定丢包区间;
生成位于所述随机数生成区间内的一随机数,判断所述随机数是否位于所述丢包区间内,若是,则对接收到的视频帧进行丢弃处理。
A7、根据A1-A6任一项所述的方法,其中,在所述根据本次的丢包率,确定对接收到的视频帧是否进行丢弃处理之前,所述方法还包括:
根据标志位对所述视频帧进行识别处理,确定所述视频帧是否为关键帧;
若否,则根据本次的丢包率,确定对接收到的视频帧是否进行丢弃处理。
A8、根据A1-A7任一项所述的方法,其中,所述根据视频帧发送队列长度与参考队列长度的偏差值以及上一次计算得到的丢包率,计算本次的丢包率进一步包括:
利用公式:计算第k次的丢包率;
其中,p(k),p(k-1)分别表示第k次和第k-1次的丢包率;
e(k),e(k-1),e(k-2)分别表示第k次、第k-1次和第k-2次的视频帧发送队列长度与参考队列长度的偏差值;
Kp,Ki,Kd分别表示比例系数、积分系数和微分系数。
A9、根据A1-A8任一项所述的方法,还包括:
将接收的视频帧中的未被丢弃的视频帧放入视频帧发送队列。
本发明还公开了:B10、一种视频传输处理装置,包括:
接收模块,适于接收至少一视频帧;
计算模块,适于根据视频帧发送队列长度与参考队列长度的偏差值以及上一次计算得到的丢包率,计算本次的丢包率;
处理模块,适于根据所述本次的丢包率,确定对接收到的视频帧是否进行丢弃处理。
B11、根据B10所述的装置,其中,所述计算模块进一步适于:当到达定时时间时,根据视频帧发送队列长度与参考队列长度的偏差值以及上一次计算得到的丢包率,计算本次的丢包率。
B12、根据B10所述的装置,其中,所述计算模块进一步适于:当视频帧发送队列长度达到第一预设阈值时,根据视频帧发送队列长度与参考队列长度的偏差值以及上一次计算得到的丢包率,计算本次的丢包率。
B13、根据B10所述的装置,其中,所述计算模块进一步适于:当视频帧发送队列长度变化值达到第二预设阈值时,根据视频帧发送队列长度与参考队列长度的偏差值以及上一次计算得到的丢包率,计算本次的丢包率。
B14、根据B10-B13任一项所述的装置,其中,所述参考队列长度是根据视频帧发送队列长度的极限值确定的。
B15、根据B10-B14任一项所述的装置,其中,所述处理模块进一步包括:
设定单元,适于设定随机数生成区间,并根据本次的丢包率在所述随机数生成区间内设定丢包区间;
处理单元,适于生成位于所述随机数生成区间内的一随机数,判断所述随机数是否位于所述丢包区间内,若是,则对接收到的视频帧进行丢弃处理。
B16、根据B10-B15任一项所述的装置,其中,所述装置还包括:
识别模块,适于根据标志位对所述视频帧进行识别处理,确定所述视频帧是否为关键帧;
所述处理模块进一步适于:在所述识别模块识别出所述视频帧不是关键帧的情况下,根据本次的丢包率,确定对接收到的视频帧是否进行丢弃处理。
B17、根据B10-B16任一项所述的装置,其中,所述计算模块进一步适于:
利用公式:计算第k次的丢包率;
其中,p(k),p(k-1)分别表示第k次和第k-1次的丢包率;
e(k),e(k-1),e(k-2)分别表示第k次、第k-1次和第k-2次的视频帧发送队列长度与参考队列长度的偏差值;
Kp,Ki,Kd分别表示比例系数、积分系数和微分系数。
B18、根据B10-B17任一项所述的装置,所述装置还包括:添加模块,适于将接收的视频帧中的未被丢弃的视频帧放入视频帧发送队列。

Claims (10)

1.一种视频传输处理方法,包括:
接收至少一视频帧;
根据视频帧发送队列长度与参考队列长度的偏差值以及上一次计算得到的丢包率,计算本次的丢包率;
根据所述本次的丢包率,确定对接收到的视频帧是否进行丢弃处理。
2.根据权利要求1所述的方法,其中,所述根据视频帧发送队列长度与参考队列长度的偏差值以及上一次计算得到的丢包率,计算本次的丢包率进一步包括:
当到达定时时间时,根据视频帧发送队列长度与参考队列长度的偏差值以及上一次计算得到的丢包率,计算本次的丢包率。
3.根据权利要求1所述的方法,其中,所述根据视频帧发送队列长度与参考队列长度的偏差值以及上一次计算得到的丢包率,计算本次的丢包率进一步包括:
当视频帧发送队列长度达到第一预设阈值时,根据视频帧发送队列长度与参考队列长度的偏差值以及上一次计算得到的丢包率,计算本次的丢包率。
4.根据权利要求1所述的方法,其中,所述根据视频帧发送队列长度与参考队列长度的偏差值以及上一次计算得到的丢包率,计算本次的丢包率进一步包括:
当视频帧发送队列长度变化值达到第二预设阈值时,根据视频帧发送队列长度与参考队列长度的偏差值以及上一次计算得到的丢包率,计算本次的丢包率。
5.根据权利要求1-4任一项所述的方法,其中,所述参考队列长度是根据视频帧发送队列长度的极限值确定的。
6.根据权利要求1-5任一项所述的方法,其中,所述根据本次的丢包率,确定对接收到的视频帧是否进行丢弃处理进一步包括:
设定随机数生成区间,并根据本次的丢包率在所述随机数生成区间内设定丢包区间;
生成位于所述随机数生成区间内的一随机数,判断所述随机数是否位于所述丢包区间内,若是,则对接收到的视频帧进行丢弃处理。
7.根据权利要求1-6任一项所述的方法,其中,在所述根据本次的丢包率,确定对接收到的视频帧是否进行丢弃处理之前,所述方法还包括:
根据标志位对所述视频帧进行识别处理,确定所述视频帧是否为关键帧;
若否,则根据本次的丢包率,确定对接收到的视频帧是否进行丢弃处理。
8.根据权利要求1-7任一项所述的方法,其中,所述根据视频帧发送队列长度与参考队列长度的偏差值以及上一次计算得到的丢包率,计算本次的丢包率进一步包括:
利用公式:计算第k次的丢包率;
其中,p(k),p(k-1)分别表示第k次和第k-1次的丢包率;
e(k),e(k-1),e(k-2)分别表示第k次、第k-1次和第k-2次的视频帧发送队列长度与参考队列长度的偏差值;
Kp,Ki,Kd分别表示比例系数、积分系数和微分系数。
9.根据权利要求1-8任一项所述的方法,还包括:
将接收的视频帧中的未被丢弃的视频帧放入视频帧发送队列。
10.一种视频传输处理装置,包括:
接收模块,适于接收至少一视频帧;
计算模块,适于根据视频帧发送队列长度与参考队列长度的偏差值以及上一次计算得到的丢包率,计算本次的丢包率;
处理模块,适于根据所述本次的丢包率,确定对接收到的视频帧是否进行丢弃处理。
CN201610282505.0A 2016-04-29 2016-04-29 视频传输处理方法及装置 Pending CN105916059A (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201610282505.0A CN105916059A (zh) 2016-04-29 2016-04-29 视频传输处理方法及装置
PCT/CN2017/081504 WO2017186067A1 (zh) 2016-04-29 2017-04-21 视频传输处理方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610282505.0A CN105916059A (zh) 2016-04-29 2016-04-29 视频传输处理方法及装置

Publications (1)

Publication Number Publication Date
CN105916059A true CN105916059A (zh) 2016-08-31

Family

ID=56753145

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610282505.0A Pending CN105916059A (zh) 2016-04-29 2016-04-29 视频传输处理方法及装置

Country Status (2)

Country Link
CN (1) CN105916059A (zh)
WO (1) WO2017186067A1 (zh)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106411600A (zh) * 2016-10-31 2017-02-15 努比亚技术有限公司 一种测试设备及方法
WO2017186067A1 (zh) * 2016-04-29 2017-11-02 北京奇虎科技有限公司 视频传输处理方法及装置
CN111263184A (zh) * 2020-02-27 2020-06-09 腾讯科技(深圳)有限公司 编解码一致性检测方法、装置、设备
CN111601178A (zh) * 2020-05-26 2020-08-28 维沃移动通信有限公司 视频数据处理方法、装置和电子设备
CN113453054A (zh) * 2021-06-30 2021-09-28 深圳市斯博科技有限公司 音视频丢帧方法、装置、计算机设备及存储介质
CN115037701A (zh) * 2022-06-20 2022-09-09 北京达佳互联信息技术有限公司 视频处理方法、装置、服务器及介质
CN116055803A (zh) * 2022-07-29 2023-05-02 荣耀终端有限公司 视频播放方法和系统、电子设备

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112449190B (zh) * 2019-09-05 2024-07-09 曙光网络科技有限公司 一种并发视频会话ipb帧图像组的解码方法
CN112532943B (zh) * 2020-11-30 2022-12-27 苏州浪潮智能科技有限公司 一种监控视频分发方法、装置、设备和存储介质

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050157752A1 (en) * 2004-01-16 2005-07-21 Hitachi., Ltd. Storage switch with bandwidth control function
CN1885824A (zh) * 2006-06-07 2006-12-27 清华大学 主动队列管理的分类器实现方法
CN101079816A (zh) * 2007-07-06 2007-11-28 北京航空航天大学 一种基于网络状态参数估计的快速控制方法
CN101360052A (zh) * 2008-09-28 2009-02-04 成都市华为赛门铁克科技有限公司 一种流量调度的方法和装置
CN101414957A (zh) * 2007-10-17 2009-04-22 北京中电华大电子设计有限责任公司 一种用于无线局域网的缓冲队列管理方法
CN101582842A (zh) * 2008-05-16 2009-11-18 华为技术有限公司 拥塞控制方法与拥塞控制装置
CN103414650A (zh) * 2013-07-29 2013-11-27 上海华为技术有限公司 一种避免拥塞的路由方法和装置

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103685062A (zh) * 2013-12-02 2014-03-26 华为技术有限公司 缓存管理方法及装置
CN105916059A (zh) * 2016-04-29 2016-08-31 北京奇虎科技有限公司 视频传输处理方法及装置

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050157752A1 (en) * 2004-01-16 2005-07-21 Hitachi., Ltd. Storage switch with bandwidth control function
CN1885824A (zh) * 2006-06-07 2006-12-27 清华大学 主动队列管理的分类器实现方法
CN101079816A (zh) * 2007-07-06 2007-11-28 北京航空航天大学 一种基于网络状态参数估计的快速控制方法
CN101414957A (zh) * 2007-10-17 2009-04-22 北京中电华大电子设计有限责任公司 一种用于无线局域网的缓冲队列管理方法
CN101582842A (zh) * 2008-05-16 2009-11-18 华为技术有限公司 拥塞控制方法与拥塞控制装置
CN101360052A (zh) * 2008-09-28 2009-02-04 成都市华为赛门铁克科技有限公司 一种流量调度的方法和装置
CN103414650A (zh) * 2013-07-29 2013-11-27 上海华为技术有限公司 一种避免拥塞的路由方法和装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
杜飞: "基于控制理论的主动队列管理算法研究", 《中国优秀硕士学位论文全文数据库信息科技辑》 *

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017186067A1 (zh) * 2016-04-29 2017-11-02 北京奇虎科技有限公司 视频传输处理方法及装置
CN106411600A (zh) * 2016-10-31 2017-02-15 努比亚技术有限公司 一种测试设备及方法
CN111263184A (zh) * 2020-02-27 2020-06-09 腾讯科技(深圳)有限公司 编解码一致性检测方法、装置、设备
CN111601178A (zh) * 2020-05-26 2020-08-28 维沃移动通信有限公司 视频数据处理方法、装置和电子设备
EP4161013A4 (en) * 2020-05-26 2023-09-06 Vivo Mobile Communication Co., Ltd. VIDEO DATA PROCESSING METHOD AND DEVICE AND ELECTRONIC DEVICE
CN113453054A (zh) * 2021-06-30 2021-09-28 深圳市斯博科技有限公司 音视频丢帧方法、装置、计算机设备及存储介质
CN115037701A (zh) * 2022-06-20 2022-09-09 北京达佳互联信息技术有限公司 视频处理方法、装置、服务器及介质
CN115037701B (zh) * 2022-06-20 2023-12-19 北京达佳互联信息技术有限公司 视频处理方法、装置、服务器及介质
CN116055803A (zh) * 2022-07-29 2023-05-02 荣耀终端有限公司 视频播放方法和系统、电子设备
CN116055803B (zh) * 2022-07-29 2024-04-02 荣耀终端有限公司 视频播放方法和系统、电子设备

Also Published As

Publication number Publication date
WO2017186067A1 (zh) 2017-11-02

Similar Documents

Publication Publication Date Title
CN105916059A (zh) 视频传输处理方法及装置
EP3251233B1 (en) Handling of proximity services device to device related identities at radio access network level
EP3449604A1 (en) Generating packets in a reverse direction of a service function chain
CN108833281B (zh) 一种报文转发方法及网络设备
CN108206958A (zh) 一种获取录像资源的方法及协转服务器
US20160066309A1 (en) Method and apparatus for transmitting and receiving data
CN105450550B (zh) 路由器的通道优先级调整方法及装置
CN111803925B (zh) 云游戏的转发服务器的调度方法、装置及可读存储介质
US11412403B2 (en) Benchmarking of delay estimates in a 5G network for quality of service flow setup and monitoring
US20070237180A1 (en) Method and apparatus for generating transport frame, and method and apparatus for processing transport frame
JP2006352858A (ja) パケットの損失タイプの判別方法及び装置
CN106130696A (zh) 一种前向纠错的方法、装置及电子设备
CN106507024A (zh) 一种自适应码率调整方法及装置
EP3560152B1 (en) Determining the bandwidth of a communication link
CN105656800A (zh) 一种传输报文的方法及装置
MX2018002689A (es) Metodo para manejo mejorado de al menos un intercambio de comunicacion entre una red de telecomunicaciones y al menos un equipo de usuario, red de telecomunicaciones, equipo de usuario, sistema, programa y producto de programa de computadora.
EP1175098B1 (en) MPEG flow identification for IP networks
US20160134837A1 (en) Methods, devices, and systems for controlling audio and video transmission
US7971121B1 (en) Systems and methods for providing distributed packet loss concealment in packet switching communications networks
CN107404434A (zh) 一种确定物联网设备间的数据传输路径的方法及系统
CN106664695B (zh) 一种配置下行解调参考信号dmrs端口的方法及装置
EP3195528B1 (en) Application control interworking in network
CN110248138A (zh) 进行音视频会议的方法和装置
CN116584081A (zh) 一种调度传输方法及装置
CN107277770A (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
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20160831