CN111491201A - 调整视频码流的方法及视频丢帧处理方法 - Google Patents
调整视频码流的方法及视频丢帧处理方法 Download PDFInfo
- Publication number
- CN111491201A CN111491201A CN202010271209.7A CN202010271209A CN111491201A CN 111491201 A CN111491201 A CN 111491201A CN 202010271209 A CN202010271209 A CN 202010271209A CN 111491201 A CN111491201 A CN 111491201A
- Authority
- CN
- China
- Prior art keywords
- code stream
- transmission rate
- video
- current
- frame
- 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
- 238000000034 method Methods 0.000 title claims abstract description 37
- 238000003672 processing method Methods 0.000 title claims abstract description 10
- 230000005540 biological transmission Effects 0.000 claims abstract description 160
- 230000008859 change Effects 0.000 claims abstract description 17
- 239000000872 buffer Substances 0.000 claims description 19
- 230000009467 reduction Effects 0.000 claims description 16
- 230000000630 rising effect Effects 0.000 claims description 16
- 230000003321 amplification Effects 0.000 claims description 13
- 238000003199 nucleic acid amplification method Methods 0.000 claims description 13
- 230000003111 delayed effect Effects 0.000 claims description 11
- 230000003247 decreasing effect Effects 0.000 description 7
- 230000007423 decrease Effects 0.000 description 5
- 230000008569 process Effects 0.000 description 3
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000002123 temporal effect Effects 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
- 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
- H04N21/637—Control signals issued by the client directed to the server or network components
- H04N21/6373—Control signals issued by the client directed to the server or network components for rate control, e.g. request to the server to modify its transmission rate
-
- 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/647—Control 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/64746—Control signals issued by the network directed to the server or the client
- H04N21/64761—Control signals issued by the network directed to the server or the client directed to the server
- H04N21/64769—Control signals issued by the network directed to the server or the client directed to the server for rate control
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
本申请提供一种调整视频码流的方法及一种视频丢帧处理方法。其中,一种调整视频码流的方法,应用于无线图像传输***,包括:获取当前网络的指定传输指标,所述指定传输指标包括传输速率和表征传输速率变化趋势的标识信息;根据所述指定传输指标确定是否调整视频编码当前的码流参数。该方法使得视频编码的码流参数可以适应无线网络的传输速率的变化,无线网络传输速率降低时,可以通过减小码流参数,降低视频每秒需要传输的数据量,从而保证视频数据传输的实时性。
Description
技术领域
本申请涉及视频传输技术领域,尤其涉及一种调整视频码流的方法及一种视频丢帧处理方法。
背景技术
无线图像传输***,通常包括发射器与接收器,发射器与接收器之间通过无线网络建立连接。在***工作时,拍摄设备将拍摄的视频数据传输给发射器,发射器通过无线网络将视频数据传输给接收器,接收器再将视频数据输出给显示设备,实现视频数据的远程无线传输。
但无线网络的环境处于动态的变化中,当无线网络环境较差时,视频数据的传输便会产生延迟,视频的播放也不能保持实时。
发明内容
为克服相关技术中存在的问题,本申请提供了一种调整视频码流的方法及一种视频丢帧处理方法。
根据本申请实施例的第一方面,提供一种调整视频码流的方法,应用于无线图像传输***,包括:
获取当前网络的指定传输指标,所述指定传输指标包括传输速率和表征传输速率变化趋势的标识信息;
根据所述指定传输指标确定是否调整视频编码当前的码流参数。
作为一种可选的实施方式,所述方法还包括:
若所述标识信息表征传输速率呈上升的趋势,且当前的传输速率小于第一预设值,保持当前的码流参数。
作为一种可选的实施方式,所述方法还包括:
若所述标识信息表征传输速率呈上升的趋势,且当前的传输速率大于所述第一预设值,按预设的增幅增大当前的码流参数。
作为一种可选的实施方式,所述按预设的增幅增大当前的码流参数,包括:
若传输速率的上升幅度大于上升幅度阈值,按第一预设增幅增大当前的码流参数;若传输速率的上升幅度小于或等于所述上升幅度阈值,按第二预设增幅增大当前的码流参数;其中,所述第一预设增幅大于所述第二预设增幅。
作为一种可选的实施方式,所述方法还包括:
若确定增大当前的码流参数,确定增大后的码流参数不超过预设的码流参数的上限值;
若所述标识信息表征传输速率呈下降的趋势,且当前的传输速率大于第二预设值,保持当前的码流参数;其中所述第二预设值为,可支持所述码流参数的上限值对应的码流的传输速率。
作为一种可选的实施方式,所述方法还包括:
若所述标识信息表征传输速率呈下降的趋势,且当前的传输速率小于所述第二预设值,按预设的减幅减小当前的码流参数。
作为一种可选的实施方式,所述按预设的减幅减小当前的码流参数,包括:
若传输速率的下降幅度大于下降幅度阈值,按第一预设减幅减小当前的码流参数;若传输速率的下降幅度小于或等于所述下降幅度阈值,按第二预设减幅减小当前的码流参数;其中,所述第一预设减幅大于所述第二预设减幅。
根据本申请实施例的第二方面,提供一种视频丢帧处理方法,应用于无线图像传输***,包括:
在接收到发射器发送的视频帧时,确定当前的总延迟帧数;若确定当前的总延迟帧数大于预设的延迟上限,确定对所述发射器发送的视频数据进行丢帧处理;其中,所述发射器发送的视频数据对应的码流参数根据当前网络的指定传输指标确定,所述指定传输指标包括传输速率和表征传输速率变化趋势的标识信息。
作为一种可选的实施方式,所述确定对所述发射器发送的视频数据进行丢帧处理,包括:
确定丢帧数;所述丢帧数为所述总延迟帧数与所述延迟上限的差值;
根据确定的所述丢帧数,丢弃接收到的在画面组GOP中时序最后的一个或多个视频帧。
作为一种可选的实施方式,所述确定当前的总延迟帧数,包括:
根据前后两次接收到视频帧的时间间隔,确定第一延迟帧数;
根据当前的帧缓存数,确定第二延迟帧数;
确定总延迟帧数;所述总延迟帧数为所述第一延迟帧数与所述第二延迟帧数的和。
本申请的实施例提供的技术方案可以包括以下有益效果:
本申请实施例中,根据获取到的当前网络的指定传输指标,确定是否调整视频编码当前的码流参数,使得视频编码的码流参数可以适应无线网络的传输速率的变化。如此,在无线网络信号较差、传输速率降低时,可以通过减小码流参数,降低视频每秒需要传输的数据量,从而保证视频数据传输的实时性。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本申请。
附图说明
此处的附图被并入说明书中并构成本申请的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。
图1是本申请根据一示例性实施例示出的一种无线图像传输***的应用场景示意图。
图2是本申请根据一示例性实施例示出的一种调整视频码流的方法的流程图。
图3是本申请根据一示例性实施例示出的一种视频丢帧处理方法的流程图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
在本申请使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本申请可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
接下来对本申请实施例进行详细说明。
可以参见图1,图1是本申请根据一示例性实施例示出的一种无线图像传输***的应用场景示意图。
无线图像传输***,通常包括发射器1与接收器2,发射器1与接收器2之间通过无线网络建立连接。其中,发射器1可以连接拍摄设备,接收器2可以连接显示设备。
在***工作时,拍摄设备将拍摄的视频数据传输给发射器1,发射器1通过无线网络将视频数据传输给接收器2,接收器2再将视频数据输出给显示设备,实现视频数据的远程无线传输。
但无线网络的环境是动态变化的,因此无线网络信号不一定能够保持稳定。当无线网络信号变差时,无线网络的传输速率也将下降,若此时的传输速率无法满足当前视频编码的码流参数,则视频的播放将出现卡顿,视频画面也不再实时。
为解决上述问题,本申请提供一种调整视频码流的方法,应用于无线图像传输***,可以由无线传输***中的发射器执行。请参加图2,图2是本申请根据一示例性实施例示出的一种调整视频码流的方法的流程图。该方法包括:
步骤201、获取当前网络的指定传输指标。
其中,指定传输指标包括传输速率和表征传输速率变化趋势的标识信息。
步骤202、根据所述指定传输指标确定是否调整视频编码当前的码流参数。
由于无线网络的环境会动态变化,因此无线网络的传输速率也处于动态变化的过程。为确定传输速率的变化趋势,可以根据设定的频率获取无线网络的实时传输速率。在一个例子中,在确定当前时刻的传输速率后,可以将当前时刻的传输速率与上一时刻确定的传输速率进行比对,从而确定传输速率是呈上升趋势还是下降趋势。
对于传输速率的变化趋势,可以通过标识信息进行表征。比如,在一种实施中,可以设定标识信息等于1表征传输速率呈上升趋势,标识信息等于0表征传输速率呈下降趋势。当然,以上仅作为一种示例,技术人员可以个性的选择其他的标识信息,本申请对此不作限定。
通过解析出标识信息的内容,可以确定传输速率的变化趋势。在一种情况中,若传输速率呈上升的趋势,可以选择增大视频编码的码流参数。但若传输速率一出现上升,就调整码流参数,则码流参数的变化频率可能会过于频繁。由于码流参数与视频的画质有直接的关联关系,码流参数频繁变化,视频的画质也将频繁变动,如此,对于用户而言,视频的画质将会呈现出不稳定的状态,使用户的观感大打折扣。
因此,为解决上述问题,针对传输速率上升的情况,可以设置一个传输速率的界限值,该界限值可以称为第一预设值。若传输速率呈上升的趋势,但当前的传输速率仍然小于第一预设值,则意味着当前的传输速率仍然比较低,即便增大码流参数,视频画质也得不到明显的提升,因此为保证视频画质的稳定性,可以保持当前的码流参数不变,不进行调整。
相应的,若传输速率呈上升的趋势,且当前的传输速率大于该第一预设值,则意味着增大码流参数,视频画质可以得到较为明显的提升,因此可以选择增大当前的码流参数。
但显然,在传输速率上升时,码流参数也不能无止尽的增大。对应不同的传输速率,码流参数的上限值是不同的。因此,可以设定一个码流参数的上限值,在增大当前的码流参数时,确保码流参数不超过该码流参数的上限值。
并且,从另一角度考虑,当视频的画质达到一定的清晰度后,已经能够满足大部分用户的需求,再继续增大码流参数提升画质已经意义不大。因此,进一步的,在设置码流参数的上限值时,可以相对保守一些,使其与无线网络的最高传输速率可以支持的码流保持一定的距离。举个例子,比如无线网络的最高传输速率可以支持18M的码流参数,而码流参数的上限值可以设置为12M,因为12M的码流参数对应的视频画质已经足够清晰。
如此设置,除了可以限制传输速率上升时码流参数的增大次数之外,码流参数需要减小的情况也会变少,可以达到码流参数整体的调整次数下降、视频画质更稳定的效果。具体而言,若码流参数的上限值与最高传输速率可支持的码流相差一定的数值,则意味着传输速率下降,码流参数也不一定需要减小。
比如,继续使用上述例子,无线网络的最高传输速率可以支持18M的码流参数,码流参数的上限值设置为12M。那么,当传输速率上升至可以支持的码流大于12M时,将不再增大码流参数,码流参数将维持在12M或接近12M的数值。而当传输速率下降时,比如从可以支持18M下降到可以支持15M码流,又或者从可以支持16M下降到可以支持14M码流时,只要下降后的传输速率仍然大于第二预设值,则码流参数就可以不用减小。上述的第二预设值,是可支持码流参数的上限值对应的码流的传输速率,在上述例子中,即可以支持12M码流的传输速率。
进一步的,考虑到在增大或者减小视频编码的码流参数时,若一次调整的幅度过大,码流参数变化过大,视频的画质将会突然的变得很模糊或者很清晰,视频画质的稳定性较差。
因此,对于增大码流参数,可以预先设定一个增幅。在标识信息表征传输速率呈上升的趋势,且当前的传输速率大于第一预设值时,可以按该预先设定的增幅增大当前的码流参数。比如,在一个具体的例子中,可以以每秒2M的增幅增大码流参数,在另一个具体的例子中,可以以每秒0.5M的增幅增大码流参数。
对于减小码流参数时,同样可以预先设定一个减幅。在标识信息表征传输速率呈下降的趋势,且当前的传输速率小于第二预设值时,可以按预先设定的减幅减小当前的码流参数。比如,在一个具体的例子中,可以以每秒2M的减幅减小码流参数,在另一个具体的例子中,可以以每秒0.5M的减幅减小码流参数。
由于无线网络的传输速率可能变化很大,也可能变化不太大,若码流参数的调整幅度固定不变,则会出现一些问题。比如,一种可能情况是,当前的码流参数为2M,预设的增幅为每秒0.5M,假如在下一时刻,传输速率突然大幅度提升,提升到可以支持12M的码流,此时,若按照预设的增幅每秒0.5M增大码流参数,则需要很长的一段时间才能将码流参数增大至12M,无法以最快的速度最大化的利用当前网络的传输速率。
另一种可能的情况是,若预设的减幅是每秒0.5M,在传输速率突然大幅度下降时,比如传输速率从可以支持12M的码流下降到只能支持2M的码流,若按照每秒0.5M的减幅减小码流参数,则视频的播放将会卡滞相当长的一段时间。
若预设的增幅或者减幅过大,则在传输速率小幅度变化时调整也会出现问题。比如,若预设的减幅是每秒2M,在传输速率从可以支持6M的码流下降到可以支持5.5M的码流时,若当前的码流参数为6M,则需要减小码流参数,以每秒2M的减幅减小后,码流参数为4M,无法最大化的利用传输速率。若当前的码流参数为6M,预设的增幅是每秒2M,在传输速率从可以支持6M的码流上升到可以支持7.5M的码流时,采用每秒2M的增幅将无法增大码流参数,同样的,无法最大化的利用传输速率。
为此,本申请提供一种实施方式,对于传输速率的上升,可以设置多个不同的增幅,以应对传输速率不同的上升幅度。在一个可选的实施例中,可以预先设置一个上升幅度阈值。当传输速率上升时,可以利用当前的传输速率与上一个或者上一时刻确定的传输速率作差值,计算出传输速率的上升幅度。若计算出的上升幅度大于上述的上升幅度阈值,则可以选用一个较大的增幅来增大当前的码流参数,这个增幅可以称为第一预设增幅,比如可以是每秒增大2M。
若计算出的上升幅度小于等于上述的上升幅度阈值,则可以选用一个较小的增幅来增大当前的码流参数,这个增幅可以称为第二预设增幅,比如可以是每秒增大0.5M。
当然,为更精细的应对传输速率的不同变化,还可以进一步设置两个不同的上升幅度阈值,设置三个不同的预设增幅,本申请对此不作具体限定。
相应的,对于传输速率的下降,也可以设置多个不同的减幅,以应对传输速率不同的下降幅度。在一个可选的实施例中,可以预先设置一个下降幅度阈值。当传输速率下降时,可以利用上一个或者上一时刻确定的传输速率与当前的传输速率作差值(也可以用当前的减上一个的传输速率取绝对值),计算出传输速率的下降幅度。若计算出的下降幅度大于上述的下降幅度阈值,则可以选用一个较大的减幅来减小当前的码流参数,这个较大的增幅可以称为第一预设增幅,比如可以是每秒减小2M。
若计算出的下降幅度小于等于上述的下降幅度阈值,则可以选用一个较小的减幅来减小当前的码流参数,这个较小的减幅可以称为第二预设减幅,比如可以是每秒减小0.5M。
可以理解的是,为方便表征无线网络的传输速率,在一种可选的实施方式中,还可以采用调制与编码策略MCS。不同的MCS等级对应不同的传输速率,比如,MCS等级可以包括MCS0~MCS15,当确定的MCS等级越高,则当前网络的传输速率也越高;当MCS等级发生了变化,则当前网络的传输速率也发生变化。传输速率是上升还是下降,均可以通过MCS等级的变化确定。
以上为对本申请提供的一种调整视频码流的方法的详细说明。该方法可以根据获取到的当前网络的指定传输指标,确定是否调整视频编码当前的码流参数,使得视频编码的码流参数可以适应无线网络的传输速率的变化。如此,在无线网络信号较差、传输速率降低时,可以通过减小码流参数,降低视频每秒需要传输的数据量,从而保证视频数据传输的实时性。而在无线网络的传输速率上升时,也可以相应的增大码流参数,从而最大化的利用带宽,给用户提供更清晰的视频画质。
进一步的,在视频数据的传输过程中,视频帧由发射器通过无线网络发送给接收器。但无线网络并不一定能够保持稳定,在无线网络信号变差时,视频帧的传输将出现阻塞。对于接收器而言,其在某些应当接收到视频帧的时刻将无法接受到视频帧,从而导致视频帧的播放无法实时。
为方便理解上述问题,下面举一个具体的例子。
比如,在无线网络正常的情况下,接收器每隔固定时间就会接收到一个视频帧。可以将每个应该接收到视频帧的时间点称为时刻,则在第一时刻,接收器可以接收到第一帧,该第一帧将在下一个帧的播放时段内播放;在第二时刻,接收器可以接收到第二帧,在下一个帧的播放时段内将播放该第二帧。
但若在第三时刻,无线网络信号变差,视频帧的传输被阻断,则接收器在第三时刻将无法接受到第三帧,在下一个帧的播放时段内将只能继续播放之前接受的第二帧。假如这样的情况持续到数个时刻,则视频帧的播放与现实场景的画面相比将有不可忽视的延迟,无法给用户呈现实时的视频图像。
因此,本申请为解决上述问题,在前述的一种调整视频码流的方法的基础上,还可以进行进一步改进,从而更好的为用户提供实时的视频图像。
具体的,可以参见图3,图3是本申请根据一示例性实施例示出的一种视频丢帧处理方法的流程图。该方法同样应用于无线图像传输***,其中包含的动作可以由接收器执行。该方法包括:
步骤301、在接收到发射器发送的视频帧时,确定当前的总延迟帧数。
步骤302、判断确定的当前的总延迟帧数是否大于预设的延迟上限,若是,执行步骤303,若否,结束本流程。
步骤303、确定对该发射器发送的视频数据进行丢帧处理。
需要说明的是,发射器发射的视频数据对应的码流参数可以根据当前网络的指定传输指标确定。其中,指定传输指标包括传输速率和表征传输速率变化趋势的标识信息。该部分内容的具体实施可以参考前文中对于一种调整视频码流的方法的详细说明,在此不再赘述。
本申请提供的视频丢帧处理方法,可以在视频帧的播放已经延迟的情况下,通过对视频数据中的某些视频帧进行丢弃,从而使视频帧的播放能够恢复实时。
丢帧处理是为了使视频帧的播放恢复实时,而视频帧的播放是否实时,需要对实时进行定义。由于人眼可视帧数有限,当视频帧的播放只有若干帧的延迟时,对于用户而言,其很可能是感觉不到画面延迟的,也即对用户而言,可以认为视频画面仍然是实时的。
因此,可以预先设置一个延迟上限,在确定的当前的总延迟帧数大于该延迟上限时,再确定需要对该发射器发送的视频数据进行丢帧处理。
总延迟帧数有多种可行的确定方式。在一个可选的实施例中,可以在确定待播放的下一个视频帧之后,将确定的待播放的下一个视频帧和应该播放的下一个视频帧进行时序比较,从而确定总延迟帧数。应该播放的下一个视频帧,即是网络无延迟时应该播放的下一个视频帧。其中,在进行视频帧的时序比较时,为确定视频帧的时序,可以利用视频帧的显示时间戳PTS。当然,也可以对一个画面组GOP中(Group of pictures)的视频帧赋予GOP序号,视频帧的GOP序号与其时序是相对应的。而为方便获取PTS或者GOP序号,可以在发射器对视频数据编码时,在视频帧的头部等特定位置写入其对应的PTS或GOP序号,以便接收器在接收到视频帧时,就可以直接解析该特定位置的数据得到该视频帧的PTS或GOP序号。
本申请还提供另一种可选的实施方式,在确定当前的总延迟帧数时,可以根据前后两次接收到视频帧的时间间隔,确定第一延迟帧数;根据当前的帧缓存数,确定第二延迟帧数;计算该第一延迟帧数与第二延迟帧数的和,得到当前的总延迟帧数。
为方便理解,下面举一个具体的例子。请参见表1,表中一共呈现了10个时刻。在第1时刻,接收器接收到第1帧,此时帧缓存中未存放有视频帧,确定下一个播放的是第1帧。在第2时刻,接收器接收到第2帧,此时帧缓存中存放有上一时刻接收的第1帧,确定下一个播放的是第2帧。在第3时刻,无线网络出现堵塞,接收器未能顺利接收到第3帧,此时帧缓存中存放有上一时刻接收的第2帧,因此只能确定下一个播放的仍然是第2帧。第4时刻,无线网络仍未恢复,情形与第3时刻相同。
第5时刻,无线网络恢复正常,接收器一次性接收到第3、4、5帧,此时帧缓存中仍然是存放着第2帧,由于第3帧已经接收到,因此可以确定下一个播放的是第3帧。第6时刻,接收器接收到第6帧,此时帧缓存中存放有第3、4、5帧,确定下一个播放的是第4帧。在第7时刻,无线网络再次出现堵塞,接收器未能顺利接收到第7帧,此时帧缓存中存放有第4、5、6帧,可以继续播放时序上的下一个视频帧,即第5帧,因此确定下一个播放的是第5帧。第8时刻,无线网络仍未恢复,未接收到视频帧,帧缓存中存放有第5、6帧,确定下一个播放的是第6帧。
第9时刻,无线网络恢复正常,接收器一次性接收到第7、8、9帧,此时帧缓存中存放的是第6帧,确定下一个播放的是第7帧。
表1
确定总延迟数时,对于有接收到视频帧的每个时刻,都可以先根据前后两次接收到视频帧的时间间隔,确定第一延迟帧数。比如,在无线网络信号良好时,前后两次接收到视频帧的时间间隔应该是10ms,但在第5时刻,前一次接收到视频帧是第2时刻,从第2时刻到第5时刻的时间间隔为30ms,则确定第一延迟帧数为2。
对于帧缓存数,在无线网络正常的情况下,除第1时刻外,帧缓存中存放的视频帧的数量应该为1。若帧缓存数大于1,则表明在之前的某一时刻发生过网络堵塞。而第二延迟帧数在具体计算时,可以用帧缓存数减1计算得到。如第5时刻,帧缓存数为1,因此第二延迟帧数为0。总延迟帧数为第一延迟帧数与第二延迟帧数的和,因此,在第5时刻,总延迟帧数为2。
又如,第6时刻,用相同的方式,可以计算出第一延迟帧数是0,第二延迟帧数是2,总延迟帧数是2。
在总延迟帧数大于延迟上限、确定需要对该发射器发送的视频数据进行丢帧处理后,首先需要确定丢帧数。丢帧数的确定方式有多种,在一种实施中,可以根据总延迟帧数与延迟上限计算得到,具体的,丢帧数可以是总延迟帧数与延迟上限的差值。如此,在丢帧后,视频的播放其实还有延迟,只是延迟的帧数等于延迟上限,仍然被认为实时。而在另一种实施中,当确定需要丢帧处理时,可以直接将总延迟帧数作为丢帧数。如此,在丢帧后,视频的播放将变为0延迟。
而丢帧数确定后,需要确定具体丢哪些帧。由于不同的视频帧的编码处理方式不同,对于I帧而言,其采用帧内编码的方式,因此其可以单独解码出完整的图像,而对于P帧或者B帧而言,其采用帧间编码的方式,需要依赖其他帧才可以解码出图像。因此在选择要丢弃的帧时,一种较为优选的实施方式是选择在GOP中时序最后的一个或多个视频帧进行丢弃。
需要说明的是,一个画面组GOP(Group of pictures),即两个I帧之间的距离,两个I帧之间的形成的一组图片为一个GOP。由于除了I帧以外的视频帧,通常都是遵循前向时间预测,即该视频帧的解码播放依赖于前一个视频帧,因此,对于非I帧而言,视频帧的播放通常只能按时序进行,不能有跳跃。比如在前述例子中,虽然在第5时刻一次性接收到第3、4、5帧,但并不能直接播放最为实时的第5帧,因为第5帧的播放依赖于第4帧的解码播放,而第4帧的播放依赖于第3帧的解码播放,因此,其只能播放时序上的下一个视频帧,即第3帧。
故在选择可以丢弃的视频帧时,为保证视频画面的稳定性,应当选择在GOP中时序靠后的视频帧进行丢弃。若在一个GOP中丢弃的帧数仍然少于确定的丢帧数,则可以在下一个GOP中继续丢弃。
下面提供一个为帮助理解的例子。
可以参见表2。比如,在视频帧的传输中,从第2时刻开始,无线网络出现堵塞,并一直持续至第7时刻,无线网络才恢复正常,则在第7时刻,接收器将一次性接收到第2、3、4、5、6、7帧,此时帧缓存中存放有第1帧,依据前述的确定方法,可以确定总延迟帧数为5。若延迟上限设定为1,则可以确定丢帧数为4。
表2
假设一个GOP中包含十个视频帧,即第1帧到第10帧为一个GOP。若认为在一个GOP中最多可以丢弃四个视频帧,即认为一个GOP中的第7、8、9、10帧是可以丢弃的。如此,在上述例子中,第7时刻接收到的第7帧可以直接丢弃,而其他的第2、3、4、5、6帧则可以保存在帧缓存中。在第8时刻,假如无线网络保持正常,则顺利接收到的第8帧也可以直接作丢弃处理;相应的,第9时刻与第10时刻接收到的第9帧与第10帧也可以直接丢弃。如下表3所示。
可见,在第二个GOP的第12时刻,跳过了第一个GOP的第7、8、9、10帧而直接将下一个GOP的第1帧作为待播放的下一个视频帧,从而能够缩小延迟的帧数,使视频延迟的帧数等于预设的延迟上限,视频播放恢复实时。
表3
而若认为在一个GOP中最多可以丢弃两个视频帧,即认为一个GOP中的第9帧、第10帧是可以丢弃的。那么,在上述例子中,第7时刻接收到的所有视频帧均可以保存在帧缓存中,直到第9时刻接收到第9帧,才开始丢第一个帧,第10时刻接收到第10帧,则丢第二个帧。不难发现,在当前GOP只丢弃了两个帧,根据确定的丢帧数,还需要再丢两个帧。还需要再丢的两个帧可以在下一个GOP进行,具体而言,是在接收到下一个GOP的第9帧与第10帧时进行丢弃,从而完成需要的丢帧数。
一个GOP中最多可以丢弃的帧数,可以通过预先设定一个数值以作限制。比如,可以设置一个预设限值,对应上述例子,可以设置预设限值等于2,则若确定的丢帧数大于该预设限值(对应上述例子即4>2),则将一部分丢帧工作(即超出的2个丢帧任务)分配在下一个GOP中进行。
本申请提供视频丢帧处理方法中,在视频播放出现延迟时,通过对视频数据中的特定视频帧进行丢帧处理,从而可以在尽可能小的影响视频画面稳定性的基础上,跳过丢弃的视频帧不播放,实现视频播放延迟的缩小,是视频播放恢复实时。
上述对本申请特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
本领域技术人员在考虑说明书及实践这里申请的发明后,将容易想到本申请的其它实施方案。本申请旨在涵盖本申请的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本申请的一般性原理并包括本申请未申请的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本申请的真正范围和精神由下面的权利要求指出。
应当理解的是,本申请并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本申请的范围仅由所附的权利要求来限制。
以上所述仅为本申请的较佳实施例而已,并不用以限制本申请,凡在本申请的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本申请保护的范围之内。
Claims (10)
1.一种调整视频码流的方法,其特征在于,应用于无线图像传输***,包括:
获取当前网络的指定传输指标,所述指定传输指标包括传输速率和表征传输速率变化趋势的标识信息;
根据所述指定传输指标确定是否调整视频编码当前的码流参数。
2.根据权利要求1所述的调整视频码流的方法,其特征在于,所述方法还包括:
若所述标识信息表征传输速率呈上升的趋势,且当前的传输速率小于第一预设值,保持当前的码流参数。
3.根据权利要求2所述的调整视频码流的方法,其特征在于,所述方法还包括:
若所述标识信息表征传输速率呈上升的趋势,且当前的传输速率大于所述第一预设值,按预设的增幅增大当前的码流参数。
4.根据权利要求3所述的调整视频码流的方法,其特征在于,所述按预设的增幅增大当前的码流参数,包括:
若传输速率的上升幅度大于上升幅度阈值,按第一预设增幅增大当前的码流参数;若传输速率的上升幅度小于或等于所述上升幅度阈值,按第二预设增幅增大当前的码流参数;其中,所述第一预设增幅大于所述第二预设增幅。
5.根据权利要求1所述的调整视频码流的方法,其特征在于,所述方法还包括:
若确定增大当前的码流参数,确定增大后的码流参数不超过预设的码流参数的上限值;
若所述标识信息表征传输速率呈下降的趋势,且当前的传输速率大于第二预设值,保持当前的码流参数;其中所述第二预设值为,可支持所述码流参数的上限值对应的码流的传输速率。
6.根据权利要求5所述的调整视频码流的方法,其特征在于,所述方法还包括:
若所述标识信息表征传输速率呈下降的趋势,且当前的传输速率小于所述第二预设值,按预设的减幅减小当前的码流参数。
7.根据权利要求6所述的调整视频码流的方法,其特征在于,所述按预设的减幅减小当前的码流参数,包括:
若传输速率的下降幅度大于下降幅度阈值,按第一预设减幅减小当前的码流参数;若传输速率的下降幅度小于或等于所述下降幅度阈值,按第二预设减幅减小当前的码流参数;其中,所述第一预设减幅大于所述第二预设减幅。
8.一种视频丢帧处理方法,其特征在于,应用于无线图像传输***,包括:
在接收到发射器发送的视频帧时,确定当前的总延迟帧数;若确定当前的总延迟帧数大于预设的延迟上限,确定对所述发射器发送的视频数据进行丢帧处理;其中,所述发射器发送的视频数据对应的码流参数根据当前网络的指定传输指标确定,所述指定传输指标包括传输速率和表征传输速率变化趋势的标识信息。
9.根据权利要求8所述的视频丢帧处理方法,其特征在于,所述确定对所述发射器发送的视频数据进行丢帧处理,包括:
确定丢帧数;所述丢帧数为所述总延迟帧数与所述延迟上限的差值;
根据确定的所述丢帧数,丢弃接收到的在画面组GOP中时序最后的一个或多个视频帧。
10.根据权利要求8所述的视频丢帧处理方法,其特征在于,所述确定当前的总延迟帧数,包括:
根据前后两次接收到视频帧的时间间隔,确定第一延迟帧数;
根据当前的帧缓存数,确定第二延迟帧数;
确定总延迟帧数;所述总延迟帧数为所述第一延迟帧数与所述第二延迟帧数的和。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010271209.7A CN111491201B (zh) | 2020-04-08 | 2020-04-08 | 调整视频码流的方法及视频丢帧处理方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010271209.7A CN111491201B (zh) | 2020-04-08 | 2020-04-08 | 调整视频码流的方法及视频丢帧处理方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111491201A true CN111491201A (zh) | 2020-08-04 |
CN111491201B CN111491201B (zh) | 2023-04-25 |
Family
ID=71798394
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010271209.7A Active CN111491201B (zh) | 2020-04-08 | 2020-04-08 | 调整视频码流的方法及视频丢帧处理方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111491201B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112399268A (zh) * | 2020-11-12 | 2021-02-23 | 唐桥科技(杭州)有限公司 | 实时流媒体传输方法、装置和电子设备 |
CN113315773A (zh) * | 2021-05-31 | 2021-08-27 | 浙江大华技术股份有限公司 | 一种码率调整方法、装置、电子设备及存储介质 |
CN114125453A (zh) * | 2021-11-23 | 2022-03-01 | 江苏云从曦和人工智能有限公司 | 视频传输方法、***、装置及介质 |
CN114422866A (zh) * | 2022-01-17 | 2022-04-29 | 深圳Tcl新技术有限公司 | 一种视频处理方法、装置、电子设备和存储介质 |
Citations (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1921615A (zh) * | 2005-04-29 | 2007-02-28 | 美国阿尔卡特资源有限合伙公司 | 用于快速频道改变的***、方法和计算机可读介质 |
US20070150929A1 (en) * | 2005-12-26 | 2007-06-28 | Kabushiki Kaisha Toshiba | Electronic apparatus and method for controlling data transfer rate in electronic apparatus |
CN101159862A (zh) * | 2007-11-29 | 2008-04-09 | 北京中星微电子有限公司 | 帧率控制方法及装置 |
CN101360058A (zh) * | 2008-09-08 | 2009-02-04 | 华为技术有限公司 | 一种控制缓存溢出的方法及装置 |
CN102036024A (zh) * | 2009-10-07 | 2011-04-27 | 索尼公司 | 发送装置和发送方法 |
CN102325274A (zh) * | 2011-10-13 | 2012-01-18 | 浙江万里学院 | 一种自适应网络带宽的视频流传输控制方法 |
CN103686449A (zh) * | 2013-12-31 | 2014-03-26 | 大连文森特软件科技有限公司 | 一种提升视频流畅度以及画质的缓存方法 |
CN103873382A (zh) * | 2012-12-17 | 2014-06-18 | 马维尔国际有限公司 | 数据帧缓冲方法和设备 |
CN104702968A (zh) * | 2015-02-17 | 2015-06-10 | 华为技术有限公司 | 一种视频帧丢帧方法及视频发送装置 |
CN105611309A (zh) * | 2015-12-22 | 2016-05-25 | 北京奇虎科技有限公司 | 一种视频传输方法和装置 |
CN106303559A (zh) * | 2016-08-18 | 2017-01-04 | 北京奇虎科技有限公司 | 一种控制直播视频流的方法及直播服务器 |
CN106954101A (zh) * | 2017-04-25 | 2017-07-14 | 华南理工大学 | 一种低延迟实时视频流媒体无线传输的丢帧控制方法 |
CN107276910A (zh) * | 2017-06-07 | 2017-10-20 | 上海迪爱斯通信设备有限公司 | 视频码率实时调整装置及***、视频服务器 |
CN107438031A (zh) * | 2017-08-07 | 2017-12-05 | 成都三零凯天通信实业有限公司 | 多信道自适应网络带宽的音视频流传输控制方法及*** |
CN109004972A (zh) * | 2018-07-13 | 2018-12-14 | 深圳市道通智能航空技术有限公司 | 无人机***的数据传输方法、装置、***和地面图传模块 |
CN110933380A (zh) * | 2019-12-17 | 2020-03-27 | 深圳市道通智能航空技术有限公司 | 一种图传控制方法、***及无人机 |
-
2020
- 2020-04-08 CN CN202010271209.7A patent/CN111491201B/zh active Active
Patent Citations (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1921615A (zh) * | 2005-04-29 | 2007-02-28 | 美国阿尔卡特资源有限合伙公司 | 用于快速频道改变的***、方法和计算机可读介质 |
US20070150929A1 (en) * | 2005-12-26 | 2007-06-28 | Kabushiki Kaisha Toshiba | Electronic apparatus and method for controlling data transfer rate in electronic apparatus |
CN101159862A (zh) * | 2007-11-29 | 2008-04-09 | 北京中星微电子有限公司 | 帧率控制方法及装置 |
CN101360058A (zh) * | 2008-09-08 | 2009-02-04 | 华为技术有限公司 | 一种控制缓存溢出的方法及装置 |
CN102036024A (zh) * | 2009-10-07 | 2011-04-27 | 索尼公司 | 发送装置和发送方法 |
CN102325274A (zh) * | 2011-10-13 | 2012-01-18 | 浙江万里学院 | 一种自适应网络带宽的视频流传输控制方法 |
CN103873382A (zh) * | 2012-12-17 | 2014-06-18 | 马维尔国际有限公司 | 数据帧缓冲方法和设备 |
CN103686449A (zh) * | 2013-12-31 | 2014-03-26 | 大连文森特软件科技有限公司 | 一种提升视频流畅度以及画质的缓存方法 |
CN104702968A (zh) * | 2015-02-17 | 2015-06-10 | 华为技术有限公司 | 一种视频帧丢帧方法及视频发送装置 |
CN105611309A (zh) * | 2015-12-22 | 2016-05-25 | 北京奇虎科技有限公司 | 一种视频传输方法和装置 |
CN106303559A (zh) * | 2016-08-18 | 2017-01-04 | 北京奇虎科技有限公司 | 一种控制直播视频流的方法及直播服务器 |
CN106954101A (zh) * | 2017-04-25 | 2017-07-14 | 华南理工大学 | 一种低延迟实时视频流媒体无线传输的丢帧控制方法 |
CN107276910A (zh) * | 2017-06-07 | 2017-10-20 | 上海迪爱斯通信设备有限公司 | 视频码率实时调整装置及***、视频服务器 |
CN107438031A (zh) * | 2017-08-07 | 2017-12-05 | 成都三零凯天通信实业有限公司 | 多信道自适应网络带宽的音视频流传输控制方法及*** |
CN109004972A (zh) * | 2018-07-13 | 2018-12-14 | 深圳市道通智能航空技术有限公司 | 无人机***的数据传输方法、装置、***和地面图传模块 |
CN110933380A (zh) * | 2019-12-17 | 2020-03-27 | 深圳市道通智能航空技术有限公司 | 一种图传控制方法、***及无人机 |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112399268A (zh) * | 2020-11-12 | 2021-02-23 | 唐桥科技(杭州)有限公司 | 实时流媒体传输方法、装置和电子设备 |
CN113315773A (zh) * | 2021-05-31 | 2021-08-27 | 浙江大华技术股份有限公司 | 一种码率调整方法、装置、电子设备及存储介质 |
CN114125453A (zh) * | 2021-11-23 | 2022-03-01 | 江苏云从曦和人工智能有限公司 | 视频传输方法、***、装置及介质 |
CN114422866A (zh) * | 2022-01-17 | 2022-04-29 | 深圳Tcl新技术有限公司 | 一种视频处理方法、装置、电子设备和存储介质 |
CN114422866B (zh) * | 2022-01-17 | 2023-07-25 | 深圳Tcl新技术有限公司 | 一种视频处理方法、装置、电子设备和存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN111491201B (zh) | 2023-04-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111491201B (zh) | 调整视频码流的方法及视频丢帧处理方法 | |
US8477844B2 (en) | Method and apparatus for transmitting video | |
US6873654B1 (en) | Method and system for predictive control for live streaming video/audio media | |
US8351513B2 (en) | Intelligent video signal encoding utilizing regions of interest information | |
KR101414435B1 (ko) | 비디오 스트림 품질 평가 방법 및 장치 | |
EP0771120B1 (en) | Video encoding apparatus | |
CN100401782C (zh) | 控制视频序列速率的方法和装置及视频编码装置 | |
US8634458B2 (en) | Image processing apparatus | |
US20130304934A1 (en) | Methods and systems for controlling quality of a media session | |
CN108012163B (zh) | 视频编码的码率控制方法及装置 | |
US20100092151A1 (en) | Image reproducing apparatus, image reproducing method, image capturing apparatus, and control method therefor | |
KR20070111550A (ko) | 예측에 의한 유사 고정 품질 레이트 제어 | |
EP2002664A1 (en) | Temporal quality metric for video coding | |
CN111901635A (zh) | 一种视频处理方法、装置、存储介质及设备 | |
CN101466035A (zh) | 一种基于h.264的视频图像组比特分配方法 | |
CN111669619A (zh) | 一种视频流数据切换方法、装置、终端和可读存储介质 | |
CN112203043A (zh) | 一种视频传输方法及*** | |
EP3522544A1 (en) | Estimating video quality of experience | |
JP2007028598A (ja) | 圧縮符号化装置及び圧縮符号化方法 | |
KR102137133B1 (ko) | 정보 처리 장치 | |
JP5471328B2 (ja) | 動画像再生装置及び動画像再生方法並びにプログラム | |
JP2017028622A (ja) | 画質制御装置、画質制御方法、画質制御システム及び画質制御用プログラム | |
JPH0744686B2 (ja) | 可変伝送速度画像符号化装置 | |
JP6289168B2 (ja) | 画像符号化装置 | |
CN117711164A (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 |