CN104427405A - 用于发送编码视频流的装置及其发送方法 - Google Patents

用于发送编码视频流的装置及其发送方法 Download PDF

Info

Publication number
CN104427405A
CN104427405A CN201410410333.1A CN201410410333A CN104427405A CN 104427405 A CN104427405 A CN 104427405A CN 201410410333 A CN201410410333 A CN 201410410333A CN 104427405 A CN104427405 A CN 104427405A
Authority
CN
China
Prior art keywords
grouping
time
sheet
time limit
restriction
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
Application number
CN201410410333.1A
Other languages
English (en)
Other versions
CN104427405B (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.)
LG Display Co Ltd
Original Assignee
LG Display 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 LG Display Co Ltd filed Critical LG Display Co Ltd
Publication of CN104427405A publication Critical patent/CN104427405A/zh
Application granted granted Critical
Publication of CN104427405B publication Critical patent/CN104427405B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/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/236Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/65Network streaming protocols, e.g. real-time transport protocol [RTP] or real-time control protocol [RTCP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/70Media network packetisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
    • H04N19/37Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability with arrangements for assigning different transmission priorities to video input data or to video coded data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
    • 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
    • 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/233Processing of audio elementary streams
    • 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/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • 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/236Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
    • H04N21/2365Multiplexing of several video streams
    • 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
    • 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/637Control signals issued by the client directed to the server or network components
    • H04N21/6375Control signals issued by the client directed to the server or network components for requesting retransmission, e.g. of data packets lost or corrupted during transmission from server
    • 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/65Transmission of management data between client and server
    • H04N21/658Transmission by the client directed to the server
    • H04N21/6583Acknowledgement

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)

Abstract

讨论了一种用于发送编码视频流的装置及其发送方法。该装置包括:片产生单元,将视频流中包含的一帧划分为至少一个或多个片;以及发送单元,在片限期内以分组为单位发送片,所述片限期是发送所述片所要求的时间限制,所述发送单元相对于其他分组优先发送包含片头部信息的头部分组,所述片头部包括对于重建所述片所必需的信息,其中所述发送单元包括:分组发送器,当分组发送失败时在预定重试限制内重发所述分组;以及头部保护器,即使当所述头部分组的重发次数超过所述预定重试限制时,所述头部保护器仍执行控制以在所述片限期内重复地发送所述头部分组。

Description

