CN1939030A - 发送录制的材料 - Google Patents

发送录制的材料 Download PDF

Info

Publication number
CN1939030A
CN1939030A CNA2005800096501A CN200580009650A CN1939030A CN 1939030 A CN1939030 A CN 1939030A CN A2005800096501 A CNA2005800096501 A CN A2005800096501A CN 200580009650 A CN200580009650 A CN 200580009650A CN 1939030 A CN1939030 A CN 1939030A
Authority
CN
China
Prior art keywords
recipient
recordings
begin
buffer
grouping
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
CNA2005800096501A
Other languages
English (en)
Other versions
CN1939030B (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.)
British Telecommunications PLC
Original Assignee
British Telecommunications PLC
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 British Telecommunications PLC filed Critical British Telecommunications PLC
Publication of CN1939030A publication Critical patent/CN1939030A/zh
Application granted granted Critical
Publication of CN1939030B publication Critical patent/CN1939030B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/22Traffic shaping
    • 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/61Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
    • H04L65/612Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for unicast
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • 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/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/188Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a video data packet, e.g. a network abstraction layer [NAL] unit
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
    • 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, manipulating MPEG-4 scene graphs
    • H04N21/23406Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving management of server-side video buffer
    • 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/24Monitoring of processes or resources, e.g. monitoring of server load, available bandwidth, upstream requests
    • H04N21/2401Monitoring of the client buffer
    • 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/633Control signals issued by server directed to the network components or client
    • H04N21/6332Control signals issued by server directed to the network components or client directed to client
    • 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/643Communication protocols
    • H04N21/64322IP
    • 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/6587Control parameters, e.g. trick play commands, viewpoint selection

Abstract

本发明涉及发送录制的材料。诸如视频的录制的材料以压缩的形式发送到接收方,该接收方具有缓冲器,用于消除所接收的数据速率与后面的解码器所消耗的数据速率之间的差异。分析整个录制品以确定使得不会发生缓冲器下溢的开始播放点;仅当到达该点时,解码器才开始播放。

Description

