CN1934646A - 使音频处理模块同步的方法和系统 - Google Patents

使音频处理模块同步的方法和系统 Download PDF

Info

Publication number
CN1934646A
CN1934646A CNA2005800093838A CN200580009383A CN1934646A CN 1934646 A CN1934646 A CN 1934646A CN A2005800093838 A CNA2005800093838 A CN A2005800093838A CN 200580009383 A CN200580009383 A CN 200580009383A CN 1934646 A CN1934646 A CN 1934646A
Authority
CN
China
Prior art keywords
processing modules
audio processing
voice data
clock source
audio
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
CNA2005800093838A
Other languages
English (en)
Other versions
CN1934646B (zh
Inventor
斯蒂芬·G·霍姆斯
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.)
Nvidia Corp
Original Assignee
Nvidia Corp
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 Nvidia Corp filed Critical Nvidia Corp
Publication of CN1934646A publication Critical patent/CN1934646A/zh
Application granted granted Critical
Publication of CN1934646B publication Critical patent/CN1934646B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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
    • G11B20/10527Audio or video recording; Data buffering arrangements
    • 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
    • G11B20/10009Improvement or modification of read or write signals
    • G11B20/10037A/D conversion, D/A conversion, sampling, slicing and digital quantisation or adjusting parameters thereof
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/16Sound input; Sound output
    • 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
    • G11B20/10527Audio or video recording; Data buffering arrangements
    • G11B2020/10537Audio or video recording
    • G11B2020/10546Audio or video recording specifically adapted for audio data
    • 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
    • G11B20/10527Audio or video recording; Data buffering arrangements
    • G11B2020/1062Data buffering arrangements, e.g. recording or playback buffers

Abstract

本发明提供一种具有完全独立的音频处理模块的音频系统。所述音频系统包含复数个音频处理模块、一时钟管理器、一抽样率转换器和一缓冲器。所述音频处理模块通信地耦合到所述时钟管理器和所述缓冲器。所述抽样率转换器通信地耦合到所述时钟管理器和所述缓冲器。所述缓冲器用于存储由所述音频处理模块产生并消耗的音频数据。所述时钟管理器用于确定每一音频处理模块的时钟源。所述时钟管理器还用于将所述音频处理模块和所述抽样率转换器配置成每一音频处理模块的所述时钟源的一函数。当一第一与第二音频处理模块的所述时钟源不同时,所述抽样率转换器用于使由所述第一音频处理模块产生的音频数据的一流速与由所述第二音频处理模块消耗的音频数据的一流速同步。

Description