用于发送编码视频流的装置及其发送方法
技术领域
本发明涉及用于发送编码视频流的装置及其发送方法。
背景技术
通过以恒定速率显示静止图像或者帧的序列来实现数字视频的播放,所述速率是以每秒帧数(fps)为单位的。为了平滑视频播放,帧必须满足严格的回放(playout)限期。因此,所有网络和播放延迟都必须保持在连续帧之间所允许的时间约束条件之内。
H.264编解码器是一种高效率的编码标准。与传统的视频压缩技术类似,H.264使用预测方法重建视频顺序。这一概念源自于这样的事实:数字视频通常显示出空间冗余和时间冗余,空间冗余表示一帧内的各像素之间的相似性,时间冗余是相邻帧中的各像素之间的相似性。帧被划分为作为16×16的像素区域的宏块(MB)单元,并对每MB进行帧内编码(intra-coded)或者帧间编码(inter-coded)。使用来自当前帧的信息重建帧内编码的MB。使用仅仅来自前一帧的信息(预测型)、或者使用来自前一帧和更前一帧两者的信息(双预测型)重建帧间编码的MB。
帧可以包含不同MB类型的混合,并根据用于预测的参考类型来标记帧。例如,B帧具有双预测的MB;然而,它也可以包含内预测的MB。P帧将包含根据过去的帧预测的MB,也可以包含内预测的MB。I帧仅仅包含内预测的MB,并且不参考其他帧。
编码视频由图像组(GOP)的序列构成,图像组是一组规定了I、P和B帧的顺序的编码图像。
图1示出现有技术中的GOP的帧排序。箭头表示来自于相邻帧的预测MB的源。
如图1所示,仅仅I帧和P帧用作参考帧。由于帧之间的这种相互依赖性,当发生分组丢失时,错误可能会在GOP中的各帧之间传播。
使用H.264标准编码的HD视频帧通常再划分为多个片(slice)。片是根据它们所包含的MB的类型而分类的。
图2示出现有技术中的H.264位流的分级语法。
如图2所示,语法被抽象为两层:视频编码层(VCL),具有实际的压缩视频数据;和网络提取层(NAL),以适合于基于分组的网络的形式封装压缩数据和附加信息。
网络提取层由一系列的NAL单元构成,所述NAL单元是可由H.264解码的最小数据单元。三种常见的NAL单元是序列参数集(SPS)、图像参数集(PPS)和片。
SPS包含整个视频共用的参数,比如编码视频所符合的类(profile)和级(level)。因此,如果包含SPS信息的分组丢失,整个视频将无法解码。PPS包含应用于一个帧序列的共用参数,比如熵编码模式。如果一个帧序列的PPS丢失,则这些帧都无法解码。如前所述,片是构造帧的主要单元,并且帧可以具有单个片或者多个片。
每个片包含片头部,之后是包含MB的视频数据。片头部包含片内的所有MB共用的信息。如果片头部丢失,则即使正确地接收了片数据,整个片也无法解码。
图3A和图3B示出在现有技术中分组丢失对帧的影响。图3A示出原始发送的帧,而图3B示出由于分组丢失而导致失去一些信息的接收帧。
如图3B所示,片4的片头部丢失,导致整个片无法解码。与此相反,接收到片5的片头部,但是丢失了最后两个实时协议(RTP)分组,这允许对大部分的片进行解码。
发明内容
据此,本发明涉及一种用于发送编码视频流的装置及其发送方法,其基本上避免了由于现有技术的局限性和不足而引起的一个或多个问题。
本发明的一个方面是提供一种用于发送编码视频流的装置及其方法,其相对于其他分组优先发送包含片头部信息的头部分组。
本发明的另一方面是提供一种用于发送编码视频流的装置及其方法,其估计信道条件并选择适当的重试限制。
本发明的另一方面是提供一种用于发送编码视频流的装置及其方法,其使用MAC和物理层参数估计分组到达时间,并将估计结果与相应的回放限期比较以确定完全丢弃分组。
除了本发明的上述目的之外,下文将说明本发明的其他特征和优点,这可以由本领域技术人员根据以下说明而清楚理解。
除了本发明的上述特征和效果之外,本发明的其他特征和效果可以根据本发明的实施例而重新推断。
本发明的额外优点、目的和特征将部分在随后的描述中进行阐述,而部分则将在本领域技术人员在研究下文之后变得清楚明白,或者可以通过本发明的实践来了解。可以通过在所撰写的说明书及其权利要求书以及所附附图中具体指明的结构来实现和获得本发明的目的及其他优点。
为了实现这些及其他益处、并根据本发明的目的,正如此处所具体实现和概括描述的,提供了一种用于发送编码视频流的装置,包括:片产生单元,将视频流中包含的一帧划分为至少一个或多个片;以及发送单元,在片限期内以分组为单位发送片,所述片限期是发送所述片所要求的时间限制,所述发送单元相对于其他分组优先发送包含片头部信息的头部分组,所述片头部包括对于重建所述片所必需的信息,其中所述发送单元包括:分组发送器,所述分组发送器当未成功发送分组时在预定重试限制内重发所述分组,而当成功发送当前分组时发送下一可用分组;以及头部保护器,所述头部保护器即使当所述头部分组的重发次数超过所述预定重试限制时,仍执行控制,以便在所述片限期内重复地发送所述头部分组。
在本发明的另一方面中,提供了一种发送包括至少一个或多个片的帧的方法,包括:在片限期内以分组为单位发送片,所述片限期是发送所述片所要求的时间限制,发送单元相对于其他分组优先发送包含片头部信息的头部分组,所述片头部包括对于恢复所述片所必需的信息;以及当未成功发送分组时在预定重试限制内重发所述分组,而当成功发送所述分组时开始发送下一可用分组,其中所述分组的重发包括在所述片限期的时间约束之内,即使当所述头部分组的重发次数超过所述预定重试限制时,仍重发所述头部分组。
应理解的是,本发明的上述概括说明及随后的详细说明是示例性的和解释性的,旨在为所请求保护的本发明提供进一步的解释。
附图说明
附图被包括在内以提供对于本发明的进一步的理解,它们被并入并构成本申请的一部分;附图图示出本发明的实施例并与描述内容一起用于解释本发明的原理。在附图中:
图1示出现有技术中的GOP的帧排序。箭头表示来自于相邻帧的预测MB的源;
图2示出现有技术中的H.264位流的分级语法;
图3A和图3B示出在现有技术中分组丢失对帧的影响;
图4示出根据本发明的将片划分为实时协议(RTP)分组以及它们对应的重要性;
图5示出根据本发明的解码顺序和显示顺序;
图6示出根据本发明的片保护发送方案;
图7示出根据本发明的片保护方案的范例体系结构;
图8示出根据本发明的发送编码视频流的装置的实施例;
图9示出根据本发明的发送单元的实施例;以及
图10示出根据本发明的发送编码视频流的方法的实施例。
具体实施方式
在下文中,将参考附图详细说明根据本发明的发送编码视频流的装置及其方法。
本发明涉及一种用于名称为H.264视频的动态重试适配方案(DRAS.264)的H.264视频的自适应MAC层重发技术。本发明利用嵌入H.264位流的特定细节连同对于网络条件的实时监控,提供对于任何H.264编码视频的保护,而不管所使用的类和级如何。
此外,本发明符合H.264视频的实体,具有片和可变的帧尺寸。MAC层重发限制是根据由H.264位流推定的分组类型、以及在视频发送过程中监测的具体网络量度而动态调整的。尽管本发明特别适用于H.264视频,但是本发明也适用于包含基于片的帧的任何视频,包括即将到来的H.265视频。
IEEE802.11分布式协调功能(DCF)是控制无线网络接入的MAC协议的核心机制。在802.11网络中,每个站监控无线媒介的活动。站按照时隙的间隔来监控媒介。当检测到媒介在特定时期TDIFS内是空闲的,则允许站发送。在表1中提供了802.11 DCF的重要时间间隔的概述。
[表1]
为了避免冲突(即,同时从多个站发送),采用了一种指数退避(exponentialbackoff)机制,用于从竞争窗口(CW)中选择一随机时隙,也被称为退避时隙(BO)。
CW是以多个时隙单元为单位划分的预定义时间间隔,并在每次连续冲突后尺寸翻倍。当CW达到预定的最大值时,它保持在该值,直到发生成功的发送为止,或者达到该分组的重试限制(即,丢弃)。
802.11无线网络中工作的任何站可以分类为四个状态之一:成功,冲突,退避,和延期。可以利用这些状态连同表1中给出的持续时间计算一组影响链路层分组的端到端延迟的参数。
[表2]
表2提供了在假定所有分组具有相等长度的情况下为每一状态计算的时序。基于这一假定,对于成功和冲突时间而言,分组从开始发送直到它预计接收到确认(ACK)分组所用的时间是相等的。
对实际接收ACK(即,成功)与未接收ACK(即,冲突)进行区分,这一点将在用于预测总的分组延迟的模型中解决。
对于延期时间的计算是根据其他站在发送期间占用媒介多久。由于我们的假定考虑了具有相等长度的分组,因此这一时间间隔表示其他站何时开始发送以及它们预计何时接收ACK。因此,这一持续时间也等于用于成功和冲突时间的持续时间。最后,CWr是用于第r次重试的竞争窗口的值。
本发明是通过监控分组延迟和观察位流内容的组合来实现的。本发明的本质部分是紧密监控802.11无线网络的行为,其允许估计由MAC层引起的分组延迟。
H.264位流的实时语法分析允许对分组重要性进行即时地(on-the-fly)检测。基于这一信息,可能需要依据由位流推定的重要性级别,在不利的网络条件期间为特定分组增加MAC重试限制。此外,可能需要全部丢弃一些分组,以避免原本会在超出它们相应的帧回放限期之外传送分组的非必要发送。
对于802.11无线网络所要考虑的重要量度是基于上文列出的四个主要状态:成功,冲突,退避,和延期。
每一状态表示影响总分组延迟的某个延迟分量。为了预测的目的,对分组在每一状态中保持多长时间的运行平均值进行计数。重要的是,要注意仅仅能够对于成功接收的分组获得分组延迟,因为对于丢弃分组的延迟是未知的。
影响分组从它被发送的时间直至它被成功确认的时间所经历的总延迟的三个主要因素:(1)当发送分组时发生的冲突的数目,(2)为每一重试选择的退避时隙,和(3)站被延期了多少次。
前两个因素用于确定与冲突和退避次数相关联的平均延迟。最后一个因素用于获得与其他站占用媒介多长时间相关联的平均延迟。这些量度定义如下:
nc:由发送视频的主站经历的冲突的数目,
BOr:为重试r选择的退避时隙,
ntx:在主站成功地接收ACK之前其他站的发送数。
这些量度用于定义分组的总延迟由以下等式1给出:
[等式1] T delay pkt = Σ r = 0 n c T BO r + n c T busy + n tx T busy + T success + ( n c + n tx ) T DIFS
等式1的各分量涵盖了802.11 MAC层操作的四个主要状态,详细说明如下:
表示与第r次重试相关联的退避延迟,即,使得BOr∈[0,CWr],其中CWr=a2r-1。常数a取决于使用的标准。例如,802.11a使用a=16,而802.11b使用a=32。
Tbusy表示媒介被其他站占用的时间。这在等式中可以意味着(1)主站处于延期中,或者(2)发生冲突,这分别解释了等式中的ntx和nc的使用。更具体地说,Tbusy被定义为Tbusy=Tframe+TSIFS+TACK,其中Tframe、TSIFS和TACK是表1中列出的MAC特定延迟。
Tsuccess是与分组的成功发送相关的时间,它等于Tbusy
TDIFS是在重发之前媒介必须被感测为空闲的每一次发送之后的MAC特定持续时间(表1中表示的)。
等式1可以进一步简化为等式2:
[等式2]
在默认的MAC层协议中,分组仅仅能够承受最多6次重发(包括首次尝试在内总共7次重发)。因此,每次重试都具有与它的整个802.11网络操作过程相关联的平均延迟。这一延迟可以通过监控每次尝试的平均退避窗口大小E[BOr]、以及能够访问该媒介的其他站的平均发送数而获得。
此外,一旦成功发送分组,便可以降低nc=r≤R,其中R是最大重试数(作为默认R=6)。随后可以使用以下等式3,基于重试次数演算估计的分组延迟:
[等式3]
E [ T delay r pkt ] = T success + E [ BO r ] t slot + r ( T collision + T DIFS ) + E [ n tx r ] ( T busy + T DIFS )
其中tslot是时隙的持续时间(参看表1),并且Tcollision=Tbusy。等式3基于BOr和ntx的平均值,即E[BOr]和提供每一重试值r的预测分组延迟。因此,以重试值r为索引,通过等式3产生预测值的阵列。
本发明关注于两个参数:帧尺寸,和为编码位流的每一分组计算的重要性级别。这些变量都是相关的,并且由于用于提取分组重要性的预处理步骤而认为在现有方法中已知。然而,如果不进行预处理,则帧尺寸和分组重要性是无法获得的,并且必须从流制H.264内容中动态地提取。
因此,类似于执行运行平均以监控分组延迟,所提出的方法即时地(on thefly)处理H.264位流,并提取平均帧尺寸,该平均帧尺寸最终用于确定每一分组限期。
如图3所示,编解码器的片特性为每一分组应用清晰的重要性级别。片头部由解码器所需要的最重要信息构成,片头部之后是由实际编码视频组成的数据。当片头部失去时,解码器无法重建该片。H.264通过使用可变长度编码,使得片的每个分组都仅仅和它的先前分组的成功传送一样重要。因此,对于丢失的片内的任一分组,所有后继分组都应当被清除,以避免发送无用的信息。
图4示出根据本发明的将片划分为实时协议(RTP)分组以及它们对应的重要性。
正如图4所示出的,包括片头部的头部分组比其他分组更重要,因为如果没有该片头部,则整个片都无法重建。
图5示出在视频流期间的解码顺序和显示顺序。
如图5所示,在GOP级别,帧以解码顺序发送,该解码顺序不同于显示顺序。这确保所有参考帧在相对应的内部预测帧之前被解码。因此,在帧级别,信息也是按照重要性的顺序组织的。
本发明的一个重要特征是为流制视频的每一分组提取重要性级别。通常,使用预处理技术以便基于重要性为视频分组划分等级,这在以后有助于在视频流期间指定重试限制。然而,预编码的H.264视频的错误传播行为在分组级别是不可用的。因此,对H.264编解码器的NAL单元结构进行探索以开发一种保护算法,用于在无需知道视频内容的特定细节的情况下平滑视频播放。
在本发明中考虑了图4中示出的片内的分组重要性,以便在压缩视频的片级别提供保护。为了利用这类保护,如等式4定义帧限期Dframe
[等式4]Dframe=Tinit+nframeλ
其中Tinit是在接收器处播放视频之前的初始启动延迟,nframe是待播放的当前帧的帧编号,λ=1/fps是帧周期或者每一帧播放之间的间隔。Tinit也被称为抖动时间(jitter time),它是通过适当尺寸的缓冲器或者抖动缓冲器实现的,用于平滑视频回放。
当多个片用于编码视频时,可以按照等式5计算每一片的限期:
[等式5] D slice = T init + n frame λ n slice
其中nslice是每一帧的片的数目。由于一帧的每一单独片的相对重要性不是已知的,所以在帧的所有片之间均匀地分配帧周期。
图6示出根据本发明的片保护发送方案。
正如图6所示出的,片保护按照以下方式进行:
(1)在如等式6的时间约束之内重复地发送具有片头部的每一分组:
[等式6] t slice + ( n over + 1 ) T delay slc - hdr < D slice
其中tslice表示片开始发送的时间,是根据等式1获得的,并表示包含片头部的分组所经历的延迟,nover是分组超过重试限制的次数。当超过重试限制时,片保护算法将为MAC层提供包含片头部的相同分组。正常的MAC层操作将新入的分组作为新分组考虑,并以CW=CWmin=a2r-1开始发送。
此外,就像用户数据报协议(UDP)中的情形一样,还简单地忽略了向上层的MAC重试超时通知。这种额外的机会提供了对于以H.264片头部作为有效负载一部分的任何分组的更高保护。此外,这种额外的保护并不对MAC层DCF操作的默认行为作出任何修改,这是本发明的一个新颖之处。
(2)通过将片的估计最终分组的重试限制减少到1来补偿头部分组的额外发送。如果每一片的分组的数目是预先不知道的,则需要基于动态获得的统计信息进行估计。
(3)重复步骤(1)和(2),直到成功发送片头部为止。对于步骤(2),从片的末尾按相反顺序遍历分组。
(4)使用每一片分组的新计算的限期,发送该片的剩余分组。如果成功地发送头部并保持步骤(1)的条件,则通过等式7给出在片限期之前可用的时间tremaining
[等式7]
t remaining = D slice - ( t slice + ( n over + 1 ) T delay slc - hdr )
这允许使用以下等式8计算每一分组限期的剩余时间:
[等式8]
D pkt = D slice - t remaining n pkt - ( n over + 1 )
其中npkt是片中的分组的数目。利用等式9选择头部之后的分组的重试限制。
[等式9]
再次说明,是通过等式3定义的,并表示第r次重试的平均延迟。
(5)令表示在等式3中定义的正被发送的当前分组的估计延迟。如果在任意时间则发生限期违反,并将该分组连同该片中的后续分组一起丢弃。
对于图6中示出的片保护发送方案,必须考虑几个重要的细节。由于每一片中的分组的提取数目是预先不知道的,因此必须估计它。这是通过在流制传输期间存储每一片类型(IDR,I,P,或者B)的分组的平均数、并在为发送考虑的情况下将该平均数用作当前片的近似数,来实现的。
在步骤(4)中,片末尾的分组被忽略,不将它们引入每一分组限期的计算中。这为片开始处的紧随片头部之后的分组赢得了时间,但是同时,仍然有可能发送片的最后分组,因为为重试调整考虑了每一分组的平均延迟。因此,对于原本会被忽略的片末尾分组而言,仍可能会获得空闲时间。
此外,tremaining是通过以下等式10连续计算的。
[等式10]
tremaining=Dslice-t
其中t是当前时间,Dslice是等式5中计算的片限期。
最后,可以通过将重试限制设置为低值来精细调整片头部的发送以便快速传送,减少与退避延迟相关联的等待时间,这是本发明的另一新颖之处。
图7示出根据本发明的片保护方案的体系结构。
本发明的实施方式在于网络和链路层之间的接口。重试指定模块是该系统的主要部件,其从网络接口卡(NIC)采集DCF参数,从片尺寸计数器采集用于对H.264位流进行语法分析的片信息,以及从GOP测长器采集GOP信息。重试指定模块随后应用限期计算,以便为每一分组设置相应的重试限制。NIC内的两个框表示正在发送的分组,以及指定给该分组的最大重试限制(MRL)。片保护是在长划线框内实现的,并由片头部存储器和多路复用器构成,该多路复用器将适当分组馈送到无线接口。当MAC层由于过度重试而丢弃片头部时,所述多路复用器将重新选择经由NIC发送的片头部。一旦成功地发送了片头部,从网络队列中取出下一等待分组并进行处理。
<实施例>
图8示出根据本发明的发送编码视频流的装置的实施例。
如图8所示,根据本发明的用于发送编码视频流的装置包括片产生单元200,发送单元300,分组限期计算单元400,和重试限制调制单元500。
片产生单元200将视频流中包含的一帧划分为至少一个或多个片。片包括至少一个或多个宏块(MB)。
片包括片头部和片数据。片头部包含片内的所有MB共用的信息。片头部由解码器所需要的最重要信息构成,片头部之后是由实际编码视频组成的数据。当片头部失去时,解码器无法重建整个片。
发送单元300在片限期内以分组为单位发送片,所述片限期是发送片所要求的时间限制,发送单元300相对于其他分组优先发送包含片头部信息的头部分组,并且片头部包括对于重建该片所必需的信息。
片限期可依据片类型而可变地设置。
图9示出根据本发明的发送单元的实施例。
如图9所示,根据本发明的发送单元300包括分组发送器310,头部保护器320,和ACK接收器330。
当在预定重试限制内未成功发送分组时,分组发送器310进行重发,并当成功发送分组时,分组发送器310发送下一分组。在一实施例中,重试默认限制是6。在本范例中,分组仅仅能够承受最多6次重发(包括首次尝试在内总共7次重发)。
即使当头部分组的重发次数超过预定重试限制时,头部保护器320仍执行控制,以便在片限期内重复地发送头部分组。
在一实施例中,头部保护器320当在超过重试限制之后丢弃头部分组时,将重发的次数复位至原始值。然后,分组发送器310再次发送头部分组。
ACK接收器330确定头部分组是否成功发送。
分组限期计算单元400在发送片当中动态地计算分组限期,分组限期是每一个剩余的非发送分组的发送时间限制。分组限期是通过将剩余时间除以重发变量来计算的,其中剩余时间是从片限期中减去发送头部分组所用时间而得到的值,重发变量是利用分组的重发次数计算而得的值。
在一实施例中,分组限期Dpkt是通过如下表示的等式计算的:
D pkt = t remaining n pkt - ( n over + 1 )
其中tremaining表示在等式10中定义的剩余时间,npkt表示片中包含的分组的数目,nover表示超过重试限制的次数。
重试限制计算单元500动态地设置重试限制,以便基于分组发送当中出现的重发次数估计而得的预测分组延迟满足以下条件:作为每一分组的发送时间限制的分组限期大于或等于该预测分组延迟。
在一实施例中,所述预测分组延迟是通过如下表示的等式计算的:
E [ T delay r pkt ] = T success + E [ BO r ] t slot + r ( T collision + T DIFS ) + E [ n tx r ] ( T busy + T DIFS )
其中Tsuccess表示成功发送分组所用时间,E[BOr]表示每次尝试的平均退避窗口大小,表示其他站访问媒介的平均发送数,tslot表示时隙间隔,r表示尝试重发的次数,Tcollision表示冲突期间浪费的时间,TDIFS表示由802.11标准规定的媒介在重发之前必须等待的空闲持续时间,Tbusy表示由其他站访问媒介的时间。
一种发送包括至少一个或多个片的帧的编码视频流发送方法,包括:在片限期内以分组为单位发送片,所述片限期是发送片所要求的时间限制,发送单元相对于其他分组优先发送包含片头部信息的头部分组,并且片头部包括对于恢复该片所必需的信息。以及当未成功发送分组时在预定重试限制内重发该分组,而当成功发送分组时发送下一可用分组,其中分组的重发包括在片限期的时间约束之内,即使当头部分组的重发次数超过预定重试限制时,仍重复地发送头部分组。
图10示出根据本发明的发送编码视频流的方法的实施例。
正如图10所示出的,在操作S1100中,首先,根据本发明的发送编码视频流的方法包括在片限期内以分组为单位发送片,所述片限期是发送片所要求的时间限制,发送单元相对于其他分组优先发送包含片头部信息的头部分组,片头部包括对于恢复该片所必需的信息。
接下来,本发明在操作S1230中确定重发次数是否超过重试限制。如果重发不超过重试限制,则本发明在操作S1100中重发分组。如果重发次数超过重试限制,则本发明在操作S1240中确定该分组是否为头部分组。
如果该分组为头部分组,则本发明在操作S1250中将重发次数复位,并在操作S1100中重发该头部分组。如果该分组不是头部分组,则本发明在操作S1300中丢弃该分组,并发送下一可用分组。
本发明动态地计算单独的分组限期,所述分组限期是片中在头部分组之后的所有分组的发送时间限制。所述分组限期是通过从当前时间中除以剩余时间直到片限期为止来计算的。这可以通过从片限期中减去发送头部分组所用时间来获得,如等式10所给出的,并将该数量除以片中分组的数目。通过根据为片头部发送超过重试限制的每一实例计算而丢弃最终的分组,将片中分组的数目调节至较低数目。
在一实施例中,分组限期Dpkt是通过如下表示的等式计算的:
D pkt = t remaining n pkt - ( n over + 1 )
其中tremaining表示剩余时间,npkt表示片中包含的分组的数目,nover表示头部分组超过重试限制的次数。
本发明动态地复位重试限制,使得作为整个分组发送过程中得出的运行平均值的预测分组延迟满足以下条件:作为每一分组的发送时间限制的分组限期大于或等于所述预测的分组发送延迟。
在一实施例中,所述预测分组延迟是通过如下表示的等式计算的:
E [ T delay r pkt ] = T success + E [ BO r ] t slot + r ( T collision + T DIFS ) + E [ n tx r ] ( T busy + T DIFS )
其中Tsuccess表示成功接收确认(ACK)并由此成功发送分组的最终尝试所用时间,E[BOr]表示每次尝试的平均退避窗口大小,表示其他站访问媒介的平均发送数,tslot表示时隙间隔,r表示尝试重发的次数,Tcollision表示冲突中浪费的时间,TDIFS表示在重发之前或者开始发送新分组之前媒介必须处于空闲的限定时间,Tbusy表示其他站访问媒介的时间。
如上所述,本发明即使在超过预定重试限制之后,仍重复地发送头部分组,因此增加了成功发送片头部的概率。并且,除了对重试限制进行实时调整之外,本发明不需要对下层的MAC层操作作出任何修改,从而可以被广泛地应用于现有的802.11网络中。
此外,本发明在覆盖H.264编码视频的多种变型方面提供了很高的灵活性,从而成为在无线视频流期间保持服务质量(QoS)的有吸引力的方案。
对于本领域中普通技术人员来说很清楚的是,可以在不脱离本发明的精神或者范围的情况下在本发明中作出各种修改和变动。因此,其意图是,本发明涵盖对于本发明的修改和变动,只要这些修改和变动归入所附权利要求书及其等效物的范围之内。