发送录制的材料
技术领域
本发明涉及通过网络发送录制的材料(诸如要实时播放的视频、音频或其他材料)的方法和设备。
背景技术
发明内容
根据本发明的一方面,提供了一种发送录制品(recording)的方法,该方法包括以下步骤:
开始其发送;
将接收到的数据保存在接收方缓冲器中;以及
开始播放所述接收到的数据;
所述方法的特征在于以下步骤:分析整个所述录制品,确定使得不会发生缓冲器下溢(underflow)的开始播放点;以及仅当到达该点时才开始播放。
在另一方面中,本发明提供了一种发送录制品的方法,该方法包括以下步骤:
开始其发送;
将接收到的数据保存在接收方缓冲器中;以及
开始播放所述接收到的数据;
所述方法的特征在于以下步骤:
分析整个所述录制品,以识别位于其开始处的第一部分,该部分符合这样的条件,即其所覆盖的播放时间间隔大于或等于后面的任何长度的部分的定时误差的最大值,每个定时误差被定义为各个随后部分的传输时间超过其播放时间间隔的程度;以及使所述接收方仅在接收到所述第一部分之后才开始播放。
在权利要求书中阐述了本发明的其他方面。
附图说明
现在将参照附图通过示例描述本发明的一些实施例,在附图中:
图1是实现本发明的传输系统的框图;
图2是一时序图;
图3是解释图1所示的控制单元的操作的流程图;
图4是解释控制单元的操作的另选模式的流程图;以及
图5是解释又一版本的流程图;
具体实施方式
在图1中,成流器(streamer)1包含(或者可访问)其中存储有文件的存储器11,每个文件是压缩版本的视频序列,其是使用传统压缩算法(诸如在ITU标准H.261或H.263或者ISO MPEG标准之一中定义的算法)进行编码的。自然地,人们可能存储其他视频序列的类似录制品,但是这对于操作原理而言不重要。
“比特率”在这里指的是由原始编码器产生以及由最终解码器消耗的比特率;通常,该比特率与成流器实际传输的速率(将其称为传输比特率)不同。还应该注意,这些文件是以可变比特率(VBR)产生的,即,针对视频的特定帧产生的比特数取决于图像内容。因此,以上以及后面(等)提到的比特率指的是平均比特率。
该服务器具有发送器12,发送器12用来将数据经由网络2输出到终端3。该发送器是传统的,可能以众所周知的协议(诸如TCP/IP)工作。控制单元13用来以传统方式接收来自终端的要求传送特定序列的请求,并从存储器11中读取数据的分组,以在发送器12能够接收它们时将其发送到发送器12。这里假设数据是作为离散的分组被读出的,虽然不排除针对单个帧产生多于一个的分组的可能性,但是通常每个视频帧一个分组。(虽然在原理上单个分组可以包含多于一帧的数据,但是通常在实践中没什么好处)。
要注意,这些分组不必与网络2中使用的任何分组结构相关。
终端3具有接收器31、缓冲器32和解码器33。
某些网络(包括TCP/IP网络)具有这样的特性,即,可用的传输数据率根据网络的负载程度而波动。
将针对此点进行一些理论性讨论。
如图2所示,经编码的视频序列包括N个分组。每个分组具有包含时间索引ti(i=0...N-1)(依据实际显示时间而设置,例如其可以是视频帧号)的头部并且包含bi位。该分析假设在可以对分组i解码之前必须完整地接收到它(即,必须首先缓冲整个分组)。
在简单的情况下,每个分组对应于一个帧,并且时间戳ti单调地增加,即对于所有的i,ti+1>ti。然而,如果一帧可以产生两个或更多个分组(每个具有相同的ti),那么ti+1≥ti。如果帧可以用完拍摄和显示序列(如在MPEG中),那么ti不会单调地增加。此外,在实践中,某些帧会丢失,从而将会没有针对特定值ti的帧。
这些时间是相对的。假设接收方接收到分组0并在时刻tref+t0开始对分组0解码。在“现在时刻”tref+tg,接收方接收到分组tg(并且可能还接收到更多的分组)并正开始对分组g解码。
分组g到h-1位于缓冲器中。要注意(在该简单情况下),如果h=g+1,那么该缓冲器仅包含分组g。在时刻tref+tj,要求解码器开始对分组j解码。因此,在该时刻tref+tj,解码器必须已接收到上至分组j且包括分组j的所有分组。
从现在起到tref+tj的可用时间为(tref+tj)-(tref+tg)=tj-tg    (1)
在该时刻要发送的数据是分组h到j的数据,即
Σ i = h j b i - - - ( 2 )
在传输率R的情况下,这些数据将需要以下传输时长
Σ i = h j b i R - - - ( 3 )
仅当该传输时长小于或等于所述可用时间时,即,在当前可用的传输率R满足不等式
Σ i = h j b i R ≤ t j - t g - - - ( 4 )
时,这才是可能的。
要注意,这是对分组j进行令人满意的接收和解码的条件;而令人满意的所有剩下的序列的传输要求对于所有j=h...N-1满足该条件。
由于将变得显而易见的原因,我们将等式(4)重写为:
Σ i = h j b i R - ( t j - t h - 1 ) ≤ t h - 1 - t g - - - ( 5 )
要注意, t j - t h - 1 = Σ i = h j ( t i - t i - 1 ) = Σ i = h j Δ t i , 其中Δti=ti-ti-1
此外,我们定义Δεi=(bi/R)-Δti
要注意th-1-tg是缓冲器中最近接收到的分组的时间戳与缓冲器中最早接收到的分组(即我们正开始解码的分组)的时间戳之间的差。
那么该条件为
Σ i = h j Δ ϵ i ≤ t h - 1 - t g - - - ( 6 )
为了成功传输一直到最后一个分组N-1,对于任何可能的j必须满足该条件,即
Max j = h j = N - 1 { Σ i = h j Δ ϵ i } ≤ t h - 1 - t g - - - ( 7 )
等式(7)的左侧表示从传输分组h直到该序列结束可能发生的最大定时误差,而该条件说明,在给定其当前内容的情况下,该误差必须不超过接收方缓冲器适应该误差的能力。为了方便起见,我们将等式(7)的左侧标记为Th,即
T h = Max j = h j = N - 1 { Σ i = h j Δ ϵ i } - - - ( 8 )
从而可将等式(7)写为
Th≤th-1-tg    (9)
考虑在时刻tg=t0的情况,即,当解码器要开始对第一个分组解码时的情况。在通常情况下,在缓冲器中仅有一个分组(h=1)时不会满足以上条件。接收方在开始解码前等待缓冲器的内容达到令人满意的水平。利用以上条件,显见的是,接收方应该至少等到缓冲器包含分组H-1,其中H是满足条件
Th≤th-1-t0    (10)
的h的最小值。
在本发明的该实施例中,控制单元13的功能之一是,每次当它向发送器12发送分组时,它评估在等式10中所体现的测试。
图3是示出了控制单元的操作的流程图。在步骤101,重置分组计数器。然后(步骤102),从存储器11中读取第一个分组(或者在随后的循环中读取下一分组)并将其发送到发送器12。在步骤103,控制单元计算Tn的值。在此处,计数器n指向最后发送的分组,而等式(10)针对的最后发送的分组为h-1。因此,在步骤103计算的是Tn+1,在步骤104执行是否Tn+1≤tn-T0的测试。
如果没有通过该测试,则分组计数器在步骤106递增,并且控制返回到步骤102,在步骤102,只要发送器准备好接收分组,另一分组就被读出并发送。如果通过了测试,那么知道接收方一接收到该分组就开始解码是安全的。因此,在步骤105,控制单元向发送器发送“开始”消息,该消息要被发送到接收方。当接收方接收到该开始消息时,它开始解码。如果存在消息以与这些消息被发送的顺序不同的顺序被接收的任何可能性,那么该开始消息应该包含分组索引n,以使接收方可以在开始解码之前检查是否已实际接收到了分组n。另选地,发送器可以将Tn+1的值发送到接收方,并且接收方自己进行测试。
在发送了“开始”消息之后,分组计数器在步骤107递增,并在步骤108发送另一帧:重复这些步骤直到到达文件的末端为止,是否到达文件的末端是在步骤109识别的,并且处理在步骤110终止。
前面的描述假设控制单元在每次当其向发送器发送分组时执行该计算,这样计算强度很大。一另选例旨在较稀疏地执行计算,可能每五个分组一次,这减少了计算量,但是会导致缓冲比所需的更多的帧。
另一另选例旨在只要它能够完成计算就立刻完成计算(即,不等待下一分组),然后将开始消息(具有开始分组号)发送到接收方。又一另选例旨在在发送任何分组之前执行计算。一旦确定了h的值,那么就按相反的顺序(分组h-1、分组h-2、…、分组0)发送分组0到h-1。在此情况下,它必须停止以发送明确的“开始”命令。支持UDP传输协议的标准接收方能够对分组重新排序,并且在开始解码前会自动等到分组0到达。事实上,保留分组0直到发送了分组1到h-1(其顺序是不重要的)之后就足够了。
然而,这排除了考虑在等待时段期间传输数据率R的变化的可能性,因此仅当不会发生这种化时才令人满意。
(通过检查等式(3))观察到,速率R的意义在于计算发送分组h到j所花费的时间。因此,由于用于发送分组0到h-1的实际速率不影响结果,所以它不重要。
另一吸引人的选项是预先执行尽可能多的计算。如果存在其中R仅可能或仅允许有一个值的系统,那么可以对每个帧预先执行在步骤103处对Tn+1的计算以及步骤104的测试,直到测试通过,并且例如通过将n的对应值记录在文件开始处的单独字段中,或者通过将特殊标志附加到帧n自身,从而将结果记录在文件中。因此,在图3中,步骤103和104将被测试“n的当前值等于存储在文件中的n的值吗?”、或者“当前帧包含开始标志吗?”所代替。另选地,可以将所述单独字段(或标志)转发到接收方,并在接收端执行该识别处理。
图4示出了应对传输数据率R变化的情况的处理的流程图。就原理而言,这涉及每个分组的Th并将该值存储在分组的头部中。然而,在实践中,必须对序列的开始处的、人们确信在其时段内会通过测试的足够数量的帧(以每秒25帧的速度可能为250帧)计算这些Th。不幸的是,对Th的计算涉及R的值,而R的值在该预处理时当然是未知的。因此,我们通过针对R的可能值的选集来计算Th,所述选集例如(如果RA是正在讨论的文件的平均比特率)
R1=0.5RA
R2=0.7RA
R3=RA
R4=1.3RA
R5=2RA
因此,每个分组h具有存储在其中的这五个预先计算的Th的值。如果需要(出于下面要讨论的目的),还可存储出现等式(8)中的最大值的相对时间位置,即,
Δthmax=tjmax-th,其中,tjmax是等式8中的j的值,针对所述j的值获得了Th
在此情况下,在发送了帧n之后,该流程如下继续进行:
112:询问发送器12以确定可用的传输率R;
103A:-如果R与已针对其对Th进行了预先计算的速率之一相对应,则从存储器中读取该值;
或者-如果R不那么对应,则从存储器中读取与速率R1...R5中的、小于R的实际值的最高一个(R-)相对应的Th的值(如果需要的话还读取thmax),并根据其估计Th
104A:应用测试Tn+1+Δ≤tn-t0,其中,Δ是固定的安全裕度;如前继续。
可以简单地通过利用与R-相关联的值Th -来进行对Th的估计;这会行得通,但是因为这将过高估计Th,所以有时会导致接收方等待比所需更长的时间。另一选项是在为R1...R5中的位于实际值R的两侧的两个值所存储的Th的值之间进行线性(或其他)内插。然而,我们的优选方法是根据以下等式计算估计值:
T i ′ = ( T i - + Δ t - i max ) R - R - Δ t - i max
其中R-是速率R1...R5中小于R的实际值的最高一个,Ti -是针对此速度预先计算的Th,Δtimax -。是从ti起的、在其获得Ti -的时间(即,Δthmax -的伴随值)。如果该方法返回负值,则我们将其设置为零。
要注意,这仅仅是估计,而Th是速率的非线性函数。但是使用该方法,Ti 总是比真实值高并且自动提供了安全裕度(从而可以省略上面示出的裕度Δ)。
要注意,这些等式对于以下情况有效:编码处理对一个帧产生两个或更多个分组(具有相等的ti)的情况;以及在使用双向预测的MPEG中遇到的情况,在该情况下,帧是按照需要对它们进行解码的顺序发送的,而不是按照ti的升序发送的。
现在我们将描述一另选实施例,在该另选实施例中将计算转换为等同的形式,然而该形式不是针对每个分组单独地进行计算,而是利用已经为前一分组进行的计算。
回忆等式(8):
T h = Max j = h j = N - 1 { Σ i = h j Δ ϵ i }
可将其重写为
T h = Max { Σ i = h h Δ ϵ i , Max j = h + 1 j = N - 1 { Σ i = h h Δ ϵ i + Σ i = h + 1 j Δ ϵ i } }
= Max { Δ ϵ h , Max j = h + 1 j = N - 1 { Δ ϵ h + Σ i = h + 1 j Δ ϵ i } } - - - ( 12 )
= Δ ϵ h + Max { 0 , Max j = h + 1 j = N - 1 { Σ i = h + 1 j Δ ϵ i } }
= Δ ϵ h + Max { 0 , T h + 1 } - - - ( 13 )
假设Th+1≥0,其在文件的开始处为真,则这变为
Th=Th+1+Δεh    (14)
或者一般地
Ta+1=Ta-Δεu
Ta+2=Ta+1-Δεu+1=Ta-Δεa-Δεu+1
T a + b = T u - Σ i = a a + b - 1 Δ ϵ i
如果b=h-a,那么
T h = T a - Σ i = a h - 1 Δ ϵ i - - - ( 15 )
代入 Δ ϵ i = b i R - Δ t i 以及Δti=ti-ti-1
T h = T a - Σ i = a h - 1 b i R + Σ i = a h - 1 Δ t i = T a - Σ i = a h - 1 b i R + ( t h - 1 - t a - 1 ) - - - ( 16 )
如果a=0,那么
T h = T 0 - Σ i = 0 h - 1 b i R + ( t h - 1 - t - 1 )
如果a=1,那么
T h = T 1 - Σ i = 1 h - 1 b i R + ( t h - 1 - t 0 )
考虑该测试
Th≤th-1-t0
可将其写成
T a - Σ i = a h - 1 b i R + ( t h - 1 - t 0 ) ≤ t a - 1 - t 0 - - - ( 17 )
如果a=0,这变为
T 0 - Σ i = 0 h - 1 b i R ≤ + t - 1 - t 0 - - - ( 18 )
要注意,t-1是无意义的量(出现在不等式的两侧),从而其可被给予任何值,将t-1定义为与t0相等比较方便,据此我们获得
T 0 ≤ Σ i = 0 h - 1 b i R - - - ( 19 )
(或者,如果a=1:则 T 1 ≤ Σ i = 1 h - 1 b i R )
因此,可将等式(10)的测试
Th≤th-1-t0
替代写为
T 0 ≤ Σ i = 0 h - 1 b i R - - - ( 20 )
那么第一次测试(h=1)为测试1:
T 0 ≤ b 0 R ?
或者,如果我们定义 Z x = T 0 - 1 R Σ i = 0 x - 1 b i , 则第一次测试为Z1≤0?第二次测试为Z2≤0
第x次测试为Zx≤0
但是 Z x + 1 = T 0 - 1 R Σ i = 0 x b i = T 0 - 1 R Σ i = 0 x - 1 b i - b x R = Z x - b x R
因此,每次测试可以更新Z的前一值,如图5的流程图所示。首先,在步骤201,根据等式(8)计算T0,然后(步骤202)将Z0设置为与T0相等。在步骤203,重置分组计数器。然后(在步骤204),从存储器11中读取第一个分组(或者在随后的循环中读取下一分组)并将其发送到发送器12。在步骤205,控制单元计算Zn+1的值,并在步骤206进行关于是否Zn+1≤0的测试。如果通过了该测试,那么知道接收方一接收到该分组就开始解码是安全的。因此,在步骤207,控制单元向发送器发送“开始”消息,该消息要被发送到接收方。当接收方接收到该开始消息时,它开始解码。分组计数器在步骤208递增,并且控制返回到步骤204,在步骤204,发送器一准备好接收分组,就读出并发送另一分组。
可以预先进行计算T0的步骤201并存储计算的值。当然可以将该过程按与先前所述的方式相类似的方式进行调整,以适应R的不同的值。
该处理不必从T0开始。可以从T1开始(在该情况下第一次测试为T1≤0?),或者,如果有人总是选择缓冲至少两个(或更多个分组),则他可以从T2开始,等等。
虽然针对经编码的视频给出了所述示例,但是可将相同的方法应用于经编码的音频或者实际上要实时播放的任何其他材料。
如果希望,则在多速率系统中,可以将这些方法与在我们的国际专利申请WO04/086721中所描述的速率切换方法进行组合使用。

