CN100334571C - 网络媒体播放 - Google Patents

网络媒体播放 Download PDF

Info

Publication number
CN100334571C
CN100334571C CNB028196317A CN02819631A CN100334571C CN 100334571 C CN100334571 C CN 100334571C CN B028196317 A CNB028196317 A CN B028196317A CN 02819631 A CN02819631 A CN 02819631A CN 100334571 C CN100334571 C CN 100334571C
Authority
CN
China
Prior art keywords
buffer
packet communication
communication network
handled
media
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.)
Expired - Lifetime
Application number
CNB028196317A
Other languages
English (en)
Other versions
CN1564984A (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.)
Google LLC
Original Assignee
Global IP Sound AB
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 Global IP Sound AB filed Critical Global IP Sound AB
Publication of CN1564984A publication Critical patent/CN1564984A/zh
Application granted granted Critical
Publication of CN100334571C publication Critical patent/CN100334571C/zh
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/64Hybrid switching systems
    • H04L12/6418Hybrid transport
    • 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/75Media network packet handling
    • H04L65/764Media network packet handling at the destination 
    • 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/80Responding to QoS
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/64Hybrid switching systems
    • H04L12/6418Hybrid transport
    • H04L2012/6472Internet
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/64Hybrid switching systems
    • H04L12/6418Hybrid transport
    • H04L2012/6481Speech, voice
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/64Hybrid switching systems
    • H04L12/6418Hybrid transport
    • H04L2012/6489Buffer Management, Threshold setting, Scheduling, 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/1066Session management
    • H04L65/1101Session protocols

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Transition And Organic Metals Composition Catalysts For Addition Polymerization (AREA)

Abstract

根据本发明,披露了一种用于对源自包通信网络的音频媒体流进行处理的方法。在一个步骤中,在多个包从包通信网络到达时被接收。所述包是所述音频媒体流的一部分。监视媒体播放设备中的播放缓存器。确定播放缓存器被填充得低于一个阈值。当播放缓存器被填充得低于所述阈值时,重新得到音频媒体流的一部分。该部分被存储到媒体播放设备的播放缓存器中。

Description