Claims (10)

1.一种用于发送编码视频流的装置,包括:
片产生单元,将视频流中包含的一帧划分为至少一个或多个片;以及
发送单元,在片限期内以分组为单位发送片,所述片限期是发送所述片所要求的时间限制,所述发送单元相对于其他分组优先发送包含片头部信息的头部分组,所述片头部包括对于重建所述片所必需的信息,
其中所述发送单元包括:
分组发送器,所述分组发送器当分组发送失败时在预定重试限制内重发所述分组,而当当前分组发送成功时发送下一可用分组;以及
头部保护器,即使当所述头部分组的重发次数超过所述预定重试限制时,所述头部保护器仍执行控制以在所述片限期内重复地发送所述头部分组。
2.根据权利要求1所述的装置,还包括动态地计算分组限期的分组限期计算单元,所述分组限期是片中的头部分组之后的每一分组的发送时间限制,所述分组限期是通过将直至片限期的剩余时间除以片中的分组数目而计算的,
其中,所述剩余时间是通过从所述片限期中减去成功发送所述头部之后的当前时间而计算的。
3.根据权利要求2所述的装置,其中所述分组限期Dpkt是通过如下表示的等式计算的:
D pkt = t remaining n pkt - ( n over + 1 )
其中tremaining表示所述剩余时间,npkt表示所述片中包含的分组的数目,nover表示所述头部分组超过所述重试限制的次数。
4.根据权利要求1所述的装置,还包括重试限制计算单元,所述重试限制计算单元动态地设置所述重试限制,以使得预测分组延迟满足以下条件:所述预测分组延迟小于等于分组限期,其中所述预测分组延迟是每次重试所引起的延迟的运行平均值,所述分组限期是每一分组所要求的时间限制。
5.根据权利要求4所述的装置,其中所述预测分组延迟是基于以下等式计算的:
E [ T delay r pkt ] = T success + E [ BO r ] t slot + r ( T collision + T DIFS ) + E [ n tx r ] ( T busy + T DIFS )
其中Tsuccess表示成功接收确认(ACK)并由此指示成功发送分组的最终尝试所用时间,E[BOr]表示每次尝试的平均退避窗口大小,表示其他站访问媒介的平均发送数,tslot表示时隙间隔,r表示尝试重发的次数,Tcollission表示冲突中浪费的时间,TDIFS表示媒介在重发之前或者开始发送新分组之前必须处于空闲的限定时间,Tbusy表示其他站访问媒介的时间。
6.根据权利要求1所述的装置,其中所述片限期依据片类型而可变地设置。
7.根据权利要求1所述的装置,其中所述发送单元还包括ACK接收器,其确定分组是否发送成功。
8.一种发送包括至少一个或多个片的帧的编码视频流发送方法,包括:
在片限期内以分组为单位发送片,所述片限期是发送所述片所要求的时间限制,发送单元相对于其他分组优先发送包含片头部信息的头部分组,所述片头部包括对于恢复所述片所必需的信息;以及
当分组发送失败时在预定重试限制内重发所述分组,而当分组发送成功时开始发送下一可用分组,
其中所述分组的重发包括在所述片限期的时间约束之内,即使当所述头部分组的重发次数超过所述预定重试限制时,仍重发所述头部分组。
9.根据权利要求8所述的编码视频流发送方法,还包括动态地计算分组限期,所述分组限期是片中的头部分组之后的每一分组的发送时间限制,所述分组限期是通过将直至片限期的剩余时间除以片中的分组数目而计算的,其中,所述剩余时间是通过从所述片限期中减去发送头部分组所用时间而计算的。
10.根据权利要求9所述的编码视频流发送方法,还包括动态地复位所述重试限制,以使得预测分组延迟满足以下条件:所述预测分组延迟小于等于分组限期,其中所述预测分组延迟是每次重试所引起的延迟的运行平均值,所述分组限期是每一分组所要求的时间限制。
CN201410410333.1A 2013-09-06 2014-08-20 用于发送编码视频流的装置及其发送方法 Active CN104427405B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US14/020,013 US9231993B2 (en) 2013-09-06 2013-09-06 Apparatus for transmitting encoded video stream and method for transmitting the same
US14/020,013 2013-09-06