Claims (11)

1、一种发送录制品的方法,该方法包括以下步骤:
开始其发送;
将接收到的数据保存在接收方缓冲器中;以及
开始播放所述接收到的数据;
所述方法的特征在于以下步骤:分析整个所述录制品,确定使得不会发生缓冲器下溢的开始播放点;以及仅当到达该点时才开始播放。
2、一种发送录制品的方法,该方法包括以下步骤:
开始其发送;
将接收到的数据保存在接收方缓冲器中;以及
开始播放所述接收到的数据;
所述方法的特征在于以下步骤:
分析整个所述录制品,以识别位于其开始处的第一部分,该部分符合这样的条件,即其所覆盖的播放时间间隔大于或等于随后的任何长度的部分的定时误差的最大值,各定时误差被定义为各个随后部分的传输时间超过其播放时间间隔的程度;以及使所述接收方仅在接收到所述第一部分之后才开始播放。
3、根据权利要求2所述的方法,该方法包括:在发送了所述第一部分之后,将一指令发送到所述接收方以开始播放。
4、根据权利要求2所述的方法,该方法包括:向所述接收方发送指定所述第一部分的指令,并且其中,当所述接收方识别出所述第一部分位于所述缓冲器中时,所述接收方开始播放。
5、根据权利要求2所述的方法,其中,所述分析包括:
(a)在所述发送方,针对序列的不同部分计算所述最大定时误差值,以及
(b)在所述接收方,将所述值与缓冲器的内容进行比较,以识别所述第一部分何时位于所述缓冲器中。
6、根据权利要求2所述的方法,该方法包括保留不发送所述录制品的初始部分,直到已发送了所述第一部分的剩余部分为止;发送所述初始部分;并且其中,所述接收方仅当接收到所述初始部分时才开始播放。
7、根据权利要求2、3、4或6所述的方法,该方法包括预先进行所述分析并对录制品中所识别的部分进行标记。
8、根据权利要求2至6中任一项所述的方法,其中,所述分析包括:预先计算与多个传输数据率相对应的定时误差值并将其存储;以及随后根据所述定时误差值估计与实际传输数据率相对应的误差值。
9、根据前述权利要求中任一项所述的方法,其中,所述分析包括对为所述录制品的连续部分估计的定时误差参数进行测试,其中所述定时误差参数是首先针对所述录制品的第一部分或初期部分计算的,并且通过更新针对前一部分所获得的参数,来获得随后部分的定时误差参数。
10、根据前述权利要求中任一项所述的方法,其中,所述录制品是视频录制品。
11、根据前述权利要求中任一项所述的方法,其中,所述录制品是音频录制品。
CN2005800096501A 2004-03-26 2005-03-16 发送录制的材料 Active CN1939030B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
GB0406901.9 2004-03-26
GBGB0406901.9A GB0406901D0 (en) 2004-03-26 2004-03-26 Transmitting recorded material
PCT/GB2005/001011 WO2005093995A2 (en) 2004-03-26 2005-03-16 Transmitting recorded material