使音频处理模块同步的方法和系统
技术领域
本文涉及一种使音频处理模块同步的方法和系统。
背景技术
利用遗留计算装置(Legacy computing device)来创建文档、电子数据表和电子邮件。这些计算装置提供单声道声音,主要利用所述声音来指示系统事件的发生。现在计算装置还用来玩游戏、因特网上冲浪、收听音乐、观看电影和类似用途。因此,常规的计算装置提供多信道音频能力。
参看图1,展示根据常规技术计算机系统的音频部分的方框图。如图1所描绘,计算机包含处理器110、存储器120、音频系统130和输出装置(例如,扬声器)140。音频系统130通信地耦合在处理器110、存储器120与输出装置140之间。
处理器110提供操作系统和一个或一个以上应用程序。所述应用程序的一者或一者以上可促使处理器110提供一个或一个以上声音。处理器110向音频系统130发布命令,所述命令含有将要播放的一个或一个以上波表在存储器120中的位置(例如,地址)和将要用来播放声音的参数。波表由声音的一系列数字样本组成。参数可包含将要从波表产生的声音的频率(例如,音调)、描述随着时间的过去声音的振幅的包络(例如,起声、维持、衰落),和调制频率的颤音。音频系统130响应于来自处理器110的命令而从存储在存储器120中的波表检索一个或一个以上声音。音频系统130根据参数来处理声音,藉此产生音频数据。音频系统130接着将音频数据转换为可在给定的输出装置(例如,扬声器)140上播放的模拟输出。
预期计算机用户将继续需求用于传递高清晰度视频、高清晰度音频、流动视频、流动音频、多人游戏和/或其它随选音频和视频内容的改进的音频系统。因此,音频系统需要提供不断增强的音频处理能力,同时使处理器利用和总线流通量最小化。因此,需要一种能够处理来自复数个应用程序的多个声音的改进的音频系统,所述声音可在处理器利用减小、总线流通量的产生减小且等待时间缩短的情况下输出到任何数目的输出装置。
发明内容
本揭示案的实施例针对一种能够处理来自复数个应用程序的多个声音的改进的音频系统,所述声音可在处理器利用减小、总线流通量的产生减小且等待时间缩短的情况下输出到任何数目的输出装置。在一个实施例中,音频系统包含复数个音频处理模块、时钟管理器、抽样率转换器和缓冲器。音频处理模块通信地耦合到时钟管理器和缓冲器。抽样率转换器通信地耦合到时钟管理器和缓冲器。缓冲器为存储由音频处理模块产生并消耗的音频数据作准备。时钟管理器为确定每一音频处理模块的时钟源作准备。时钟管理器也为将音频处理模块和抽样率转换器配置成每一音频处理模块的时钟源的函数作准备。当第一与第二音频处理模块的时钟源不同时,所述抽样率转换器为使由第一音频处理模块产生的音频数据的流速与由第二音频处理模块消耗的音频数据的流速同步作准备。
在另一实施例中,一种使音频系统的音频处理模块同步的方法,包含当一组音频处理模块利用共同的时钟源时,配置相关组的音频处理模块的第一者(例如,音频硬件加速器)以便通过缓冲器将第一组音频数据传送到相关组的音频处理模块的第二者(例如,音频硬件渲染器)。因此,当发现两个或两个以上装置具有相同时钟源(例如,硬件时钟)时,软件接着可回避在装置之间引入速率控制或抽样率转换器以防止数据的下溢或溢出的需要。当所述组音频处理模块不利用共同的时钟源时,所述方法包含配置相关组的音频处理模块的第一者以便将第一组音频数据存储在第一缓冲器中。抽样率转换器经配置以便从第一缓冲器接收第一组音频数据,并将第二组音频数据存储在第二缓冲器中。抽样率转换器还经配置以便使进入第一缓冲器中的第一组音频数据的流率与离开第二缓冲器的第二组音频数据的流率同步。相关组的音频处理模块的第二者经配置以便当所述组音频处理模块不利用共同的时钟源时从第二缓冲器接收第二组音频数据。
在另一实施例中,一种使音频处理模块同步的方法,包含当相关组的音频处理模块共享共同的时钟源时在第一模式下操作音频系统。第一模式包含将由相关组的音频处理模块的第一者产生的音频数据存储在共享缓冲器中。第一模式进一步包含从共享缓冲器接收由相关组的音频处理模块的第二者消耗的音频数据。当相关组的音频处理模不共享共同的时钟源时,音频系统在第二模式下操作。第二模式包含将由相关组的音频处理模块的第一者产生的音频数据存储在输入缓冲器中,和从输出缓冲器接收由相关组的音频处理模块的第二者消耗的音频数据。第二模式进一步包含使存储在输入缓冲器中的音频数据的流率与从输出缓冲器接收的音频数据的流率同步。
在另一实施例中,一种计算装置实施的音频系统包含存储器控制器集线器、处理器、主存储器和音频系统。处理器、主存储器和音频系统每一者通信地耦合到存储器控制器集线器。音频系统包含时钟管理器、复数个音频处理模块、抽样率转换器和缓冲器。复数个音频处理模块通信地耦合到时钟管理器和缓冲器。抽样率转换器通信地耦合到时钟管理器和缓冲器。
本揭示案的实施例有利地允许音频处理模块充当完全独立的装置。本揭示案的实施例有利地当音频处理模块不共享共同的时钟源时使音频处理模块同步。当音频处理模块共享共同的时钟源时,本揭示案的实施例可排除使音频处理模块同步的开销。
附图说明
附图的图式中以举例的方式而不以限定的方式说明本揭示案,附图中相似参考标号表示类似元件,且其中:
图1展示根据现有技术计算机系统的音频部分的方框图。
图2展示根据本揭示案的一个实施例电子音频系统的方框图。
图3展示根据本揭示案的一个实施例包含一个或一个以上加速器和渲染器的音频系统的方框图。
图4展示根据本揭示案的一个实施例包含一个或一个以上局域级(local stage)和一全局级(global stage)的音频系统的方框图。
图5展示根据本揭示案的一个实施例使音频处理模块同步的方法的流程图。
图6展示用于实施本揭示案的实施例的示范性计算平台。
具体实施方式
现将详细参照本揭示案的实施例,其实例在附图中予以说明。虽然将结合这些实施例来描述本揭示案,但应了解,不希望它们将本揭示案限于这些实施例。相反,希望本揭示案涵盖可包含在由所附权利要求书界定的本揭示案范围内的替代形式、修改和等效物。此外,在本揭示案的以下具体实施方式中,陈述大量特定细节以便提供对本揭示案的彻底理解。然而,应了解,可在没有这些特定细节的前提下实践本揭示案。在其它情况下,为了不会不必要地混淆本揭示案的各方面,并未详细描述众所周知的方法、程序、组件和电路。
参看图2,展示根据本揭示案的一个实施例电子音频系统200的方框图。如图2所描绘,音频系统200耦合在一个或一个以上应用程序(例如,音乐播放器、游戏和/或类似物)210、212、214与一个或一个以上输出装置(例如,扬声器、PCI控制器、USB控制器、火线控制器和/或类似物)290、292之间。通常,特定应用程序210产生一个或一个以上声音。所述声音由音频系统200处理并输出到适当的输出装置290。
音频系统200包含复数个音频处理模块220、225、240、245、时钟管理器260、抽样率转换器270和缓冲器280。音频处理模块220、225、240、245可通信地耦合到时钟管理器260并耦合到缓冲器280。抽样率转换器270可通信地耦合到时钟管理器260并耦合到缓冲器280。
在一个实施方案中,如下文参看图3详细描述,第一音频处理模块可为加速器模块,且第二音频处理模块可为渲染器模块。在另一实施方案中,如下文参看图4详细描述,第一音频处理模块可为局域极,且第二音频处理模块可为全局级。
一个或一个以上音频处理模块(例如,加速器模块和渲染器模块,或局域极和全局级)220、245可彼此关联以便处理由特定应用程序210产生的声音。当相关的音频处理模块220、245正由于不同的时钟源230、255而操作时,音频数据的产生和消耗的速率将不同。即使两个音频处理模块220、245正由于以相同速率操作的不同的时钟源而操作,也将存在某一偏差(例如,48.1KHz和47.9KHz)。当音频处理模块220、245正由于相同的时钟源230而操作时,时钟率准确地匹配(例如,48KHz)。
根据本揭示案的实施例,时钟管理器260将音频处理模块220、245和抽样率转换器270配置成音频处理模块220、245的每一者的时钟源230、250的函数。如果相关的音频处理模块220、245共享共同的时钟源230,那么音频处理模块220、245分别由时钟管理器260配置以便在共享缓冲器282中存储并检索音频数据。如果相关的音频处理模块220、245不由于共同的时钟源230、255而操作,那么第一音频处理模块220由时钟管理器260配置以便将其输出音频数据存储在输入缓冲器284中。第二音频处理模块245由时钟管理器260配置以便从输出缓冲器286接收音频数据。抽样率转换器270由时钟管理器260配置以便通过在音频数据中插入和/或删除额外样本来修改音频数据,藉此使存储在输入缓冲器284中的音频数据的流率与从输出缓冲器286接收的音频数据的流率同步。
或者,抽样率转换器270可通过监控共享缓冲器的输入指针和共享缓冲器的输出指针来提供产生/消耗速率匹配。抽样率转换器270可视输入和输出指针值而定促使第一音频处理模块220和/或第二音频处理模块245加速或减速。因此,第二音频处理模块245的输出率与第一音频处理模块220的输入率匹配,使得两者保持锁定在同步状态。
应了解,在另一实施方案中,复数个音频处理模块220、225可产生对应于每一音频处理模块220、225所接收声音的音频数据。单个音频处理模块245可消耗所述音频数据。在另一实施方案中,单个音频处理模块220可产生对应于接收到的一个或一个以上声音的音频数据。复数个音频处理模块240、245可消耗所述音频数据。在又一实施方案中,第一复数个音频处理模块220、225可产生对应于接收到的一个或一个以上声音的音频数据。第二复数个音频处理模块240、245可消耗所述音频数据。
现参看图3,其展示根据本揭示案的一个实施例包含一个或一个以上加速器320、325和渲染器340、345的音频系统300的方框图。如图3所描绘,音频系统300可耦合在一个或一个以上应用程序310、315与一个或一个以上输出装置390之间。通常,特定应用程序310产生一个或一个以上声音。所述声音由音频系统300处理并输出到适当的输出装置390。
音频系统300可包含复数个音频处理模块320、325、340、345、时钟管理器360、抽样率转换器370和缓冲器380。音频处理模块的一者或一者以上可为加速器模块320、325。音频处理模块的一者或一者以上可为渲染器模块340、345。特定加速器模块320通常与特定渲染器模块340关联以便处理来自特定应用程序310的声音。相关的加速器和渲染器模块320、340可通信地耦合到时钟管理器360和缓冲器380。抽样率转换器370可通信地耦合到时钟管理器360和缓冲器380。
分别由相关的加速器和渲染器模块320、340产生或消耗的音频数据的流率是驱动给定的模块的时钟的函数。每一相关的时钟可来自不同的时钟源330、350,或相关的时钟的一者或一者以上可来自相同的时钟源330。如果时钟源330对于一组相关的加速器和渲染器模块320、340来说是相同的,那么所产生与所消耗的音频数据的速率将相等。如果时钟源330、350对于一组相关的加速器和渲染器模块320、340来说是不同的,那么所产生与所消耗的音频数据的速率将不相等。即使两个时钟源330、350正以相同的频率操作,也将存在操作频率上的某一偏差,且因此相关的加速器和渲染器模块320、340的产生和消耗的速率将不同。只有当加速器和渲染器模块320、340正由于相同的时钟源330而操作时,操作频率才会匹配,且因此相关的模块320、340之间的产生和消耗的速率也将匹配。
因此,时钟管理器360将确定每一相关的加速器和渲染器模块320、340的时钟源330、350。在一个实施方案中,每一加速器和渲染器模块320、340向时钟管理器360登记全局唯一识别符(GUID)。每一GUID识别特定加速器或渲染器模块的时钟源。时钟管理器360接着部分地基于相关的加速器模块320的时钟源330和相关的渲染器模块340的时钟源350来配置每一相关的加速器和渲染器模块320、340以及抽样率转换器370。
当发现相关的加速器和渲染器模块320、340使用相同的时钟源330(例如,48KHz)时,时钟管理器360配置加速器模块320在第一模式下操作。在第一模式下,加速器模块320将其音频数据输出到缓冲器382的共享部分。相关的渲染器模块340经配置以便从缓冲器382的共享部分接收其输入音频数据。因此,加速器模块320将音频数据直接输出到缓冲器382的共享部分,渲染器模块340从缓冲器382的共享部分消耗音频数据。在第一模式下,加速器模块320输出音频数据与渲染器模块340输入音频数据之间的等待时间约为2ms或更少。在一个实施方案中,缓冲器382的共享部分可约为1-10KB。
当相关的加速器和渲染器模块320、340使用不同的时钟源330、350时,时钟管理器360配置模块320、340和抽样率转换器370在第二模式下操作。在第二模式下,相关的加速器模块320经配置以便将其音频数据输出到缓冲器384的输入部分。相关的渲染器模块340经配置以便从缓冲器386的输出部分接收其输入音频数据。抽样率转换器370经配置以便将进入缓冲器384的输入部分的流率与离开缓冲器386的输出部分的流率匹配。因此,抽样率转换器370从缓冲器384的输入部分检索音频数据,且可引入和/或排除额外的数据样本。抽样率转换器370接着将经修改的音频数据输出到缓冲器386的输出部分。因此,加速器模块320的输出率与渲染器模块340的输入率匹配,使得两者保持锁定在同步状态。在第二模式下,当利用抽样率转换时,从加速器模块320输出音频数据与渲染器模块340进行输入之间的等待时间通常约为15-20ms。在一个实施方案中,缓冲器384、386的输入部分和输出部分每一者可约为100-200KB。
应了解,音频系统可实施在硬件、软件、韧件或其组合中。举例来说,加速器模块、时钟管理器和抽样率转换器可实施在软件中。渲染器模块可包含实施在软件中的渲染器驱动器和渲染器硬件(例如,编码器/解码器(CODEC))。缓冲器可实施在系统存储器(例如,动态随机访问存储器(DRAM))中。
尽管已参考音频输出流(例如,重播)描述了音频系统300的操作,但应了解,音频系统300也可为处理输入流(例如,记录)作准备。举例来说,渲染器模块(例如,CODEC)345可从输入装置(例如,麦克风)395接收模拟音频信号。渲染器模块345可将模拟音频信号转换成数字音频数据,数字音频数据存储在缓冲器380中。时钟管理器360将加速器模块325、渲染器模块345、抽样率转换器370和缓冲器380配置成渲染器和加速器模块325、345的时钟源330、350的函数。如果渲染器和加速器模块325、345不由于共同的时钟源而操作,那么插入抽样率转换器以便使加速器与渲染器模块325、345之间的数据的流率同步。加速器模块325从缓冲器380接收音频数据,并根据给定的应用程序315来处理所述音频数据。接着通常将经处理的音频数据存储在主存储器中且/或存储在大容量存储装置(例如,硬盘驱动器)中供将来重播。
现参看图4,展示根据本揭示案的一个实施例包含一个或一个以上局域级423、425和全局级427的音频系统的方框图。如图4所描绘,音频系统包含加速器模块420、时钟管理器460、抽样率转换器470、缓冲器480和渲染器(未图示)。加速器模块420包含一个或一个以上局域级423、425和全局级427。局域级423、425和全局级427每一者通信地耦合到时钟管理器460和缓冲器480。抽样率转换器470通信地耦合到时钟管理器460和缓冲器480。时钟管理器460将局域级423、425、全局级427和抽样率转换器470配置成局域级423、425和全局级427的每一者的时钟源的函数。
局域级423、425和全局级427的每一者向时钟管理器460登记全局唯一识别符(GUID)。GUID识别每一局域级423、425和全局级427的时钟的来源。此后,一个或一个以上局域级423、425从一个或一个以上应用程序接收声音,并产生对应于一个或一个以上声音的音频数据。如果特定局域级423和全局级427共享共同的时钟源,那么局域级423和全局级427分别由时钟管理器460配置以便在缓冲器482的共享部分中存储并检索音频数据。如果特定局域级423和全局级427由于不同的时钟源而操作,那么时钟管理器460配置局域级423以便将其音频数据输出到缓冲器484的输入部分。全局级427经配置以便从缓冲器486的输出部分接收其输入音频数据。抽样率转换器470经配置以便从缓冲器484的输入部分接收音频数据并引入且/或排除额外的数据样本。抽样率转换器470接着将经修改的音频数据输出到缓冲器486的输出部分。因此,在局域级423与全局级427之间维持同步。
举例来说,应用程序(例如,视频游戏)可以是产生复数个声音(枪击、尖叫、火车等)。对应于应用程序的特定局域级423将复数个声音混合并将其输出到缓冲器480。当局域级423和全局级427不具有共同的时钟源时,抽样率转换器470使由局域级423产生的音频数据的流率与由全局级427消耗的音频数据的流率同步。否则,当级423、427具有共同的时钟源时,在不需要同步的情况下,局域级423将音频数据存储在缓冲器482的共享部分中,且全局级427消耗所述音频数据。全局级可提供对音频数据的处理,例如混响。由全局级427输出的音频数据可存储在缓冲器中供一个或一个以上渲染器模块消耗。
在另一实例中,缓冲器480存储由复数个局域级423、425的每一者产生并由全局级427消耗的音频数据。当一个或一个以上级不具有共同的时钟源时,抽样率转换器470使由局域级423、425产生的音频数据的流率与由全局级427消耗的音频数据的流率同步。否则,当级423、425、427具有共同的时钟源时,在不需要同步的情况下,局域级423、425将音频数据存储在缓冲器480中,且全局级427消耗所述音频数据。此后,全局级427将由每一局域级423、425产生的音频数据混合在一起以产生供输出(例如,由渲染器模块进行进一步处理)的音频数据。
尽管已参考音频输出流(例如,重播)描述了音频系统的操作,但应了解,音频系统也可为处理输入流(例如,记录)作准备。还应了解,渲染器模块还可包含一个或一个以上局域级和一全局级。
现参看图5,展示根据本揭示案的一个实施例使音频处理模块同步的计算机实施的方法的流程图。如图5所描述,在510处,所述方法以每一音频处理模块(例如,加速器、渲染器、局域级、全局级)向时钟管理器登记开始。登记过程包含识别每一音频处理模块的源时钟。在一个实施方案中,例如,音频处理模块的每一者通过提供全局唯一识别符(GUID)向时钟管理器登记。
在520处,时钟管理器确定相关组的音频处理模块的时钟是否来自相同时钟源。在一个实施方案中,每一加速器和渲染器模块的GUID识别其时钟源。类似地,每一局域和全局级的GUID识别其源时钟。
在530处,如果模块由于相同的时钟源而操作,那么时钟管理器配置相关的音频处理模块在第一模式下操作。在一个实施方案中,相关的加速器模块经配置以便将其音频数据输出到缓冲器的共享部分。相关的渲染器模块经配置以便从缓冲器的共享部分检索音频数据。类似地,局域级经配置以便将其音频数据输出到缓冲器的共享部分。全局级经配置以便从缓冲器的共享部分检索音频数据。
如果音频处理模块由于不同的时钟源而操作,那么本揭示案的时钟管理器配置相关的音频处理模块和抽样率转换器在第二模式下操作。在540处,当相关的音频处理模块不利用共同的时钟源时,产生音频的音频处理模块经配置以便通过缓冲器的输入部分将其音频数据传送到抽样率转换器。在一个实施方案中,加速器模块将音频数据存储在缓冲器的输入部分中。类似地,当局域和全局级不利用共同的时钟源时,局域级将音频数据存储在缓冲器的输入部分中。
在550处,抽样率转换器经配置以便使缓冲器的输入与输出部分之间的流率同步。在一个实施方案中,当相关的加速器和渲染器模块不利用共同的时钟源时,抽样率转换器从输入缓冲器检索音频数据。抽样率转换器监控加速器模块的音频数据产生的速率和渲染器模块的消耗的速率,并引入且/或排除额外的数据样本以便维持同步。类似地,抽样率转换器监控局域级的音频数据产生的速率和全局级的消耗的速率,并引入且/或排除额外的数据样本以便维持同步。在引入且/或排除额外的数据样本之后,抽样率转换器将音频数据输出到缓冲器的输出部分。
在图5的560处,消耗音频数据的音频处理模块经配置以便通过缓冲器的输出部分从抽样率转换器接收音频数据。在一个实施方案中,当加速器和渲染器模块不利用共同的时钟源时,相关的渲染器模块从缓冲器的输出部分接收音频数据。类似地,当局域和全局级不利用共同的时钟源时,全局级从缓冲器的输出部分接收音频数据。
现参看图6,展示用于实施本揭示案的实施例的示范性计算平台。尽管参考计算装置进行说明,但应了解,本发明实施例可实施在游戏控制台、便携式游戏系统、个人数字设备、组合式机顶盒/游戏控制台、智能电话,或其它移动电话、基于计算机的模拟器、便携式娱乐中心,或产生声音的类似装置中。如图6所描绘,示范性计算装置包含处理器(CPU)610、存储器控制器集线器(例如,北桥)615、主存储器620、图形处理器(GPU)625和输入/输出控制器集线器(例如,南桥)630。处理器610、图形处理器625、主存储器620和I/O集线器控制器集线器630可能通信地耦合到存储器控制器集线器615。或者,图形处理器625可实施成存储器控制器集线器615的组成部分(未图示)。示范性计算装置还可包含外围组件,例如显示器、键盘、定点装置、大容量数据存储装置(一个或一个以上)、扬声器(一个或一个以上)和类似物,它们通过可适用的总线635-655(PCI总线、USB、火线、以太网、ISA总线等)而耦合到输入/输出控制器集线器630。
存储器控制器集线器615为在处理器610、主存储器620、图形处理器625与输入/输出控制器集线器630之间传输信息和指令作准备。输入/输出控制器集线器630为在存储器控制器集线器615与由各种总线635-655连接的各种输入/输出装置之间传输信息和指令作准备。主存储器620为存储信息和指令作准备。处理器610处理信息和指令,藉此提供操作系统和一个或一个以上应用程序。类似地,图形处理器处理信息和指令,藉此提供供显示给用户的视频数据。
计算装置进一步包含根据本揭示案的上述实施例中的一者或一者以上的音频系统660。在一个实施方案中,音频系统660是输入/输出控制器集线器630的组成部分。音频系统660包含一个或一个以上音频处理模块、时钟管理器、抽样率转换器。每一音频处理模块可提供一个或一个以上功能,例如混合、多信道转换(例如,立体声、环绕声)、三维位置计算(例如,与头有关的转移功能(head related transfer function),高度、方向等)和各种效果(例如,齐声、混响、堵塞(obstruction)、阻塞(occlusion)、均衡、串音取消等)。
音频系统660的时钟管理器轮询音频处理模块以确定每一模块的时钟的来源。此后,音频处理模块的一者或一者以上(例如,加速器、局域级)可产生音频数据,同时一个或一个以上音频处理模块的(例如,加速器、局域级、渲染器、全局级)消耗所述音频数据。举例来说,第一音频处理模块产生对应于接收到的一个或一个以上声音的音频数据。第二音频处理模块消耗所述音频数据。如果第一和第二音频处理模块共享共同的时钟源,那么时钟管理器配置第一音频处理模块以便将产生的音频数据输出到缓冲器的共享部分。时钟管理器还配置第二音频处理模块以便从缓冲器的共享部分消耗音频数据。如果第一和第二音频处理模块由于不同的时钟源而操作,那么时钟管理器配置第一音频处理模块以便将产生的音频数据输出到缓冲器的输入部分。抽样率转换器由时钟管理器配置以便从缓冲器的输入部分检索音频数据,并引入或排除额外的数据样本以维持同步。抽样率转换器接着将音频数据输出到缓冲器的输出部分。当第一和第二音频处理模块由于不同的时钟源而操作时,时钟管理器还配置第二音频处理模块以便从缓冲器的输出部分消耗音频数据。
音频系统660的缓冲器可实施在主存储器(例如,共享存储器访问(SMA))620中。缓冲器的共享部分可约为1-10KB(例如,64个样本,其中每一样本为24位),而输入和输出部分每一者可约为100-500KB。尽管将缓冲器描述为包括共享部分、输入部分和输出部分,但应了解,根据音频系统660的操作模式,所述缓冲器可实施成复数个分离的缓冲器或实施成被划分的单个缓冲器。
尽管将音频系统660描述为输入/输出控制器集线器630的组成部分,但应了解,音频系统660可耦合到为音频系统660提供到达主存储器620的直接连接的任何元件。音频系统660也可实施成存储器控制器集线器的组成部分。音频系统660的实施也可分布在计算装置的上文提及的元件的一者或一者以上之间。音频系统660的实施也可分布在计算装置的上文提及的元件的一者或一者以上之间,并实施在驻存在主存储器620中且由处理器610、存储器控制器集线器615和/或输入/输出控制器集线器执行的信息和指令中。举例来说,加速器模块可实施在软件(例如,信息和指令)中,时钟管理器和抽样率转换器可实施成输入/输出控制器集线器630的组成部分,缓冲器可实施在主存储器620中,且渲染器模块可实施在音频控制器中。
因此,存储器控制器集线器615、图形处理器625、输入/输出控制器集线器630和音频系统660提供分布式处理平台。音频系统660通过卸载从处理器处处理并渲染的音频效果来有利地增强计算装置性能。此外,本揭示案的实施例有利地允许音频处理模块充当完全独立的装置。本揭示案的实施例有利地当音频处理模块不共享共同的时钟源时使音频处理模块同步。当音频处理模块共享共同的时钟源时,本揭示案的实施例可排除使音频处理模块同步的开销。
总之,本揭示内容的一些实施例提供一种具有完全独立的音频处理模块的音频系统。所述音频系统包含复数个音频处理模块、时钟管理器、抽样率转换器和缓冲器。音频处理模块通信地耦合到时钟管理器和缓冲器。抽样率转换器通信地耦合到时钟管理器和缓冲器。缓冲器用于存储由音频处理模块产生并消耗的音频数据。时钟管理器用于确定每一音频处理模块的时钟源。时钟管理器还用于将音频处理模块和抽样率转换器配置成每一音频处理模块的时钟源的函数。当第一与第二音频处理模块的时钟源不同时,抽样率转换器用于使由第一音频处理模块产生的音频数据的流速与由第二音频处理模块消耗的音频数据的流速同步。
为了说明和描述的目的,已提供对本揭示内容的特定实施例的以上描述。这些特定实施例并非意欲详尽或将本发明限于所揭示的精确形式,且显然依据上述教示可能作出许多修改和变化。选择并描述所述实施例是为了最佳地解释本揭示内容的原理及其实际应用,藉此使所属领域的技术人员能够最佳地利用本揭示内容和各种实施例,并作出适于所预期的特定用途的各种修改。希望本发明范围由所附权利要求书及其等效物界定。