Publications (2)

Publication Number Publication Date
CN104427405A true CN104427405A (zh) 2015-03-18
CN104427405B CN104427405B (zh) 2018-01-09

Family

ID=52625571

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410410333.1A Active CN104427405B (zh) 2013-09-06 2014-08-20 用于发送编码视频流的装置及其发送方法

Country Status (3)

Country Link
US (1) US9231993B2 (zh)
KR (1) KR101598441B1 (zh)
CN (1) CN104427405B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107135216A (zh) * 2017-05-03 2017-09-05 深圳市视维科技股份有限公司 一种加强弱网环境流媒体传输方法
CN107431668A (zh) * 2015-03-23 2017-12-01 阿尔卡特朗讯公司 用于分组的排队和处理的方法、排队系统、网络元件及网络系统
CN108353308A (zh) * 2015-11-23 2018-07-31 高通股份有限公司 设置数据分组的生命期限以使拥塞和竞争最小化

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6300114B2 (ja) * 2014-08-06 2018-03-28 パナソニックIpマネジメント株式会社 送信方法、受信方法、送信装置及び受信装置
US10917497B2 (en) * 2019-03-27 2021-02-09 Wangsu Science & Technology Co., Ltd. Method, system, device and server for determining transmission quality of node

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2002013447A2 (en) * 2000-07-21 2002-02-14 Aperto Networks, Inc. Integrated, self-optimizing, multi-parameter/multi-variable point-to-multipoint communication system (ii)
US6393489B1 (en) * 1997-02-11 2002-05-21 Vitesse Semiconductor Corporation Media access control architectures and network management systems
CN1682492A (zh) * 2002-09-10 2005-10-12 皇家飞利浦电子股份有限公司 实时重试限值-一种用于使无线局域网吞吐量最大化并使其分组丢失最小化的系统和方法
US20090193484A1 (en) * 2008-01-03 2009-07-30 Nec Laboratories America, Inc. Adaptive scheduling of streaming video over wireless networks

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6380945B1 (en) * 1998-11-09 2002-04-30 Broadcom Corporation Graphics display system with color look-up table loading mechanism
US6636222B1 (en) * 1999-11-09 2003-10-21 Broadcom Corporation Video and graphics system with an MPEG video decoder for concurrent multi-row decoding
US6661422B1 (en) * 1998-11-09 2003-12-09 Broadcom Corporation Video and graphics system with MPEG specific data transfer commands
US7446774B1 (en) * 1998-11-09 2008-11-04 Broadcom Corporation Video and graphics system with an integrated system bridge controller
EP1089567A4 (en) * 1999-04-13 2001-11-07 Sony Corp MEDIUM, DEVICE AND METHOD FOR VIDEO PROCESSING
US7031259B1 (en) * 2000-05-26 2006-04-18 Bigband Networks, Inc. Method and system for scheduling a transmission of compressible and non-compressible packets
US7969997B1 (en) * 2005-11-04 2011-06-28 The Board Of Trustees Of The Leland Stanford Junior University Video communications in a peer-to-peer network
FR2908576A1 (fr) * 2006-11-14 2008-05-16 Canon Kk Procede,dispositif et application logicielle d'ordonnancement d'une transmission de paquets d'un flux de donnees
US20090103635A1 (en) * 2007-10-17 2009-04-23 Peshala Vishvajith Pahalawatta System and method of unequal error protection with hybrid arq/fec for video streaming over wireless local area networks
US8730930B2 (en) * 2011-05-31 2014-05-20 Broadcom Corporation Polling using B-ACK for occasional back-channel traffic in VoWIFI applications
GB2498992B (en) * 2012-02-02 2015-08-26 Canon Kk Method and system for transmitting video frame data to reduce slice error rate
JP6361866B2 (ja) * 2013-05-09 2018-07-25 サン パテント トラスト 画像処理方法および画像処理装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6393489B1 (en) * 1997-02-11 2002-05-21 Vitesse Semiconductor Corporation Media access control architectures and network management systems
WO2002013447A2 (en) * 2000-07-21 2002-02-14 Aperto Networks, Inc. Integrated, self-optimizing, multi-parameter/multi-variable point-to-multipoint communication system (ii)
CN1682492A (zh) * 2002-09-10 2005-10-12 皇家飞利浦电子股份有限公司 实时重试限值-一种用于使无线局域网吞吐量最大化并使其分组丢失最小化的系统和方法
US20090193484A1 (en) * 2008-01-03 2009-07-30 Nec Laboratories America, Inc. Adaptive scheduling of streaming video over wireless networks

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107431668A (zh) * 2015-03-23 2017-12-01 阿尔卡特朗讯公司 用于分组的排队和处理的方法、排队系统、网络元件及网络系统
CN108353308A (zh) * 2015-11-23 2018-07-31 高通股份有限公司 设置数据分组的生命期限以使拥塞和竞争最小化
CN107135216A (zh) * 2017-05-03 2017-09-05 深圳市视维科技股份有限公司 一种加强弱网环境流媒体传输方法
CN107135216B (zh) * 2017-05-03 2020-12-04 深圳市小溪流科技有限公司 一种加强弱网环境流媒体传输方法