Publications (2)

Publication Number Publication Date
CN1939030A true CN1939030A (zh) 2007-03-28
CN1939030B CN1939030B (zh) 2010-05-05

Family

ID=32188807

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2005800096501A Active CN1939030B (zh) 2004-03-26 2005-03-16 发送录制的材料

Country Status (8)

Country Link
US (1) US8064470B2 (zh)
EP (1) EP1735946B1 (zh)
JP (2) JP4782770B2 (zh)
KR (1) KR101165105B1 (zh)
CN (1) CN1939030B (zh)
CA (1) CA2561088A1 (zh)
GB (1) GB0406901D0 (zh)
WO (1) WO2005093995A2 (zh)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB0306973D0 (en) * 2003-03-26 2003-04-30 British Telecomm Transmitting video
US8081626B2 (en) 2006-07-19 2011-12-20 4472314 Canada Inc. Expedited communication traffic handling apparatus and methods
EP2101503A1 (en) * 2008-03-11 2009-09-16 British Telecommunications Public Limited Company Video coding
JP5171413B2 (ja) * 2008-06-16 2013-03-27 三菱電機株式会社 コンテンツ送信装置、コンテンツ受信装置及びコンテンツ送信方法
US8942490B2 (en) * 2008-07-08 2015-01-27 Yin-Chun Blue Lan Method of high performance image compression
EP2200319A1 (en) 2008-12-10 2010-06-23 BRITISH TELECOMMUNICATIONS public limited company Multiplexed video streaming
EP2219342A1 (en) 2009-02-12 2010-08-18 BRITISH TELECOMMUNICATIONS public limited company Bandwidth allocation control in multiple video streaming
US8996713B2 (en) 2010-06-30 2015-03-31 British Telecommunications Public Limited Company Video streaming
EP2408204A1 (en) 2010-07-12 2012-01-18 British Telecommunications public limited company Video streaming
EP2426923A1 (en) 2010-09-02 2012-03-07 British Telecommunications Public Limited Company Adaptive streaming of video at different quality levels
WO2016183251A1 (en) 2015-05-11 2016-11-17 Mediamelon, Inc. Systems and methods for performing quality based streaming
US11076187B2 (en) 2015-05-11 2021-07-27 Mediamelon, Inc. Systems and methods for performing quality based streaming

