CN1647025A - 输出速率的改变 - Google Patents

输出速率的改变 Download PDF

Info

Publication number
CN1647025A
CN1647025A CNA038086557A CN03808655A CN1647025A CN 1647025 A CN1647025 A CN 1647025A CN A038086557 A CNA038086557 A CN A038086557A CN 03808655 A CN03808655 A CN 03808655A CN 1647025 A CN1647025 A CN 1647025A
Authority
CN
China
Prior art keywords
data
impact damper
output
output speed
data source
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
CNA038086557A
Other languages
English (en)
Other versions
CN100428138C (zh
Inventor
A·迪克霍夫
M·A·格希森
S·T·德克
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.)
Koninklijke Philips NV
Original Assignee
Koninklijke Philips Electronics NV
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
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=29225689&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=CN1647025(A) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by Koninklijke Philips Electronics NV filed Critical Koninklijke Philips Electronics NV
Publication of CN1647025A publication Critical patent/CN1647025A/zh
Application granted granted Critical
Publication of CN100428138C publication Critical patent/CN100428138C/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F5/00Methods or arrangements for data conversion without changing the order or content of the data handled
    • G06F5/06Methods or arrangements for data conversion without changing the order or content of the data handled for changing the speed of data flow, i.e. speed regularising or timing, e.g. delay lines, FIFO buffers; over- or underrun control therefor

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Communication Control (AREA)
  • Information Transfer Systems (AREA)

Abstract

本发明涉及一种改变有恒定第一输出速率(R1)的缓冲器(3)的信息输出速率的方法和系统,该缓冲器从数据源(2a)接收输出数据,其中本方法的步骤包括:暂停从数据源(2a)接收输出数据;以第一输出速率(R1)从缓冲器(3)中输出(4)已存储的输出数据直到该缓冲器为空,然后重新开始接收输出数据并将输出数据存储于缓冲器(3)中;设置第二恒定输出速率(R2)为该缓冲器的输出速率;并在被缓冲的数据量等于第二恒定输出速率(R2)与请求的缓冲时间(TB2)的乘积时,起动/开始以该第二输出速率(R2)输出缓冲器的内容。

Description