Claims (25)

1.一种电子音频系统,其包括:
一缓冲器,其通信地耦合到一第一音频处理模块和一第二音频处理模块,用于存储由所述第一音频处理模块产生并由所述第二音频处理模块消耗的音频数据;
一时钟管理器,其通信地耦合到所述第一和第二音频处理模块,用于确定所述第一音频处理模块的一第一时钟源,用于确定所述第二音频处理模块的一第二时钟源,且用于将所述第一和第二音频处理模块以及一抽样率转换器配置成所述第一时钟源和所述第二时钟源的一函数;和
所述抽样率转换器,其通信地耦合到所述缓冲器和所述时钟管理器,用于当所述第一时钟源不同于所述第二时钟源时使由所述第一音频处理模块产生的所述音频数据的一第一流速与由所述第二音频处理模块消耗的所述音频数据的一第二流速同步。
2.根据权利要求1所述的音频系统,其中:
所述第一音频处理模块包括一加速器模块;且
所述第二音频处理模块包括一渲染器模块。
3.根据权利要求1所述的音频系统,其中:
所述第一音频处理模块包括一局域级;且
所述第二音频处理模块包括一全局级。
4.根据权利要求1所述的音频系统,其中:
所述第一音频处理模块包括一第一加速器模块;且
所述第二音频处理模块包括一第二加速器模块。
5.根据权利要求1所述的音频系统,其中:
所述第一音频处理模块包括一第一局域级;且
所述第二音频处理模块包括一第二局域级。
6.根据权利要求1所述的音频系统,其中:
所述第一音频处理模块经配置以便当所述第一和第二音频处理模块共享一共同的时钟源时将音频数据存储在所述缓冲器的一共享部分中;且
所述第二音频处理模块经配置以便当所述第一和第二音频处理模块共享所述共同的时钟源时从所述缓冲器的所述共享部分检索音频数据。
7.根据权利要求1所述的音频系统,其中:
所述第一音频处理模块经配置以便当所述第一和第二音频处理模块不共享一共同的时钟源时将所述音频数据存储在所述缓冲器的一输入部分中;
所述抽样率转换器经配置以便当所述第一和第二音频处理模块不共享所述共同的时钟源时从所述输入缓冲器检索所述音频数据,通过插入或删除一额外的样本来修改所述音频数据,并将所述经修改的音频数据存储在所述缓冲器的一输出部分中;且
所述第二音频处理模块经配置以便当所述第一和第二音频处理模块不共享所述共同的时钟源时从所述缓冲器的所述输出部分检索所述音频数据。
8.根据权利要求1所述的音频系统,其中:
所述第一音频处理模块经配置以便当所述第一和第二音频处理模块不共享一共同的时钟源时将音频数据存储在所述缓冲器的一共享部分中;
所述第二音频处理模块经配置以便当所述第一和第二音频处理模块不共享所述共同的时钟源时从所述缓冲器的所述共享部分检索音频数据;且
所述抽样率转换器经配置以便当所述第一和第二音频处理模块不共享所述共同的时钟源时,增大所述第一音频处理模块的一产生速率或减小所述第二音频处理模块的一消耗速率。
9.根据权利要求1所述的音频系统,其中:
所述第一音频处理模块的所述第一时钟源是根据所述第一音频处理模块的一第一全局唯一识别符而确定;且
所述第二音频处理模块的所述第二时钟源是根据所述第二音频处理模块的一第二全局唯一识别符而确定。
10.一种用于使音频处理模块同步的方法,其包括:
登记复数个音频处理模块;
确定一相关组的音频处理模块是否利用一共同的时钟源;和
配置所述相关组的音频处理模块中的一第一者,以便当所述相关组的音频处理模块利用所述共同的时钟源时通过一第一缓冲器将一第一组音频数据传送到所述相关组的音频处理模块中的一第二者。
11.根据权利要求10所述的方法,其进一步包括:
配置所述相关组的音频处理模块中的所述第一者,以便当所述相关组的音频处理模块不利用所述共同的时钟源时将所述第一组音频数据存储在一第二缓冲器中;
配置所述抽样率转换器以便当所述相关组的音频处理模块不利用所述共同的时钟源时从所述第二缓冲器接收所述第一组音频数据,将一第二组音频数据存储在一第三缓冲器,且使进入所述第二缓冲器的所述第一组音频数据的一流率与离开所述第三缓冲器的所述第二组音频数据的一流率同步;和
配置所述相关组的音频处理模块中的所述第二者,以便当所述相关组的音频处理模块不利用所述共同的时钟源时从所述第三缓冲器接收所述第二组音频数据。
12.根据权利要求11所述的方法,其中所述相关组的音频处理模块中的所述第一者产生所述第一组音频数据作为接收到的一个或一个以上声音的一函数。
13.根据权利要求11所述的方法,其中所述相关组的音频处理模块中的所述第二者执行:
当所述相关组的音频处理模块利用所述共同的时钟源时,渲染一重播信号作为所述第一组音频数据的一函数;和
当所述相关组的音频处理模块不利用所述共同的时钟源时,渲染所述重播信号作为所述第二组音频数据的一函数。
14.根据权利要求11所述的方法,其中所述相关组的音频处理模块中的所述第二者执行:
当所述相关组的音频处理模块利用所述共同的时钟源时,记录一输入信号作为所述第一组音频数据的一函数;和
当所述相关组的音频处理模块不利用所述共同的时钟源时,记录所述输入信号作为所述第二组音频数据的一函数。
15.根据权利要求11所述的方法,其中所述相关组的音频处理模块中的所述第一者处理所述第一组音频数据。
16.根据权利要求11所述的方法,其中所述相关组的音频处理模块中的所述第二者执行:
当所述相关组的音频处理模块利用所述共同的时钟源时,处理所述第一组音频数据;和
当所述相关组的音频处理模块不利用所述共同的时钟源时,处理所述第二组音频数据。
17.一种用于使音频处理模块同步的方法,其包括:
当一相关组的音频处理模块共享一共同的时钟源时在一第一模式下操作,其包括:
将由所述相关组的音频处理模块中的一第一者产生的音频数据存储在一共享缓冲器中;和
从所述共享缓冲器接收由所述相关组的音频处理模块中的一第二者消耗的音频数据;和
当所述相关组的音频处理模块不共享一共同的时钟源时在一第二模式下操作,其包括:
将由所述相关组的音频处理模块中的所述第一者产生的音频数据存储在一输入缓冲器中;
从一输出缓冲器接收由所述相关组的音频处理模块中的所述第二者消耗的音频数据;和
使存储在所述输入缓冲器中的音频数据的一第一流率与从所述输出缓冲器接收的音频数据的一第二流率同步。
18.根据权利要求17所述的方法,其进一步包括确定每一音频处理模块的一时钟源。
19.根据权利要求18所述的方法,其中所述确定每一音频处理模块的一时钟源包括:
轮询每一音频处理模块;和
接收每一音频处理模块的所述时钟源的一识别符。
20.根据权利要求17-19中任一权利要求所述的方法,其中所述同步包括:
从所述输入缓冲器接收所述音频数据;
在所述音频数据中插入或删除一额外的样本以产生经修改的音频数据;
将所述经修改的音频数据存储在所述输出缓冲器中。
21.一种计算装置,其包括:
一存储器控制器集线器;
一处理器,其通信地耦合到所述存储器控制器集线器;
一主存储器,其通信地耦合到所述存储器控制器集线器;和
一音频系统,其通信地耦合到所述存储器控制器集线器,所述音频系统包括:
一时钟管理器;
复数个音频处理模块,其通信地耦合到所述时钟管理器;
一抽样率转换器,其通信地耦合到所述时钟源;和
一缓冲器,其通信地耦合到所述复数个音频处理模块和所述抽样率转换器。
22.根据权利要求21所述的计算装置,其中所述时钟管理器和所述抽样率转换器由存储在所述主存储器中并由所述处理器处理的信息和指令实施。
23.根据权利要求21或权利要求22所述的计算装置,其中所述复数个音频处理模块中的至少一者是所述存储器控制器集线器的一组成部分。
24.根据权利要求21-23中任一权利要求所述的计算装置,其进一步包括通信地耦合到所述存储器控制器集线器的一输入/输出控制器集线器,其中所述复数个音频处理模块中的至少一者是所述输入/输出控制器集线器的一组成部分。
25.根据权利要求21-24中任一权利要求所述的计算装置,其中所述缓冲器构建在所述主存储器中。
CN2005800093838A 2004-04-14 2005-04-12 使音频处理模块同步的方法和系统 Expired - Fee Related CN1934646B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US10/824,759 US7574274B2 (en) 2004-04-14 2004-04-14 Method and system for synchronizing audio processing modules
US10/824,759 2004-04-14
PCT/US2005/012529 WO2005106872A1 (en) 2004-04-14 2005-04-12 Method and system for synchronizing audio processing modules

Publications (2)

Publication Number Publication Date
CN1934646A true CN1934646A (zh) 2007-03-21
CN1934646B CN1934646B (zh) 2012-05-30

Family

ID=34965545

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2005800093838A Expired - Fee Related CN1934646B (zh) 2004-04-14 2005-04-12 使音频处理模块同步的方法和系统

Country Status (4)

Country Link
US (2) US7574274B2 (zh)
CN (1) CN1934646B (zh)
TW (1) TWI309011B (zh)
WO (1) WO2005106872A1 (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102881302A (zh) * 2011-03-31 2013-01-16 美国博通公司 通信方法和通信系统
CN104242958A (zh) * 2013-06-05 2014-12-24 晨星半导体股份有限公司 通讯系统及其取样率转换器
CN105578202A (zh) * 2014-09-29 2016-05-11 纬创资通股份有限公司 影音分享方法与系统

Families Citing this family (59)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002165148A (ja) * 2000-11-29 2002-06-07 Sony Corp データ処理装置および方法、並びに記録媒体
JP3876855B2 (ja) * 2003-07-10 2007-02-07 ヤマハ株式会社 オートミックスシステム
US8290603B1 (en) 2004-06-05 2012-10-16 Sonos, Inc. User interfaces for controlling and manipulating groupings in a multi-zone media system
US11106425B2 (en) 2003-07-28 2021-08-31 Sonos, Inc. Synchronizing operations among a plurality of independently clocked digital data processing devices
US11294618B2 (en) 2003-07-28 2022-04-05 Sonos, Inc. Media player system
US11650784B2 (en) 2003-07-28 2023-05-16 Sonos, Inc. Adjusting volume levels
US8234395B2 (en) 2003-07-28 2012-07-31 Sonos, Inc. System and method for synchronizing operations among a plurality of independently clocked digital data processing devices
US10613817B2 (en) 2003-07-28 2020-04-07 Sonos, Inc. Method and apparatus for displaying a list of tracks scheduled for playback by a synchrony group
US8086752B2 (en) 2006-11-22 2011-12-27 Sonos, Inc. Systems and methods for synchronizing operations among a plurality of independently clocked digital data processing devices that independently source digital data
US11106424B2 (en) 2003-07-28 2021-08-31 Sonos, Inc. Synchronizing operations among a plurality of independently clocked digital data processing devices
US8768494B1 (en) 2003-12-22 2014-07-01 Nvidia Corporation System and method for generating policy-based audio
US9977561B2 (en) 2004-04-01 2018-05-22 Sonos, Inc. Systems, methods, apparatus, and articles of manufacture to provide guest access
US9374607B2 (en) 2012-06-26 2016-06-21 Sonos, Inc. Media playback system with guest access
TWI238638B (en) * 2004-04-22 2005-08-21 Benq Corp Method and device for multimedia processing
US8326951B1 (en) 2004-06-05 2012-12-04 Sonos, Inc. Establishing a secure wireless network with minimum human intervention
US8868698B2 (en) 2004-06-05 2014-10-21 Sonos, Inc. Establishing a secure wireless network with minimum human intervention
US8515741B2 (en) * 2004-06-18 2013-08-20 Broadcom Corporation System (s), method (s) and apparatus for reducing on-chip memory requirements for audio decoding
US7519845B2 (en) * 2005-01-05 2009-04-14 Microsoft Corporation Software-based audio rendering
TW200627258A (en) * 2005-01-27 2006-08-01 Lite On Technology Corp Medium transfer-recording control method and the embedded system using the same
US7672742B2 (en) * 2005-02-16 2010-03-02 Adaptec, Inc. Method and system for reducing audio latency
EP1708395A3 (en) * 2005-03-31 2011-11-23 Yamaha Corporation Control apparatus for music system comprising a plurality of equipments connected together via network, and integrated software for controlling the music system
JP4184397B2 (ja) * 2005-11-11 2008-11-19 シャープ株式会社 映像音声処理システムおよびその制御方法、音声処理システム、映像音声処理システム制御プログラム、ならびに該プログラムを記録した記録媒体
US7813823B2 (en) * 2006-01-17 2010-10-12 Sigmatel, Inc. Computer audio system and method
US9420332B2 (en) * 2006-07-06 2016-08-16 Qualcomm Incorporated Clock compensation techniques for audio decoding
US9202509B2 (en) 2006-09-12 2015-12-01 Sonos, Inc. Controlling and grouping in a multi-zone media system
US8788080B1 (en) 2006-09-12 2014-07-22 Sonos, Inc. Multi-channel pairing in a media system
US8483853B1 (en) 2006-09-12 2013-07-09 Sonos, Inc. Controlling and manipulating groupings in a multi-zone media system
US7890472B2 (en) 2007-09-18 2011-02-15 Microsoft Corporation Parallel nested transactions in transactional memory
CN102027699B (zh) 2008-03-12 2015-04-29 珍尼雷克公司 用于数字声音再现系统中的扬声器的数据传送方法和系统
US11265652B2 (en) 2011-01-25 2022-03-01 Sonos, Inc. Playback device pairing
US11429343B2 (en) 2011-01-25 2022-08-30 Sonos, Inc. Stereo playback configuration and control
US9729115B2 (en) 2012-04-27 2017-08-08 Sonos, Inc. Intelligently increasing the sound level of player
US8910191B2 (en) 2012-09-13 2014-12-09 Nvidia Corporation Encoder and decoder driver development techniques
US9008330B2 (en) 2012-09-28 2015-04-14 Sonos, Inc. Crossover frequency adjustments for audio speakers
US9510055B2 (en) 2013-01-23 2016-11-29 Sonos, Inc. System and method for a media experience social interface
US9338015B2 (en) * 2013-03-06 2016-05-10 National Chung-Shan Institute Of Science And Technology Real time power monitor and management system
US9035808B2 (en) * 2013-06-05 2015-05-19 Mstar Semiconductor, Inc. Communication system and sample rate converter thereof
US9300647B2 (en) 2014-01-15 2016-03-29 Sonos, Inc. Software application and zones
US20150220498A1 (en) 2014-02-05 2015-08-06 Sonos, Inc. Remote Creation of a Playback Queue for a Future Event
US9226087B2 (en) 2014-02-06 2015-12-29 Sonos, Inc. Audio output balancing during synchronized playback
US9226073B2 (en) 2014-02-06 2015-12-29 Sonos, Inc. Audio output balancing during synchronized playback
US9679054B2 (en) 2014-03-05 2017-06-13 Sonos, Inc. Webpage media playback
US10587693B2 (en) 2014-04-01 2020-03-10 Sonos, Inc. Mirrored queues
US20150324552A1 (en) 2014-05-12 2015-11-12 Sonos, Inc. Share Restriction for Media Items
US20150356084A1 (en) 2014-06-05 2015-12-10 Sonos, Inc. Social Queue
US9874997B2 (en) 2014-08-08 2018-01-23 Sonos, Inc. Social playback queues
US9690540B2 (en) 2014-09-24 2017-06-27 Sonos, Inc. Social media queue
US9860286B2 (en) 2014-09-24 2018-01-02 Sonos, Inc. Associating a captured image with a media item
US9667679B2 (en) 2014-09-24 2017-05-30 Sonos, Inc. Indicating an association between a social-media account and a media playback system
US9723038B2 (en) 2014-09-24 2017-08-01 Sonos, Inc. Social media connection recommendations based on playback information
WO2016049342A1 (en) 2014-09-24 2016-03-31 Sonos, Inc. Social media connection recommendations based on playback information
US9959087B2 (en) 2014-09-24 2018-05-01 Sonos, Inc. Media item context from social media
US10645130B2 (en) 2014-09-24 2020-05-05 Sonos, Inc. Playback updates
US10248376B2 (en) 2015-06-11 2019-04-02 Sonos, Inc. Multiple groupings in a playback system
US9886234B2 (en) 2016-01-28 2018-02-06 Sonos, Inc. Systems and methods of distributing audio to one or more playback devices
CN106126159B (zh) * 2016-06-16 2018-01-23 广东欧珀移动通信有限公司 一种音频流处理方法及移动终端
US10353424B2 (en) * 2016-07-01 2019-07-16 Imagination Technologies Limited Clock synchronisation
US10310897B2 (en) * 2016-09-30 2019-06-04 Intel Corporation Hardware accelerators and methods for offload operations
US10712997B2 (en) 2016-10-17 2020-07-14 Sonos, Inc. Room association based on name

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3173022A (en) 1961-06-14 1965-03-09 North American Aviation Inc Overload protected switching circuit
JP3056866B2 (ja) 1992-02-17 2000-06-26 アルパイン株式会社 自動音量制御方式
US5768628A (en) 1995-04-14 1998-06-16 Nvidia Corporation Method for providing high quality audio by storing wave tables in system memory and having a DMA controller on the sound card for transferring the wave tables
DE19522074A1 (de) 1995-06-17 1996-12-19 Bosch Gmbh Robert Kraftstoffzuführvorrichtung für einen Verbrennungsmotor
US5875354A (en) 1996-03-01 1999-02-23 Apple Computer, Inc. System for synchronization by modifying the rate of conversion by difference of rate between first clock and audio clock during a second time period
US6005901A (en) * 1997-02-27 1999-12-21 Advanced Micro Devices Arrangement for asynchronous decimation using a frequency ratio estimator and method thereof
US5815689A (en) * 1997-04-04 1998-09-29 Microsoft Corporation Method and computer program product for synchronizing the processing of multiple data streams and matching disparate processing rates using a standardized clock mechanism
US5918073A (en) * 1997-06-27 1999-06-29 Advanced Micro Devices, Inc. System and method for equalizing data buffer storage and fetch rates of peripheral devices
US6226758B1 (en) * 1997-09-30 2001-05-01 Cirrus Logic, Inc. Sample rate conversion of non-audio AES data channels
US6563802B2 (en) 1998-06-22 2003-05-13 Intel Corporation Echo cancellation with dynamic latency adjustment
JP2001043062A (ja) 1999-07-27 2001-02-16 Nec Corp パーソナルコンピュータ、その音量調整方法及び記録媒体
US6260011B1 (en) 2000-03-20 2001-07-10 Microsoft Corporation Methods and apparatus for automatically synchronizing electronic audio files with electronic text files
US6646195B1 (en) 2000-04-12 2003-11-11 Microsoft Corporation Kernel-mode audio processing modules
US7599753B2 (en) 2000-09-23 2009-10-06 Microsoft Corporation Systems and methods for running priority-based application threads on a realtime component
SE0004838D0 (sv) * 2000-12-22 2000-12-22 Ericsson Telefon Ab L M Method and communication apparatus in a communication system
US7376475B2 (en) 2001-03-05 2008-05-20 Microsoft Corporation Audio buffer configuration
US7305097B2 (en) 2003-02-14 2007-12-04 Bose Corporation Controlling fading and surround signal level
US7272235B2 (en) 2003-06-26 2007-09-18 Microsoft Corporation Method and apparatus for audio normalization
US7216221B2 (en) 2003-09-30 2007-05-08 Microsoft Corporation Method and system for unified audio control on a personal computer

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102881302A (zh) * 2011-03-31 2013-01-16 美国博通公司 通信方法和通信系统
CN104242958A (zh) * 2013-06-05 2014-12-24 晨星半导体股份有限公司 通讯系统及其取样率转换器
CN104242958B (zh) * 2013-06-05 2017-08-25 晨星半导体股份有限公司 通讯系统及其取样率转换器
CN105578202A (zh) * 2014-09-29 2016-05-11 纬创资通股份有限公司 影音分享方法与系统
CN105578202B (zh) * 2014-09-29 2019-08-09 纬创资通股份有限公司 影音分享方法与系统

Also Published As

Publication number Publication date
WO2005106872A1 (en) 2005-11-10
US20050234571A1 (en) 2005-10-20
US7983772B2 (en) 2011-07-19
US7574274B2 (en) 2009-08-11
CN1934646B (zh) 2012-05-30
US20080109574A1 (en) 2008-05-08
TW200604851A (en) 2006-02-01
TWI309011B (en) 2009-04-21

Similar Documents

Publication Publication Date Title
CN1934646A (zh) 使音频处理模块同步的方法和系统
US6665409B1 (en) Methods for surround sound simulation and circuits and systems using the same
CN101405790B (zh) 多个输入设备对系统资源的同时共享
US7678986B2 (en) Musical instrument digital interface hardware instructions
US7369665B1 (en) Method and apparatus for mixing sound signals
CN1243350C (zh) 数字音频处理
CN1275220C (zh) 利用同步信息重放midi的方法和装置
US7718882B2 (en) Efficient identification of sets of audio parameters
US7663052B2 (en) Musical instrument digital interface hardware instruction set
CN1604181A (zh) 一种midi音乐播放的方法及midi音乐播放装置
CN1892813A (zh) 应用于卡拉ok即时听、唱、录的方法及系统
US7470848B2 (en) Structure and method for playing MIDI messages and multi-media apparatus using the same
CN1118502A (zh) 用于卡拉ok的记录媒体、重放装置和方法
CN1798267A (zh) 卡拉ok系统的图像及歌词匹配设备
CN201936594U (zh) Usb电脑卡拉ok效果器
CN2758924Y (zh) 一种midi音乐播放装置
CN1206603C (zh) 音乐音频产生方法与播放系统
CN1365246A (zh) 两声道音效硬件输出四声道仿真信号的系统及其方法
CN2624284Y (zh) Mp3多媒体点唱机
AudioBeam Products of Interest
WO2020242670A1 (en) Aggregating hardware loopback
CN1588953A (zh) 一种下载及再现互联网数据的终端及下载系统和方法
CN1924990A (zh) Midi音讯的播放架构和方法与其应用的多媒体装置
CN1584973A (zh) 数码吉它音响设备
KORE et al. Products of Interest

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

Granted publication date: 20120530