Family Cites Families (64)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4419699A (en) * 1979-10-12 1983-12-06 Rca Corporation Digital on video recording and playback system
US5025458A (en) * 1989-10-30 1991-06-18 International Business Machines Corporation Apparatus for decoding frames from a data link
US6389010B1 (en) * 1995-10-05 2002-05-14 Intermec Ip Corp. Hierarchical data collection network supporting packetized voice communications among wireless terminals and telephones
US20020100052A1 (en) * 1999-01-06 2002-07-25 Daniels John J. Methods for enabling near video-on-demand and video-on-request services using digital video recorders
US5430485A (en) * 1993-09-30 1995-07-04 Thomson Consumer Electronics, Inc. Audio/video synchronization in a digital transmission system
WO1995022233A1 (en) 1994-02-11 1995-08-17 Newbridge Networks Corporation Method of dynamically compensating for variable transmission delays in packet networks
EP0674414B1 (en) * 1994-03-21 2002-02-27 Avid Technology, Inc. Apparatus and computer-implemented process for providing real-time multimedia data transport in a distributed computing system
US5534937A (en) * 1994-04-14 1996-07-09 Motorola, Inc. Minimum-delay jitter smoothing device and method for packet video communications
US5874997A (en) * 1994-08-29 1999-02-23 Futuretel, Inc. Measuring and regulating synchronization of merged video and audio data
US5598352A (en) * 1994-09-30 1997-01-28 Cirrus Logic, Inc. Method and apparatus for audio and video synchronizing in MPEG playback systems
US5953350A (en) * 1995-03-13 1999-09-14 Selsius Systems, Inc. Multimedia client for multimedia/hybrid network
US6003030A (en) * 1995-06-07 1999-12-14 Intervu, Inc. System and method for optimized storage and retrieval of data on a distributed computer network
US6169843B1 (en) * 1995-12-01 2001-01-02 Harmonic, Inc. Recording and playback of audio-video transport streams
KR100280559B1 (ko) * 1996-01-08 2001-02-01 포만 제프리 엘 멀티미디어파일배포를위한파일서버
US6148135A (en) * 1996-01-29 2000-11-14 Mitsubishi Denki Kabushiki Kaisha Video and audio reproducing device and video decoding device
US5768527A (en) * 1996-04-23 1998-06-16 Motorola, Inc. Device, system and method of real-time multimedia streaming
US5918013A (en) * 1996-06-03 1999-06-29 Webtv Networks, Inc. Method of transcoding documents in a network environment using a proxy server
US5931922A (en) 1996-07-01 1999-08-03 Sun Microsystems, Inc. Media server system for preventing FIFO buffer underflow during multiple channel startup by waiting until buffer receives plurality of data blocks before enabling buffer to transmit received data
US6366614B1 (en) * 1996-10-11 2002-04-02 Qualcomm Inc. Adaptive rate control for digital video compression
US5949410A (en) * 1996-10-18 1999-09-07 Samsung Electronics Company, Ltd. Apparatus and method for synchronizing audio and video frames in an MPEG presentation system
US6016307A (en) * 1996-10-31 2000-01-18 Connect One, Inc. Multi-protocol telecommunications routing optimization
GB9706394D0 (en) 1997-03-27 1997-05-14 Nds Ltd Improvements in or relating to compressing a digital signal
US5923655A (en) * 1997-06-10 1999-07-13 E--Net, Inc. Interactive video communication over a packet data network
US6014694A (en) * 1997-06-26 2000-01-11 Citrix Systems, Inc. System for adaptive video/audio transport over a network
US6101221A (en) * 1997-07-31 2000-08-08 Lsi Logic Corporation Video bitstream symbol extractor for use in decoding MPEG compliant video bitstreams meeting 2-frame and letterboxing requirements
US6397251B1 (en) * 1997-09-02 2002-05-28 International Business Machines Corporation File server for multimedia file distribution
KR100750520B1 (ko) * 1997-09-25 2007-08-21 소니 가부시끼 가이샤 부호화 스트림 생성 장치 및 방법, 데이터 전송 시스템 및 방법, 편집 시스템 및 방법
US6028928A (en) * 1997-09-26 2000-02-22 Mullaney; Julian Sean Telephone subscriber line module
JP3063838B2 (ja) * 1997-10-02 2000-07-12 日本電気株式会社 オーディオ・ビデオ同期再生装置および方法
US6195368B1 (en) * 1998-01-14 2001-02-27 Skystream Corporation Re-timing of video program bearing streams transmitted by an asynchronous communication link
JPH11262001A (ja) * 1998-03-16 1999-09-24 Hitachi Denshi Ltd 符号化伝送方式におけるタイムスタンプ値演算方法
DE69922625T2 (de) 1998-06-12 2005-11-03 Koninklijke Philips Electronics N.V. Übertragung von komprimierten audiodaten mittels eines wiedergabepuffers
US6377573B1 (en) 1998-06-15 2002-04-23 Siemens Information And Communication Networks, Inc. Method and apparatus for providing a minimum acceptable quality of service for a voice conversation over a data network
US6452922B1 (en) * 1998-06-19 2002-09-17 Nortel Networks Limited Method and apparatus for fallback routing of voice over internet protocol call
US6587641B1 (en) * 1998-07-21 2003-07-01 Matsushita Electric Industrial Co., Ltd. Apparatus for simultaneously writing and outputting data stream
US6976208B1 (en) * 1998-11-03 2005-12-13 International Business Machines Corporation Progressive adaptive time stamp resolution in multimedia authoring
US6704288B1 (en) * 1999-10-07 2004-03-09 General Instrument Corporation Arrangement for discovering the topology of an HFC access network
US7096481B1 (en) * 2000-01-04 2006-08-22 Emc Corporation Preparation of metadata for splicing of encoded MPEG video and audio
US6792047B1 (en) * 2000-01-04 2004-09-14 Emc Corporation Real time processing and streaming of spliced encoded MPEG video and associated audio
US6678332B1 (en) * 2000-01-04 2004-01-13 Emc Corporation Seamless splicing of encoded MPEG video and audio
US8151306B2 (en) * 2000-01-14 2012-04-03 Terayon Communication Systems, Inc. Remote control for wireless control of system including home gateway and headend, either or both of which have digital video recording functionality
JP2001230821A (ja) * 2000-02-16 2001-08-24 Sony Corp データ中継装置および方法、並びに提供媒体
GB0028113D0 (en) 2000-05-15 2001-01-03 Band X Ltd Communication system and method
EP1290853A2 (en) * 2000-05-26 2003-03-12 Akamai Technologies, Inc. Global load balancing across mirrored data centers
US6771703B1 (en) * 2000-06-30 2004-08-03 Emc Corporation Efficient scaling of nonscalable MPEG-2 Video
US7016970B2 (en) * 2000-07-06 2006-03-21 Matsushita Electric Industrial Co., Ltd. System for transmitting stream data from server to client based on buffer and transmission capacities and delay time of the client
CA2429827C (en) 2000-12-15 2009-08-25 British Telecommunications Public Limited Company Transmission and reception of audio and/or video material
US7251833B2 (en) * 2000-12-29 2007-07-31 International Business Machines Corporation Digital media delivery with local cache and streaming tokens
JP2002232573A (ja) * 2001-01-31 2002-08-16 Nec Corp 移動通信端末、移動通信システム及びサービス提供装置
JP2002271389A (ja) * 2001-03-07 2002-09-20 Hitachi Telecom Technol Ltd パケット処理装置およびパケット処理方法
US20020143798A1 (en) * 2001-04-02 2002-10-03 Akamai Technologies, Inc. Highly available distributed storage system for internet content with storage site redirection
DE10125017A1 (de) 2001-05-22 2002-12-05 Siemens Ag Verfahren zum Erbringen von Diensten in einem Datenübertragungsnetz und zugehörige Komponenten
US6931071B2 (en) * 2001-08-31 2005-08-16 Stmicroelectronics, Inc. Apparatus and method for synchronizing video and audio MPEG streams in a video playback device
US7646816B2 (en) 2001-09-19 2010-01-12 Microsoft Corporation Generalized reference decoder for image or video processing
JP2003209807A (ja) * 2002-01-10 2003-07-25 Canon Inc 動画再生方法及び装置
JP3655249B2 (ja) * 2002-03-05 2005-06-02 松下電器産業株式会社 データ受信再生方法およびデータ通信装置
JP4875285B2 (ja) * 2002-04-26 2012-02-15 ソニー株式会社 編集装置および方法
JP2004015114A (ja) * 2002-06-03 2004-01-15 Funai Electric Co Ltd デジタル放送記録装置及びそれを備えたデジタル放送システム
US7343087B2 (en) * 2002-11-12 2008-03-11 Matsushita Electric Industrial Co., Ltd. Data stream playback device and method, digital broadcast receiver and related computer program
JP2006518948A (ja) * 2003-02-13 2006-08-17 ノキア コーポレイション マルチメディア・ストリーミングにおけるストリーミング品質適合と制御機構のシグナリング方法
US9325998B2 (en) * 2003-09-30 2016-04-26 Sharp Laboratories Of America, Inc. Wireless video transmission system
JP2005167420A (ja) * 2003-11-28 2005-06-23 Toshiba Corp 映像音声再生装置
JP4039417B2 (ja) * 2004-10-15 2008-01-30 株式会社日立製作所 記録再生装置
US7620137B2 (en) * 2004-11-13 2009-11-17 Microsoft Corporation System and method for clock drift correction for broadcast audio/video streaming