Also Published As

Publication number Publication date
KR20150028948A (ko) 2015-03-17
US20150071284A1 (en) 2015-03-12
KR101598441B1 (ko) 2016-03-02
US9231993B2 (en) 2016-01-05
CN104427405B (zh) 2018-01-09

Similar Documents

Publication Publication Date Title
CN1859579B (zh) 传输多媒体数据流的设备和方法
CN111836079B (zh) 一种视频码流的传输方法及装置
US8831091B2 (en) Adaptive wireless channel allocation for media distribution in a multi-user environment
US7668170B2 (en) Adaptive packet transmission with explicit deadline adjustment
CN104427405A (zh) 用于发送编码视频流的装置及其发送方法
JP4321284B2 (ja) ストリーミングデータ送信装置、および情報配信システム
CN110192394B (zh) 通过网络传送媒体内容的方法和服务器
CN109600610B (zh) 一种数据编码方法、终端及计算机可读存储介质
CN104584495B (zh) 用于无线网络上的自适应速率多媒体通信的装置和方法
EP2849393B1 (en) Method and device for transmitting video data
US8923151B2 (en) Quality control apparatus, moving image transmission system, quality control method, and recording medium
CN106162199B (zh) 带反向信道消息管理的视频处理的方法和系统
Lu et al. Video streaming over 802.11 WLAN with content-aware adaptive retry
CN110740380A (zh) 视频处理方法和装置、存储介质及电子装置
CN111093083A (zh) 数据传输方法及装置
CN103004190A (zh) 视频流传送
CN111886875B (zh) 一种通过网络传送媒体内容的方法及服务器
Pérez et al. Lightweight multimedia packet prioritization model for unequal error protection
CN106210785B (zh) 媒体流网络自适应单向控制方法及系统
Zhao et al. Flexible dual tcp/udp streaming for h. 264 hd video over wlans
CN109525858A (zh) 视频编码电路以及无线视频传输装置与方法
KR20150086110A (ko) 부호화된 비디오 스트림 전송 장치 및 방법
CN115001632A (zh) 一种信息传输方法、装置、电子设备及可读存储介质
CN108353181A (zh) 在媒体传输系统中使能视频比特流的随机访问和重播的方法
CN113473125A (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