输出速率的改变
本发明涉及一种改变缓冲器的信息输出速率的方法,其中该缓冲器具有恒定的第一输出速率并且从数据源接收输出数据,而输出数据被添加以存储在上述缓冲器中。
本发明还进一步涉及一种改变缓冲器的信息输出速率的设备,其中该缓冲器具有恒定的第一输出速率和用于从数据源接收输出数据的装置,以及用于添加并存储这些输出数据到该缓冲器的装置。
典型地,对数据流中数据的处理包括用来处理进入数据流的数据系统。通常,该数据系统不仅由硬件组成,还包括用于增强其灵活性的软件组件。处理一个数据系统中多个进程的成本效率最高的方式是在单独的内核中操纵所有处理,该内核被编程设计为向全部数量的任务提供服务。为了进一步优化这种方式,一般都习惯于让系统运行在非实时模式。然而,在一个或多个进程对时间要求苛刻的情况下,这就可能导致一些局限性。如果一个非实时组件同时执行多个任务和进程,该数据系统将不会产生一个连续流出的输出数据流。该输出将呈现出突发的形式,因此不能保证恒定的输出速率。
所以,众所周知的是引入用于临时缓冲此非实时数据的硬件缓冲器以克服非实时组件不执行输出数据的那些时间段。典型非实时实现的数据源组件都包括一个软件组件。
当数据源组件执行时,它可以消耗和处理一个输入信号并产生输出数据。此输出数据被添加到硬件缓冲器中。该硬件缓冲器被以一个恒定的输出速率清空以保证一个稳定的缓冲数据流,例如为了仿真一个期望的实时系统的表现。依靠这个硬件缓冲器,就可以在未调度数据源组件的时间中输出数据。该硬件缓冲器必须包含有足够的数据以渡过该时间,直到数据源组件的下一个执行瞬间。
在数据源组件执行之后,产生的数据被输出前将在硬件缓冲器中驻留一段时间。数据在硬件缓冲器中驻留的时间等于此数据在该硬件缓冲器中的延迟,其典型地被称为缓冲时间。
典型地,一个目标是将缓冲时间设计得尽可能短而不引起缓冲器的欠载运行。
缓冲时间的定义是tb=B/R,其中B是被缓冲的数据的量而R是输出速率。
在多种应用中,完全静态的输出速率是极不可接受的。在输出速率增加的情况下,可能会因为硬件缓冲器下溢而出现问题,因为缓冲时间变得小于数据源组件的连续执行瞬间之间的最大时间间隔。在输出速率减小的情况下,因为缓冲时间取一个大得不可接受的值,而数据因此在缓冲器中驻留更长时间,硬件缓冲器就可能在数据被输出前引入不可接受的延迟。
所以,以一种未加控制的方式改变输出速率会导致不定的或者有害的缓冲时间。
本发明的目的是提供一种改变具有恒定第一输出速率的缓冲器的信息输出速率的方法。换句话说,其目的是提供一种能解决现有技术的问题的方法。
这是通过一种改变具有恒定第一输出速率的缓冲器的信息输出速率的方法来实现的,其中缓冲器从一个数据源接收输出数据,且该输出数据被添加以存储在该缓冲器中,本方法包括以下步骤:为该缓冲器指定第二恒定输出速率和请求的缓冲时间;暂停从数据源接收输出数据;以上述第一输出速率从缓冲器中输出已存储的输出数据直到该缓冲器为空;当缓冲器基本上为空时,重新开始从数据源接收输出数据并将其存储在缓冲器中;设置第二恒定输出速率为该缓冲器的输出速率;并且,当缓冲的数据量基本上等于第二恒定输出速率与请求的缓冲时间的乘积时,起动/开始以上述第二输出速率输出该缓冲器的所存储的内容。
这样,具有恒定输出速率的缓冲器将能够以一种可控制的方式传递不同的输出速率,从而避免上面提到的那些缺点。
MPEG-2传输流通常具有恒定的比特速率;但是,为了优化数据带宽,有时候可能要调整比特速率。这使得本发明对于实时广播数据特别有用,例如电视和无线电演出。
对于数字广播,因为压缩技术而要求某种类型的处理,本发明将引入最小的延迟,即,尽可能接近实时。就是说,每一次输出速率被改变时缓冲器长度都将被最佳化,因此系统等待时间将会尽可能的低。
本发明涉及例如利用缓冲器来平缓(level out)数据流的所谓伪实时应用,因为按照惯例真正的实时应用并不需要任何数据缓冲。但是,真正的实时系统,例如那些包含某种缓冲器的能够逐渐恢复数据传输的系统,也可以从本发明受益。
根据本发明的方法的实施方案在权利要求2到7中描述。
这个目标由一种按照前言的设备进一步实现,该设备的特征在于它包含装置用于:暂停/停止从数据源接收输出数据;以所说的第一输出速率从缓冲器中输出已存储的内容直到该缓冲器为空;当缓冲器基本上为空时,停止从所述缓冲器输出内容并重新开始从数据源接收输出数据并将其添加/存储在缓冲器中;设置第二恒定输出速率为该缓冲器的输出速率;并且,当缓冲的数据量等于第二恒定输出速率与请求的缓冲时间的乘积时,起动/开始以第二输出速率输出该缓冲器的所存储的内容。
根据本发明的设备的实施方案在权利要求9到11中描述。
附图以实施方案的形式对本发明进行举例说明,其中
图1显示了按照本发明的方法的一种实施方案。
图2用示意框图阐明了三个操作阶段的执行过程。
图3显示了按照本发明的设备的一种实施方案。
图1显示了具有输入数据源(1)的处理数据源(2a)与一个具有缓冲器数据输出总线(4)的缓冲器(3)相结合的情况。缓冲器(3)和缓冲器数据输出总线(4)之间的数据流速率被调整为恒定的输出速率(R1、R2),其中数据源(2a)和输入数据源(1)之间的流速率仅受限于二者各自的能力。
数据源(2a)可以是非实时的多线程处理系统,这意味着它是能在时间要求不苛刻的动作中执行多种工作、任务、线程等的处理系统。在这种环境中,数据源的典型工作可能是控制缓冲器大小、计算要求的处理开销、处理输入数据、处理用户数据,等等。但是,可能并不要求数据源(2a)是多线程的。
数据源(2a)从应用(1)接收进入数据并执行所要求的数据处理。数据源可以针对当前被处理的进入数据来估计一个最佳的数据速率。随后,数据源(2a)根据要求的输出速率(R2)和数据源的处理能力等计算出一个合意的缓冲时间,从而可以决定改变缓冲器的第一输出速率的潜在需要。
数据源(2a)的软件组件将经历以下状态,以完成输出速率和/或缓冲时间改变的过程:
1)当软件组件执行于正常操作状态(见(14)图2):
a)软件组件消耗和处理输入数据。
b)软件组件产生输出数据(2b)并将其添加到硬件缓冲器。
c)硬件缓冲器被以恒定的输出速率(R1)清空而数据被输出(4)。
倘若发现比较(5)当前输出速率(R1)和请求的输出速率(R2)需要新的输出速率(R2)设置或新的缓冲时间(TB2),软件组件就进入清洗(flush)输出阶段:
2)当软件组件执行并处于清洗输出阶段时(见(15)图2):
a)软件组件消耗和丢弃输入数据。
b)软件组件不产生输出数据(2b)并且没有数据被添加到硬件缓冲器(3)。
c)硬件缓冲器被以从前的输出速率(R1)清空(7)且数据被输出到缓冲器输出(4)。
当硬件缓冲器为空时(8),软件组件进入开始新输出速率状态(见图2(16)):
3)当软件组件执行并且处于开始新输出速率状态时:
a)软件组件消耗和处理输入数据。
b)软件组件产生输出数据(2b)并将其添加到硬件缓冲器(3)。
c)硬件缓冲器不被清空但请求的输出速率(R2)被设置。
当缓冲的数据量基本上等于所请求的输出速率与所请求的缓冲时间的乘积(B=tb*R)时,软件组件再次进入正常操作状态。
按照本发明的方法操作的主要阶段如图2中阐明。数据源(2a)接收并处理输入数据(1),其中数据处理可以包括数据处理、纠错,等等。
只要与当前的缓冲时间(TB1)和输出速率(R1)相比,既不改变要求的缓冲时间(TB2)也不改变输出速率(R2),数据源就继续执行输入数据并产生输出数据(2b)以提供给缓冲器(3)一个必要的数据流。如果数据源(2a)确定需要根据当前被处理的数据新设置缓冲时间或输出速率,该数据源就可以被设计为进入清洗输出阶段(15)。
系统一进入清洗输出阶段(15),从数据源来的输出数据就被停止(6)。只要缓冲器中有数据可得,该缓冲器就以输出速率(R1)被清空(7、8)。同时,进入的数据源数据(1)可能被丢弃,以防止这些数据驻留并累积在数据源(2a)之中。
倘若缓冲器为空,系统就进入开始新输出速率状态,其中缓冲器的吞吐可以被停止(9),即,没有数据可以离开缓冲器(3)。
在开始新输出速率状态中,新的输出速率(R2)或缓冲时间(TB2)被定义。所请求的输出速率/缓冲时间被设置(10)且数据源重新开始(11)消耗和处理输入数据(1)。缓冲器吞吐被暂停,直至缓冲器(3)被重新充满(11、12),其中当被缓冲的数据量等于所请求的输出速率与所请求的缓冲时间的乘积(B=TB2*R2)时,定义缓冲器为已被重新充满。当被缓冲的数据量等于或者基本上等于要求的缓冲器大小时(12),系统刚一使能数据吞吐(13)就再次进入正常操作状态(14)。
图3进一步阐明一种包含向系统CPU(18)提供数据的输入数据源(17)的本发明的实施方案。CPU(18)可以包括系统存储装置,该系统存储装置则含有被设计用来完成权利要求中所提到的装置的功能的软件模块(19a、19b)。由包含CPU(18)和多个要求的软件模块(19a、19b)的装置所处理的数据可被存储在缓冲器(20)中,该缓冲器可能由本发明中所提到的上述方法来控制。在清空该缓冲器(20)期间,输出总线(21)可以是连到另外的数据处理应用的链接。

