CN1565128A - 视频数据发送方法和装置 - Google Patents
视频数据发送方法和装置 Download PDFInfo
- Publication number
- CN1565128A CN1565128A CNA028196805A CN02819680A CN1565128A CN 1565128 A CN1565128 A CN 1565128A CN A028196805 A CNA028196805 A CN A028196805A CN 02819680 A CN02819680 A CN 02819680A CN 1565128 A CN1565128 A CN 1565128A
- Authority
- CN
- China
- Prior art keywords
- video data
- priority
- data unit
- frame
- unit
- 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
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/12—Arrangements for detecting or preventing errors in the information received by using return channel
- H04L1/16—Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
- H04L1/18—Automatic repetition systems, e.g. Van Duuren systems
- H04L1/1867—Arrangements specially adapted for the transmitter end
- H04L1/1874—Buffer management
- H04L1/1877—Buffer management for semi-reliable protocols, e.g. for less sensitive applications like streaming video
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/22—Traffic shaping
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/24—Traffic characterised by specific attributes, e.g. priority or QoS
- H04L47/2416—Real-time traffic
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/32—Flow control; Congestion control by discarding or delaying data units, e.g. packets or frames
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/50—Queue scheduling
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/50—Queue scheduling
- H04L47/54—Loss aware scheduling
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/50—Queue scheduling
- H04L47/56—Queue scheduling implementing delay-aware scheduling
- H04L47/564—Attaching a deadline to packets, e.g. earliest due date first
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/50—Queue scheduling
- H04L47/62—Queue scheduling characterised by scheduling criteria
- H04L47/624—Altering the ordering of packets in an individual queue
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/1066—Session management
- H04L65/1101—Session protocols
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/70—Media network packetisation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/75—Media network packet handling
- H04L65/752—Media network packet handling adapting media to network capabilities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/80—Responding to QoS
-
- 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/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/238—Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams
-
- 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/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/25—Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
- H04N21/262—Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists
- H04N21/26208—Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists the scheduling operation being performed under constraints
-
- 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/6375—Control 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
-
- 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/643—Communication protocols
- H04N21/6437—Real-time Transport Protocol [RTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/16—Analogue secrecy systems; Analogue subscription systems
- H04N7/162—Authorising the user terminal, e.g. by paying; Registering the use of a subscription channel, e.g. billing
- H04N7/165—Centralised control of user terminal ; Registering at central
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/12—Arrangements for detecting or preventing errors in the information received by using return channel
- H04L1/16—Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L2001/0098—Unequal error protection
Landscapes
- Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Multimedia (AREA)
- Databases & Information Systems (AREA)
- Computer Security & Cryptography (AREA)
- Business, Economics & Management (AREA)
- General Business, Economics & Management (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Detection And Prevention Of Errors In Transmission (AREA)
- Communication Control (AREA)
Abstract
提供一种用于将视频数据发送到视频客户端的装置和方法。所述视频数据是一系列的视频数据单元。将唯一优先级分配给要发送的每个视频数据。随后缓存所述视频数据,其中所述视频数据单元的第一部分是仍未发送的视频数据单元,而所述视频数据单元的第二部分是可用于重发的视频数据单元。根据实施例,根据视频数据单元的优先级从所述第一和第二部分选择一个被缓存的视频数据单元,并被发送到视频客户端。该实施例允许通过使用优先级计划常规发送以及重发来提高视频质量,尤其是当经由不可靠的链接发送压缩视频流时。
Description
技术领域
本发明涉及一种将视频数据发送到视频客户端的装置和方法,特别适用于经由诸如无线信道的不可靠链接发送的例如MPEG-4数据的压缩视频流。
背景技术
通常,视频流由称作帧的位分组流组成,所述帧包括有关视频图像本身的信息和一些元信息(meta information)。所述元信息包括例如发送时间(time-to-send)和显示时间(time-to-display),所述发送时间是将要发送帧的时间,所述显示时间是将要显示帧的时间。
所述帧包括视频信息,所述视频信息根据视频压缩具有不同的格式。可以独立使用这些帧中的一些帧,而其它的帧取决于在前的帧。独立的帧称作码内帧或I-帧,而相关的(dependent)帧称作预测码帧或P-帧。这些相关性(dependency)导致这些帧具有不同的重要性。P-帧的重要性随着远离在前的I-帧而降低。
当经由不可靠的链接发送实时视频流时会引起两个主要的问题。
第一个问题是经由不可靠信道发送视频帧会导致分组损失。然而,由于视频帧的内部相关性,压缩的视频流极易受到分组损失的影响。
为此,为了减少分组损失和补偿这种损失的后果,已经研发了几种机制。一种普通技术是通过简单地从接收机发送分组损失的信号到发送机并让发送机重复丢失的分组来重发丢失的分组。这称作自动重复请求(Automatic RepeatRequest,ARQ)。
当经由不可靠链接发送实时视频流时出现的第二个问题是延迟要求和/或发送信道的有限带宽的所造成后果。所有的视频帧都具有发送时间和显示时间值。在它们的显示时间之后接收的帧在接收方是无用的。因此,有时候帧被信道延迟到它们已经无用的程度。
为了控制显示时间和对付实时的要求,开发了实时发送协议(RTP)。这种协议将诸如时戳和序列编号的一些信息添加到封装在RTP分组中的视频帧。这种信息被用来在计划的时间将视频帧发送到正确的视频应用。在接收机可以执行诸如延迟抖动、简单损失统计等的一些测量,并且通过RTP控制协议(RTCP)将结果信号发送到源。
考虑到上述重发技术,因为延迟的要求,不能重发所有丢失的分组。而且,由于不同的数据分组具有不同的重要性,无任何标准仅简单重发丢失分组将使不太重要的分组阻塞其它更重要的分组的发送,从而导致所接收视频流的质量的降低。
EP 1 130 839 A1公开了一种通过重发I-帧和一定数量的后续P-帧来提高接收质量的数据发送方法和装置,所述数量根据当前信道条件来设定。也就是,所公开的技术不限制于对I-帧的重发,或对I-帧和一个固定数量的P-帧的重发,而适应于信道条件。这就允许更有效地使用可用的信道宽度,但是虽然符合了时间要求和信道宽度限制,仍然存在一些限制,使得允许更好的改善视频流应用的质量
发明内容
提供一种用于将视频数据发送到视频客户端的改进的装置和方法,能够有效利用可用的带宽并且改善视频质量。
在一个实施例中,提供一种将视频数据发送到视频客户端的装置。所述视频数据是一系列视频数据单元。所述装置包括优先级分配单元,用于为将要发送的每个视频数据分配一个唯一的优先级。所述装置还包括发送缓存器,用于缓存多个视频数据单元,每一个视频数据单元具有一个分配的优先级。所述多个视频数据单元的第一部分包括仍未发送的视频数据单元。所述多个视频数据单元的第二部分包括可用于重发的视频数据单元。所述装置还包括发送判断部分,用于根据视频数据单元的优先级从所述第一和第二部分选择一个被缓存的视频数据单元。所述装置还包括发送装置,用于将所选择的视频数据单元发送到所述视频客户端。
在另一个实施例中,提供一种将视频数据发送到视频客户端的方法。所述视频数据是一系列视频数据单元。所述方法包括:为将要发送的每个视频数据单元分配一个唯一的优先级;缓存一个或多个视频数据单元,每个视频数据单元具有分配的优先级,其中所述视频数据单元的第一部分仍未被发送,并且所述视频数据单元的第二部分可用于重发;根据视频数据单元的优先级从所述第一和第二部分选择一个被缓存的视频数据单元;以及将所选择的视频数据单元发送到所述视频客户端。
附图说明
结合附图以形成用于解释本发明原理的说明书的一部分。附图不能被理解为对本发明的限制,而仅是可以如何产生和使用本发明的图解性和描述性的示例。通过本发明的下列和更详细的描述,如附图所示,本发明的其它特征和优点将变得明显,其中:
图1是说明根据本发明操作的视频服务器和视频客户端的组件的方框图;
图2是说明根据一个实施例的在一个序列内的优先级分配的图;以及
图3是说明根据另一个实施例的对多个序列的数据单元的优先级分配的图。
具体实施方式
将参考附图来描述本发明的说明性实施例,其中相同的元件和结构由相同的参考标记来表示。
现在参考图1,视频服务器110经由不可靠信道130连接到视频客户端120。当信道130产生传播延迟和/或比特错误时,信道130被认为是不可靠的。不可靠的信道的例子是无线链接。
视频服务器110通过信道130将视频数据发送到视频客户端120。由视频服务器110的视频数据源135以帧或帧段的形式来提供视频信息。帧或帧的段被封装在分组数据单元(PDU)中。PDU可以包括单个帧或帧的段。
PDU被转发到加权单元140,在该加权单元140中,使用一些诸如到期时间、压缩类型和PDU的序列编号的一些PDU元信息来分配优先值或加权。所述到期时间是PDU最迟能够被发送的时间,即显示时间与信道传播延迟的时间差。
随后PDU被保存在发送缓存器145中。发送缓存器145由一个控制单元(未示出)来控制,该控制单元管理在缓存器145中的每个PDU的到期时间,并且删除那些已经到期的PDU。发送缓存器145还由发送判断单元160来控制,该发送判断单元160通过根据PDU的优先级(或加权)选择相应的PDU来发送、重发或舍弃哪个PDU。一旦发送判断单元160选择了一个用于发送(重发)的PDU时,该PDU被转发到封装单元150,该封装单元150通过添加适当的标题信息将相应的PDU封装到RTP PDU。对于发送和重发,该RTP PDU的标题信息是不同的。
随后将RTP PDU转发到通信量整形器(traffic shaper)155,该通信量整形器155以由信道信息块170给出的位速率来发送RTP PDU。
有几种可能性用于触发发送判断单元160来选择发送缓存器145中的最高优先级PDU。
一种可能性是通过反馈评估单元165来触发发送判断单元160,所述反馈评估单元165接收和评估从视频客户端120接收的任何反馈。来自视频客户端12的反馈可以包括重发请求或指示已正确接收PDU的确认。随后,视频服务器110必须确定是否发送重发或者是否从发送缓存器145删除已经被确认的帧。
触发发送判断单元160的另一种可能性是使用来自通信量整形器155的控制信号。所述通信量整形器155向发送判断单元160发出每个PDU发送完成的信号,用以表示视频服务器110现在预备好继续发送来自发送缓存器145的PDU。
另一种可能性是由发送缓存器145自己来触发发送判断单元160。当发送缓存器145为空时,可以立即发送任何进入的PDU。
虽然已经描述了如何触发发送判断单元160的三种不同可能性,但是对于本领域的普通技术人员来说可以存在其它可能性。而且,很明显可以同时采用多于一种的触发方案。
在接收方,接收到通过不可靠的信道130而遭受了传播延迟和比特错误的PDU。在评估单元175,评估每个所接收的RTP PDU标题信息,更新所接收的统计资料,并且如果需要,则产生重发请求和确认。所产生的消息包括ACK(确认)、NACK(不确认)或MACK(多用途确认)消息,并且被发送回视频服务器110。
所评估的PDU随后被转发到接收缓存器180,在该接收缓存器180中标题被去掉,并且存储帧。随后视频显示应用程序185根据显示时间管理将帧从接收缓存器180中释放,并且执行视频信息的实际显示。
根据该实施例,每个PDU都被分配一个唯一优先级。为此目的,一个序列的每个帧被分类到几个优先权组中的一个,或分类到几个类别中的一个。序列是以I-帧开始并且还包括了取决于这个I-帧的所有P-帧的一系列帧。多个帧或一个帧的段都封装在PDU中。每个PDU随后被分配一个取决于它的优先权组的唯一加权(优先权)。
优先权组是属于特定类型的帧的一组PDU。在本实施例中,三个优先权组(或帧的类型)是有区别的:I-帧(I)、较重要的P-帧(Pm)和不太重要的P-帧(Pl)。
根据下列等式来计算属于不同优先权组的PDU的加权:
在这些等式中,G表示优先权组的数量,例如在本实施例中G=3。
D是这些组中的PDU的最大数量:
D=max{Imax,Pm_max,Pl_max}
其中Imax是在I-帧优先权组中的PDU的最大数量,Pm_max是较重要的P-帧优先权组中的PDU的最大数量,而Pl_mam是不太重要P-帧优先权组中的PDU的最大数量。对于所有序列的每个序列测量这些数量。
SQN是序列的编号。如上所述,一个序列是以I-帧开始并且还包括了取决于这个I-帧的所有P-帧的一系列PDU。
最后,参数L是一个指示加权间隔的长度的值。下面将更详细地解释加权间隔。
现在参考图2,图形在一个示例中图解了上面所示的等式的相关性。给出图2的图形仅为示意目的,以便说明优先权组的概念。
当非分段帧碰巧非常大时,则将它们分段,以便达到更小的PDU大小以便有效发送。另外,分段被用来获得基本上恒定的PDU大小,只要这样是可能的。考虑到所有的序列,I-帧被分段为最多三个PDU,Pm帧被分段为最多两个PDU,而Pl帧也被分为最多两个PDU
在图2的示例中,视频流在每个序列中包括一个I-帧和五个连续的P-帧。这五个P-帧的头三个属于较重要的P-帧优先权组Pm,剩余两个P-帧属于不太重要的P-帧优先权组Pl。
这导致每个优先权组中的PDU的最大数量如下:
Imax=3·1=3
Pm_max=2·3=6
Pl_max=2·2=4
因此,通过采用定义了D参数的等式,对于所有优先权组,在本示例中PDU的最大数量是D=6。
在图2中在每个优先权组中的PDU表示为具有相同的加权,即优先级。然而,本领域的技术人员应当理解最好是每个PDU都具有它的唯一加权。现在将参考图3来更详细地讨论一个实施例。
在这个示例中,一些连续序列中的每个PDU的优先全值表现为逐渐降低。在图3的示例中,最大加权Wmax被设定为一个对应于16位地址的常数65535。随后根据下列等式分配单个优先值:
在这些等式中,参数PN表示优先权组中的PDU的数量。在每个优先权组的开始,这个数为零。通过应用这些等式,分配给每个序列中的PDU的优先级如下:
PDU SEQ=0 SEQ=1 SEQ=2 SEQ=3 SEQ=4 SEQ=5 SEQ=6 SEQ=7 SEQ=8
0 65535 65517 65499 65481 65463 65445 65427 65409 65391
1 65534 65516 65498 65480 65462 65444 65426 65408 65390
2 65533 65515 65497 65479 65461 65443 65425 65407 65389
3 65475 65457 65439 65421 65403 65385 65367 65349 65385
4 65474 65456 65438 65420 65402 65384 65366 65348 65384
5 65473 65455 65437 65419 65401 65383 65365 65347 65383
6 65472 65454 65436 65418 65400 65382 65364 65346 65382
7 65471 65453 65435 65417 65399 65381 65363 65345 65381
8 65470 65452 65434 65416 65398 65380 65362 65344 65380
9 65451 65433 65415 65397 65379 65361 65343 65325 65379
10 65450 65432 65414 65396 65378 65360 65342 65324 65378
11 65449 65431 65413 65395 65377 65359 65341 65323 65377
12 65448 65430 65412 65394 65376 65358 65340 65322 65376
根据本实施例的优先级分配希望给不太重要的PDU提供较低的加权,以便有利于更重要的PDU。假设对于每个序列,这个序列的PDU在五个随后序列之后到期,则该到期时间被设定为一个对应于五个序列长度的值。例如,第一序列(SQN=0)的PDU在第六序列(SQN=5)开始之前到期。在本实施例中,使第一序列中的Pm-帧的PDU比第一到第四序列的所有I-帧PDU更不重要。这在图3中以水平虚线表示出来了。
下面的描述中这种序列间隔将被称为加权间隔。因此加权间隔是这样的间隔,其中序列m的较重要的Pm-帧的PDU具有比序列m到m+L的所有I-帧PDU更低的加权。在图3的示例中,m=0和L=3。加权间隔的长度,即间隔中序列的数量被给定为L+1,也就是图3示例中的4。
该加权间隔也可以描述不太重要的P1帧的PDU。由于在图3的示例中第一序列(SQN=0)的P1帧PDU已经被分配了比第五序列(SQN=4)I-帧PDU更低但是比第六序列(SQN=5)I-帧PDU更高的加权,对于不太重要的Pl-帧的PDU的加权间隔的长度等于L+2,从而超过了较重要的Pm-帧PDU的加权间隔长度一个序列。
通过使用如上所述的加权间隔,I-帧PDU在到期之前可以被重发的次数增加了,从而接收I-帧的概率也增加了。这导致Pm-帧PDU的发送或重发被延迟或者被舍弃,而有利于在对应于L+1序列的一段时间期间的I-帧PDU的发送或重发。因此第一序列的Pm-帧PDU的发送或重发并不具有最高优先权,直到第四个序列的I-帧,而且这些PDU直到它们到期的时候,即第六序列的开始时才有时间被成功地发送。这也同样适用于Pl-帧的PDU,尽管它们具有较少的时间也能够被成功发送或重发到接收机,就像它们不太重要一样。
根据一个实施例,根据PDU的到期时间和发送时间来设定加权间隔的长度。例如,可以基于到期时间texp、发送时间tsend、序列持续时间Tseq、以及优先权组G的数量来计算L:
Tseq的值表示一个序列的持续时间,并且对于所有的序列,该值都被假定为固定的。
根据一个实施例,唯一优先级被分配给每个视频数据单元,并且该优先级被用来计划发送的数据。本实施例通过不仅考虑为重发而计划的帧还考虑为第一次发送,即常规发送而计划的帧,来克服现有技术的限制。而且,本实施例将唯一优先级分配给数据,从而避免多个数据单元具有相同的优先权。这样做的好处是,在任何时候它能清楚地定义什么数据单元将被计划来被发送。
根据本实施例,根据视频数据单元的优先级来选择(即计划)可以发送的视频数据单元。这可能导致这样一种情况:为了有利于较重要的帧,不太重要的帧被延迟或者甚至被舍弃,无论它在流中的位置如何。这就增加了接收这种较重要的帧的可能性,也增加了这种帧可能重发的时间量。
而且,本实施例的优势在于:它考虑到对于常规发送和重发而有效地处理可用带宽。常规发送和重发共享相同的链接的可用带宽。由第一次发送或由重发使用的带宽部分不是固定的,而是取决于被分配给数据单元的优先级,以及取决于对于请求重发多少数据单元以及哪些数据单元。通过使用根据本实施例的优先级分配,以最优方式利用了信道。
而且,本实施例的优势在于:它考虑到所接收的压缩视频流的质量取决于视频质量保持不变的程度,而不是实际可见视频流的突然地改善或分等级(gradation)。
最好基于视频帧的元信息,例如发送时间、显示时间、发送延迟、压缩的重要性或类型,也就是基于所述帧是I帧或是P帧,来进行唯一优先级的分配。通过使用关于当前信道的这个信息和其它附加信息,例如可用带宽和接收机统计资料,本实施例允许更好地确定哪个帧将被发送、重发或舍弃。
而且,本实施例提供了一种加权算法,该算法不仅考虑了一种单个PDU还考虑了多个序列的多个PDU的加权间隔(这将在下面进行详细的讨论)。该加权机制的优势在于不会由于链接质量中的波动而导致所接收的视频流的质量的波动。
虽然对于根据本发明构造的物理实施例描述了本发明,但是对于本领域的技术人员明显的是,在不背离本发明的精神和范畴的情况下,鉴于上述示教和所附权利要求的范围可以做出本发明的各种更改、变化和改进,此外,这里不再描述本领域的技术人员认为是相近的那些领域,以便不必要地这里所述的本发明不清楚。因此,应当理解本发明不限于特别说明的实施例,而应当仅由所附权利要求来限定。
Claims (26)
1.一种向视频客户端发送视频数据的装置,所述视频数据是一系列的视频数据单元,所述装置包括:
优先级分配单元,用于将唯一优先级分配给将要发送的每个视频数据;
发送缓存器,用于缓存多个视频数据单元,每个视频数据单元具有分配的优先级,所述多个视频数据单元的第一部分包括仍未发送的视频数据单元,所述多个视频数据单元的第二部分包括可用于重发的视频数据单元;
发送判断部分,用于根据视频数据单元的优先级从所述第一和第二部分选择一个被缓存的视频数据单元;以及
发送装置,用于将所选择的视频数据单元发送到所述视频客户端。
2.如权利要求1所述的装置,其中所述视频数据单元是分组数据报单元。
3.如权利要求1所述的装置,其中所述视频数据在包括码内和预测码帧的视频流中发送,并且所述视频数据单元是码内或预测码帧或者它们的段。
4.如权利要求1所述的装置,还包括反馈评估单元,用于从所述视频客户端接收反馈消息,并且操作所述发送判断单元来执行视频数据单元的重发,其中所述发送判断单元被安排用来独立于数据单元是否第一次被发送或者被重发来选择所述一个被缓存的数据单元。
5.如权利要求1所述的装置,其中所述优先权分配单元被安排用来根据各个视频数据单元的发送时间和/或显示时间和/或发送延迟来分配所述唯一优先级。
6.如权利要求1所述的装置,其中所述发送判断单元响应于来自所述视频客户端的确认或不确认消息而被触发来选择视频数据单元。
7.如权利要求1所述的装置,其中无论何时所述发送装置指示已经发送了一个先前选择的视频数据单元,所述发送判断单元都被触发来选择视频数据单元。
8.如权利要求1所述的装置,其中无论何时所述发送缓存器为空并且接收到它第一个视频数据单元,所述发送判断单元都被触发来选择视频数据单元。
9.如权利要求1所述的装置,其中所述视频数据在包括码内帧和预测码帧的视频流中发送,并且将所述预测码帧被分类为至少两种不同的优先级别。
10.如权利要求9所述的装置,其中分配给一个优先级别的码内帧的优先级和分配给一个优先级别的预测码帧的优先级相差一个量,所述量取决于在该优先级别中的分组数据报单元的最大总数量、和/或优先级别的数量。
11.如权利要求9所述的装置,其中分配给一个优先级别的预测码帧的优先级和分配给另一个优先级别的预测码帧的优先级相差一个量,所述量取决于在该优先级别中分组数据报单元的最大总数量、和/或优先级别的数量。
12.如权利要求1所述的装置,其中所述视频数据单元以序列排列,并且所述优先权分配单元被安排来将优先级分配给视频数据单元,优先级从一个序列到另一个序列逐渐降低。
13.如权利要求12所述的装置,其中所述视频数据在包括码内帧和预测码帧的视频流中发送,并且码内帧优先级与预测码帧优先级的差别取决于一个表示加权间隔的长度的参数,其中所述加权间隔是一组多个序列,在该多个序列中,加权间隔中的第一序列的预测码帧视频数据单元具有比加权间隔中的最后序列的码内帧视频数据单元更低的优先级。
14.一种将视频数据发送到视频客户端的方法,所述视频数据是一系列视频数据单元,所述方法包括:
将唯一优先级分配给将要发送的每个视频数据单元;
缓存一个或多个视频数据单元,每个视频数据单元具有分配的一个优先级,其中所述视频数据单元的第一部分仍未被发送,而所述视频数据单元的第二部分可用于重发;
根据视频数据单元的优先级从所述第一和第二部分选择一个被缓存的视频数据单元;以及
将所选择的视频数据单元发送到所述视频客户端。
15.如权利要求14所述的方法,其中所述视频数据单元是分组数据报单元。
16.如权利要求14所述的方法,其中所述视频数据是在包括码内和预测码帧的视频流中发送的,并且所述视频数据单元是码内或预测码帧或者它们的段。
17.如权利要求14所述的方法,还包括一种反馈评估机制,所述机制包括:
从所述视频客户端接收反馈消息;以及
执行视频数据单元的重发;
其中所述一个所缓存数据单元是独立于所述数据单元是否是第一次发送或者是重发而选择的。
18.如权利要求14所述的方法,其中分配所述唯一优先级是根据各个视频数据单元的发送时间和/或显示时间和/或发送延迟来执行的。
19.如权利要求14所述的方法,其中所述视频数据单元的选择是响应于来自视频客户端的确认或不确认消息而被触发执行的。
20.如权利要求14所述的方法,其中无论何时发送一个先前选择的视频数据单元,都触发以执行所述视频数据单元的选择。
21.如权利要求14所述的方法,其中无论何时视频数据单元被第一次缓存,都触发执行所述视频数据单元的选择。
22.如权利要求14所述的方法,其中所述视频数据在包括码内帧和预测码帧的视频流中发送的,并且所述预测码帧被分类为至少两种不同的优先类别。
23.如权利要求22所述的方法,其中分配给一个优先级别的码内帧的优先级和分配给一个优先级别的预测码帧的优先级相差一个量,所述量取决于优先级别中的分组数据报单元的最大总数量、和/或优先级别的数量。
24.如权利要求22所述的方法,其中分配给一个优先级别的预测码帧的优先级和分配给另一个优先级别的预测码帧的优先级相差一个量,所述量取决于优先级别中分组数据报单元的最大总数量、和/或优先级别的数量。
25.如权利要求14所述的装置,其中所述视频数据单元以序列排列,并且所述优先权分配单元被安排来将优先级分配给视频数据单元,优先级从一个序列到另一个序列逐渐降低。
26.如权利要求25所述的装置,其中所述视频数据是在包括码内帧和预测码帧的视频流中发送的,并且码内帧优先级与预测码帧优先级的差别取决于一个表示加权间隔的长度的参数,其中所述加权间隔是一组多个序列,在该多个序列中加权间隔中的第一个序列的预测码帧视频数据单元具有比加权间隔中的最后序列的码内帧视频数据单元更低的优先级。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP01123873A EP1301041A1 (en) | 2001-10-05 | 2001-10-05 | Video data transmission method and apparatus |
EP01123873.0 | 2001-10-05 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1565128A true CN1565128A (zh) | 2005-01-12 |
CN1320795C CN1320795C (zh) | 2007-06-06 |
Family
ID=8178862
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB028196805A Expired - Fee Related CN1320795C (zh) | 2001-10-05 | 2002-10-07 | 视频数据发送方法和装置 |
Country Status (5)
Country | Link |
---|---|
US (1) | US20050036546A1 (zh) |
EP (1) | EP1301041A1 (zh) |
JP (1) | JP2005506007A (zh) |
CN (1) | CN1320795C (zh) |
WO (1) | WO2003032643A2 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104322036A (zh) * | 2012-05-14 | 2015-01-28 | 阿尔卡特朗讯公司 | 具有优先级标记的自适应流认知网络节点、客户端和方法 |
Families Citing this family (30)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100537499B1 (ko) * | 2002-07-26 | 2005-12-19 | 삼성전자주식회사 | 전송제어 파라미터 생성방법 및 프레임 특성에 따른선택적 자동 재전송 방법 |
GB0218961D0 (en) * | 2002-08-15 | 2002-09-25 | Koninkl Philips Electronics Nv | Transmission method and system |
US7376082B2 (en) * | 2002-12-31 | 2008-05-20 | International Business Machines Corporation | Quality of service for iSCSI |
US7274740B2 (en) | 2003-06-25 | 2007-09-25 | Sharp Laboratories Of America, Inc. | Wireless video transmission system |
US9325998B2 (en) | 2003-09-30 | 2016-04-26 | Sharp Laboratories Of America, Inc. | Wireless video transmission system |
US20070097987A1 (en) * | 2003-11-24 | 2007-05-03 | Rey Jose L | Feedback provision using general nack report blocks and loss rle report blocks |
US8737219B2 (en) | 2004-01-30 | 2014-05-27 | Hewlett-Packard Development Company, L.P. | Methods and systems that use information about data packets to determine an order for sending the data packets |
JP2006025200A (ja) * | 2004-07-08 | 2006-01-26 | Funai Electric Co Ltd | テレビジョン放送受信システム |
KR101277877B1 (ko) | 2005-01-21 | 2013-07-30 | 삼성전자주식회사 | 동기화 이더넷 시스템에서 지터없이 데이터를 전송하는 방법 |
WO2007002034A2 (en) * | 2005-06-20 | 2007-01-04 | Comcast Cable Holdings, Llc | Method and system of managing and allocating communication related resources |
US9544602B2 (en) | 2005-12-30 | 2017-01-10 | Sharp Laboratories Of America, Inc. | Wireless video transmission system |
US8665967B2 (en) * | 2006-02-15 | 2014-03-04 | Samsung Electronics Co., Ltd. | Method and system for bit reorganization and packetization of uncompressed video for transmission over wireless communication channels |
US7881258B2 (en) | 2006-03-22 | 2011-02-01 | Sibeam, Inc. | Mechanism for streaming media data over wideband wireless networks |
US8411581B2 (en) * | 2006-07-25 | 2013-04-02 | Broadcom Corporation | Method and system for medium access control (MAC) layer specialization for voice and multimedia data streams |
US7684430B2 (en) * | 2006-09-06 | 2010-03-23 | Hitachi, Ltd. | Frame-based aggregation and prioritized channel access for traffic over wireless local area networks |
US8861597B2 (en) | 2006-09-18 | 2014-10-14 | Sharp Laboratories Of America, Inc. | Distributed channel time allocation for video streaming over wireless networks |
WO2008046822A1 (en) * | 2006-10-16 | 2008-04-24 | Nokia Siemens Networks Gmbh & Co. Kg | Method for controlling retransmissions of multicast scalable data |
JP4836871B2 (ja) * | 2007-05-31 | 2011-12-14 | Kddi株式会社 | 符号化画像に優先度を割り当てる映像データ送信装置、プログラム及び方法 |
KR101593241B1 (ko) * | 2007-06-13 | 2016-02-11 | 엔엑스피 비 브이 | 보증된 서비스를 보장하는 전자장치 및 방법 |
JP5197238B2 (ja) * | 2008-08-29 | 2013-05-15 | キヤノン株式会社 | 映像送信装置、その制御方法、および制御方法を実行するプログラム |
US8929443B2 (en) * | 2009-01-09 | 2015-01-06 | Microsoft Corporation | Recovering from dropped frames in real-time transmission of video over IP networks |
US20110058554A1 (en) * | 2009-09-08 | 2011-03-10 | Praval Jain | Method and system for improving the quality of real-time data streaming |
US8754900B2 (en) * | 2010-06-17 | 2014-06-17 | Thinci, Inc. | Processing of graphics data of a server system for transmission |
US9373152B2 (en) | 2010-06-17 | 2016-06-21 | Thinci, Inc. | Processing of graphics data of a server system for transmission including multiple rendering passes |
CN103229159A (zh) * | 2010-11-24 | 2013-07-31 | 安通斯公司 | 智能老化重试缓冲器 |
US9930082B2 (en) | 2012-11-20 | 2018-03-27 | Nvidia Corporation | Method and system for network driven automatic adaptive rendering impedance |
US10616086B2 (en) * | 2012-12-27 | 2020-04-07 | Navidia Corporation | Network adaptive latency reduction through frame rate control |
US9819604B2 (en) | 2013-07-31 | 2017-11-14 | Nvidia Corporation | Real time network adaptive low latency transport stream muxing of audio/video streams for miracast |
WO2015136781A1 (ja) * | 2014-03-11 | 2015-09-17 | セイコーインスツル株式会社 | 通信システム、電子機器、通信方法及びプログラム |
CN111406405A (zh) * | 2017-12-01 | 2020-07-10 | 索尼公司 | 发送装置、发送方法和接收装置 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5768527A (en) * | 1996-04-23 | 1998-06-16 | Motorola, Inc. | Device, system and method of real-time multimedia streaming |
JPH11196072A (ja) * | 1997-12-30 | 1999-07-21 | Sony Corp | 誤り訂正符号化方法及びその装置並びにデータ伝送方法 |
DE69938094T2 (de) * | 1998-11-30 | 2009-02-05 | Matsushita Electric Industries Co. Ltd., Kadoma | Paketwiederübertragungskontrolle mit Prioritätsinformationen |
US6335933B1 (en) * | 1999-05-21 | 2002-01-01 | Broadcom Homenetworking, Inc. | Limited automatic repeat request protocol for frame-based communication channels |
US7093028B1 (en) * | 1999-12-15 | 2006-08-15 | Microsoft Corporation | User and content aware object-based data stream transmission methods and arrangements |
DE60020672T2 (de) * | 2000-03-02 | 2005-11-10 | Matsushita Electric Industrial Co., Ltd., Kadoma | Verfahren und Vorrichtung zur Wiederholung der Videodatenrahmen mit Prioritätsstufen |
-
2001
- 2001-10-05 EP EP01123873A patent/EP1301041A1/en not_active Withdrawn
-
2002
- 2002-10-07 US US10/490,416 patent/US20050036546A1/en not_active Abandoned
- 2002-10-07 JP JP2003535471A patent/JP2005506007A/ja not_active Withdrawn
- 2002-10-07 WO PCT/EP2002/011225 patent/WO2003032643A2/en active Application Filing
- 2002-10-07 CN CNB028196805A patent/CN1320795C/zh not_active Expired - Fee Related
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104322036A (zh) * | 2012-05-14 | 2015-01-28 | 阿尔卡特朗讯公司 | 具有优先级标记的自适应流认知网络节点、客户端和方法 |
CN104322036B (zh) * | 2012-05-14 | 2017-06-23 | 阿尔卡特朗讯公司 | 具有优先级标记的自适应流认知网络节点、客户端和方法 |
US9723049B2 (en) | 2012-05-14 | 2017-08-01 | Alcatel Lucent | Adaptive streaming aware network node, client and method with priority marking |
Also Published As
Publication number | Publication date |
---|---|
EP1301041A1 (en) | 2003-04-09 |
JP2005506007A (ja) | 2005-02-24 |
WO2003032643A2 (en) | 2003-04-17 |
CN1320795C (zh) | 2007-06-06 |
US20050036546A1 (en) | 2005-02-17 |
WO2003032643A3 (en) | 2003-09-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1320795C (zh) | 视频数据发送方法和装置 | |
CN101542957B (zh) | 数据通信系统、数据发射装置和数据发射方法 | |
CN100338899C (zh) | 检测方法和设备 | |
CN1248456C (zh) | 传输控制参数产生方法及根据分组特性选择性重发的方法 | |
CN1640076A (zh) | 媒体流式传输分发系统 | |
CN1171458C (zh) | 流式视频接收机的解码器缓冲器 | |
CN109150876A (zh) | 一种视频无线传输的qos方法、装置及系统 | |
CN1735089A (zh) | 通信设备和通信方法 | |
CN101080938A (zh) | 有功率控制功能的多播通信系统 | |
JP2007503138A5 (zh) | ||
EP1463228A3 (en) | Communication device, transmission control method, and program product for controlling retransmission of data | |
CN1543164A (zh) | 多媒体流环境中基于服务器的速率控制 | |
CN102742245A (zh) | 用于解析网络抽象层以实现可靠数据通信的方法和设备 | |
CN1859579A (zh) | 传输多媒体数据流的设备和方法 | |
AU2002354762B2 (en) | Data transmitting and receiving method in a mobile communication system | |
CN102006476A (zh) | 一种传输和接收实时视频数据的优化处理方法 | |
CN1647440A (zh) | 在接收器端具有决定可能重传请求的拥塞控制的传输系统 | |
CN1859073A (zh) | 无线通信系统中的下行数据重传方法 | |
CN1816974A (zh) | 在移动通信系统中提供移动台的状态信息的方法 | |
CN101188786B (zh) | 高速下行分组接入中多用户复用的传输方法、系统及装置 | |
CN1588909A (zh) | 一种控制网络数字电视节目组播发送速率的方法 | |
CN101795436B (zh) | 一种数据重传方法、装置及系统 | |
CN1897514A (zh) | 无线链路控制层发送确认模式交织协议数据单元的方法 | |
CN1275401C (zh) | 无线链路层发送窗口的控制方法 | |
Wang et al. | An error control design for multimedia wireless networks |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
C19 | Lapse of patent right due to non-payment of the annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |