TW200903449A - Shared buffer management for processing audio files - Google Patents
Shared buffer management for processing audio files Download PDFInfo
- Publication number
- TW200903449A TW200903449A TW097109348A TW97109348A TW200903449A TW 200903449 A TW200903449 A TW 200903449A TW 097109348 A TW097109348 A TW 097109348A TW 97109348 A TW97109348 A TW 97109348A TW 200903449 A TW200903449 A TW 200903449A
- Authority
- TW
- Taiwan
- Prior art keywords
- waveform
- memory
- audio
- block
- frame
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10H—ELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
- G10H7/00—Instruments in which the tones are synthesised from a data store, e.g. computer organs
- G10H7/002—Instruments in which the tones are synthesised from a data store, e.g. computer organs using a common processing for different operations or calculations, and a set of microinstructions (programme) to control the sequence thereof
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10K—SOUND-PRODUCING DEVICES; METHODS OR DEVICES FOR PROTECTING AGAINST, OR FOR DAMPING, NOISE OR OTHER ACOUSTIC WAVES IN GENERAL; ACOUSTICS NOT OTHERWISE PROVIDED FOR
- G10K15/00—Acoustics not otherwise provided for
- G10K15/02—Synthesis of acoustic waves
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10H—ELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
- G10H2230/00—General physical, ergonomic or hardware implementation of electrophonic musical tools or instruments, e.g. shape or architecture
- G10H2230/025—Computing or signal processing architecture features
- G10H2230/031—Use of cache memory for electrophonic musical instrument processes, e.g. for improving processing capabilities or solving interfacing problems
Description
200903449 九、發明說明: 【發明所屬之技術領域】 本揭示案係關於音訊裝置,且更特定言之,其係關於基 於諸如樂器數位介面(MIDI)或類似格式之音訊格式產生音 訊輸出之音訊裝置。 本專利申請案主張2007年3月22曰所申請之名為「用於處 理音訊檔案之共享緩衝管理(SHARED BUFFER MANAGEMENT FOR PROCESSING AUDIO FILES)」的臨時申請案第 60/896,425 號之優先權,該案已讓與其受讓人且在此以引用之方式明 確地併入本文中。 【先前技術】 樂器數位介面(MIDI)為用於產生、通信及/或重放諸如 音樂、演講、音調、警報及其類似物之音訊聲音之格式。 支援MIDI格式重放之裝置可儲存可用以產生各種”語音”之 音訊資訊的集合。每一語音可對應於一或多個聲音,諸如 由特定器具產生之音符。舉例而言,第一語音可對應於如 由鋼琴演奏之中C音,第二語音可對應於如由長號演奏之 中音C,第三語音可對應於如由長號演奏之D#音等等。為 了複製由特定器具演奏之音符,MIDI順應型裝置可包括規 定各種音訊特徵(諸如低頻振盪器之狀態、諸如振音之效 果及可影響對聲音之感知的許多其他音訊特徵)之語音資 訊的集合。可界定、在MIDI檔案中輸送及由支援MIDI格 式之裝置重現幾乎任何聲音。 支援MIDI格式之裝置可在指示裝置應開始產生音符之 129792.doc 200903449 事件發生時產生音符(或盆他錾立 、a八他耷曰)。類似地,裝置在指示 裝置應停止產生音符之事件發生時停止產生音符。可藉由 規定指示特定語音何時應開始及停止之事件而根據·说 式對整個音樂作品進行编誤。w 4 丁、·届辱以此方式,可以根據MIDI格 式之緊後、檔案格式來儲存及傳輸音樂作品。 ΜΠΜ於多種裝置中得到支援。舉例而言,諸如無線電 話之無線通信裝置可支援MIDI擋案用於可下载聲音,諸如 鈴聲,或其他音訊輸出。諸如Apple c〇mputer,心售賣之 "iPod"裝置及 Microsoft
Corporation售賣之"Zune"裝置的數 位音樂播放器亦可支援^4101檔案格式。支援μι〇ι格式之 其他裝置可包括各種音樂合成器、無線行動裝置、直接雙 向通信裝置(有時稱為對講機)、網路電話、個人電腦、桌 上型及膝上型電腦、卫作站、衛星無線電裝置、内部通信 裝置、無線電廣播裝置、掌上型遊戲裝置、安裝於裝置中 之電路板、公共資訊查詢站、各種兒童電腦玩具、用於汽 車、船及飛機中之機载電腦及多種其他裝置。 【發明内容】 大體而言’本揭示案描述詩處理音訊檔案之技術。儘 管該等技術對於其他音訊格式、技術或標準可為有用的, 但是該等技術對於遵照樂器數位介面(MIDI)格式之音訊檔 案的重放可尤為有用、技術或標準可為有用的。如本文所 使用的,術語MIDI檔案指代含有符合MIDI格式之至少一 音執的任何檔案。根據本揭示案,技術利用操作以自複數 個音訊處理硬體元件接收波形樣本之求和緩衝器。當求和 129792.doc 200903449 缓衝„器自處理元件巾之—者接㈣經計算之波料,求和 :衝”經計算之波形添加至與咖訊框之整體波形相關 %的適田%間點。因此,求和緩衝器組合複數個處理元件 / , X此方式’求和緩衝器累積並儲存完整MIDI訊柜 之波形的整體數位表示。求和緩衝器本質上對與來自處理 凡件/中之不同者之不同的所產生之語音相關聯之不同時間 進仃求和以產生表不給定音訊訊框内之整體音訊編輯的 音訊樣本。 ’ #緩衝g將第—音gfl訊框之音訊樣本轉移至諸如數位 信號處理器(DSP)之外部處理器。求和緩衝器包括一記憶 體杈組’其可在邏輯上被分割為複數個職體區塊,該複 數個記憶體區塊可由求和緩衝器獨立地鎖定與解鎖(亦 即在逐區塊之基礎上)。當為記憶體模組内之給定記憶 體區塊完成至DSP之轉料,求和緩衝器解鎖記憶體區 塊。無需等待對於第-訊框之記憶體模組之所有記憶體區 塊至DSP之轉移的完成’求和緩衝器開始清除經解鎖之記 憶體區塊的内容,日A t@ , 谷且允卉將弟二訊框(亦即,下一訊框)之 波形和寫入至經清除記憶體區塊。 ;等技術’求和緩衝器可自音訊處理硬體元件接收 波形樣本且將所得波形和儲存至記憶體,即使在波形和至 數位信號處理H(DSP)之轉移對於先前訊框仍在進行中。 以此方式,求和緩衝器經設計以有效地對來自音訊處理元 件之波形樣本進行求和且將每—純之所得波形和提供至 DSP。此外1記憶體管理功能自音訊處理硬體元件卸下 129792.doc 200903449 至求和緩衝器可提高音訊處理硬體元件之輸送量。 在一態樣中,本揭示案提供—種方法,其包含:對自音 訊處理元件接收之波形樣本進行求和以產生與第一音訊訊 框相關聯之波形和;將與第—音訊訊框相關聯之波形和儲 存於^己憶體中,其中記憶體在邏輯上被分割為複數個記憬 體區塊;及鎖定含有與該第一音訊訊框相關聯之波形和= 記憶體區塊。該方法進_步包含在逐區塊基礎上將經鎖定 之記憶體區塊之内容轉移至外部處理器;在記憶體區塊之 内容已經轉移至外部處理器之後解鎖記憶體區塊;及在轉 移含有與第—音訊訊框相關聯之波形和的剩餘經鎖定之記 憶體區塊之内容的⑽將與第二音訊訊框相關聯之波形和 儲存於經解鎖之記憶體區塊内。
在另一態樣中,本揭示案提供—種裝置,其包含對自音 訊處理元件接收之波形樣本進行求和以產生與第一音訊訊 框相關聯之波形和的累積器;儲存與第一音訊訊框相關聯 之波形和的記憶體,其中該記憶體在邏輯上被分割為複數 個記憶體區塊;及鎖定含有與第-音訊訊框相關聯之波形 和的記憶體區塊之控制單元。該控制單元在逐區塊基礎上 將經鎖定之記憶體區塊之内容轉移至外部處理器,且在記 =區塊之内容已經轉移至外部處理器之後解鎖—記 =塊:記憶體在該控制單元轉移含有與第一音訊訊框相關 :和的剩餘經鎖定之記憶體區塊之内容的同時將盘 =曰訊訊框相關聯之波形和餘存於經解鎖之記憶體區塊 129792.doc 200903449 在另-態樣中’本揭示案提供一種裝置,其包含 自音訊處理元件接收之波形樣本進行求和以產生與第一音 訊訊框相關聯之波形和的構件;用於儲存與第一二曰 ㈣聯之波形和的構件,其中用於健存之構件在;輯= 刀割為複數個記憶體區塊;及用於鎖定含有與第—立^二 框相關聯之波形和的區塊之構件。該裝置亦包括用 區塊基礎上將經敎之記憶體區塊之内容轉移至外部處理 器:構件’及用於在記憶體區塊之内容已經轉移至外部處 解鎖記憶體區塊之構件,其中藉由用於儲存之構 ==轉移之構件將含有與第一音訊訊框相關聯之 仏和的剩餘經較之記憶體區塊之内容轉移至外部處理 ㈣同時將與第二音訊訊框相關聯之波形和儲存於 之記憶體區塊内。 頌 人在另-態樣中,本揭示案提供一種電腦可讀媒體,1包 3在執行之後即使得—或多個處理器進行以下動作之於 2對自音訊處理元件接收之波形樣本進行求和以產生: :::相關聯之波形和;將與第一音訊訊框相關聯 複數個, 憶體中’其中記憶體在邏輯上被分割為 4體區塊;鎖;^含有與第„音訊訊框相關聯之波 塊憶體區塊;在逐區塊基礎上將經鎖定之記憶體區 谷轉移至外部處理器;在該記憶體區塊之 :移:外部處理器之後解鎖記憶體區塊;且在轉移含有: 曰訊訊框相關聯之波形和的剩餘經鎖定之記憶體區塊 内谷的同時將與第二音訊訊框相關聯之波形和儲存於經 I29792.doc -10- 200903449 解鎖之記憶體區塊内。 在另-態樣中,本揭示案提供一種電路,其經調適以· 對自音訊處理元件接收之波形樣本進行求和以產生盘第一 音訊訊框相關聯之波形和;將與第_音訊訊框相關聯之波 形和儲存於記憶體中,P記憶體在邏輯上被分割為複數 心憶體區塊’·較含有與第—音訊訊桓相關聯之波形和 的"己u體區塊’在逐區塊基礎上將經鎖定之記憶體區塊之 内容轉移至外部處理器;在記憶體區塊之内容已經轉移至 外部處理器之後解鎖記憶體區塊;且在轉移含有與第一音 訊訊框相關聯之波形和的剩餘經鎖定之記憶體區塊之内i 的同時將與第二音訊訊框相關聯之波形和儲存於經解鎖之 記憶體區塊内。 在隨附圖式及以下描述中陳述本揭示案之一或多個態樣 之細節。本發明之其他特徵、目標及優勢將自描述及圖式 及自申請專利範圍而顯而易見。 【實施方式】 本揭示案描述用於處理音訊檔案之技術。儘管該等技術 對於利用合成參數之其他音訊格式、技術或標準可為有用 的’但是該#技術對於遵照樂器數位介面(MIDI)格式之音 。扎檔案的重玫可尤為有用。如本文所使用@,術語Μ血槽 案和代3有#合MIDI格式之至少一音軌的任何音訊資料或 杬案。可包括MIDI音軌之各種檔案格式的實例包括(例 如)CMX、SMAF、XMF、sp_MIDI。CMX代表由如山〇咖 Inc.開發之緊密媒體擴展。smaf代表由丫咖心〔〇印開發 129792.doc 200903449 之合成音樂行動應用格式。XMF代表可擴展音樂格式且 SP-MIDI代表可縮放多音MIDI。 MIDI槽案或其他音訊檔案可在可包括音訊資訊或音訊· 視訊(多媒體)資訊之音訊訊框内於裝置之間輸送。音訊訊 框可包含單一音訊檔案、多個音訊檔案或(可能地)一或多 個音訊檔案及諸如經編碼視訊訊框之其他資訊。如本文所 使用的,可將音訊訊框内之任何音訊資料稱為音訊擋案, 其包括串流音訊資料或上文列出之—或多個音訊楷案格 根據本揭示t,技術利用一求和緩衝器,,該求和緩衝 态自複數個處理元件(例如,在專用MIDI硬體内)中之每一 者接收波形樣本且累積波形樣本以產生波形和,該等波形 和接著經轉移至數位信號處理器(DSp)。 所描述之技術可改良對諸如MIDI標案之音訊槽案的處 理。該等技術可將不同任務分離至軟體、餘體及硬體中。 通用處理器可執行軟體以剖析音訊訊框之音訊檔案且藉此 識料序參數’且對與音訊㈣㈣聯之事件進行排程。 ,者可由DSP以同步方式(如由音訊檔案中之時序參數所規 疋)服務於經排程之事件。通用處理器以時間同步方式將 牛發送至DSP ’且DSP根據時間同步排程處理該等事件 以產生合成參數。DSP接著對硬體單元中的合成來數之處 理進行排程,且硬體單元可基於合成參數產生音訊樣本。 I :艮據本揭示案,當求和緩衝器自處理元件中之一者接收 到經4之波料,求和緩衝器將經計算之波形添加至與 凡忙之整體波形相關聯的適當時間點。因此,求和緩 129792.doc •12- 200903449 求和緩衝器 示。求和緩 同的所產生 示給定音訊 衝器組合複數個處理元件之輸出。以此方式, 累積並儲存完整MIDI訊框之波形的整體數位表 衝裔本質上對與來自處理元件中之不同者之不 之語音相關聯之不同時間點進行求和以產生表 訊框内之整體音訊編輯的音訊樣本。 說明例示性音訊裝置4之方塊圖。
含能夠處理麵檔案(例如,包括至少-軸音軌之::宰包) 置。音訊裝置4之實例包括無線通信裝置;如 線=¥網路電話、數位音樂播放器、音樂合成器、-電腦=二直:雙向通信裝置(有時稱為對講機)、個: 内部通二!上型電腦、工作站、衛星無線電裝置、 =|置、無線電廣播裝置、f上型遊戲裝置、安裝 各種兒立=路板、公共查詢站裝置、視訊遊戲控制台、 種兒里電腦玩具、用於、,与电 , 多種其他裝置。 '’ 、飛機中之機載電腦或 然而,在—些實施制…1…本揭示案之態樣。 —貝&例中,其他組件可能存在,且 括所說明之組件中之一了-不包 線電話,則可包括天線,Η :右音㈣置4為無 器·解調變器)以促進音訊楷案之無線:及數據機(調變 如圖】之實例中所說明, 以儲存咖㈣。又,括音㈣存單元6 式編碼之至少-音軌的任J田案—般指代包括物叫各 包含任何揮發性切揮Μ “枯案。音訊儲存單元6可 戈非揮發性記憶體或儲存器。出於本揭示 '29792.doc 200903449 儲案轉發至處 MIDIit * n自曰訊儲存單元ό擷取 ΜΙ叫案,以使得該等檔案被處理。#秋, … 6亦可為與數位音举播 ’ ' g汛儲存早兀 」、數位日|播放❹關聯之儲存單元或與自另一 裝置之貧訊轉移相關聯的臨時儲存單元。音 可為經由資料匯汽排弋1 Μ Β 子早70 … 他連接•接至處理器8之單獨的 ==體晶片或非揮發性儲存裳置,括記憶體或 健存農置控制器(未圖示)以促進資訊自音訊儲存單元6之轉 移。 根據本揭示案,裝置4實祐力私 在軟體、硬體及韌體之間分 離MIDI處理任務之架構。 〒口之裝置4包括處理器8、 DSP 12及音訊硬體單元14。 此4組件中之每一者可(例如) 直接或經由匯流排耦接至記憶體單元1〇。處理器8可包含 執行軟體以剖析MIDI檔幸η料跑 码束且對與MIDI檔案相關聯之MIm 事件進行排程之通用處理器。經排程之事件可以時間同步 方式被發送至DSP 1 2且 且精此由DSP 12以同步方式(如由 midi檔案巾之時序參數所規定)服務。 12根據通用處 理器8所產生之時間同步排程來處理組⑴事件以產生獅工 合成參數。DSP 12亦可對由音訊硬體單元以進行的對 ΜΠΜ合成參數之後續處理進行排程。音訊硬體單元"基於 合成參數產生音訊樣本。在替代實施例中,本文描述之功 能性可以另-方式而得到實施,諸如在軟體中或在經調適 以執行本文描述之技術的電路中。 處理器8可包含多種通用單晶片或多晶片微處理器中之 129792.doc -14· 200903449 任一者。處理器8可實施複雜指令集電腦(CISC)設計或精 簡指令集電腦(RISC)設計。一般而言,處理器8包含執行 軟體之中央處理單元(cpu)。實例包括購自諸如Intel
Corporation、Apple Computer, Inc、Sun Microsystems
Inc.、Advanced Micro Devices (AMD) Inc.等等之公司的 16 位元、32位元或64位元微處理器。其他實例包括購自諸如 International Business Machines (IBM) Corporation、 RedHat Inc.等等之公司的基於Unix或基於LinuXi微處理 器。通用處理器可包含可購自ARM Inc.之ARM9,且DSP 可包含由Qualcomm Inc.開發之QDSP4 DSP。 處理器8可服務於第一訊框(訊框N)之midi檔案,且當第 一訊框(訊框N)由DSP 12服務時,第二訊框(訊框^^+丨)可同 時由處理器8服務。當第一訊框(訊框N)由音訊硬體單元14 服務時’第二訊框(訊框N+1)同時由DSp 12服務,同時第 三訊框(訊框N + 2)由處理器8服務。以此方式,將MIDI檔案 處理分離為可同時處理之管線式階段,其可改良效率且可 能減少對於給定階段所需之計算資源。舉例而言,Dsp 12 可相對於在沒有處理器8或厘11)1硬體14之幫助下執行完整 MIDI演算法之習知DSP得到簡化。 在一些情況下,(例如)經由中斷驅動技術將MIm硬體Μ 所產生之音訊樣本傳遞回Dsp 12。在此情況下,Dsp亦可 對音訊樣本執行後處理技術〇DAC 16將數位音訊樣本轉 換為可由驅動電路18用以驅動揚聲器19A及19B以用於將 音訊聲音輸出給使用者的類比信號。 129792.doc -15- 200903449 對於每一音訊訊框,處理器8讀取一或多個Mmi檔案且 可自MIDI檔案提取MIDI指令。基於此等MIDI指令,處理 器8對MIDI事件加以排程用於由Dsp 12處理,且根據此排 程將MIDI事件發送至DSP 12。詳言之’藉由處理器8進行 之此排程可包括與MIDI事件相關聯的時序之同步,其可基 於ΜΠΜ檔案中所規定之時序參數而加以識別。Mim檔案 中之ΜΠΜ指令可指導特定纽以語音開始或停土。其他 MIDI指令可關於觸後效果、呼吸控制效果、程式改變、音 高折曲效果、諸如左右搖動(pan)之控制訊息、延音踏板效 果、主音量控制、諸如時序參數之系統訊息、諸如燈光效 果執行點(cue)之MIDI控制訊息及/或其他聲音影響。在對 MIDI事件進行排程之後,處理器8可將排程提供至記憶體 10或DSP mx使得DSP 12可處理料事件。或者,處理器 8可藉由以時間同步方式向Dsp 12發送Mmi事件而執行排 程。 s己憶體10可經結構化以使得處理器8、Dsp 12及河1〇1硬 體14可存取執行委派給此等不同組件之各種任務所需的任 何資訊。在一些情況下,可對MIDI資訊在記憶體10中之儲 存布局進行配置以允許自不同組件8、12及14之有效存取。 虽DSP 12自處理器8(或自記憶體1〇)接收到經排程之 MIDI事件時,Dsp 12可處理]^1〇][事件以產生可被儲存回 記憶體ίο中的MIDI合成參數。又,此等MIDI事件由Dsp服 務之時序由處理器8加以排程,其藉由消除Dsp 12執行該 等排耘任務之需要而產生效率。因此,DSP 12可在處理器 I29792.doc 16 200903449 ㈣下-音訊訊框之MIDI事件進行排㈣同時服務於第一 音訊訊框之MIDI事件。音訊訊㈣包含相之區塊(例 如’ H)毫秒㈣之間隔),其可包括若干音訊樣本。舉例而 言’數位輸出可對於每-訊框導致48〇個樣本,可將其轉 換為類比音訊信號。許多事件可對應於—時間點以使得許 多音符或聲音可根據MIDI格式包括於—時間點中。當秋, 2派給任何音訊訊框之時間量以及每—訊框的樣本之數目 在不同實施例中可變化。 一旦⑽U已產生麵合成參數,音訊硬體單元叫 基於合成參數產生音訊樣本。膽12可對由音訊硬體單元 Μ進行的對MIDI合成參數之處理進行排程。由音訊硬體單 ^ 14產生之音訊樣本可包含脈衝編碼調變(PCM)樣本,該 專樣本為以規律間隔取樣的類比信號之數位表示。下文參 看圖2論述由音訊硬體單 冰… 進仃之例示性音訊產生的額 吓細郎。 在-些情況下’可能需要對音訊樣本執行後處理。在此 音訊硬體單心可向_12發送中斷命令以指導 執仃錢處理。後處理可包括渡波、縮放、音量調 卽或可最終增強聲音輸出之多種音訊後處理。 數位類^之i DSP 12可將經後處理之音訊樣本輸出至 類比(DAC) 1 6。DAC 1 6將數位音訊信號轉換為 放^且將類比信號輸出至驅動電㈣。驅動電路听 “號以驅動一或多個揚聲器19A及ΐ9β來 129792.doc 200903449 圖2為說明可對應於圖丨之音訊裝置4之音訊硬體單元w 的例示性音訊硬體單元2〇之方塊圖。圖2所示之實施例僅 為例示性的,因為與本揭示案之教示相一致亦可界定其他 河山以更體實施。如圖2之實例中所說明,音訊硬體單元μ 包括用以發送及接收資料的匯流排介面3〇。舉例而言,匯 流排介面30可包括ΑΜΒΑ高效能匯流排(ΑΗΒ)主介面' ΑΗΒ從介面及記憶體匯流排介面。αμβα代表進階微處理 器匯流排架構。或者’匯流排介面3〇可包括Αχι匯流排介 面或另一類型之匯流排介面。Αχι代表進階可擴展介面。 另外,音訊硬體單元20可包括協調模組32。協調模組32 協調音訊硬體單元20内之資料流。當音訊硬體單元自Dsp 12(圖1)接收指令以開始合成音訊樣本時,協調模組32讀取 音訊訊框之合成參數(其由DSP ^(圖丨)產生此等合成參 數可用以重建音訊訊框。對於MIDI格式,合成參數描述給 定訊框内之一或多個MIDI語音的各種聲音特徵。舉例而 言’ MIDI合成參數之集合可規定諧振程度、交混迴響 '音 量及/或可影響一或多個語音之其他特徵。 在協調模組32之指導下,可直接自記憶體單元1〇(圖〇 將合成參數載入與各別處理元件34Α或34Ν相關聯之語音 參數集合(VPS) RAM 46Α或46Ν。在DSP 12(圖1)之指導 下’自記憶體1 0將程式指令載入與各別處理元件34A或 34N相關聯之程式RAM單元44A或44N。 載入至程式RAM單元44A或44N之指令指導相關聯之處 理元件34A或34N合成VPS RAM單元46A或46N中之合成參 129792.doc -18- 200903449 數之/月單中所才曰不的語音中之一者。可能存在任何數目之 處理7L件34Α至34Ν(統稱為,,處理元件34„),且每—者可包 2能夠執行數學運算之-或多個則以及用以讀取及寫入 貢料之-或多個單元。為了簡單起見僅說明兩個處理元件 34Α及34Ν,但硬體罝士 & 早疋20中可包括更多處理元件。處理 元件3 4可以彼此並扞之古人上 方式δ成語音。詳言之,複數個不 同處理7L件34並行工作以處理不同合成參數。以此方式, 音訊硬體單元2〇内之複數個處理元件34可加速且(可能地) 增加所產生之語音的數目,藉此改良音訊樣本之產生。 當協調模組32指導處理434中之-者合成語音時,處 ^件34中之各別者可執行由合成參數界定之-或多個指 令。又’可將此等指令載入程式RAM單元44Α或44Ν。載 入权式RAM單元44A或44N之指令使得處理元件34中之各 ::者執行語音合成。舉例而言’處理元件3何向波形取回 :兀(WFU)36發送對於合成參數中所規定之波形的請求。 =tl件34 t之每-者可使用卿%。處理元件34中之 ^主者可使用WFU 36。若兩個或兩個以上處理元件34同 ^求使用卿36,則卿36使用仲裁機制以解決任何 衝穴。 回應於來自處理元件34中之—者的請求,卿36向請 件返回—或多個波形樣本。然而,因為波可在樣 個樣:移(例如’高達—個波循環),所以WFU 36可返回兩 對於兩Γ使用内插而補償相移。此外,因為立體聲信號可 士於兩個立體聲頻道包括兩料獨的波,所以卿36可 129792.doc -19- 200903449 對於不同頻道返回單獨的樣本(例如)從而導致立體聲輸出 之高達四個單獨樣本。 , 在WFU 36將音訊樣本返回至處理元件中之—者之 $處理兀件可基於音訊合成參數執行額外程式指 :詳。之,指令使得處理元件34中之-者自音訊硬體單 元2〇中之低頻振盈器(LF〇)38請求不對稱三角形波 使WFU 36返回之、'皮报# 1。 曰 一 波形乘ULF〇 38返回之三角形波,各別 處理7G件可操縱波形之各種聲音特徵以達成所要音訊效 果+例而。,使波形乘以三角形波可導致聽起 要樂器之波形。 基於合成參數執行之其他指令可使得處理元件34中之各 別者使波形循環特定數目次、調節波形之振幅、添加交混 迴響、添加振音效果或造成其他效果。以此方式,處理元 件34可計算持續一個MIDI訊框的語音之波形。最後,各別 處理几件可遇到退出指令。當處理元件34中之—者遇到退 2指令時,處理元件以信號通知協調模組32語音合成之結 二1=指令之執行期間在另-儲存指令之指導下將 -皮料供至求和緩衝器4()。此使得求和緩衝 器40儲存經計算之語音波形。 =和緩衝器4。自處理元件34中之一者接收到經計算之 求和緩衝器40將經計算之波形添加至與娜m框 二:皮:相關聯的適當時間點。因此,求和緩衝器4。組 合複數個處理元件34之輪出。 例而^ ’求和緩衝器40最 館存平波(亦即,所有數位樣本均為零之波)。當求和 I29792.doc -20· 200903449 緩衝器4〇自處理元件34令_ 的立$資1 + 者接收到諸如經計算之波形 緩衝器4G可將經計算之波形之每一數 以此方<,J 衝1140中的波形之各別樣本。 °緩衝盗40累積並儲存完整 的整體數位表示。 ml之波开y 求和緩衝器40本質上對來白声 — 來自處理7°件34中之不同者的不 同曰Λ資汛進行求和。 广丨J曰Λ貝況指不與不同的所產生 之語音相關聯之不同時間點。以此方心求和緩衝器40產 生表不給定音訊訊框内之整體音訊編輯的音訊樣本。 最後,協調模組32可判定處理元件34是否已完成合成當 前Mmm框所需要之所有語音且是否已將彼等語音提供至 求和緩衝态40。在此點上,求和緩衝器4〇含有指示當前 MIDI訊框之完整波形的數位樣本。在協調模組32進行此判 定時,協調模組32向DSP叫圖1)發送中斷。回應於中 斷,DSP 12可經由直接記憶體交換⑴廳)向求和緩衝器⑽ 中之控制單元(未圖示)發送請求以接收求和緩衝器糾之内 合或者,DSP 10亦可經預程式化以執rDME。dme指代 允許貧料在DSP 12忙於進行別的事情之同時於—f景過程 中自一記憶體組轉移回另一者之記憶體轉移程序。在求和 緩衝器40之内容至dSP 12iDME之後,Dsp 12可接著在將 數位音訊樣本提供至DAC 1 6用於轉換至類比域中之前對 數位音訊樣本執行任何後處理。重要地’由音訊硬體單元 20關於訊框N而執行之處理與由DSP 12(圖1)關於訊框^^ 而進行之合成參數產生及由處理器8(圖1}關於訊框^+二進 129792.doc •21 - 200903449 行之排程操作同時發生β 此外如本文中所描述,求和緩衝器40包括在邏輯上被 分割為複數個記憶體區塊之記憶體,且藉由允許在逐區塊 基礎上之储存及自記憶體至猜12之DME轉移而有效地操 作洋έ之,當求和緩衝器40已結束轉移關於訊框Ν的特 定記憶體區塊之内容時,求和緩衝器40解鎖並清除記憶體 區塊且將關於訊框N+1之資料儲存至記憶體區塊,即使在 其他記憶體區塊仍經受關於訊框〇1^£轉移時。 圖2中亦展示快取記憶體48、WFU/LF〇記憶體39及鏈接 /月單§己憶體42。快取記憶體48可由WFU 36用來以快速且 有效之方式取回基本波形。WFU/LF〇記憶體39可由協調模 組32用以儲存語音參數集合之語音參數。以此方式,可將 WFU/LFO記憶體39視為專用於波形取回單元刊及lf〇 38 之操作的s己憶體。鏈接清單記憶體42可包含用以儲存由 DSP 1 2產生的語音指示符之清單之記憶體。語音指示符可 包含指向儲存於記憶體1〇中之一或多個合成參數之指標。 π單中之每一語音指示符可規定儲存各別MIDI語音之語音 多數集合的記憶體位置。圖2所示之各種記憶體及記憶體 之配置僅為例示性的。本文描述之技術可由多種其他記憶 體配置實施。 一 圖3為忒明與本揭示案之教示相一致的例示性技術之流 程圖。將參看圖i之裝置4及圖2之硬體單元2〇來描述圖3。 d而,其他裝置可實施圖3之技術。如圖3所示,記憶體1〇 儲存音讯訊框之音訊合成參數(5〇)。舉例而言,可由DSp 129792.doc -22- 200903449 I2在處理規定於音訊訊框之一 事件中產生音訊合成參數。 或多個音訊檔案中的經排種 複數個不同處理元件34接著同時處理不同合成參數 (似、灿及训)。詳言之’在第一處理元件34八中處理 第-合成參數(52A),在第二處理元件34B中處理第二 參數(52B) ’ 在第N個處理元件34n令處理第㈣合成參 數(52N)。合成參數可包括界定音高、諧振、交混迴響: 音量及/或可影響一或多個語音之其他特m的參數。 可使用任何數目之處理元件μ。任何時候處理元件3々中 之-者結束各別處理時,與彼處理元件相關聯的所產生之 音訊資訊均在求和緩衝器4G中經累積(54)以產生音訊樣 本。若對於音訊訊框存在更多合成參數(56之是分支),則 各別處理元件34接著處理下—合成參數(52A、52b或 52N)。此過程繼續直至音訊訊框之所有合成參數得到服務 (6之否刀支)。在此點上,求和緩衝器輸出音訊訊框之 曰Λ樣本(58)。舉例而言,協調模組32可向Dsp (圖〇發 送中斷。卩令以使得音訊樣本被發送至Dsp 1 2用於後處理。 圖4為說明根據本揭示案之求和緩衝器40之例示性架構 的方塊圖。循環仲裁器6〇自處理元件34A至则接收請求 以對波形樣本進行求和,且以循環方式對請求進行仲裁。 累積器及飽和邏輯單元62對自處理元件34接收之波形樣本 進行累積。舉例而纟,累積器及飽和邏輯單可包括用 =波形樣本累積至波形和之,,2,,補數(2c)累積器,且可以 、。定數目之位元(例如,24位元)飽和。累積器及飽和邏輯 129792.doc •23- 200903449 單元62可對於兩個音 器立且,對每-頻道進二累積 (在本文中稱為,,波形和”)儲存於波形樣本 言’記憶體模組64可儲存針靡於 4内。舉例而 在一…由、 於—個音訊訊框之波形和。 -、',波形和呈脈衝編碼調變(PCM)形式。 處2件34向求和緩衝_發送請求以對波形樣本求 ❸可包括待求和之波形樣本(例如,以包括左側樣 本及右側樣本之立體聲格式)及指示應將樣本累積於之位 置之位址的波形樣本之樣本號碼(亦即,記憶體内應儲存 經求和波形樣本的目標記憶體區塊之位址)。一般熟習此 項技術者將認識到在此環境下,目標記憶體可為在對波形 ^本進行求和之持續時間期間閒置的任何記憶體位置。每 明求亦可包括夫見定在求和之後是否使累積器之結果飽和 及是否累積結果或對其進行覆寫之兩個額外信號^由於處 理元件34中之每-者連同波形樣本發送目標記憶體區塊位 置之位址,因此處理元件Μ無需使其執行同步,且處理元 件3 4中之每一者可發送對應於不同位址之波形。在求和緩 衝器40服務於來自處理元件34中之一者的請求之後,循環 仲裁器60將受到服務之處理元件移動至最低優先權水準。 循環仲裁器60藉此確保所有處理元件34能夠同等地存取求 和緩衝器40。 控制單元66自DSP 12接收一請求以起始記憶體模組之 内容的直接記憶體交換(DME)轉移。作為回應’控制單元 129792.doc -24· 200903449 ㈣定記憶體模組64,此具有中斷針對記憶體模組64之經 鎖疋部分之任何請求的效果。記憶體模組64可在邏輯上被 分割為複數個記憶體區4,該複數個記憶體區塊可由求和 緩衝器40獨立地敎與解鎖(亦即,在逐區塊之基礎上)。 在麵轉移對於記憶體模組64内之給定記憶體區塊完成 時’控制單元66解鎖内容已經轉移至瞻12之該記憶體區 塊。無需等待記憶體模組64之所有記憶體區塊之臟轉移 :完成,控制單元66開始清除經解鎖之記憶體區塊的内 容,且允許將下—訊框之波形和寫人至經清除之記憶體區 塊0 由於此等技術’求和緩衝器4G可自處理元件34接收波形 樣本且針對給疋訊框將所得波形和儲存至記憶體模組^, 即使在波形和之DME轉移對於先前訊框仍在進行中時。以 此方式’求和緩衝器4()經設計以有效地對來自音訊處理元 件34之波$樣本進#求和且將每—訊框之所得波形和提供 ^DSP 12 °本文描述之技術可改良音訊裝置4(圖1)之輸送 量,因為處理元件34在DSP 12在求和緩衝器4〇讀取資料的 同%不閒置’且DSP 12在處理元件34將資料提供至求和緩 衝器40的同時不閒置。求和緩衝器4〇可向Dsp以提供呈立 體聲格式之波形和。 累積益及飽和邏輯單元62可回應於連同請求自處理元件 34接收之信號而在不同模式中操作。該等信號可致能及去 旎飽和及累積。在正常模式中,自處理元件34接收之信號 去能飽和但致能累積。在此模式中,求和緩衝器4〇自記憶 129792.doc -25- 200903449 體模組64讀取,以處理元件34中之一者提供之值而累積且 在不飽和之情況下將其儲存回記憶體。在飽和及累積模式 中’自處理元件34接收之信號致能累積及飽和,且求和緩 衝器40操作以累積波形和且飽和。在非飽和完全寫入模式 中,自處理元件34接收之信號去能累積及飽和兩者。求和 緩衝态40跳過對記憶體模組64之讀取,且自處理元件3 4接 收之波形樣本的左側及右側頻道位元經寫入至記憶體模組 6 4。成溢出之運鼻元將使得所得和翻轉。在飽和完全寫 入模式中,自處理元件34接收之信號致能飽和但去能累 積。求和緩衝器40跳過對記憶體模組64之讀取,且自處理 元件34接收之波形樣本的左側及右側頻道位元經寫入至記 憶體模組64中。假設溢出在位元31:23(對於右側頻道而言 為63:55)並不全為一或全為零之情況下發生。在溢出之情 況下,樣本基於位元3 1(對於右側頻道而言為位元63)而正 飽和或負飽和。 圖5為說明由求和缓衝器4〇保持之例示性記憶體模組64 的方塊圖。在圖5之實例中,記憶體模組64在邏輯上被分 割為多個記憶體區塊70八至7〇N(統稱為"記憶體區塊7〇”)。 每-記憶體區塊70可包括一或多個字組72,其中字組7” 之每-者對應於不同的波形和。如所說明,記憶體區塊7〇 及記憶體區塊70内之字組72可對應於自記憶體模組64之頂 4至底4的&大之時間點。記憶體區塊可獨立地可鎖定 以防止給定記憶體區塊7〇被清除或被寫人。在—實例中, 記憶體模組64含有十六個記憶體區塊,其中每一記憶體區 129792.doc •26- 200903449 塊由三十二個字組72組成’每—字組72具有48個位元之大 λΙ、〇 在-實例實施例中,記憶體模組64儲存對應於—音訊訊 框之波形和,其中將一音訊訊框界定為十毫秒之音訊資 料。以48 kHz之取樣頻率,每一訊框的波形和之數目將為 每訊框480個波形和。求和緩衝器4〇可經設計以能夠每循 環清除來自記憶體模組64之資料的一個波形和之值。因 此,以48 kHz之取樣頻率,求和緩衝器4〇可採取最少48〇 個循環來清除記憶體模組64之全體。 在貝例中求和緩衝盗4 0自音訊處理元件3 4接收6 4位 元之波形樣本,其中位元55:32為24位元之,,2„補數(2c)右 側樣本,且位元23:0為24位元之2C左側樣本。累積器及飽 和逯輯單元62基於連同波形樣本接收之樣本號碼將接收之 波形樣本添加至與ΜIDI訊框之整體波形相關聯的適當時間 點。樣本號碼指示應將波形樣本(亦即,2c右側樣本及2C 左側樣本)累積於之位置之位址。舉例而言,求和緩衝器 40最初可在記憶體模組64内儲存平波(亦即,所有數位樣 本均為零之波)。當求和緩衝器40自處理元件34中之一者 接收到波形樣本時,求和缓衝器4〇可將波形樣本之每一數 位樣本添加至儲存於記憶體模組64中的波形之各別樣本之 和。因此,累積器及飽和邏輯單元62將自處理元件34中之 每一者接收的對應於給定時間點(且因此對應於記憶體模 組64内之給定位置)之所有波形樣本添加至一起,且將和 儲存於該位置處。以此方式,求和緩衝器4〇累積並儲存完 129792.doc -27· 200903449 整μ™訊框之波形的整體數位表示。求和緩衝器4〇可將波 形和作為48位元之字組72儲存於記憶體模組料内,每一字 組72包括2C右側頻道和及2C左側頻道和。舉例而言,可 將波形和儲存於記憶體模組64内,其中位元47:24為兀右 側頻道和,且位元23:0為2(:左側頻道和。 圖6為說明與本揭示案之教示相_致的例示性技術之流 程圖。求和緩衝11 40之控鮮元66自DSP 12接收—請求以 起始記憶體模組64之内容的直接記憶體交換_Ε)轉移 (74)作為回應’控制單元66鎖定記憶體模組料⑺),此 具有中斷針對記憶體模組64之經鎖定部分的任何請求之效 果在DME轉移對於記憶體模組64内之給定記憶體區塊完 成⑽)時’控制單元66解鎖内容已經轉移至赚12之該記 憶體區塊(82)。無需等待記憶體模組M之所有記憶體區塊 的DME轉移之完成,求和緩衝⑽開始清除經解鎖之記情 體區塊的内容⑽。控制單元66可在協調模組32(圖2)進行 =凊求之後即開始清除動作。控制單元咐其到達仍被鎖 疋的記憶體區塊時中斷清除動作。 虽協調板組32請求求和緩衝器4()清除記憶體模組以之經 解㈣塊時’協調模組32致能音訊處理元件34以向求和緩 ^40發送請求來對下—音訊訊框之波形樣本求和。協調 :^2可在求和緩衝器辦際執行清除動作之前致能處理 ^牛Μ。求和緩衝㈣自處理元件34接收波形樣本㈢。 :和器4°可經由循環仲裁器6。向處理元件34A至34N 卜 I類似或相同的介面。循環仲裁器60以循環 129792.doc -28- 200903449 :中裁來自處理疋件34之請求’且依次處理優勝之請求 ⑽)。循環仲裁器6G阻止來自輪掉仲裁的處理元料之請 求(9〇)直至求和緩衝器4〇結束服務於當前請求(此時循環仲 裁器60重新開始仲裁)。 虽處理tl件34中之-者在仲裁中優勝(88之是分支)時, 控制單元66檢查包括於處理元们4之請求巾的波形樣本之 位址以判线形樣本係會位於敎記憶體區塊内或係位於 ㈣鎖之記憶體區塊内(92)。舉例而t,控制單祕可比 幸乂皮形樣本之位址與指不在記憶體模組64内鎖定記憶體區 塊保持之處的開始位址之鎖定"溫度計"值。若比較指示波 形樣本位址處於鎖定記憶體區塊内,則控制單元66阻止喑 求(94) 〇 若位址處於經解鎖之記憶體區塊内(92之是分支),則控 制皁το 66在累積功能經致能時將請求轉發至記憶體模組 64°當累積功能經去能時’控制單元66跳過對記憶體模組 64之讀取,且簡單地將所接收之波形樣本寫人記憶體模組 64。如上文所描述,控制單元66在此點上可取決於如連同 處理元件請求而接收之信號所規定之模式而以不同方式操 作。控制單元66在當前請求受到服務時阻止其他請求經轉 發至記憶體模組64。在當前2C頻道和(同時擷取左側與右 側頻道和)自記憶體模組64可用時,累積器及飽和邏輯單 兀62使用2C加法累積每—和與其自處理元件接收之相應的 2C頻道樣本且可以24位元飽和(96) 1環仲裁㈣接著在 處理元件34中重新開始仲裁。控制單元66將累積之波形和 129792.doc -29- 200903449 寫入記憶體模組Μ(假設無寫回停止)(98)。在求和緩衝器 40接收到對當則正寫入之相同位址的新請求之情況下,記 憶體模組64給予寫回操作優先權以防止資料惡化。若清除 操作田4在進行中且寫回發生,則記憶體模組Μ給予寫回 操作優先權(例如,使用固定優先權仲裁器)。 當針對正讀取之先前訊框,所有記憶體區塊已經由麵 -轉移至DSP 12(100之否分支)且針對當前正寫入之訊框 無更多樣本和仍待寫入記憶體模組64(1〇2之否分支)時,協 調模組32向嫌12發送中斷,其起始針對當前訊框的記憶 體模組64之内容之新DME轉移。DME可在瞻】2閒置時發 生’且因此’任何DME停止將減少下_訊框之可用處理時 間。 由於此等技術’求和緩衝器4()可自處理元件34接收波形 樣本且針對給定訊框將所得波形和儲存至記憶體模组⑷ 即使在波形和之DME轉移對於先前訊框仍在進行中時。以 此方式’求和緩衝器40經設計以有效地對來自音訊處理元 件34之波形樣本進行求和且將每—訊框之所得波形和提供 至 DSP 12。 ’、 已描述各種實例。本文描述之技術的 仪彳可的或多個態樣可實 施於硬體、軟體、韌體或其組合中。 口丁 细返為模組或組件之 任何特徵可一同建構於積體邏輯裝置中 衣罝甲或早獨地建構為離 散但可交互操作之邏輯裝置1實施於軟體中,㈣ 術之-或多個態樣可至少部分藉由包含指令之電腦; 體實現’ $等指♦在經執行時執行i文所㉛之方法中之」 129792.doc 30· 200903449 或多者。電腦可讀資料儲存媒體可形成可包括封裝材料之 電腦程式產品之部分。電腦可讀媒體可包含諸如同步動能 隨機存取記憶體(SDRAM)之隨機存取記憶體(RAM)、唯^ 記憶體(ROM)、非揮發性隨機存取記憶體(NVRam)、電^ 擦可程式化唯讀記憶體(EEpR〇M)'快閃記憶體、磁性或 光學資料儲存媒體及其類似物。另外或其他,可至少部分 地藉由電腦可讀通信媒體來實現該等技術,該電腦可讀1 信媒體以指令或資料結構之形式來載運或通信程式碼且可 由電腦來存取、讀取及/或執行。 可由諸如一或多個數位信號處理器(Dsp)、通用微處理 器、特殊應用積體電路(ASIC)、場可程式化邏輯陣列 (FPGA)或其他等效積體或離散邏輯電路的—或多個處理器 來執行該等指令。因此’如本文中所使用#,術語"處理 器”可指代上述結構或適於實㈣文中所描述之技術的任 :其他結構中之任一者。另夕卜,在一些態樣中,…所 描速之功能性可提供於經組態或經調適以執行本揭示案之 技術的專用軟體模組或硬體模組内。 :實施於硬體中,則本揭示案之一或多個態樣可針對經 、且匕、或經D周適以執行本文所描述之技術中之—或多者的諸 如積體電路、晶片組、ASIC、FPGA、邏輯或其各種組合 之電路。電路可包括(如本文中所描述)積體電路或晶片組 中之處理器及一或多個硬體單元。 描 'I α '主思般熟習此項技術者將認識到電路可實施上文 V力此中之些或全部。可能存在實施所有功能之一 129792.doc 31 200903449 個電路,或者亦可能存在實施功能的電路之多個部分。在 當刖行動平台技術之情況下,積體電路可包含至少— 及至少一進階精簡指令集電腦(RISC)機器(ARM)處理器以 控制及/或通信至一或多個Dsp。另外,電路可經設計或實 施於若干部分中’且在一些情況下,可再用部分以執行本 揭示案中所描述之不同功能。 已描述各種態樣及實例。然而,可在不脫離以下申請專 利範圍之料的情況下對本揭示案之結構或技術進行修 改。舉例而言,其他類型之裝置亦可實施本文描述之音訊 處理技術。又,雖然圖2所示之例示性硬體單元20使用基 於波表之方法進行語音合成,但亦可使用包括頻率調變合 成方法之其他方法。&等及其他實施例處於以下申請專利 範圍之範_内。 【圖式簡單說明】 圖1為說明可實施根據本揭示案之用於處理音訊檔案之 技術的例示性音訊裝置之方塊圖。 圖2為根據本揭示案之用於處理音訊合成參數之硬體單 兀之一實例的方塊圖。 Θ為說明與本揭不案之教示相一致的例示性技術之流 程圖。 圖4為說明根據太棍_也 豕+揭不案之求和缓衝器之例示性架構的 方塊圖。 圖5為說明由求和 η a 缓衝斋保持之例示性記憶體模組的方 129792.doc -32- 200903449 圖6為說明與本揭示案之教示相一致的例示性技術之流 程圖。 【主要元件符號說明】 4 音訊裝置 6 音訊儲存單元 8 處理器 10 記憶體單元
12 DSP
14 音訊硬體單元
16 DAC 18 驅動電路 19A 揚聲器 19B 揚聲器 20 音訊硬體單元 30 匯流排介面 32 協調模組 34A 處理元件 34N 處理元件 36 波形取回單元(WFU) 3 8 低頻振盪器(LFO) 39 WFU/LFO記憶體 40 求和緩衝器 42 鏈接清單記憶體 44A 程式RAM單元 129792.doc -33 - 200903449 44N 程式RAM單元
46A 語音參數集合(VPS)RAM
46N 語音參數集合(VPS)RAM 48 快取記憶體 60 循環仲裁器 62 累積器及飽和邏輯單元 64 記憶體模組 66 控制單元 70A 記憶體區塊 70B 記憶體區塊 7 0 C 記憶體區塊 70N 記憶體區塊 72 字組 129792.doc -34-
Claims (1)
- 200903449 十、申請專利範圍: 1 · 一種方法,其包含: 生ΓΓ:處理元件接收之一波形樣本進行求和以產 ^ 第一曰汛訊框相關聯之一波形和; 將與該第一音訊訊框相關聯之該波形和儲存於—記憶 體中,其中該記憶體在邏輯上經 、 塊. 、’主刀為複數個記憶體區 鎖定含有與該第一音訊訊框相關聯之 ' 體區塊; 不的。己嗯 在-逐區塊基礎上將該等經鎖定之記憶體區塊之内容 轉移至一外部處理器; 在该記憶體區塊之内容已經轉移至該 解鎖—記憶體區塊;及 在轉移含有與該第一音訊訊框相關聯之波形和的剩餘 I鎖定之記憶體區塊之内容的同時將與一第二音訊訊框 相關聯之一波形和儲存於該經解鎖之記憶體區塊内。 J 2·如請求項1之方法,其中鎖定該等記憶體區塊包含防止 該等經鎖定之記憶體區塊被存取。 3.如凊求項1之方法,其進一步包含在將與該第二音訊訊 框相關聯之該波形和儲存於該經解鎖之記憶體區塊内之 前清除該經解鎖之記憶體區塊。 4 ·如請求項1之方法’其進一步包含: 接收指示該記憶體内應儲存與該第一音訊訊框相關聯 之該波形和之一目標記憶體區塊的一位址之一樣本號 129792.doc 200903449 碼;及 比車乂 4樣本號碼與一表示記憶體内經鎖定之記憶體區 塊之位置之值以判定與該所指示之位址相關聯的一記 憶體區塊當前是否經鎖定, 且其中該記憶體在該目標記憶體區塊當前未經鎖定時 儲存與該第一音訊訊框相關聯之該波形和。 5. 如明求項4之方法,其進—步包含在與該所指示之位址 相關如的§亥§己憶體區塊當前經鎖定時阻止與該第一音訊 汛框相關聯之該波形和被儲存。 6. 如請求項1之方法,其進一步包含: 自複數個音訊處理元件接收複數個波形樣本, 其中對該波形樣本求和包含在該第一音訊訊框内之各 =間點添加自該複數個音訊處理㈣接收的該等波形 樣本中之每一者。 8. 音訊:員之方法’其中轉移内容包含輸出表示該第一 5 §匡内之一整體音訊編輯的一音訊樣本。 士明求項1之方法,其中鎖定該等記憶體區人 於自該外邱考揮。。A匕3回應 卜邛處理斋接收之一用以轉移該 容的嗜4、I λ, U k體之該等内 9. 求而鎖定該等記憶體區塊。 求員1之方法,其進一步包含根據循 以對自複數個立B 1T哉仲裁請求 数個日Λ處理元件接收之波形樣本 1 〇 ·如請求項j 丁求和。 貝1之方法,其中對該波形樣本 用” 2,'鈾去λ田| 1來和包含# 南數累積而累積該波形樣本。 129792.doc 1 1 .如請求項1之方 、之方法’其中對自一音訊處理元件接收之一 200903449 波形樣本進行求和以產生與一第一音訊訊框相關聯之一 波形和包含對自一樂器數位介面(MIDI)處理元件接收之 一 MIDI波形樣本進行求和以產生與—第一 訊框相 關聯的一 MIDI波形和。 12. —種裝置,其包含: 累積器,其對自一音訊處理元件接收之一波形樣本 進行求和以產生與一第一音訊訊框相關聯之一波形和; 一記憶體,其儲存與該第一音訊訊框相關聯之該波形 和,其中該記憶體在邏輯上經分割為複數個記憶體區 塊;及 &制單元,其鎖定含有與該第一音訊訊框相關聯之 該波形和的記憶體區塊,其中該控制單元在一逐區塊基 礎上將該等經鎖定之記憶體區塊之内容轉移至—外部處 理器且在该記憶體區塊之内容已經轉移至該外部處理 器之後解鎖一記憶體區塊,且 其中該記憶體在該控制單元轉移含有與該第一音訊訊 框相關聯之波形和的剩餘經鎖定之記憶體區塊之内容的 同時將與—第二音訊訊框相關聯之—波形和儲存於該經 解鎖之記憶體區塊内。 丨3·如叫求項12之裝置’其中該等記憶體區塊由該控制單元 之該鎖定防止該等經鎖定之記憶體區塊被存取。 』长員12之裝置’其中該控制單元在將與該第二音訊 相關聯之該波形和料於該經解鎖之記憶體區塊内 之前清除該經解鎖之記憶體區塊。 129792.doc 200903449 1 5 .如請求項12之裝置, 其中該裝置接收指示該記憶體内應儲存與該第一音訊 訊框相關聯之該波形和之一目標記憶體區塊的一位址之 一樣本號碼, 其中忒控制單元比較該樣本號碼與一表示記憶體内當 前鎖定記憶體區塊之一位置之值以判定與該所指示之位 址相關聯的一記憶體區塊當前是否經鎖定,且 其=記憶體在該目標記憶體區塊當前未經鎖定時儲 存與該第一音訊訊框相關聯之該波形和。 α长項15之裝置’其中該控制單元在與該所指示之位 = 目關聯的該記憶體區塊當前經鎖定時阻止該記憶體儲 存〃該第一音訊訊框相關聯之該波形和。 17’ :::項12之裝置,其中該裝置自複數個音訊處理元件 框内::個波形樣本’且其中該累積器在該第-音訊訊 各料間點添加自該複㈣音訊處理元件 忒4波形樣本中之每—者。 18=項12之裝置,其中該控制單元輸出表示該第—立 “匡内之一整體音訊編輯的-音訊樣本。 ^ 19. 如請求項12之裝置,其 理器接收之—心轉料 應於自該外部處 定”… 亥記憶體之該等内容的請求而鎖 疋邊等s己憶體區塊。 具 20. 如請求項12之裝置,其 根據循環仲裁仲裁請求以對::二:裁器,該仲裁器 之波形樣本進行求和。自複數個音訊處理元件接收 129792.doc 200903449 21. 如請求項12之裝置,其中該累積器使用”2"補數累積而累 積該波形樣本。 22. 如請求項12之裝置,其中該波形樣本包含一樂器數位介 面(MIDI)波形樣本,該波形和包含一 MIDI波形和,且該 第一音訊訊框及該第二音訊訊框包含第一 MIDI訊框及第 二MIDI訊框。 23. —種裝置,其包含: 用於對自一音訊處理元件接收之一波形樣本進行求和 以產生與一弟一音§fl框相關聯之一波形和的構件; 用於儲存與該第一音訊訊框相關聯之該波形和的構 件,其中用於儲存之該構件在邏輯上經分割為複數個記 憶體區塊; 曰訊訊框相關聯之該波形和的 用於鎖定含有與該第 區塊之構件; 用於在-逐區塊基礎上將該等經鎖定之記憶體區塊之 内容轉移至一外部處理器之構件;及 用於在§亥記憶體區塊之内^ ^ ^ ^ ^ ^ ^ ^ ^ Ί今匕經轉移至該外部處哭 之後解鎖一記憶體區塊之構件’ 其中與一第二音訊訊框柏 子目關聯之一波形和係蕤ώ 儲存之該構件在藉由用 、a由用於 、轉移之該構件將含有盥 音訊訊框相關聯之波形*的剩餘 該第 内容轉移至該外部處理器 …4體區塊之 體區塊内 24.如請求項23之裝置,|中 4用於鎖定之該構件防止該等 體區塊内。 ° _存於該經解鎖之記憶 經 129792.doc 200903449 鎖疋之§己憶體區塊被存取。 25.如請求項23之裝置,1 訊訊框相關聯之該波形==在將舆該第二音 内之前清除該經解鎖記憶鎖之記憶趙區塊 26.如請求項23之裝置,其進一步包含: 用於接收指示用於儲存之談 ^ -π ^ 〇A 内應錯存與該第一音 ㈣框相關聯之該波形和之一 之一樣本號碼之構件; ㈤塊的—位址 :於比較該樣本號碼與一表示用於儲存之 辄鎖疋記憶體區塊之一位罟 田 址相關_ & 值定與該所指示之位 相關%的一記憶體區塊當前是否經鎖定之構件, 其中用於儲存之該構件在該 m Ri ^ ^ c u髖^塊當刖未經 “㈣存與該第一音訊訊框相關聯之該波形和。 27:Γ項26之裝置’其進一步包含用於在與該所指示之 二止相關聯的該記憶體區塊當前經鎖定時阻止該記憶體 f ;子與該帛一音訊訊框相關聯之該波料的構件。 28.如請求項23之裝置,其進一步包含·· 件用於自複數個音訊處理元件接收複數個波形樣本之構 $中用於求和之該構件在該第_音訊訊框内之各別時 :轉加自該複數個音訊處理元件接收的該等波形樣本 中之每—者。 29·=項23之裝置’其中用於鎖定之該構件回應於自該 卜4處理器接收之-用以轉移用於儲存之該構件之該等 129792.doc 200903449 内容的請求而鎖定該等記憶體區塊。 30.如請求項23之裝置,其進一步包含用於根據循環仲裁仲 裁請求以對自複數個音訊處理元件接收之波形樣本進行 求和之構件。 3 1.如請求項23之裝置,其中用於求和之該構件使用„2”補數 累積而累積該波形樣本。 32.如請求項23之裝置’其中該波形樣本包含一樂器數位介 面(MIDI)波形樣本,該波形和包含一 MIDI波形和,且該 第一音訊訊框及該第二音訊訊框包含第一 MIDHk框及第 二MIDI訊框。 33· —種電腦可讀媒體,其包含在執行之後即使得一或多個 處理器進行以下動作之指令: 對自一音訊處理元件接收之一波形樣本進行求和以產 生與一第一音訊訊框相關聯之一波形和; 將與該第一音訊訊框相關聯之該波形和儲存於一記憶體 中’其中該記憶體在邏輯上經分割為複數個記憶體區塊; 鎖定含有與該第一音訊訊框相關聯之該波形和的記憶 體區塊; 在-逐區塊基礎上將該等經鎖定之記憶體區塊之内容 轉移至一外部處理器; 在該記憶體區塊之内容已經轉移至該外部處理器之後 解鎖—記憶體區塊;且 ° _在轉移含有與該第—音訊訊框相關聯之波形和的剩餘 經鎖定之記憶體區塊之内容的同時將與—第二音訊訊框 129792.doc 200903449 相關聯之-波形和儲存於該經解鎖之記憶體區塊内。 34. 35. 36. 37. 如》月求項33之電腦可讀媒體’其中鎖定該等記憶體區塊 包含防止該等經鎖定之記憶體區塊被存取。 如請求項33之電腦可讀媒體,其進一步包含在執行之後 P使知該 < 夕個處理器在將與該第二音訊訊框相關聯 之該波形和儲存於該經解鎖之記憶體區塊内之前清除該 經解鎖之5己憶體區塊的指令。 如請求項33之電腦可讀媒體,其進一步包含在執行之後 即使得該-或多個處理器進行以下動作之指令: 接收指示該記憶體内雇#六代 Μ應儲存與該第一音訊訊框相關聯 之该波形和之一目標印格挪π & , '•己隐體&塊的一位址之一樣本號 碼;且 比較該樣本號碼與一表千—卜备 衣不°己隐體内經鎖定之記憶體區 塊之一位置之值以判定盥兮 _ /、4所札不之位址相關聯的一記 憶體區塊當前是否經鎖定, 其中將與該第一音訊訊框相關聯之該波形和儲存於該 記憶體中包含在該目標記憶體區塊當前未經鎖定時儲存 該波形和。 如淆求項36之電腦可讀媒艚 止a人 冥铞體,其進一步包含在執行之後 即使得該一或多個處理器在盥 .、邊所知不之位址相關聯的 該記憶體區塊當前經鎖定時 m…、“μ 亏1止與β玄第-音讯訊框相關 %之该波形和被儲存的指令。 38. 如請求項33之電腦可讀媒體, 即使得該一或多個處理器進行 其進一步包含在執行之後 以下動作之指令: 129792.doc 200903449 自複數個音訊處理元件接收複數個波形樣本, 其中對該波形樣本求和包含在該第一音訊訊框内之各 別時間點添加自該複數個音訊處理元件接收的該等波形 樣本中之每一者。 39. 如請求項33之電腦可讀媒體,其中轉移内容包含輸出表 示该第一音訊訊框内之一整體音訊編輯的一音訊樣本。 40. 如請求項33之電腦可讀媒體,其中鎖定該等記憶體區塊 包含回應於自該外部處理器接收之一用以轉移該記憶體 之該等内容的請求而鎖定該等記憶體區塊。 41·如請求項33之電腦可讀媒體,其進一步包含在執行之後 即使得該一或多個處理器根據循環仲裁仲裁請求以對自 複數個音訊處理元件接收之波形樣本進行求和的指令。 42·如請求項33之電腦可讀媒體,其中對該波形樣本進行求 和包含使用”2”補數累積而累積該波形樣本。 43.如請求項33之電腦可讀媒體,其中對自一音訊處理元件 接收之-波形樣本進行求和以產生與—第_音訊訊框相 關聯之一波形和包含對自一樂器數位介面(Midi)處理元 件接收之一 MIDI波形樣本進行求和以產生與一第一 MIDI訊框相關聯的一 midi波形和。 44· 一種電路’其經調適以: 對自一音訊處理元件接收之一波形樣本進行求和以產 生與一第一音訊訊框相關聯之一波形和; 將與該第-音訊訊框相關聯之該波形和儲存於一己憶 體中’其中該記憶體在邏輯上經分割為複數個記憶體: 129792.doc 200903449 塊, 關聯之該波形和的記憶 鎖定含有與該第一音訊訊框相 體區塊; 等經鎖定之記憶體區塊之内容 已經轉移至該外部處理器之後 在一逐區塊基礎上將該 轉移至一外部處理器; 在S亥記憶體區塊之内容 解鎖一記憶體區塊;且 在轉移含有與該第一音旬句απ訊框相關聯之波形和的剩餘 經鎖定之記憶體區塊之内交Μ L及义内各的同時將與一第二音訊訊框 相關聯之一波形和儲存於兮Μ W什瓦落座解鎖之記憶體區塊内。 45.如請求項44之電路,豆φ蚀— ^ 中鎖疋該等記憶體區塊包含防止 該等經鎖定之記憶體區塊被存取。 46.如明求項44之電路,其中該電路經調適以將與該第二音 訊訊框相關聯之該波形和儲存於該經解鎖之記憶體區塊 内之前清除該經解鎖之記憶體區塊。 47.如请求項44之電路’其中該電路經調適以: 接收指示該記憶體内應儲存與該第一音訊訊框相關聯 之該波形和之一目標記憶體區塊的一位址之一樣本號 碼;且 比較該樣本號碼與一表示記憶體内經鎖定記憶體區塊 之一位置之值以判定與該所指示之位址相關聯的—記恢 體區塊當前是否經鎖定, 其中將與該第一音訊訊框相關聯之該波形和儲存於該 記憶體中包含在該目標記憶體區塊當前未經鎖定時健存 129792.doc -10- 200903449 这波形和。 48.如請求項47之電路,其中該電路經調適以在與該所指示 之位址相關聯的該記憶體區塊當前經鎖定時阻止與該第 曰§fl訊框相關聯之該波形和被倚存。 49‘如請求項44之電路,其中該電路經調適以: 自複數個音訊處理元件接收複數個波形樣本, 其中對該波形樣本求和包含在該第一音訊訊框内之各 別時間點添加自該複數個音訊處理元件接收的該等波形 樣本中之每一者。 5〇·=凊求項44之電路,其中轉移内容包含輸出表示該第一 音訊訊框内之一整體音訊編輯的一音訊樣本。 51. 如請求項44之電路,其中鎖定該等記憶體區塊包含回應 =自該外部處理器接收之—用以轉移該記憶體之該等内 容的請求而鎖定該等記憶體區塊。 52. 如請求項44之電路,其中該電路經調適以根據循環仲裁 仲裁請求以對自複數個音訊處理元件接收之波形樣本進 行求和。 53. 如請求項44之電路,其中對該波形樣本進行求和包含使 用"2π補數累積而累積該波形樣本。 54. 如請求項44之電路,其中對自一音訊處理元件接收之一 波形樣本進行求和以產生與一第一音訊訊框相關聯之一 波形和包含對自一樂器數位介面(MIDI)處理元件接收之 一 midi波形樣本進行求和以產生與一第—MIDI訊框相 關聯的一 MIDI波形和。 129792.doc
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US89642507P | 2007-03-22 | 2007-03-22 | |
US12/041,855 US7723601B2 (en) | 2007-03-22 | 2008-03-04 | Shared buffer management for processing audio files |
Publications (1)
Publication Number | Publication Date |
---|---|
TW200903449A true TW200903449A (en) | 2009-01-16 |
Family
ID=39493419
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW097109348A TW200903449A (en) | 2007-03-22 | 2008-03-17 | Shared buffer management for processing audio files |
Country Status (6)
Country | Link |
---|---|
US (1) | US7723601B2 (zh) |
EP (1) | EP2126894A1 (zh) |
JP (2) | JP2010522361A (zh) |
KR (2) | KR20120127747A (zh) |
TW (1) | TW200903449A (zh) |
WO (1) | WO2008115869A1 (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8263849B2 (en) | 2008-12-12 | 2012-09-11 | Young Chang Research And Development Institute | Flash memory based stored sample electronic music synthesizer |
JP2014092722A (ja) * | 2012-11-05 | 2014-05-19 | Yamaha Corp | 音発生装置 |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4393740A (en) * | 1979-03-23 | 1983-07-19 | The Wurlitzer Company | Programmable tone generator |
JPH0760422B2 (ja) * | 1983-12-30 | 1995-06-28 | 株式会社日立製作所 | 記憶ロツク方式 |
US6272465B1 (en) * | 1994-11-02 | 2001-08-07 | Legerity, Inc. | Monolithic PC audio circuit |
JP3267106B2 (ja) * | 1995-07-05 | 2002-03-18 | ヤマハ株式会社 | 楽音波形生成方法 |
US5895469A (en) * | 1996-03-08 | 1999-04-20 | Vlsi Technology, Inc. | System for reducing access times for retrieving audio samples and method therefor |
JP3405181B2 (ja) * | 1997-03-11 | 2003-05-12 | ヤマハ株式会社 | 楽音発生方法 |
FR2762418B1 (fr) | 1997-04-17 | 1999-06-11 | Alsthom Cge Alcatel | Procede de gestion d'une memoire partagee |
JP3518357B2 (ja) * | 1998-08-03 | 2004-04-12 | ヤマハ株式会社 | 楽音生成方法、楽音生成装置及び楽音生成処理プログラムを記録したコンピュータ読み取り可能な記録媒体 |
JP2001283594A (ja) * | 2000-03-29 | 2001-10-12 | Sharp Corp | 不揮発性半導体記憶装置 |
US7378586B2 (en) * | 2002-10-01 | 2008-05-27 | Yamaha Corporation | Compressed data structure and apparatus and method related thereto |
JP4122968B2 (ja) | 2002-12-25 | 2008-07-23 | 日本電気株式会社 | 共通資源へのアクセス方式、共通資源へのアクセス方法、及びプログラム |
JP2005316659A (ja) * | 2004-04-28 | 2005-11-10 | Matsushita Electric Ind Co Ltd | タスク間通信装置 |
US8041045B2 (en) * | 2004-10-26 | 2011-10-18 | Richard S. Burwen | Unnatural reverberation |
JP4465626B2 (ja) * | 2005-11-08 | 2010-05-19 | ソニー株式会社 | 情報処理装置および方法、並びにプログラム |
JP4973492B2 (ja) * | 2007-01-30 | 2012-07-11 | 株式会社Jvcケンウッド | 再生装置、再生方法及び再生プログラム |
JP5228432B2 (ja) * | 2007-10-10 | 2013-07-03 | ヤマハ株式会社 | 素片検索装置およびプログラム |
-
2008
- 2008-03-04 US US12/041,855 patent/US7723601B2/en not_active Expired - Fee Related
- 2008-03-17 KR KR1020127028169A patent/KR20120127747A/ko not_active Application Discontinuation
- 2008-03-17 JP JP2010501073A patent/JP2010522361A/ja not_active Withdrawn
- 2008-03-17 WO PCT/US2008/057230 patent/WO2008115869A1/en active Application Filing
- 2008-03-17 KR KR1020097022044A patent/KR20090133119A/ko active Application Filing
- 2008-03-17 TW TW097109348A patent/TW200903449A/zh unknown
- 2008-03-17 EP EP08714253A patent/EP2126894A1/en not_active Withdrawn
-
2012
- 2012-11-12 JP JP2012248468A patent/JP2013083984A/ja active Pending
Also Published As
Publication number | Publication date |
---|---|
WO2008115869A1 (en) | 2008-09-25 |
KR20120127747A (ko) | 2012-11-23 |
EP2126894A1 (en) | 2009-12-02 |
US7723601B2 (en) | 2010-05-25 |
KR20090133119A (ko) | 2009-12-31 |
US20080229912A1 (en) | 2008-09-25 |
JP2010522361A (ja) | 2010-07-01 |
JP2013083984A (ja) | 2013-05-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TW200903446A (en) | Musical instrument digital interface hardware instructions | |
KR101120969B1 (ko) | 오디오 장치에서 기준 파형들을 취출하기 위한 대역폭 제어 | |
TW200903448A (en) | Waveform fetch unit for processing audio files | |
TW200903449A (en) | Shared buffer management for processing audio files | |
TW200844977A (en) | Musical instrument digital interface hardware instruction set | |
TW200903447A (en) | Efficient identification of sets of audio parameters | |
US7663046B2 (en) | Pipeline techniques for processing musical instrument digital interface (MIDI) files | |
US7663051B2 (en) | Audio processing hardware elements | |
TW200847130A (en) | Musical instrument digital interface parameter storage | |
TW200844708A (en) | Method and device for generating triangular waves | |
CN101636781A (zh) | 用于处理音频文件的共享缓冲器管理 |