Claims (11)

1.一种改变具有恒定第一输出速率的缓冲器的信息输出速率的方法,其中缓冲器从数据源接收输出数据,而该输出数据被添加以存储在该缓冲器中,其特征在于本方法包含以下步骤:
●暂停从数据源接收输出数据;
●以所述的第一输出速率从缓冲器中输出已存储的输出数据直到该缓冲器为空;
●停止输出该缓冲器的内容;
●当缓冲器基本上为空时,重新开始从数据源接收输出数据并将其存储于该缓冲器之中;
●设置第二恒定输出速率为该缓冲器的输出速率;并且
●当缓冲的数据量基本上等于第二恒定输出速率与所请求的缓冲时间的乘积时,起动以该第二输出速率输出所述缓冲器的所存储的内容。
2.按照权利要求1的方法,其中数据源为该缓冲器指定第二恒定输出速率和所请求的缓冲时间。
3.按照权利要求1的方法,其中当缓冲器为空时启动上述输出数据的重新开始。
4.按照权利要求1的方法,其中的
●数据源是适合于接收和处理输入数据并输出所述输出数据的软件应用。
5.按照权利要求1的方法,其中的
●缓冲器是硬件缓冲器。
6.按照权利要求1的方法,其中的
●暂停接收输出数据的步骤包含该数据源丢弃上述输入数据。
7.按照权利要求1的方法,其中的
●输入数据是遵从MPEG2的基本流且数据源适合将MPEG2流复用到一传输流中。
8.一种用于改变缓冲器的信息输出速率的设备,其中缓冲器具有恒定的第一输出速率并具备从数据源接收输出数据的装置,以及将上述输出数据添加并存储在该缓冲器中的装置,其特征在于该设备包含装置用于:
●暂停/停止从数据源接收输出数据;
●以所述的第一输出速率从缓冲器中输出已存储的内容直到该缓冲器为空;
●停止输出该缓冲器的内容,并且
●当缓冲器基本上为空时,重新开始从数据源接收输出数据并存储该输出数据;
●设置第二恒定输出速率为该缓冲器的输出速率,并且
●当缓冲的数据量等于第二恒定输出速率与所请求的缓冲时间的乘积时,起动以该第二输出速率输出所述缓冲器的所存储的内容。
9.按照权利要求8的设备,其中该设备包含用于为该缓冲器指定第二恒定输出速率和所请求的缓冲时间的装置。
10.按照权利要求8的设备,其中该设备适合于在缓冲器为空时重新开始上述输出数据。
11.按照权利要求8的设备,其中的
数据源是包含用于接收和处理输入数据的装置及用于输出所述输出数据的装置的软件应用。
CNB038086557A 2002-04-19 2003-04-01 用于改变输出速率的方法和设备 Expired - Fee Related CN100428138C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP02076544 2002-04-19
EP02076544.2 2002-04-19