网络媒体播放
技术领域
本发明通常涉及一种实时媒体播放,特别涉及网络提供的媒体的计算机媒体播放。
背景技术
包通信设备接收机部分的特征在于具有作为输入的一个异步数据包流。一个实时媒体播放设备需要例如给扬声器产生连续的输出数据。此外,为了实时应用诸如电话、音频流或视频流,延迟最小化是重要的,因此,在所述接收机和播放设备中的延迟应当尽可能的小。
所述实时媒体播放设备被定义为将所述数字媒体信号转换为例如将被馈送给一个扬声器的模拟信号的适于播放的信号的软件和/或硬件。在一个计算机中,当所述媒体是声音时,所述实时媒体播放设备通常被称之为声卡或声板,而当所述媒体是视频时,所述实时媒体播放设备通常被称之为视频卡或视频板。所述包通信设备通常被称之为网络适配器,在计算机中,它是网卡或调制解调器。
媒体播放的质量是一个主观上的标准,并且是实现高质量服务(QOS)的主要部分。从网络进入的包的特征在于影响播放质量和所述QOS的至少三个因素,即,等待时间、时钟偏移和包丢失。等待时间是所述网络中有多少个所述包被延迟的尺度。这些变量被称之为抖动。时钟偏移是所进入的包到达不代表所述播放设备播放的速度的速度的时间。包丢失是不是代表所述媒体流的所有包被接收用于播放的时间。具有足够QOS的实时媒体播放保持对用户的高度知觉质量。这也包括具有低延迟,以保证高质量的实时通信。
在包网络上使用现有技术实时通信系统的国家中使用的现有技术接收机由抖动缓存器、解码器、包丢失隐蔽单元和实时媒体播放设备组成。所述抖动缓存器积累多个包以缓和抖动的影响和如果需要则重新安排所接收的包,从而使所述包能够以规则的间隔和适当的暂时顺序被从所述缓存器中取出。所述解码器将所述包中的数字信息转换为能够被馈送给所述播放设备的媒体信号。所述包丢失隐蔽(PLC)单元当包丢失时(即在抖动缓存器中没有得到所述包时)产生媒体信号。例如,在声音播放时,一种简单的包丢失隐蔽技术是利用0替换丢失的包。这种技术通常被称之为0-填充。所述实时媒体播放设备(例如,声卡或其它计算机上的音频设备)通常具有一个缓存器和一个数/模(D/A)转换器。
参看图1,一个简单的发射机和一个简单的接收机被分别表示为A侧和B侧。所述简单的接收机由包通信设备、解码器和用于到扬声器进行播放的实时媒体设备组成。一个包刚刚从所述包网络到达,所述包通信设备就立即将其传送给所述解码器,所述解码器对其解码并将其传送给所述实时媒体设备中的缓存器。所述实时媒体设备将所述音频从数字形式转换为模拟形式并将所述模拟信号传送给所述扬声器。由于没有一个机制去缓和所述抖动和重新排序以及没有包丢失隐蔽单元,所以,这个播放设计使知觉质量受到损害。
另外,如果所述简单的接收机不具有与所述简单的发射机相同的频率,将会出现某些时候被称之为“时钟偏移”的失谐。例如,假设所述简单的发射机使用fsA Hz的频率和所述简单的接收机使用fsB Hz的频率和fsB>fsA。这意味着所述简单的发射机每秒记录fsA个取样和所述简单的接收机每秒播放fsB的取样。由于在我们的这个例子中fsB>fsA,这将引起所述简单接收机中的缓存器偏离媒体而播放,从而导致所述记录不能被实时进行。这种不连续性将与包丢失具有相同的效果,在所述包丢失中,使用0填充做为隐蔽方法。
下面参看图2,该图示出了一个进一步改进的接收机,该接收机由包通信设备、抖动缓存器、解码器和用于到扬声器播放的实时媒体设备组成。图2中没有示出A侧,但它与图1所示的A侧相同。当一个包根据因特网的网络协议(IP)到达时,所述包通信设备立即将它放置在所述抖动缓存器中,如果需要,该抖动缓存器将记录所述包。一个定时器决定什么时候从所述抖动缓存器中提取一个包和对其解码。这个定时器被设置为在作为所述包尺寸的相同时间处被触发。当所述包被解码时,它被放置在所述实时媒体设备的缓存器中。如果在该抖动缓存器中不存在包,那么当所述定时器被触发时,执行所述包丢失隐蔽,和所产生的数据被放置在所述实时媒体设备的缓存器中。所述实时媒体设备将所述音频信号从数字信号转换为模拟信号并将该模拟信号传送给所述扬声器。
这种进一步改进的播放方法将校正所记录包的问题并可以具有比0-填无更具优点的包丢失隐蔽方法。但是,由于调用所述抖动缓存器的所述定时器与所述实时媒体设备中的时钟不同步,所以,它将失谐,从而它仍然受到所述“ 时钟偏移”的损害。如果所述定时器“快”于所述实时媒体设备中的时钟,则所述实时媒体设备中的缓存器将被以快于它管理播放的速度被填充,和延迟时间将增加。相反,如果所述播放快于所述定时器,那么,所述缓存器将结束媒体的播放,即它将欠载运行。所述欠载运行听起来就象是与所述包丢失隐蔽方法相同的具有0-填充的包丢失。这个问题是由使用两个时钟这样一个事实引起的:一个用于与所述包网络的交互作用、抖动缓冲和解码,而另一个用于所述实时媒体设备。
这个问题的一个解决方法是如在DSP上使用的所有处理都使用一个时钟,但是,对于其中由中央处理单元处理与所述包网络的交互作用、抖动缓冲和解码以及由声卡处理D/A转换的PC来讲这是不实际的。这不仅仅是参照图1所解释的将引起“时钟偏移”的精确性的问题。如果由于某种原因使所述CPU的时钟和声卡时钟准确同步,那么,如在图1所示例子中看到的,在A侧和B侧上不同的取样速率将引起所述抖动缓存器要不就是缺乏数据,要不就是被填满。如果fsA>fsB,那么将会发生结合图1所解释的第一方案,而如果fsA<fsB,那么,将会发生结合图2所解释的第二方案。
发明内容
在一个实施例中,本发明提供了一种用于对源于一个包通信网络的音频媒体流进行处理的方法。在一个步骤中,当多个包从所述包媒体网络到达时被接收。所述多个包是所述音频媒体流的一部分。媒体播放设备中的播放缓存器被监视。它确定所述播放缓存器的填充低于一个阈值。当所述播放缓存器被填充得低于所述阈值时,提取部分音频媒体流。该部分被存储在所述媒体播放设备的播放缓存器中。
在另一个实施例中,本发明提供了一种耦合到包通信网络上的音频播放系统,用于当接收到所述媒体流时播放该媒体流。所述音频播放系统包括包通信设备、第一缓存器、媒体播放设备和缓存器状态监视器。所述包通信设备从所述包通信网络接收多个包。所述第一缓存器存储所述多个包。所述媒体播放设备播放来自第二缓存器的媒体流。所述缓存器状态监视器在从所述第一缓存器请求更多的媒体流之前确定何时所述第二缓存器被填充得低于一个阈值。
在另一个实施例中,本发明提供一种用于对源于包通信网络的媒体流进行处理的方法。在一个步骤中,当来自所述包通信网络的多个包到达时被接收。所述多个包是所述媒体流的一部分。所述多个包被存储在第一缓存器中。由所述媒体播放设备使用的第二缓存器被监视。它确定所述第二缓存器被填充得低于一个阈值。从所述第一缓存器接收部分所述媒体流,至少部分地响应所述第二缓存器被填充得低于一个阈值,该部分被存储在所述媒体播放设备的第二缓存器中。
附图说明
下面将结合附图描述本发明,其中,
图1的框图示出了现有技术中分别用于记录和播放一个媒体流的简单的发射机和简单的接收机;
图2示出了现有技术中一改进的接收机的框图;
图3示出了内容接收机一个实施例的框图;
图4示出了内容接收机的一个实施例的框图;
图5的流程示出了用于将数据传送给播放设备的处理实施例;和
图6的流程示出了用于从包网络接收数据和将这些数据存储到抖动缓存器的处理实施例。
在附图中,相似的构件和/或特性使用相同的参考标记。
具体实施方式
本描述仅提供最佳范例性实施例,而不是对本发明的范围、应用性或结构提出限制。本描述的最佳范例性实施例将向本领域内普通技术人员提供能够实现本发明范例性实施例的足够描述。应当理解,在不脱离本发明权利要求所规定精神和范围的前提下,可以对元件的功能和安排做出各种变化。
本发明提供一种用于改善从一个包转换网络流出媒体的播放的系统和方法。所述媒体播放设备的缓存器被监视,从而能够极大地保证媒体的持续播放。这是通过将缓存器中的媒体数量与一个阈值进行比较实现的。一旦所述数据的数量少于所述阈值,就要从所述抖动缓存器中请求数据。所述抖动缓存器或者具有传送给所述解码器的数据,或者执行包丢失隐蔽操作以便创建数据。所产生的数据然后被放置在实时媒体播放设备的缓存器中。由此,所述缓存器的状态被用于触发加载更多的媒体取样到所述缓存器中。与所述抖动缓存和包丢失校正相关的延迟被保持在提供充分QOS的范围内。
参看图3,该框图示出了内容接收机300,包括媒体取样打包转换器304、播放监视器308和实时媒体播放设备312。与背景技术部分描述的简单和改进的接收机比较,包括了一个播放监视器308。这个播放监视器308监视播放设备312中一个缓存器的状态,并检测需要更多播放数据的时间。相反,图1所示的简单接收机根据进入的包确定播放速率,和图2所示的前置接收机根据定时器确定播放速率。即使是所述IP包被延迟或丢失,所述媒体取样打包转换器304也能够提供播放监视器308要求的媒体取样。播放媒体取样的知觉质量受到来自网络402的包数据流和传送给媒体取样转换器304的所述包的性能的影响。
参看图4,该图示出了一个用于对因特网协议(VOIP)数据流的声音播放进行控制的内容接收机400的框图。所述方法是在例如以MicrosoftTM Windows作为操作系统的PC上运行的。所述内容接收机400包括包通信设备404、组合抖动缓存器(JB)和包丢失隐蔽(PLC)单元、声音解码器412、缓存器状态监视器416、声卡420和扬声器424。下面将描述所述内容接收机的不同元件。
包通信设备404与IP网络402相连,并在从所述IP网络接收的包中提取媒体。所述JB和PLC单元408减少诸如包丢失、抖动和延迟的网络发送失真,从而使媒体取样的知觉质量最佳。重要的一点是这个LB和PLC单元408试图在所述缓存器中保持最小数量的包。在任一瞬间缓存器中包的数量是以所进入的包数据流的统计为基础的。当所述LB和PLC单元408被要求产生数据时,它确定在所述缓存器中是否存在数据。如果在所述缓存器中有数据,那么,当可用或执行包丢失隐蔽操作以产生数据时,所述数据被解码。所述声音解码器412对所述声音数据流进行解压缩。
例如,所述声卡可以使用每个取样16位记录声音取样。使用根据G.711标准的声音编码器,这个数据流被压缩为每个取样8位。在接收机400处,使用解码器412对每个取样数据流8位的数据解压缩并输出每个取样数据流16位的数据。所述解码将所发送的位数据流转换为声卡420能够理解并包括格式转换、每个取样速率的位尺寸或取样速率的一个位数据流。运个例子中的实时播放设备312是一个连接到扬声器424、立体声设备、耳机等上面的PC声卡420。图3所示的播放监视器308是在具有跟踪所述声卡播放状态和在需要时将来自JB和PLC单元408的数据写入到所述声卡缓存器中的软件的缓存器状态监视器416中执行的。该软件的这个实施例是通过可以是软件的操作系统或硬件定时器所提供的定时器功能驱动的。
内容接收机400可以被看作是具有3个不同部分,一个部分互联两个分离的执行部分。所述互联框是所述组合JB和PLC单元408和两个分离的执行部分是所述包通信设备404和所述缓存器状态监视器416。所述包通信框在所述包从包网络402达到后立即将这包放置到抖动缓存器(在JB和PLC单元408内)中。与此独立的,缓存器状态监视器416中的定时器决定什么时候检查所述声卡缓存器的状态。如果该声卡缓存器中的数据量高于规定的阈值,则什么也不做。相反,如果所述声卡缓存器中数据的数量低于所述阈值,则向所述JB和PLC单元408请求数据。如果在所述抖动缓存器中存在数据,要不解码该数据,要不执行包丢失隐蔽操作以产生数据。然后,缓存器状态监视器416将该数据放置到所述声卡缓存器420中。上述阈值适于对付例如不可靠的操作系统定时器和来自所述声卡420的不准确播放状态报告。
在这个实施例中,所述适应的目的是在不受播放欠载运行损害的情况下具有尽可能低的一个阈值。欠载运行的风险是随着系统临时精度和系统负载而变化的,所以,这些和其它因素将影响所述阈值可以被设置得有多低。在某些场合下将使用实验和误差来确定用于各种硬件和软件结构的所述阈值。在某些实施例中,所述欠载运行的数量将被监视并据此调节所述阈值。所述阈值被设置得不必要的低将导致欠载运行的风险,而将所述阈值设置得不需要的高将导致增加延迟。
所述定时器间隔触发所述缓存器状态监视器416去检查所述声卡缓存器。这个间隔定时器具有某些设计条件。第一个条件是所述定时器间隔必须小于从所述JB和PLC单元408正常请求并放置在所述声卡缓存器中的媒体量的播放时间。第二个设计条件是所述定时器间隔必须小于所述声卡420播放从所述JB和PLC单元408接收的数据量所占用的时间。例如,当来自所述JB和PLC单元408的媒体请求返回10毫秒的声音段时,所述间隔定时器将触发所述缓存器状态监视器416每次检查所述声卡缓存器的时间小于10毫秒。如果所述间隔定时器每次执行的时间大于10毫秒,那么,所述声卡中的缓存器最终将缺少媒体。低定时器间隔虽然防止了欠载运行,但可能不必要地增加了系统的负载。由于块尺寸是10毫秒,所以,在各实施例中使用的定时器间隔的范围为2-5毫秒。
如上面结合图1和2所解释的,在所述简单发射机和简单接收机处的不同取样速率和/或用于抖动缓存和声卡播放的不同时钟将引起“时钟偏移”的问题。相反,由于整体组合的JB和PLC单元408和监视声卡缓存器状态的独立功能以及只有当声卡需要时才请求更多媒体,所以,图4所示的实施例不受这种问题的影响。缓存器状态监视器416将声卡缓存器中媒体的数量与一个阈值进行比较。如果所述媒体量少于所述阈值,则从所述JB和PLC单元408中请求更多的数据并写入到所述声卡缓存器中。在这个实施例中,所述声卡缓存器中的阈值量是等待播放的被缓存声音的50毫秒。在其它实施例中,这个阈值的范围是25-150毫秒。由此,这种机制保证了在所述声卡中总是有媒体去播放,同时也保证了在所述声卡缓存器中决不会有多于所述阈值加所述块尺寸的量。这样,参照图2所描述的两个问题,即欠载运行和声卡缓存器被填充的越来越多的问题借此可以被避免。
在某些实施例中,触发读来自所述抖动缓存器的另一块的声卡缓存器中的数据阈值是一个自适应阈值。该触发器阈值被设置得太高将导致增加延迟和设置得太低将导致声卡缓存器被抽空而欠载运行。如果声卡支持这种特性的话,那么,可以利用诸如声卡的状态或通过监视声卡输出的多种方式检测欠载运行。在具有自适应阈值的实施例中,所述触发阈值初始被设置为一个高值。如果存在欠载运行,那么,所述触发阈值被升高。如果不存在欠载运行,则该阈值继续降低,直到存在欠载运行为止。当检测到欠载运行时,所述触发阈值被升高和不再继续降低。如果升高后的阈值仍然引起欠载运行,那么,该阈值再次升高。一旦自适应获得一个触发阈值并能够在一个时间周期内无欠载运行地可靠工作,那么,该阈值可以保留以为该计算机将来所使用。可以周期地测试所述触发阈值以确定所述计算机现在是否能够忍受较低的触发阈值。
由于监视缓存器状态功能416仅在需要时将媒体传送给所述声卡,所以,所述JB和PLC单元408将依据在传送者和接收机之间的取样速率失谐接收多于或少于它传送给所述声卡的媒体。因此,组合的JB和PLC单元408被设计成能够在播放速率的基础上修改从所接收包中产生的媒体量。例如,可以在所述JB中存在不适当数据的任一时刻产生额外的取样,以满足对一个数据块的触发阈值需求。这个独特的特性被用于避免所述JB被数据所填满或缺少数据,由此导致具有很小与所丢失取样的重建相关的知觉度。这样,组合的JB和PLC单元408通过不重建丢失的取样在同时需要和试图最小化缓存器尺寸时总是能够传送数据,直到它们被实际请求为止。因此,上面的设计与在打包音频传送者和打包音频接收者之间存在可能不同的时钟和取样速率无关。
参考图5,该图示出了用于将数据馈送给播放设备的处理实施例500的流程。使用执行该处理的计算机的硬件或软件构成定时器间隔。在这个实施例中,所述定时器间隔是3毫秒。在步骤504,一旦经过了定时间隔,则开始重复处理500。在步骤508,所述声卡被询问以确定所述声卡缓存器的状态。该声卡缓存器中的最小量被用做一个阈值以从所述JB和PLC单元408中请求附加的数据。设置这个最小阈值,以使得所述声卡在在经过该处理500添加更多的数据之前不缺少数据。例如,所述声卡缓存器将保持30毫秒的数据。所述阈值将被设置为当在所述声卡缓存器中剩余的数据少于10毫秒数据时被触发。
在步骤512处确定所述声缓存器是否不低于一个阈值,在步骤516复位所述间隔定时器并再次可开始处理500。另外,如果在步骤512处所述声卡缓存器低于所述阈值,处理继续到步骤520,在这里,从所述JB和PLC单元408请求数据块。所述块被根据从包网络402接收的包格式化。在某些情况下,该包中的声音量多于所述包尺寸,而在其它情况下,则具有相反的情况。在所述请求时,由于某些包可能丢失或还没有接收到,所以,所述抖动缓存器不可能具有从包网络接收的所有数据块。在某些块仍然被丢失的情况下,必须由所述PLC使用例如0插入或插补的任何数量的算法进行重建。在步骤528,所述数据块在经过处理步骤516的处理环路以开始处理500之前被写入到所述声卡缓存器。
下面参看图6,该图示出了用于从包网络402接收数据并将该数据存储到一个抖动缓存器中的处理实施例600。该处理的描述部分始于步骤604,在这里,从所述网络接收一个包。在这个实施例中,网络402是因特网。在步骤608得到包通信设备404触发以处理,在这里,所述包被写入所述JB和PLC单元408。在步骤612,分析所写入的包以确定它在所述抖动缓存器中的临时位置。在步骤616,所述包被存储在所述抖动缓存器中的适当位置处。在某些实施例中,该抖动缓存器可以无序存储数据,但是应说明每个序列的临时定位,以便能够以适当的临时顺序重新得到它们。
可以使用本发明的若干变化和修改。例如,某些上述实施例可以使用软件执行。其它实施例可以部分或全部地由硬件执行。一种可能是图5所示的处理部分地由硬件执行,从而所述声卡指明何时它的缓存器经过硬件或软件中断所述操作系统而需要更多的数据。
在借助特定装置和方法描述了本发明原理的同时,能够很清楚地理解,这种描述仅仅是借助举例进行的,它并不限制本发明的范围。