Also Published As

Publication number Publication date
CN1939030B (zh) 2010-05-05
JP2011193512A (ja) 2011-09-29
KR101165105B1 (ko) 2012-07-12
WO2005093995A3 (en) 2007-07-12
EP1735946A2 (en) 2006-12-27
KR20070028360A (ko) 2007-03-12
WO2005093995A2 (en) 2005-10-06
US20080025340A1 (en) 2008-01-31
GB0406901D0 (en) 2004-04-28
EP1735946B1 (en) 2013-10-16
US8064470B2 (en) 2011-11-22
CA2561088A1 (en) 2005-10-06
JP4782770B2 (ja) 2011-09-28
JP2007531365A (ja) 2007-11-01

Similar Documents

Publication Publication Date Title
CN1939030B (zh) 发送录制的材料
US7433946B2 (en) Mechanism for transmitting elementary streams in a broadcast environment
US7342961B2 (en) Encoded data outputting apparatus and method
WO2002032141A3 (en) Video bitrate control method and device for digital video recording
CN100581267C (zh) 复用装置和复用方法
EP2190207A1 (en) Method of video buffer verification
CA2388085A1 (en) Data stream processing device and method, and program storage medium
US8755413B2 (en) Method and system for dynamically allocating video multiplexing buffer based on queuing theory
KR100725766B1 (ko) 고정 및 가변 속도 데이터 스트림용 트랜스코더
EP0759677B1 (en) Intermediate storage of packetized real-time data and conversion from variable to fixed data rate
EP1606920B1 (en) Transmitting over a network
US7274863B2 (en) Data stream processing device and method and program storage medium
JP4242581B2 (ja) データ変換装置
WO2005101846A1 (en) Method and apparatus for buffer management
KR100238261B1 (ko) 가변 비트율 복호화장치
JPH10285213A (ja) 無音圧縮音声パケット送受信装置
JP5171413B2 (ja) コンテンツ送信装置、コンテンツ受信装置及びコンテンツ送信方法
US20090225853A1 (en) Method and system for rate reduction of video streams
JP2000013441A (ja) パケット送信装置、パケット送信方法、パケット多重化装置、及び出力可能時刻計算装置
WO2002091740A1 (fr) Systeme et procede de transmission de donnees sur support

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