Publications (2)

Publication Number Publication Date
CN1647025A true CN1647025A (zh) 2005-07-27
CN100428138C CN100428138C (zh) 2008-10-22

Family

ID=29225689

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB038086557A Expired - Fee Related CN100428138C (zh) 2002-04-19 2003-04-01 用于改变输出速率的方法和设备

Country Status (7)

Country Link
US (1) US7603495B2 (zh)
EP (1) EP1499950A2 (zh)
JP (1) JP4320390B2 (zh)
KR (1) KR100950172B1 (zh)
CN (1) CN100428138C (zh)
AU (1) AU2003212613A1 (zh)
WO (1) WO2003090063A2 (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100806627B1 (ko) * 2007-04-16 2008-02-26 인하대학교 산학협력단 멀티-스피드 디스크를 포함하는 비디오 서버를 관리하는방법
KR101224165B1 (ko) * 2008-01-02 2013-01-18 삼성전자주식회사 데이터 처리 모듈 제어 방법 및 장치
US8914650B2 (en) 2011-09-28 2014-12-16 Intel Corporation Dynamically adjusting power of non-core processor circuitry including buffer circuitry
GB2521104B (en) 2013-08-28 2017-05-31 Metaswitch Networks Ltd Data processing
US11423017B2 (en) * 2020-12-11 2022-08-23 Sap Se Look-ahead staging for accelerated data extraction
US11416259B2 (en) 2020-12-11 2022-08-16 Sap Se Look-ahead staging for time-travel reconstruction

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5953350A (en) * 1995-03-13 1999-09-14 Selsius Systems, Inc. Multimedia client for multimedia/hybrid network
US6366614B1 (en) * 1996-10-11 2002-04-02 Qualcomm Inc. Adaptive rate control for digital video compression
US6046981A (en) * 1997-02-28 2000-04-04 Nec Usa, Inc. Multi-class connection admission control method for Asynchronous Transfer Mode (ATM) switches
US6247072B1 (en) 1998-01-27 2001-06-12 Cisco Technology, Inc. Real-time data rate matching across a medium
US6233226B1 (en) * 1998-12-14 2001-05-15 Verizon Laboratories Inc. System and method for analyzing and transmitting video over a switched network
US7170856B1 (en) * 1999-08-19 2007-01-30 Nokia Inc. Jitter buffer for a circuit emulation service over an internet protocol network
US7646816B2 (en) * 2001-09-19 2010-01-12 Microsoft Corporation Generalized reference decoder for image or video processing

Also Published As

Publication number Publication date
CN100428138C (zh) 2008-10-22
WO2003090063A2 (en) 2003-10-30
US7603495B2 (en) 2009-10-13
AU2003212613A8 (en) 2003-11-03
JP4320390B2 (ja) 2009-08-26
EP1499950A2 (en) 2005-01-26
WO2003090063A3 (en) 2004-06-03
KR20040103971A (ko) 2004-12-09
KR100950172B1 (ko) 2010-03-30
JP2005523617A (ja) 2005-08-04
US20050235075A1 (en) 2005-10-20
AU2003212613A1 (en) 2003-11-03

Similar Documents

Publication Publication Date Title
CN1320805C (zh) 一种分组交换网络自适应抖动缓冲区调整方法
US8549525B2 (en) Method for tuning service performance of multi-task system and multi-task system thereof
CN1079001C (zh) 代码转换器
CN101159862B (zh) 帧率控制方法及装置
US9612965B2 (en) Method and system for servicing streaming media
CN1608381A (zh) 受复杂度约束的数据压缩中的动态控制
WO2007136903A2 (en) Systems and methods for transcoding bit streams
CN1647025A (zh) 输出速率的改变
US20070280294A1 (en) Constrained Fidelity Constant Bit Rate Video Encoding Systems and Methods
WO2012013226A1 (en) Improved bitrate distribution
CN1812591A (zh) 用以执行资料流的信号同步的系统与方法
EP1987677B1 (en) Systems and methods for transcoding bit streams
CN1960486A (zh) 一种多媒体数据的缓存控制方法
CN1549536A (zh) 用rtp数据包的时戳进行排序以消除其抖动延时的方法
CN1531276A (zh) 用于消除ip语音数据抖动的自适应抖动缓存实现方法
JP2005057760A (ja) リアルタイム計算量適応型ビデオコーデックシステム
CN1292597C (zh) 视频编码方法及相应的编码装置
CN1855824A (zh) 用于流式处理数据的方法和设备
CN1921364A (zh) 基于消息的可靠传输层的并包发送和自适应窗口缩放方法
CN1333600A (zh) 通信系统,发射机,保护传输差错的方法
CN1812370A (zh) 动态缓冲器的流动数据管理方法
CN1067831C (zh) Mpeg-2视频解码器及其输入缓冲器的控制方法
US7301955B1 (en) Method for smoothing the transmission of a time-sensitive file
CN111541941B (zh) 一种移动端多编码器加速编码的方法
TW594685B (en) Automatic regulation encoding/decoding device of code length and method thereof

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
C17 Cessation of patent right
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20081022

Termination date: 20100401