Claims (15)

1.一种对源自一个包通信网络的音频媒体流进行处理的方法,该方法包括:
当多个包从所述包通信网络到达时接收它们,其中,所述多个包是所述音频媒体流的一部分;
监视媒体播放设备中的一个播放缓存器;
确定所述播放缓存器被填充得低于一个阈值,其特征在于还包括下述步骤:
将所接收的多个包存储到第一缓存器中;
以一定的时间间隔监视播放缓存器;
响应所述确定步骤通过从第一缓存器中请求数据、或者当在第一缓存器中没有数据时通过使用包丢失隐蔽操作创建数据,将多个媒体取样加载到播放缓存器中。
2.如权利要求1所述的对源自一个包通信网络的音频媒体流进行处理的方法,其中,所述阈值是自适应于特定计算机结构确定的。
3.如权利要求1所述的对源自一个包通信网络的音频媒体流进行处理的方法,其中,所述确定步骤包括下述步骤:
等待一个间隔发生;
确定所述播放缓存器被填充的程度;和
将所述播放缓存器被填充的程度与一个阈值相比较。
4.如权利要求1所述的对源自一个包通信网络的音频媒体流进行处理的方法,还包括将所述音频媒体流从第一格式转换为第二格式,其中,所述第二格式与所述媒体播放设备相兼容。
5.如权利要求4所述的对源自一个包通信网络的音频媒体流进行处理的方法,其中,所述第一格式和第二格式的区别在于取样速率、取样位速率和编码格式的至少一个。
6.如权利要求1所述的对源自一个包通信网络的音频媒体流进行处理的方法,还包括:
确定所述音频媒体流的哪一部分被丢失;和
重建被丢失的这部分。
7.如权利要求6所述的对源自一个包通信网络的音频媒体流进行处理的方法,其中,在首先列出的确定步骤之后执行一个重建步骤。
8.如权利要求1所述的对源自一个包通信网络的音频媒体流进行处理的方法,还包括在一个播放取样速率的基础上修改从所述多个包产生的数据取样量的步骤。
9.如权利要求1所述的对源自一个包通信网络的音频媒体流进行处理的方法,其中,所述媒体播放设备是一个计算机声音播放子系统。
10.如权利要求1所述的对源自一个包通信网络的音频媒体流进行处理的方法,其中,所述方法执行于连接到所述包通信网络上的便携计算机上。
11.如权利要求1所述的对源自一个包通信网络的音频媒体流进行处理的方法,其中,所述方法执行于连接到所述包通信网络上的个人计算机上。
12.如权利要求1所述的对源自一个包通信网络的音频媒体流进行处理的方法,其中,所述包通信网络使用因特网协议。
13.一种耦合到包通信网络上的音频播放系统,用于当接收到一个媒体流时播放该媒体流,该音频播放系统包括:
包通信装置,用于从包通信网络中接收多个包;
播放缓存器和播放来自该播放缓存器的媒体流的媒体播放装置;
缓存器状态监视器,用于确定播放缓存器被填充得低于一个阈值的时间,该系统的特征在于
第一缓存器,用于存储所接收到的多个包;
间隔定时器,用于触发所述缓存器状态监视器去检查所述播放缓存器;
所述缓存状态监视器在播放缓存器被填充得低于阈值时,从第一缓存器请求更多的媒体流;和
包丢失隐蔽单元,用于在缓存器状态监视器请求部分媒体流之后和当在第一缓存器中不存在数据时重新格式化这部分媒体流。
14.如权利要求13所述的耦合到包通信网络并用于播放所接收媒体流的的音频播放系统,还包括一个耦合到所述媒体播放设备上的声音变换器。
15.如权利要求13所述的耦合到包通信网络并用于播放所接收媒体流的音频播放系统,其中,根据所述多个包在所述媒体流中它们的播放顺序将它们安排在所述第一缓存器中。
CNB028196317A 2001-10-03 2002-10-03 网络媒体播放 Expired - Lifetime CN100334571C (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US32717701P 2001-10-03 2001-10-03
US60/327,177 2001-10-03
US10/262,531 US7453897B2 (en) 2001-10-03 2002-09-30 Network media playout
US10/262,531 2002-09-30
PCT/SE2002/001798 WO2003029990A1 (en) 2001-10-03 2002-10-03 Network media playout

Publications (2)

Publication Number Publication Date
CN1564984A CN1564984A (zh) 2005-01-12
CN100334571C true CN100334571C (zh) 2007-08-29

Family

ID=26949280

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB028196317A Expired - Lifetime CN100334571C (zh) 2001-10-03 2002-10-03 网络媒体播放

Country Status (6)

Country Link
US (1) US7453897B2 (zh)
EP (2) EP2328091B1 (zh)
CN (1) CN100334571C (zh)
AT (1) ATE507526T1 (zh)
DE (1) DE60239885D1 (zh)
WO (1) WO2003029990A1 (zh)

Families Citing this family (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7210062B2 (en) * 2001-03-14 2007-04-24 Mercury Computer Systems, Inc. Wireless communications systems and methods for nonvolatile storage of operating parameters for multiple processor based multiple user detection
US7161905B1 (en) * 2001-05-03 2007-01-09 Cisco Technology, Inc. Method and system for managing time-sensitive packetized data streams at a receiver
US7110422B1 (en) * 2002-01-29 2006-09-19 At&T Corporation Method and apparatus for managing voice call quality over packet networks
US20040181611A1 (en) * 2003-03-14 2004-09-16 Viresh Ratnakar Multimedia streaming system for wireless handheld devices
CN100379224C (zh) * 2003-11-06 2008-04-02 明基电通股份有限公司 媒体播放系统的数据控制的方法
CN1791055B (zh) * 2004-12-14 2010-04-07 腾讯科技(深圳)有限公司 一种减小数据包播放延时的方法
US8909807B2 (en) * 2005-04-07 2014-12-09 Opanga Networks, Inc. System and method for progressive download using surplus network capacity
US8949452B2 (en) * 2005-04-07 2015-02-03 Opanga Networks, Inc. System and method for progressive download with minimal play latency
US7894489B2 (en) * 2005-06-10 2011-02-22 Symmetricom, Inc. Adaptive play-out buffers and adaptive clock operation in packet networks
CN100391231C (zh) * 2005-12-06 2008-05-28 海信集团有限公司 一种可实现流媒体数据高速传输的家庭终端设备
JP2007235221A (ja) * 2006-02-27 2007-09-13 Fujitsu Ltd 揺らぎ吸収バッファ装置
US7783773B2 (en) 2006-07-24 2010-08-24 Microsoft Corporation Glitch-free media streaming
US9635315B2 (en) 2006-08-07 2017-04-25 Oovoo Llc Video conferencing over IP networks
US8856371B2 (en) * 2006-08-07 2014-10-07 Oovoo Llc Video conferencing over IP networks
US7768923B2 (en) * 2007-02-09 2010-08-03 Cisco Technology, Inc. Packet aging in a wireless network
KR101355798B1 (ko) 2007-05-30 2014-01-27 삼성전자주식회사 비실시간 전송 프로토콜에 따라 수신 중인 파일에 대한실시간 재생방법 및 이를 적용한 영상기기
KR101311931B1 (ko) 2007-02-14 2013-09-30 삼성전자주식회사 비실시간 전송 프로토콜에 따라 수신 중인 파일에 대한실시간 재생방법 및 이를 적용한 영상기기
EP1962468B1 (en) * 2007-02-14 2013-11-20 Samsung Electronics Co., Ltd. Apparatus and Method for Processing Data
US8005466B2 (en) * 2007-02-14 2011-08-23 Samsung Electronics Co., Ltd. Real time reproduction method of file being received according to non real time transfer protocol and a video apparatus thereof
US8214453B2 (en) * 2007-03-14 2012-07-03 Steven Charles Estes Concept and associated device enabling multi-camera video and audio recording for synchronization with long term ambulatory electroencephalography (EEG) in the home, office, or hospital environment
FR2916925B1 (fr) * 2007-05-30 2009-07-17 Alcatel Lucent Sas Procede et dispositif de tamponnage de paquets de donnees transmis via une communication plesiochrone.
US8355338B2 (en) * 2009-07-14 2013-01-15 Hong Kong Applied Science And Technology Research Institute Co. Ltd. Method of processing sequential information in packets streamed over a network
CN102118645B (zh) * 2009-12-31 2014-12-10 康佳集团股份有限公司 一种设置在机顶盒上的mp3播放系统及控制方法
US9137051B2 (en) * 2010-12-17 2015-09-15 Alcatel Lucent Method and apparatus for reducing rendering latency for audio streaming applications using internet protocol communications networks
US9485533B2 (en) 2013-03-13 2016-11-01 Nagrastar Llc Systems and methods for assembling and extracting command and control data
US9647997B2 (en) 2013-03-13 2017-05-09 Nagrastar, Llc USB interface for performing transport I/O
USD758372S1 (en) 2013-03-13 2016-06-07 Nagrastar Llc Smart card interface
USD729808S1 (en) 2013-03-13 2015-05-19 Nagrastar Llc Smart card interface
USD759022S1 (en) 2013-03-13 2016-06-14 Nagrastar Llc Smart card interface
US9888283B2 (en) * 2013-03-13 2018-02-06 Nagrastar Llc Systems and methods for performing transport I/O
GB2521883B (en) * 2014-05-02 2016-03-30 Imagination Tech Ltd Media controller
USD780763S1 (en) 2015-03-20 2017-03-07 Nagrastar Llc Smart card interface
USD864968S1 (en) 2015-04-30 2019-10-29 Echostar Technologies L.L.C. Smart card interface
MX2024010315A (es) * 2022-02-28 2024-08-28 Arris Entpr Llc Metodo de medicion del rendimiento de la retencion de tiempo en un sistema r-phy.

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5297139A (en) * 1991-06-19 1994-03-22 Hitachi, Ltd. Data communication system
CN1115547A (zh) * 1994-01-18 1996-01-24 大宇电子株式会社 解码系统中的自适应位流分离装置
WO1996015598A1 (en) * 1994-11-10 1996-05-23 Vocaltec, Inc. An audio transceiver

Family Cites Families (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4945548A (en) * 1988-04-28 1990-07-31 Digital Equipment Corporation Method and apparatus for detecting impending overflow and/or underrun of elasticity buffer
US5127001A (en) * 1990-06-22 1992-06-30 Unisys Corporation Conference call arrangement for distributed network
AU1572995A (en) 1994-02-11 1995-08-29 Newbridge Networks Corporation Method of dynamically compensating for variable transmission delays in packet networks
US5793980A (en) * 1994-11-30 1998-08-11 Realnetworks, Inc. Audio-on-demand communication system
US5673416A (en) * 1995-06-07 1997-09-30 Seiko Epson Corporation Memory request and control unit including a mechanism for issuing and removing requests for memory access
WO1997004543A2 (en) * 1995-07-19 1997-02-06 Fujitsu Network Communications, Inc. Allocated and dynamic switch flow control
US5889764A (en) * 1995-08-31 1999-03-30 Intel Corporation Low-latency multi-party audio chat
US5983278A (en) * 1996-04-19 1999-11-09 Lucent Technologies Inc. Low-loss, fair bandwidth allocation flow control in a packet switch
US6366959B1 (en) * 1997-10-01 2002-04-02 3Com Corporation Method and apparatus for real time communication system buffer size and error correction coding selection
US6912224B1 (en) * 1997-11-02 2005-06-28 International Business Machines Corporation Adaptive playout buffer and method for improved data communication
US6167032A (en) * 1997-11-07 2000-12-26 International Business Machines Corporation System and method for avoiding host transmit underruns in a communication network
US6480667B1 (en) * 1997-12-23 2002-11-12 Intel Corporation Method of time shifting to simultaneously record and play a data stream
US6092108A (en) * 1998-03-19 2000-07-18 Diplacido; Bruno Dynamic threshold packet filtering of application processor frames
US6512761B1 (en) * 1999-02-02 2003-01-28 3Com Corporation System for adjusting billing for real-time media transmissions based on delay
WO2000062501A2 (en) * 1999-04-13 2000-10-19 Broadcom Corporation Gateway with voice
US6665751B1 (en) * 1999-04-17 2003-12-16 International Business Machines Corporation Streaming media player varying a play speed from an original to a maximum allowable slowdown proportionally in accordance with a buffer state
WO2000063883A1 (en) * 1999-04-19 2000-10-26 At & T Corp. Method and apparatus for performing packet loss or frame erasure concealment
GB2349296B (en) * 1999-04-21 2001-04-04 3Com Corp Reduction of imbalance in transmit traffic queues in a network switch
US6625656B2 (en) * 1999-05-04 2003-09-23 Enounce, Incorporated Method and apparatus for continuous playback or distribution of information including audio-visual streamed multimedia
US6658027B1 (en) * 1999-08-16 2003-12-02 Nortel Networks Limited Jitter buffer management
FI108692B (fi) * 1999-12-30 2002-02-28 Nokia Corp Menetelmä ja laite datapakettien prosessoinnin ajoittamiseksi
GB2358558B (en) * 2000-01-18 2003-10-15 Mitel Corp Packet loss compensation method using injection of spectrally shaped noise
GB2360178B (en) * 2000-03-06 2004-04-14 Mitel Corp Sub-packet insertion for packet loss compensation in Voice Over IP networks
US6775301B1 (en) * 2000-03-08 2004-08-10 3Com Corporation System and method for compensating for channel jitter
US7246057B1 (en) 2000-05-31 2007-07-17 Telefonaktiebolaget Lm Ericsson (Publ) System for handling variations in the reception of a speech signal consisting of packets
US7373413B1 (en) * 2000-06-28 2008-05-13 Cisco Technology, Inc. Devices and methods for minimizing start up delay in transmission of streaming media
US7161905B1 (en) * 2001-05-03 2007-01-09 Cisco Technology, Inc. Method and system for managing time-sensitive packetized data streams at a receiver
US20020172352A1 (en) * 2001-05-16 2002-11-21 Ofir Mecayten Non-embedded acoustic echo cancellation
US6977948B1 (en) * 2001-08-13 2005-12-20 Utstarcom, Inc. Jitter buffer state management system for data transmitted between synchronous and asynchronous data networks

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5297139A (en) * 1991-06-19 1994-03-22 Hitachi, Ltd. Data communication system
CN1115547A (zh) * 1994-01-18 1996-01-24 大宇电子株式会社 解码系统中的自适应位流分离装置
WO1996015598A1 (en) * 1994-11-10 1996-05-23 Vocaltec, Inc. An audio transceiver

Also Published As

Publication number Publication date
ATE507526T1 (de) 2011-05-15
EP2328091A2 (en) 2011-06-01
EP1440375B1 (en) 2011-04-27
EP1440375A1 (en) 2004-07-28
DE60239885D1 (de) 2011-06-09
US20030091160A1 (en) 2003-05-15
WO2003029990A1 (en) 2003-04-10
US7453897B2 (en) 2008-11-18
EP2328091A3 (en) 2012-03-28
CN1564984A (zh) 2005-01-12
EP2328091B1 (en) 2015-12-23

Similar Documents

Publication Publication Date Title
CN100334571C (zh) 网络媒体播放
US20200153881A1 (en) Streaming media delivery system
US7359324B1 (en) Adaptive jitter buffer control
US7716358B2 (en) Streaming media buffering system
US7450601B2 (en) Method and communication apparatus for controlling a jitter buffer
CN1464685A (zh) 一种在网络终端缓冲区中处理音频流回放的方法
CN101466034A (zh) 发送、播放流媒体数据的方法和装置及流媒体点播系统
US8595372B2 (en) Streaming media buffering system
JP2005269632A (ja) 通信端末装置、電話データ受信方法、通信システムおよびゲートウェイ
US20050226233A1 (en) Method and system for facilitating network troubleshooting
KR20050094036A (ko) 최소의 두드러진 아티팩트들을 갖는 드리프트된 데이터스트림들의 재동기화
US20030208359A1 (en) Method and apparatus for controlling buffering of audio stream
CN101335796B (zh) 解码调度方法和装置
JPWO2006040827A1 (ja) 送信装置、受信装置、並びに再生装置
KR20090022615A (ko) Vod 스트리밍 서비스를 제공하는 방법과 그를 위한시스템, 서버 및 사용자 단말기
JP2006115305A (ja) 異なるメディアデータにおけるパケット多重化フレームの生成タイミングを制御する送信方法、送信プログラム及び送信装置
JPH01175432A (ja) パケット交換の遅延差吸収方式
JPH11352998A (ja) 音声復号装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
ASS Succession or assignment of patent right

Owner name: HUANQIU IP STEREO EUROPEAN CO.,LTD.

Free format text: FORMER OWNER: GLOBAL IP SOUND AB

Owner name: GLOBAL IP SOUND AB

Effective date: 20050121

C10 Entry into substantive examination
C41 Transfer of patent application or patent right or utility model
SE01 Entry into force of request for substantive examination
TA01 Transfer of patent application right

Effective date of registration: 20050121

Address after: Stockholm

Applicant after: Global IP Sound AB

Co-applicant after: Global IP Sound AB

Address before: Stockholm

Applicant before: Global IP Sound AB

C14 Grant of patent or utility model
GR01 Patent grant
ASS Succession or assignment of patent right

Free format text: FORMER OWNER: GLOBAL IP SOLUTIONS INC. (US)

Owner name: GOOGLE INC.

Free format text: FORMER OWNER: GLOBAL IP SOLUTIONS INC.

Effective date: 20111121

C41 Transfer of patent application or patent right or utility model
C56 Change in the name or address of the patentee

Owner name: GLOBAL IP SOLUTIONS INC.

Free format text: FORMER NAME: GLOBAL IP SOUND AB

CP01 Change in the name or title of a patent holder

Address after: Stockholm

Co-patentee after: GLOBAL IP SOLUTIONS Inc.

Patentee after: Global IP Solutions Gips AB

Address before: Stockholm

Co-patentee before: Global IP Sound AB

Patentee before: Global IP Sound AB

TR01 Transfer of patent right

Effective date of registration: 20111121

Address after: California, USA

Patentee after: GOOGLE Inc.

Address before: Stockholm

Co-patentee before: Global IP Solutions Inc.

Patentee before: Global IP Solutions Gips AB

C56 Change in the name or address of the patentee
CP01 Change in the name or title of a patent holder

Address after: California, USA

Patentee after: GOOGLE Inc.

Address before: California, USA

Patentee before: Google Inc.

CP01 Change in the name or title of a patent holder
CP01 Change in the name or title of a patent holder

Address after: California, USA

Patentee after: Google Inc.

Address before: California, USA

Patentee before: Google Inc.

CX01 Expiry of patent term
CX01 Expiry of patent term

Granted publication date: 20070829