專利名稱:使用可變采樣率近似的波形表合成器及其方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種用于電子樂器的波形表合成器,尤其涉及一種使用可變采樣率近似技術(shù)降低內(nèi)存的波形表合成器及其方法。
與本發(fā)明相關(guān)的背景技術(shù)合成器是一種通過產(chǎn)生電子波形并且實時控制音響的各種參數(shù)來發(fā)出音響的電子樂器,這些音響參數(shù)包括頻率、音色、振幅、和持續(xù)時間。音響是由能生成預(yù)定波形的一個或多個振蕩器產(chǎn)生的。
目前已發(fā)展了多種類型的合成器。一種合成器是波形表合成器,它將脈碼調(diào)制(PCM)格式的聲音波形存儲到存儲器中,然后從存儲器中讀出存儲的聲音波形并且將之按定義的音響進行處理,以再現(xiàn)音響。聲音波形相當(dāng)大,并且波形表合成器通常支持對多種聲音,包括多種樂器的音符的再現(xiàn)。因此波形表合成器的問題之一是需要大量的內(nèi)存來存儲和實現(xiàn)需要的聲音庫。由于電子設(shè)備的不斷小型化,從而要求具有較小尺寸并能支持較高性能的要求成為急待解決的問題。
幸運的是,聲音波形的性質(zhì)有助于存儲容量的降低,因為聲音波形具有極大的重復(fù)性。為了節(jié)省存儲容量,在從所記錄的采樣中精確地重構(gòu)音響的同時,發(fā)展了多種策略來開發(fā)利用這種重復(fù)性。這些策略普遍涉及識別波形中的重復(fù)結(jié)構(gòu)、將被識別的重復(fù)結(jié)構(gòu)的特征化,從所存儲的波形中除去特征化的結(jié)構(gòu)。一旦音響重構(gòu),特征化的結(jié)構(gòu)合成為音響信號。通過減少相應(yīng)設(shè)備的采樣率節(jié)省了存儲空間。某些設(shè)備不要求高采樣率,所以,使用一個低頻設(shè)備以低采樣率有選擇地重復(fù)對波形的采樣,可以減少存儲空間。
只有當(dāng)一個系統(tǒng)包含大存儲容量(通常一兆字節(jié))的存儲器、并且有一個以上的集成電路芯片時,采用波形表音頻合成才能獲得高品質(zhì)的音響重現(xiàn)。但是,這種高品質(zhì)的波形表合成系統(tǒng)在消費型電子學(xué)、消費型多媒體計算機系統(tǒng)、游戲機、便宜的樂器和音樂設(shè)備數(shù)字接口(MIDI)音響模塊領(lǐng)域的價格過于昂貴。
因此,所需要的是一種可以大幅度地減縮存儲器容量、減少開支,并且同時獲得出色的音響保真度的波表合成器。
發(fā)明綜述依據(jù)本發(fā)明,一個可變采樣率近似技術(shù)被用于波形表合成器中音樂信號的編碼和重構(gòu)。多數(shù)音響本質(zhì)上包含一個大能量的快速傳遞,然后便是隨時間衰減的振動,所以音樂音響的帶寬要求隨時間的流逝而變窄。
依據(jù)本發(fā)明的一個特性,音樂音響分為兩類即持續(xù)音響和打擊音響。持續(xù)音響由持續(xù)設(shè)備產(chǎn)生,包括拉奏和吹奏(弦、銅管、和木管)的聲音。持續(xù)音響從如一個振動簧片、振動口緣、或弓在弦上的滑動這樣的噪聲能量源中產(chǎn)生。持續(xù)設(shè)備使用噪聲激勵,然后持續(xù)由噪聲激勵產(chǎn)生的音響。弦被拉奏時可以產(chǎn)生持續(xù)音響,而弦被撥奏時產(chǎn)生打擊音響。持續(xù)和沖擊設(shè)備具有本質(zhì)不同的波形特性,但是對于減小存儲容量而言,其情況比較類似。一個沖擊設(shè)備也是噪音源,當(dāng)持續(xù)設(shè)備維持所有頻率音響信號幾乎相等時,產(chǎn)生高頻快速衰減的音響信號。打擊音響的高頻成分比持續(xù)音響的高頻成分更類似于噪聲。打擊音響的頻譜組成通常不是調(diào)諧相關(guān)的,且其頻率和振幅常常隨著時間的消逝而衰落。
由于音響的本質(zhì)特性,編碼持續(xù)音響傳統(tǒng)上使用大量的存儲器內(nèi)存,持續(xù)音響很緩慢地趨于穩(wěn)定態(tài),以致采樣要經(jīng)過一個長時間間隔獲得。進而,大部分持續(xù)音響的高頻部分很大,以致不得不對信號進行頻繁采樣。另外,在持續(xù)音響的初始階躍部分,頻譜包絡(luò)很高階,以致獲得一個完整包絡(luò)需要長的時間間隔。
依據(jù)本發(fā)明,采用一個可變采樣率技術(shù)開發(fā)利用持續(xù)音響和打擊音響的聲特征間的相似性,從而大幅減少波形表合成器的內(nèi)存。
依據(jù)本發(fā)明的一個實施例,通過以低采樣率采樣一個音樂信號來開發(fā)利用音樂信號的本質(zhì)特性,然后,加入一個用高通濾波器和人造包絡(luò)產(chǎn)生的音樂信號波形使高頻成分重構(gòu)。
依據(jù)本發(fā)明,波形表合成器通過某種技術(shù)的實施縮減了對波形表采樣存儲的要求。在此技術(shù)中,被編碼的持續(xù)音響被分離為兩個分離的頻帶,一個低頻帶和一個高頻帶。每個頻帶使用標準波形表方法產(chǎn)生。隔離頻率,即兩個頻帶之間的分隔點被選擇,以致高頻帶的頻譜分量接近恒定。高頻帶的單周期間隔采樣按預(yù)定采樣率采樣并且被存儲起來。對于波形表合成器而言低頻帶以一個比典型采樣率低得多的預(yù)選采樣率采樣,以致可以使用較少的存儲容量獲得頻譜的長范圍展開。信號的頻譜分量在回播一個被記錄的組合波形時被重構(gòu),組合波形包括一個低頻分量和一個定型高頻帶信號。通過低通濾波一個音樂信號并使用標準波形表合成器方法產(chǎn)生波形的低頻分量,進而找出被低通濾波的音樂信號的穩(wěn)定周期,并且記錄到達和通過穩(wěn)定周期的采樣。高頻帶信號加到重構(gòu)的信號上,作為持續(xù)音響的一個定型高頻噪聲發(fā)生器。
所述的波形表重構(gòu)技術(shù)以增加計算負載為代價,大幅度地縮減波形表合成器的存儲容量。因為需要計算兩個頻帶,即高頻帶和低頻帶,而不是一個頻帶,所述波形表合成技術(shù)的計算負載近似為常規(guī)方法計算量的兩倍。
在本發(fā)明的典型實施例中,高頻帶和低頻帶的計算是獨立地和同時地使用兩個波形表器處理的。一個單波形表機串行處理計算,緩沖寄存至少一個已處理信號,并且混合串行計算的信號。術(shù)語“機”通常指用于控制特定功能的控制器或狀態(tài)機。
在本發(fā)明的典型實施例中,一個音響信號被分成兩個分離的頻率范圍,一個高頻區(qū)域和一個低頻區(qū)域。在某些實施例中,波形表合成器將音響信號劃分成多個分離的頻率區(qū)域,并且依據(jù)所要實現(xiàn)的音頻信號從多個區(qū)域中重新組合信號。
依據(jù)本發(fā)明的一個特性,為存儲和實現(xiàn)打擊音響,采用了一種可變采樣率波形表合成器技術(shù)縮減波形表采樣存儲器容量。一個音響信號被劃分成兩個分離的頻帶,包括一個高頻帶和一個低頻帶。每個頻帶信號使用標準波形表方法編碼。對于一個選定的短間隔,以高采樣率對高頻帶進行采樣。由于高頻帶信號會快速衰減或變?yōu)殪o態(tài),所以短間隔是可能的,因此可以采用一個小存儲容量。低頻帶信號以實質(zhì)上更寬的間隔采樣,從而允許信號對于時間擴展,以獲得微小的頻譜變化,這種微小的頻譜變化通過過濾一個音樂信號的靜態(tài)采樣是難以重新生成的。選擇頻帶間的劃分點,即隔離頻率,以使快速衰減噪音信號分量從沖擊信號諧波部分的微小頻譜包絡(luò)中被分離。為實現(xiàn)打擊音響,與標準波形表合成技術(shù)相比,可變采樣率波形表合成技術(shù)進行大約兩倍的計算負載,并且大幅度地減少了波形表存儲要求??勺儾蓸勇什ㄐ伪砗铣杉夹g(shù)應(yīng)用于打擊音響時,不會使音響質(zhì)量有本質(zhì)性的降低。
通過所述波形表合成器和其操作方法可以獲得許多好處。一個基本的好處是在獲得出色的音響保真度的同時,可以大大減少采樣只讀存儲器和有效隨機存取存儲器的存儲容量。大幅度降低只讀存儲器和隨機存取存儲器容量的結(jié)果來自于低采樣率和小的數(shù)據(jù)通路寬度。有效隨機存取存儲器容量和數(shù)據(jù)通路寬度通過內(nèi)部采樣減少和后續(xù)的恢復(fù)采樣率而得以實現(xiàn)。降低只讀存儲器和隨機存取存儲器容量以及減少數(shù)據(jù)通路寬度的結(jié)果導(dǎo)致整個電路使用較小元件,并且使整個電路尺寸減小。在某些實施例中,為了益于儲存功率和改進信號保真度而采用更低的采樣率。
附圖的簡要說明本發(fā)明涉及的結(jié)構(gòu)和操作方法的實施例,可以通過參照下列的附圖和說明得到最好理解。
圖1A和1B是示意框圖,示出了根據(jù)本發(fā)明的一種波形表合成器設(shè)備的兩個高級框圖。
圖2是一個流程圖,例舉了用于子帶聲音采樣編碼方法的實施例。
圖3是一個曲線圖,示出了用于圖2所例舉的方法中的采樣生成低通濾波器的頻率響應(yīng)。
圖4是一個電路示意框圖,示出了一種用作低通環(huán)路強制濾波的梳狀濾波器的實施例。
圖5是顯示選擇因數(shù)α隨時間的典型修正曲線圖。
圖6是一個示意框圖,顯示一個音樂設(shè)備數(shù)字接口編譯器與圖1所示的波形表合成器裝置中的音調(diào)發(fā)生器及效果處理器的各種只讀存儲器和隨機存取存儲器結(jié)構(gòu)的連接。
圖7示出了圖1所示的波形表合成器裝置中的音調(diào)發(fā)生器的示意框圖。
圖8示出了用于圖7所示的音調(diào)發(fā)生器中的12分接插值濾波器的頻率響應(yīng)曲線圖。
圖9示出了圖7所示的音調(diào)發(fā)生器的采樣抓取器的操作流程圖。
圖10示出了圖7所示的音調(diào)發(fā)生器中的先進先出(FIFO)緩沖存儲器構(gòu)成。
圖11示出了圖1所示的波形表合成器裝置中的效果處理器的一實施例。
圖12是一個直觀示意圖,示出了用在圖11中的效果處理器中的線性反饋移位寄存器(LFSR)的一個實施例。
圖13是一個狀態(tài)-空間濾波器電路示意圖,用于圖11所描述的效果處理器中。
圖14是一個描述應(yīng)用于音符信號的振幅包絡(luò)函數(shù)的曲線圖。
圖15是一個示意框圖,表示了一個頻道效應(yīng)狀態(tài)機。
圖16是一個示意框圖,例舉了一種和聲處理電路的組件。
圖17是一個示意框圖,例舉了一個混響處理電路的構(gòu)成組件。
本發(fā)明的較佳實施例參照圖1A和圖1B,這兩個示意框圖例舉了波形表合成器裝置100的兩個實施例的高級框圖,它們訪問個存儲器所存儲的波形表數(shù)據(jù),并且形成一個多重聲音的音樂信號。與通常的波形表合成器相比,波形表合成器裝置100的存儲器存儲容量得到大幅度縮減。在一種實施例中,只讀存儲器的存儲容量減至小于0.5兆字節(jié)(Mbyte)的量值,例如約為300千字節(jié)(Kbyte),隨機存取存儲器的存儲容量減至近似為1千字節(jié)(Kbyte)的量值;與此同時,使用此處披露的多存儲器保存技術(shù)產(chǎn)生了一個高質(zhì)量音頻信號。在所例舉的方案中,波形表合成器裝置100支持32種聲音。多數(shù)樂器的每個音符均與波形表合成器裝置100產(chǎn)生的聲音相對應(yīng),并且被分解成兩個分量,即一個高頻分量和一個低頻分量。因此,對于32種聲音中的每個聲音,兩個頻率分量由64種獨立操作實現(xiàn)。一個操作符表示一個單獨的波形數(shù)據(jù)流,并且相應(yīng)于一種聲音的一個頻率分量。在某些情況中,使用多于兩個頻帶的采樣再生成一個音符,使得少于32個的分離音得以偶而被處理。在某些情況下,兩個以上的頻帶采樣被用于再生成一個音符。在其他情況下,單頻帶信號已足以產(chǎn)生一個音符。
偶而,全部操作符播放由兩個或更多操作符構(gòu)成的聲音,致使一個完整32聲音不能得到支持。為了適應(yīng)這種情況,應(yīng)確定音調(diào)響的最小貢獻值,并且在具有此最小貢獻的音符在一條新的“音符啟動”消息被要求時中斷。
使用多個獨立操作還促進了波形表合成器中的分層和勻滑轉(zhuǎn)換技術(shù)的實現(xiàn)。許多音響和音響效果是多個簡單聲音的合成。分層是一種將處于同一時刻的幾個波形進行合成的技術(shù)。當(dāng)一個音響分量用于多重音響中時,節(jié)省了存儲器內(nèi)存。勻滑轉(zhuǎn)換是一種類似于分層的技術(shù)。使用兩個或更多的振幅隨時間變化的分量音響能重構(gòu)許多隨時間變化的音響。當(dāng)某些音響以某個特定分量音響開始,并隨時間變?yōu)榱硪粋€不同的分量音響時,產(chǎn)生了勻滑轉(zhuǎn)換。
波形表合成器裝置100包括一個音樂設(shè)備數(shù)字接口編譯器102,一個音調(diào)發(fā)生器104,一個采樣只讀存儲器(ROM)106,和一個效果處理器108。通常,音樂設(shè)備數(shù)字接口編譯器102接收一個輸入音樂設(shè)備數(shù)字接口串行數(shù)據(jù)流,分析數(shù)據(jù)流,從采樣只讀存儲器106中抽取相關(guān)信息,并且傳送相關(guān)信息到音調(diào)發(fā)生器104和效果處理器108中。
在一個實施例中,如圖1A所示,通過系統(tǒng)總線122從主處理器120中獲取音樂設(shè)備數(shù)字接口串行數(shù)據(jù)流。典型的主處理器120是一種類似于PentiumTM處理器或Pentium ProTM處理器的x86處理器。例如,典型的系統(tǒng)總線122是一個ISA總線。
在第二個實施例中,如圖1B所示,從類似于游戲機這種裝置的鍵盤130上接收音樂設(shè)備數(shù)字接口串行數(shù)據(jù)流。
采樣只讀存儲器106以聲音音符的形式存儲波形表音響信息采樣,聲音音符被編碼為一個脈碼調(diào)制波形,并被分解為相互分離的一個高頻帶和一個低頻帶。將一個音符分解為兩個頻帶,使執(zhí)行的操作符數(shù)量加倍。然而,附加操作符引起的缺點超出了大幅度縮減存儲器存儲容量所帶來的補償,大幅度縮減存儲容量是通過在低頻帶和高頻帶間采用適當(dāng)選擇的分頻實現(xiàn)的。
由于高頻頻譜成為對于正確選取頻分界限幾乎為一常數(shù),以致由高頻帶信號的一個單周期采樣能重構(gòu)該高頻帶,故對于持續(xù)音響而言,可以大幅度縮減內(nèi)存。隨著高頻分量的消除,對低頻帶以較低采樣率采樣,并且用較少內(nèi)存存儲一個低頻帶信號的長頻譜包絡(luò)。
對于打擊音響,由于高頻成分快速衰減或成為靜態(tài),因此一個高頻帶即使以高采樣率采樣,也能實現(xiàn)大幅度縮減內(nèi)存。消除高頻分量并且以遠長于高頻采樣時間時隔用較低采樣率對低頻帶進行采樣,以便重構(gòu)精細頻譜變化,這種變化通過對一個靜態(tài)波形進行濾波及對該波形加入濾波后的靜態(tài)信號分量的方法是難以恢復(fù)的。
無論采樣是高頻帶分量或是低頻帶分量,存儲在采樣只讀存儲器106中的脈碼調(diào)制波形被信號的頻譜成分所決定的最低可能采樣率采樣。在某些實施例中,以最低可能采樣率采樣能大幅度縮減隨機存取存儲器、各種緩沖存儲器、及用于保持采樣值的先進先出緩沖存儲器的存儲容量,縮減數(shù)據(jù)通道寬度,并由此減小電路尺寸。為了將高頻帶和低頻帶成分恢復(fù)為統(tǒng)一的采樣率,在處理前,各個采樣被順序插值。
音樂設(shè)備數(shù)字接口編譯器102以31.25千波特(KBaud)的確定速率接收一個音樂設(shè)備數(shù)字接口串行數(shù)據(jù)流,轉(zhuǎn)換串行數(shù)據(jù)為并行數(shù)據(jù)形式,并且將音樂設(shè)備數(shù)字接口并行數(shù)據(jù)分為音樂設(shè)備數(shù)字接口命令和數(shù)據(jù)。音樂設(shè)備數(shù)字接口編譯器102從數(shù)據(jù)中分離音樂設(shè)備數(shù)字接口命令、解釋音樂設(shè)備數(shù)字接口命令、將數(shù)據(jù)格式化為控制信息供音調(diào)發(fā)生器104和效果處理器108使用、以及在音樂設(shè)備數(shù)字接口編譯器102與音調(diào)發(fā)生器104和效果處理器108的各種隨機存取存儲器(RAM)和只讀存儲器構(gòu)件之間傳送數(shù)據(jù)和控制信息。音樂設(shè)備數(shù)字接口編譯器102產(chǎn)生的控制信息包括供音調(diào)發(fā)生器104使用的音樂設(shè)備數(shù)字接口音符數(shù)、采樣數(shù)、調(diào)音、音調(diào)彎曲(Pitch bend)、和顫音。音樂設(shè)備數(shù)字接口編譯器102產(chǎn)生的控制信息還包括供效果處理器108使用的頻道音量、左轉(zhuǎn)向和右轉(zhuǎn)向、混響、及和聲。并且,音樂設(shè)備數(shù)字接口編譯器102為音響合成處理協(xié)調(diào)預(yù)置控制信息。
通常,音調(diào)發(fā)生器104以與原始記錄采樣率相等的采樣率從采樣只讀存儲器106中采樣。由于音調(diào)發(fā)生器104改變采樣率,采用音調(diào)發(fā)生器104合成音符顫音效果。音調(diào)發(fā)生器104還對供效果處理器108使用的各個采樣進行插值處理。
尤其是,音調(diào)發(fā)生器104以所需的音樂設(shè)備數(shù)字接口音符數(shù),及考慮調(diào)音、顫音和音調(diào)彎曲效果而確定的采樣率,從采樣只讀存儲器106中讀取原始采樣值。為了同步效果處理器108使用的采樣,音調(diào)發(fā)生器104通過將原始采樣率插值到一個44.1KHz的常數(shù)采樣率中實現(xiàn)采樣率轉(zhuǎn)換。插值的采樣被存儲在音調(diào)發(fā)生器104和效果處理器108之間的一個緩沖存儲器110中。
通常,效果處理器108將諸如時變?yōu)V波、包絡(luò)生成、音量、音樂設(shè)備數(shù)字接口特定轉(zhuǎn)向、和聲、及混響的效果加入數(shù)據(jù)流,并且產(chǎn)生以恒定速率執(zhí)行的操作符及頻道特定控制。
效果處理器108接收插值后的采樣并加入諸如音量、轉(zhuǎn)向、和聲、以及混響之類的效果,同時通過包絡(luò)生成和濾波操作提高音響生成質(zhì)量。
參照圖2,流程圖例舉一種實施例方法,該方法由一個采樣編碼編輯器對包括持續(xù)音響、打擊音響、和其它音響在內(nèi)的音響進行子帶聲音采樣編碼。此方法涉及多個步驟,包括一個第一低通濾波步驟210、一個第二低通濾波器步驟220、一個高通濾波步驟230、一個可選擇的低通循環(huán)強制濾波步驟240、一個低通循環(huán)步驟250、一個可選擇的高通循環(huán)強制濾波步驟260、一個高通循環(huán)步驟270、一個分量采樣步驟280、及各種重構(gòu)參數(shù)校準步驟290。
第一低通濾波步驟210用于對高頻帶的采樣率設(shè)置一個上限,從而確音調(diào)頻信號再現(xiàn)的最大全保真度。由于支持8位脈碼調(diào)制數(shù)據(jù),波形表合成器裝置100保持最大頻譜分量的50dB信噪特性。用于高頻帶的采樣率上限決定了第一低通濾波器的頻率特征。
圖3是一種適當(dāng)采樣生成低通濾波器(未示出)的頻率響應(yīng)曲線圖。在示出的實施例中,用于產(chǎn)生采樣的濾波器是2048抽頭有限脈沖響應(yīng)(FIR)濾波器,它是通過將一個上升的余弦窗口作用于一個正弦函數(shù)而實現(xiàn)的。由采樣編輯器確定的截止頻率(在所述例子中為5000Hz)生成一組由濾波程序訪問的系數(shù)。在此例中,余弦窗口內(nèi)的系數(shù)為0.42、-0.5、和+0.08。
第二低通濾波步驟220產(chǎn)生低頻帶信號,該信號被編碼成音響的基本分量。第二級低通濾波器步驟220的截止頻率的選擇多少有些任意性。選擇較低的截止頻率有利于生成一個采樣較少的低頻帶信號,不利之處在于增加了對高頻帶信號編碼的困難。較高的截止頻率選擇值有利于減少對高頻帶信號編碼的困難,而缺點是節(jié)省的內(nèi)存少。一種合適的技術(shù)是先選擇一個進入高頻帶信號的截止頻率,此截止頻率決定了大于35dB衰減的各個頻率分量位置。為了產(chǎn)生一個具有恒定振幅的信號,在一個包絡(luò)整形子步驟222中,第二低通濾波器的輸出通過一個可變增益階段。
包絡(luò)整形子步驟222涉及壓縮,并且將一個人造包絡(luò)用于一個采樣波形。如果對初始音響在振幅上進行人為整形或平滑,隨時間衰減的音響通常能循環(huán)。如果重放時再現(xiàn)初始衰減,包絡(luò)的應(yīng)用允許用一個經(jīng)過循環(huán)的未衰減音響來近似一個衰減音。
第二低通濾波器步驟220的輸出信號以與初始信號相同的振幅涵蓋大部分動態(tài)量程。對于以8位脈碼調(diào)制格式編碼的采樣,量化噪聲隨著信號強度減弱變得有害了。為了保持相對于量化噪聲的高信號強度,在假設(shè)信號衰減是伴隨自然過程產(chǎn)生的、近似為指數(shù)衰減的前提下,包絡(luò)整形子步驟222整形衰減信號。
包絡(luò)整形子步驟222首先近似衰減信號包絡(luò)224。20微秒的窗口被檢查,并且每個窗口被賦與一個包絡(luò)值,用以表示該窗口的最大信號變化范圍。隨后,包絡(luò)整形子步驟222使用范圍在0.02到1.0間的指數(shù)值(例如,對于一個窗口起始處的信號),尋找純指數(shù)衰減226的最佳近似。記錄該最佳指數(shù)擬合以用于重構(gòu)。然后,包絡(luò)整形子步驟222用一個逆包絡(luò)228處理聲音采樣,以構(gòu)成一個近似平整的信號。此近似平整的信號由所記錄的包絡(luò)重構(gòu)以逼近初始波形。
高通濾波器步驟230是對第二低通濾波器步驟220的補充,并且使用相同的截止頻率。信號的高通部分被放大以保持最大信號強度。
循環(huán)是一種波形表處理方式,在此方式中只存儲一個已音調(diào)音響波形的前部,而消除整個波形的存儲。多數(shù)的已音調(diào)音響是暫時冗余的,其中,已音調(diào)音響的時域波形經(jīng)一定時段后重復(fù)或近似重復(fù)。子帶編碼方法包括涉及低通環(huán)路強制濾波步驟240、低通環(huán)路步驟250、任選高通環(huán)路強制濾波步驟260、及高通環(huán)路步驟270的若干個循環(huán)步驟。
任擇的高通環(huán)路強制濾波步驟260最適合于對借助精細調(diào)音永遠不能變?yōu)橹芷谝舻囊繇戇M行編碼以迫使聲音信號成為周期性的。多數(shù)打擊音響永遠不能變?yōu)橹芷谝簟F渌繇懸仓挥薪?jīng)過一個很長的時段后才變?yōu)橹芷谝?。低通環(huán)路強制濾波步驟240被應(yīng)用于由第一低通濾波步驟210、第二低通濾波步驟220、及高通濾波步驟230產(chǎn)生的采樣波形。低通環(huán)路強制濾波步驟240被用于產(chǎn)生一個合適的幾乎周期性的波形,此波形經(jīng)一個循環(huán)后波再次生成并被演奏而未引入可聽見的令人不快的結(jié)果。
由于不和諧的高頻頻譜成分,無周期波形通常具有一種無周期形式。高頻成分比低頻成分衰減更快,致使借助環(huán)路在較長時間周期內(nèi)逐漸促使一個波形循環(huán)。對于不同的設(shè)備和音響,循環(huán)時間是變化的。在先有技術(shù)的波形表合成方法中,各種波形的循環(huán)過程和特性是眾所周知的。低通環(huán)路強制濾波步驟240使用一種具有隨時間變化選擇性的梳狀濾波器,以加速從無周期波形中去除非諧波頻譜成分。在一個實施例中,循環(huán)強制過程是人工控制的,如果選擇性增長太快,梳狀濾波器的操作是可聽見的。典型地,如果濾波周期選擇為所需音符基頻的整數(shù)倍,低通環(huán)路強制濾波的功能最佳。根據(jù)促進波形循環(huán)而又不引入令人不快的聲音的原則選擇系數(shù)。
圖4是一個示意方框電路圖,例舉了作為低通環(huán)路強制濾波使用的梳狀濾波器400的實施例。循環(huán)的概念與為測定信號重復(fù)周期所作的采樣和分析有關(guān)。除信號采樣和分析外,低通環(huán)路強制濾波還包括低通濾波。有幾種規(guī)則被用來確定是否已找到一個周期。第一種規(guī)則是,周期是由波形上跨越一個直流電平或零振幅電平的兩個點限定的,并且兩點的導(dǎo)數(shù)在一定范圍內(nèi)視為相等。第二種規(guī)則是,此周期或等于采樣基頻周期或為基頻周期的整數(shù)倍。
梳狀濾波器400有一個可變增益,并且被用作一個周期強制濾波器。梳狀濾波器400包括一個延遲線402、一個反饋放大器404、一個輸入放大器406、和一個加法器408。一個輸入信號作用在輸入放大器406的一個輸入端。一個來自延遲線402的反饋信號作用于反饋放大器404的輸入端。一個來自輸入放大器406的放大輸入信號和一個來自饋放大器404的放大反饋信號分別作用于加法器408。延遲線402接收來自加法器408的放大輸入信號與放大反饋信號的疊加信號。來自梳狀濾波器400的輸出信號是來自加法器408的輸出信號。反饋放大器404具有一個時變選擇性因子α。輸入放大器406具有一個時變選擇性因子α-1。
梳狀濾波器400有兩個設(shè)計參數(shù),以采樣頻率(44.1KHz)采樣時的延遲線402的尺寸N及一個時變選擇性因子α。具有代表性地,選擇N或使得濾波的周期等于預(yù)期音符的基頻周期,或使得濾波的周期為基頻周期的整數(shù)倍。將選擇性因子α隨時間的變化模擬為一組線段。在圖5中描述了選擇性因子α,選擇性因子α通常以零為初值并且逐漸增加。隨著選擇性因子α的增加,信號諧波含量的電平逐漸減小。選擇性因子α的一個典型終值是0.9。
再參照圖2,低通環(huán)路步驟250與一個傳統(tǒng)的波形表采樣產(chǎn)生過程一致。所有熟知的常規(guī)和傳統(tǒng)的波形表采樣產(chǎn)生方法可應(yīng)用于低通環(huán)路步驟250。這些方法通常采用如下步驟采樣一個聲頻信號,經(jīng)過一個恰當(dāng)?shù)牟蓸訒r間周期進行循環(huán)采樣以確定一個時域波形的重復(fù)周期,保存整個周期的采樣。為了實現(xiàn)音響重構(gòu),當(dāng)進行采樣時,在一個完整循環(huán)周期內(nèi)保存的波形采樣從存儲器中重復(fù)讀出、處理、和執(zhí)行。
可任選的高通環(huán)路強制濾波步驟260類似于低通環(huán)路強制濾波步驟240,但在音頻的高頻分量執(zhí)行操作。高通環(huán)路強制濾波步驟260作用于從高通濾波器步驟230產(chǎn)生的采樣波形。高通環(huán)路強制濾波步驟260使用圖4所示的具有隨時間變化選擇性的梳狀濾波器400,以加速從無周期波形中去除非諧波頻譜成分。使用以采樣頻率采樣的延遲線402量值N和適合于高頻帶采樣的時變選擇性因子α操作梳狀濾波器400。
除了在音頻的高頻分量執(zhí)行的操作不同以外,高通環(huán)路步驟270類似于低通環(huán)路步驟250。高通環(huán)路步驟270作用于從高通環(huán)路強制濾波步驟260產(chǎn)生的采樣波形。
分量分樣步驟280是采樣生成的一個向下采樣操作。因為以一個高采樣率易于產(chǎn)生音頻信號中重復(fù)頻率結(jié)構(gòu),故優(yōu)先于分量分樣步驟280的子帶話音采樣編碼步驟以原始音頻信號采樣率執(zhí)行,例如44.1Hz。為了節(jié)省采樣只讀存儲器只讀存儲器106中的內(nèi)存,在分量分樣步驟280降低采樣率,產(chǎn)生包含一個具有降低的采樣率的低頻帶波形和高頻帶波形的兩個循環(huán)脈碼調(diào)制波形,即產(chǎn)生的循環(huán)脈碼調(diào)制波形與低通環(huán)路步驟250和高通環(huán)路步驟270產(chǎn)生的循環(huán)信號相同。
為波形表合成器制備波形時,一個目標是將一個聽不見的循環(huán)引入波形。如果在引入循環(huán)之處插入的波形是連接的、波形的一階導(dǎo)數(shù)(斜率)也是連續(xù)的、波形振幅幾乎為常數(shù)、循環(huán)量值與音頻基頻的整數(shù)倍匹配的條件下,循環(huán)是聽不見的。當(dāng)以原始音響信號采樣率(例如44.1Hz)對波形進行過量采樣時,滿足上述要求的波形最易于找到。當(dāng)大幅度縮減用于存儲采樣樣品的內(nèi)存容量時,分量分樣步驟280用于產(chǎn)生一個其音響類似于低頻帶和高頻帶循環(huán)采樣的波形,該低頻帶和高頻帶循環(huán)采樣分別由低通環(huán)路步驟250和高通環(huán)路步驟270產(chǎn)生。
分量分樣步驟280包括若干子步驟確定十取一比282、在十取一采樣時產(chǎn)生一個整數(shù)循環(huán)量值的音調(diào)移位284、產(chǎn)生整數(shù)循環(huán)結(jié)束點的置零286、采樣288、和計算虛擬采樣率289。確定十取一比282的步驟涉及基于如圖8所示的插值濾波器的操作特性的十取一比選擇。用來確定十取一比的轉(zhuǎn)移帶802的低頻邊界為0.4fs。十取一比由初始濾波步驟限定,并且當(dāng)使用插值濾波器時,濾波頻率選擇為有效。
之后以采用音調(diào)移位和插值節(jié)省內(nèi)存,是因為樂器的音質(zhì)(音色)不會隨音符的小變化而產(chǎn)生劇烈改變。相應(yīng)地,當(dāng)以一個微小差別采樣率重構(gòu)音響時,采用音調(diào)移位和插值可以允許用所記錄的波形代替類似于原始音響的音符。盡管大音調(diào)移位產(chǎn)生諸如一個高調(diào)顫音這樣的能聽見的作品但移位和插值對于小音調(diào)移位是有效的。
音調(diào)移位步驟284用立方插值移位音符以產(chǎn)生一個基于十取一采樣的整數(shù)循環(huán)量值。在一個所述實施例中采用音調(diào)移位284,是因為示范的波形表合成器裝置100只支持整數(shù)循環(huán)量值。波形表合成器的其它實施例不受限于整數(shù)循環(huán)量值,故省略音調(diào)移位步驟284。在一個例子中,一個具有44.1KHz采樣率的37個采樣長度的循環(huán)以分樣比4進行采樣,得到的循環(huán)長度值為9.25。所述的波形表合成器裝置100不支持非整數(shù)循環(huán)長度。因此,采用立方插值用音調(diào)移位步驟284對波形的頻率音調(diào)移位1.02777因子,以產(chǎn)生一個以44.1KHz采樣并具有以36個采樣作為一個周期的新波形。
如果被處理的波形的循環(huán)點不能被分樣比整分,使用置零步驟286為了充分移動波形使得循環(huán)點能由分樣比整分,將零值加入采樣波形的起始處。
十取一步驟288采用波形中廢棄采樣產(chǎn)生一個具有降低采樣率的新波形。廢棄采樣數(shù)由確定十取一比步驟282中所確定的十取一比確定。例如,從插入零步驟286得到的一個36采樣波形以4分樣比進行采樣,使每4個采樣中的第四個采樣被保留,并且其它采樣被丟棄。
一個虛擬采樣率計算步驟289用于調(diào)整虛擬采樣率,以致由一個再生成的信號再現(xiàn)重構(gòu)原始采樣信號的音符。進行該計算是為了適應(yīng)音調(diào)移位步驟284帶來的頻率變化。例如,如果一個原始音符具有1191.89Hz的頻率,并且以1.027777調(diào)節(jié)產(chǎn)生一個循環(huán)量值36,則聲音的頻率被移位到1225Hz。當(dāng)一個具有11025Hz采樣率的重構(gòu)波形以9個采樣的循環(huán)量值播放時,該聲音的音符為1225Hz。為了再現(xiàn)1191.89Hz的原始聲音頻率,重構(gòu)波形的虛擬采樣頻率以1.027777進行下調(diào),以致新波形的虛擬采樣率為10727Hz而且其循環(huán)量值為9,進而產(chǎn)生一個1191.89Hz音符的聲音。
按照需要或為了節(jié)省內(nèi)存,各種的重構(gòu)參數(shù)調(diào)整步驟290可在逐個音符的基礎(chǔ)上有選擇地改進采樣。當(dāng)應(yīng)用于持續(xù)音響或打擊音響時,可變采樣率的波形表合成技術(shù)對用于特定聲音信號的各種執(zhí)行參數(shù)進行認真選擇以獲得高品質(zhì)音響。這些執(zhí)行參數(shù)包括頻率離、頻率濾波、采樣間隔等等。
例如,如果采用人工可變?yōu)V波,則一個波形將偶而產(chǎn)生一個改善的重構(gòu)聲音。在另一個例子中,如果單個采樣被一個采樣中的多個頻帶或甚至多個樂器分享,則可以節(jié)省內(nèi)存。一個波形共享的特殊例證存在于普通音樂設(shè)備數(shù)字接口說明書中,在其中,定義了四個鋼琴,包括一個三角鋼琴。通過改變一個或多個重現(xiàn)參數(shù)使用于所有四個鋼琴的一個波形相同,雖然每個鋼琴所產(chǎn)生的音響不同。
在另一個例中,有兩個參數(shù)控制隨時間變化的濾波器的初始濾波截止頻率。一個參數(shù)根據(jù)音的力度減小濾波截止頻率。播放的音越柔和,初始截止頻率就越低。第二個參數(shù)根據(jù)一個音的音調(diào)移位量調(diào)節(jié)初始截止頻率,隨著一個音的音符向上移位時,截止頻率降低。向下的音調(diào)移位產(chǎn)生一個較強的諧波成分。調(diào)節(jié)第二個參數(shù)促進了平滑音色通過分音傳送。
參照圖6,一個示意框圖示出了音樂設(shè)備數(shù)字接口編譯器102與各種音調(diào)發(fā)生器104和效果處理器108的隨機存取存儲器和只讀存儲器結(jié)構(gòu)的連接。音樂設(shè)備數(shù)字接口編譯器102直接與一個音樂設(shè)備數(shù)字接口編譯器只讀存儲器602連接,并且通過一個音樂設(shè)備數(shù)字接口編譯器隨機存取存儲器機606與一個音樂設(shè)備數(shù)字接口編譯器隨機存取存儲器604相連接。音樂設(shè)備數(shù)字接口編譯器隨機存取存儲器機606通過一個先進先出存儲器610和一個音調(diào)發(fā)生器數(shù)據(jù)機612向音調(diào)發(fā)生器隨機存取存儲器608提供數(shù)據(jù)。音樂設(shè)備數(shù)字接口編譯機隨機存取存儲機機606和音調(diào)發(fā)生器數(shù)據(jù)機612是控制效果處理的典型控制器或狀態(tài)機。音樂設(shè)備數(shù)字接口編譯器隨機存取存儲器機606通過先進先出存儲器616和效果處理器數(shù)據(jù)機618向效果處理器隨機存取存儲器614提供數(shù)據(jù)。音樂設(shè)備數(shù)字接口編譯器隨機存取存儲器機606通過先進先出存儲器620和效果處理數(shù)據(jù)機618從效果處理器隨機存取存儲器614接收數(shù)據(jù)音樂設(shè)備數(shù)字接口編譯器只讀存儲器602響應(yīng)“音符啟動”(Note On)命令向音樂設(shè)備數(shù)字接口編譯器102提供用于編譯音樂設(shè)備數(shù)字接口命令和格式數(shù)據(jù)的信息。音樂設(shè)備數(shù)字接口編譯器只讀存儲器602包括設(shè)備信息、音符信息、操作信息、及一個音量/表達查找表。
設(shè)備信息是針對特定設(shè)備的。在音樂設(shè)備數(shù)字接口編譯器只讀存儲器602的設(shè)備信息部分,給波形表合成器裝置100支持的每個設(shè)備分配一個入口,并且對其進行編碼。一個設(shè)備的設(shè)備信息包括(1)多重采樣的總的或最大采樣數(shù);(2)和聲度缺??;(3)混響度缺??;(4)左平移/右平移缺??;及(5)音符信息指針。多重采樣數(shù)為樂器向音樂設(shè)備數(shù)字接口編譯器102提供可行的采樣數(shù)。和聲度缺省為效果處理器108的處理操作指定一個和聲缺省量,此和聲是為樂器生成的?;祉懚热笔樾Ч幚砥?08的處理操作指定一個混響缺省量,此混響是為樂器生成的。左平移/右平移缺省指定一個缺省平移位置,通常用于沖擊樂器。音符信息的指針指向音符信息中的第一入口,該音符信息對應(yīng)于一個樂器的多重采樣。多重采樣數(shù)參數(shù)確定了與一臺樂器相關(guān)的第一入口之后的其它入口。
音符信息包含特定于每個多重采樣音符的信息,并包括(1)最大音調(diào);(2)固有音調(diào);(3)操作數(shù);(4)包絡(luò)量度標志;(5)操作符只讀存儲器(OROM)/效果只讀存儲器(EROM)指針;及(6)時變?yōu)V波操作符參數(shù)(FROM)指針。最大音調(diào)對應(yīng)于最大音樂設(shè)備數(shù)字接口關(guān)鍵值、音樂設(shè)備數(shù)字接口“音符啟動”命令的一部分,為實現(xiàn)最大音調(diào)采用特定的多重采樣。固有音調(diào)是一個音樂設(shè)備數(shù)字接口的關(guān)鍵值,根據(jù)此值記錄存儲的采樣樣品。一個音符的音調(diào)移位根據(jù)要求的音樂設(shè)備數(shù)字接口關(guān)鍵值與固有音調(diào)值的差值確定。操作符數(shù)量定義了組合形成一個音符的各個操作符或采樣的個數(shù)。包絡(luò)量度因子控制是否用一個包絡(luò)狀態(tài)機(未示出)衡量隨音調(diào)變化的包絡(luò)時間常數(shù)。通常,包絡(luò)狀態(tài)機根據(jù)音樂設(shè)備數(shù)字接口關(guān)鍵值相對于某個音符的固有音調(diào)值的改變衡量包絡(luò)的時間常數(shù)。OROM/EROM指針指向一個音符的第一操作符只讀存儲器入口,其與由操作符數(shù)量限定的入口序列組合圍繞整個音符。OROM/EROM指針還指向一個操作符的包絡(luò)參數(shù)。FROM指針指向與該音符相關(guān)的一個濾波信息只讀存儲器(未示出)中的結(jié)構(gòu)。
操作符信息包含用于產(chǎn)生多個采樣的特定于各個操作符和采樣的信息。操作符信息參數(shù)包括(1)采樣尋址只讀存儲器指針;(2)自然采樣率;(3)四分之一音調(diào)移位標志;及(4)顫音信息只讀存儲器指針。采樣尋址只讀存儲器指針指向一個采樣尋址只讀存儲器(未示出)中的一個地址,采樣尋址只讀存儲器包含與被存儲的采樣有關(guān)的地址,這些地址包括起始地址、終止地址、和循環(huán)數(shù)。自然采樣率代表所存儲采樣的原始采樣率。自然采樣率用于計算在收到“音符啟動”命令時的音調(diào)移位變化。四分之一音調(diào)移位標志指定音調(diào)移位值是否以半音或四分之一半音計算。音符顫音信息只讀存儲器指針是進入音樂設(shè)備數(shù)字接口編譯器只讀存儲器602的音符顫音信息的指針,它為操作符提供音符顫音參數(shù)。
音量/表達查找表包含用于音樂設(shè)備數(shù)字接口編譯器102的便于頻道音量和頻道表示控制的數(shù)據(jù)。
音樂設(shè)備數(shù)字接口編譯器隨機存取存儲器604為內(nèi)部通信先進先出存儲器存儲與內(nèi)部操作符和臨時存儲有關(guān)的信息。音樂設(shè)備數(shù)字接口編譯器隨機存取存儲器604包括一個頻道信息存儲器,一個操作符信息存儲器,一個音調(diào)發(fā)生器先進先出存儲器,及一個效果處理器先進先出存儲器。
頻道信息存儲器被分配給音樂設(shè)備數(shù)字接口編譯器102,用于存儲與特音調(diào)樂設(shè)備數(shù)字接口頻道有關(guān)的信息。例如,在一個16頻道波形表合成器裝置100中,頻道信息存儲器包括16個部件,一個部件對應(yīng)一個頻道。頻道信息存儲部件存儲若干參數(shù),它們包括將一個設(shè)備分配給一個特音調(diào)樂設(shè)備數(shù)字接口頻道的頻道設(shè)備配置參數(shù);由音樂設(shè)備數(shù)字接口頻道壓命令指定的用于改變強度顫音量值的頻壓值,該顫音由包絡(luò)發(fā)生器加載在某個音符上;由音樂設(shè)備數(shù)字接口音符彎曲改變命令指定的音符彎曲值,此值在相位增量計算中供音調(diào)發(fā)生器104使用;及限定允許的音符彎曲值邊界范圍的音符彎曲敏感度。頻道信息存儲部件存儲的參數(shù)還包括在音調(diào)發(fā)生器104的相位增量計算中用于調(diào)諧音符的精細調(diào)諧值和粗調(diào)諧值;由一個平移控制改變命令指定的平移值供效果發(fā)生器108的平移發(fā)生器使用;用來控制引入頻道的強度顫音大小的調(diào)制值,供定音調(diào)發(fā)生器104使用。頻道信息存儲部件存儲參數(shù)還包括由頻道音量控制改變命令指定的頻道音量值,用于設(shè)置效果處理器108的音量發(fā)生器中的音量,以及響應(yīng)頻道表示控制改變命令以控制頻道音量的頻道表達值。
操作符信息存儲器也被分配給音樂設(shè)備數(shù)字接口編譯器102,用于存儲與操作符相關(guān)的信息。操作符信息存儲器存儲的參數(shù)包括設(shè)備分配參數(shù),它確定了對一個操作符的當(dāng)前設(shè)備分配;操作符在使用標志參數(shù),表示收到“音符啟動”命令時,操作符是否被用于一個新的音符;操作符斷開標志參數(shù),表示對于一個特定的音符一操作符分配是否產(chǎn)生“音符退出”(Note Off)命令。根據(jù)接收一個指示已在同一音樂設(shè)備數(shù)字接口頻道上由同一設(shè)備播放的“音符啟動”命令,音樂設(shè)備數(shù)字接口編譯器102使用設(shè)備分配參數(shù)決定哪一個操作符終止。音樂設(shè)備數(shù)字接口編譯器102使用操作符斷標志確定是否操作符終止尚未決定,以致一個新的“音符啟動”命令可能被寄存。操作符信息存儲器還存儲下列參數(shù)音樂設(shè)備數(shù)字接口頻道參數(shù),其用于指示對音樂設(shè)備數(shù)字接口頻道的操作符分配、與一個確音調(diào)符有關(guān)的若干操作符、一個保持標志,用于表示為操作符所使用的頻道接收“保持控制器”(Sustain Controller)命令。該保持標志被用于保持包絡(luò)狀態(tài)機處于包絡(luò)的衰減狀態(tài),直到保持被解除或操作符衰減到無振幅??刂破餍畔⒋鎯ζ饕泊鎯σ粋€延音標志,其指示操作符正使用的頻道接收“延音控制器”命令,音符信息存儲指針、以及操作符信息存儲指針。延音標志標示一個現(xiàn)存的有效操作符不被“音符退出”命令終止,直到接收到“延音斷”(Sostenuto Off)命令。對標示的音符信息,音符信息存儲器指針指向音符存儲器。對標示的音符信息,操作符信息存儲指針指向操作符存儲。
用于將數(shù)據(jù)信息從音樂設(shè)備數(shù)字接口編輯器102傳輸?shù)揭粽{(diào)發(fā)生器104的先進先出存儲器610是一個緩存緩沖寄存器,它包括一個或多個元件用于存儲信息,并匯編用于音調(diào)發(fā)生器104的完整信息。該完整信息包括信息類型區(qū)域、用于確定操作符是否被定位或被空置以位表示的操作符、用于指定哪一個操作符被新數(shù)據(jù)更新的操作符數(shù)目、用于表明操作符的音樂設(shè)備數(shù)字接口頻道分配的音樂設(shè)備數(shù)字接口頻道數(shù)。有效信息類型包括響應(yīng)操作符數(shù)據(jù)變化更新操作符信息的的更新的操作符信息類型;響應(yīng)影響調(diào)制旋轉(zhuǎn)值和音調(diào)彎曲轉(zhuǎn)換值的音樂設(shè)備數(shù)字接口命令的調(diào)制輪轉(zhuǎn)換類型和音調(diào)彎曲轉(zhuǎn)換類型、以及全部音響斷開消息類型。消息還包括音調(diào)移位信息、音符顫音選擇指針、采樣選擇指針、用于操作符的原始采樣率分配、以及調(diào)制旋轉(zhuǎn)變換參數(shù)。采樣率確定被用于在采樣器706(示于圖8中)中計算新的音符顫音率和相位增量。調(diào)制旋轉(zhuǎn)變換響應(yīng)調(diào)制輪控制器轉(zhuǎn)換命令被用于為采樣器計算相位增量量值。
用于將數(shù)據(jù)信息從音樂設(shè)備數(shù)字接口編譯器102傳輸?shù)叫Ч幚砥?08的先進先出存儲器616是一個暫時緩沖寄存器,包括一個或多個元件,它們用于存儲信息并匯編用于效果處理器108的完整信息。完整信息包括信息類型區(qū)域、確定操作符是否被定位或無效用位表示的操作符、用于確定包絡(luò)狀態(tài)機是否對指定的操作符根據(jù)音調(diào)移位計算時間參數(shù)的包絡(luò)量度位、用于指示哪一個操作符將接收信息的操作符數(shù)目、指示音樂設(shè)備數(shù)字接口頻道操作符分配的音樂設(shè)備數(shù)字接口頻道數(shù)、為確定是否發(fā)生音符斷或其它命令的操作符斷標志,它終止一個給定操作符。有效信息類型包括頻道音量、平移改變、混響度改變、和聲度改變、保持改變、延遲音改變、程序改變、音符通、音符斷、音調(diào)修改、重置所有控制器、挪用操作符、全部音符斷、和全部音響斷。消息還包括為處理包絡(luò)計數(shù)供包絡(luò)狀態(tài)機使用的音調(diào)移位信息;信息類型要求為計算振幅最大值供包絡(luò)狀態(tài)機使用的新操作符地址分配時的“音符通速度”;以及當(dāng)信息類型是一個新的音樂設(shè)備數(shù)字接口平移控制器改變命令時的一個平移值。信息進一步包括當(dāng)收到一個新的音樂設(shè)備數(shù)字接口頻道容量命令時的頻道容量信息、當(dāng)收到一個新的音樂設(shè)備數(shù)字接口和聲度命令時的和聲度信息、當(dāng)收到一個新的音樂設(shè)備數(shù)字接口混響命令時的混響度信息。消息中的附加信息包括由濾波狀態(tài)機(未示出)使用的指向濾波信息的指針,及由包絡(luò)狀態(tài)機使用的指向包絡(luò)信息的指針。
先進先出存儲器620是一個用于確定“操作符挪用”條件的寄存器。在每一幀中,效果處理器108確定對整體音響的最小作用因子,并且通過先進先出存儲器620將最小作用因子數(shù)傳送到音樂設(shè)備數(shù)字接口編譯器102。當(dāng)所有操作符被定位時,如果收到一個新的“音符啟動”命令,音樂設(shè)備數(shù)字接口編譯器102在多幀中挪用一個或多個操作符,并按需要分配一個新的音符。當(dāng)音樂設(shè)備數(shù)字接口編譯器102挪用一操作符時,通過先進先出存儲器616傳送一信息通知此條件下的效果處理器。
在不同的實施例中,效果處理器108通過對一個或多個參數(shù)的分析確定操作符對音符的作用,這些參數(shù)包括音符量、操作符的包絡(luò)、與其它操作符增益相比較的一個操作符的相對增益、相對于所有其它設(shè)備或聲音的設(shè)備音量、以及操作符表達式。此表達式用于音符音量的比較,但與靜態(tài)音量相比,它更與音符的動態(tài)特性有關(guān),包括強度顫音。在一種實施例中,效果處理器108通過監(jiān)視音符音量,操作符的包絡(luò),和與其它操作符增益相比較的相對增益來估計某一種音符的作用。效果處理器108衡量64個操作符對采樣頻率每個期間的作用,并將作用值通過寫入先進先出存儲器620傳輸?shù)揭魳吩O(shè)備數(shù)字接口編譯器102。音樂設(shè)備數(shù)字接口編譯器102終止最小作用的操作符,并激勵一個新的操作符。
參照圖7,示意方框圖例舉了一個音調(diào)發(fā)生器104,音調(diào)發(fā)生器確定從采樣只讀存儲器106讀取原始樣的比率,處理并傳送到效果處理器108。在一個例子中,每個44.1kHz幀中,輸出數(shù)據(jù)率是64個采樣,每一個操作符一個采樣。對應(yīng)于64個操作符的64個采樣實際上是被并行處理的。每一個聲音音符通常被編碼成兩個操作符,一個高頻帶操作符和一個低頻帶操作符,它們被同時處理,以至兩個波表機獨立地和同步地處理兩個采樣。
音調(diào)發(fā)生器104包括三個基本計算機一個音符顫音狀態(tài)機702,一個采樣器704,及一個采樣率轉(zhuǎn)換器706。音符顫音狀態(tài)機702和音調(diào)發(fā)生器數(shù)據(jù)機612是互連的,并且相互地傳送控制信息和數(shù)據(jù)。如果選擇音符顫音,音符顫音狀態(tài)機702在從采樣只讀存儲器106讀取原始采樣之前少量修正音調(diào)相位位。音符顫音狀態(tài)機702也通過音調(diào)發(fā)生器只讀存儲器數(shù)據(jù)機708從音調(diào)發(fā)生器只讀存儲器707中接收數(shù)據(jù)。音調(diào)發(fā)生器數(shù)據(jù)機612和音調(diào)發(fā)生器只讀存儲器數(shù)據(jù)機708用于控制數(shù)據(jù)存儲存取的控制器或狀態(tài)機。
采樣器704和音調(diào)發(fā)生器數(shù)據(jù)機612是互連的,用于交換數(shù)據(jù)和控制信號,采樣器704從采樣只讀存儲器106中接收原始采樣數(shù)據(jù),并且從音調(diào)發(fā)生器707中接收數(shù)據(jù)。采樣器704通過先進先出存儲器710向采樣率轉(zhuǎn)換器706傳送數(shù)據(jù)。采樣器704從音調(diào)發(fā)生器隨機存取存儲器608中讀取當(dāng)前采樣只讀存儲器地址,在此后討論中加入一個由顫音狀態(tài)機702確定的一個修正相位增量量值,并且確定是否讀取一個新的采樣。該決定是根據(jù)相位增量量值附加結(jié)果作出的。如果相位增量量值附加引起地址整數(shù)部分增加,采樣器704讀取下一個采樣并且將該采樣寫入音調(diào)發(fā)生器先進先出存儲器710的一個適當(dāng)先進先出存儲器,例如對于一個12深先進先出存儲器,它保持前面11個采樣和最新采樣。
采樣率轉(zhuǎn)換器706對從采樣只讀存儲器106獲得的脈碼調(diào)制波形數(shù)據(jù)進行插值。存儲的脈碼調(diào)制波形以最低可能采樣率采樣,其取決于采樣的頻率成分,是否包含低頻或高頻成分。常規(guī)線性插值技術(shù)不能充分重構(gòu)信號。為了根本改變聲音信號的重構(gòu),采樣率轉(zhuǎn)換器706采用一個12分接插值濾波器,它由采樣比256過量采樣,圖9是一個曲線圖,示出了適當(dāng)?shù)?2分接插值濾波器的頻率響應(yīng)。
采樣率轉(zhuǎn)換器706通過音調(diào)發(fā)生器先進先出存儲器710與采樣器704相連接,并且從一個采樣率轉(zhuǎn)換濾波只讀存儲器712接收數(shù)據(jù),采樣率轉(zhuǎn)換器706通過采樣率轉(zhuǎn)換器輸出數(shù)據(jù)緩沖器714和效果處理數(shù)據(jù)機618向效果處理器隨機存取存儲器614傳送數(shù)據(jù)。采樣率轉(zhuǎn)換器706以每幀1次(例如44.1KHz)的速度讀取音調(diào)發(fā)生器先進先出存儲器710的每個先進先出存儲器。存儲器并且在音符發(fā)生器先進先出存儲器710中對12個采樣進行采樣率轉(zhuǎn)換操作,從而將采樣插值到指定的幀速率(在本例中是44.1KHz)。被插值的采樣存儲在效果處理器隨機存取存儲器614中供效果處理器108后續(xù)處理之用。
在音符被演奏的同時,顫音狀態(tài)機702選擇性地把顫音或音符變化的效果加到音符上。音樂家經(jīng)常在音符或強度上使用小的準周期的變化,使音色更豐富。音符上的小變化叫作顫音。強度上的小變化叫作震音。一些樂器,例如小號,自然包含顫音。調(diào)制機構(gòu)(未示出)也控制一個樂器的顫音深度。在說明實施例中實現(xiàn)了兩種類型的顫音。第一種類型的顫音通過一個樂器的初始化音符轉(zhuǎn)移來實現(xiàn)。顫音由在多個周期上調(diào)整音符而獲得。在一些實現(xiàn)中,導(dǎo)致顫音的音符轉(zhuǎn)移被記錄到一個存儲的采樣里。第二種類型的顫音采用存儲在音符生成器只讀存儲器707的顫音部分中的參數(shù)來實現(xiàn),音符生成器只讀存儲器在選擇的延遲后開始產(chǎn)生音符的變量。被感生的音符轉(zhuǎn)移量、開始時間和結(jié)束時間被存儲在音符生成器只讀存儲器707的顫音節(jié)中。在一些實施例中,控制顫音加到自然采樣音符上的速率的一個波形被存儲在音樂設(shè)備數(shù)字接口編譯器只讀存儲器602的顫音信息中的一個顫音查照表中。
采樣器704利用一個已計算相位增量量值來增加采樣只讀存儲器106的當(dāng)前地址,并確定是否從只讀存儲器106中讀取新的采樣并將它寫入到音調(diào)發(fā)生器先進先出存儲器710中。圖9是說明采樣器704操作過程的流程圖。當(dāng)一個新幀從902開始時,采樣器704從音調(diào)發(fā)生器隨機存取存儲器608上讀取采樣地址標志(SAF)值904。該采樣地址標志值確定采樣器704是否由于前一幀地址的增加而讀取新的采樣。如果采樣地址標志值是零,則采樣器704跳至第二處理相位940。如果采樣地址標志值不是零,則采樣器704從采樣只讀存儲器106上讀取下一個采樣906,把當(dāng)前地址用作對采樣的指針并將該采樣寫到音調(diào)發(fā)生器先進先出存儲器710中。由于只讀存儲器/隨機存取存儲器帶寬的限制,采樣器704每次操作符每幀最多只能移動兩個采樣。當(dāng)采樣移動后,采樣地址的整數(shù)部分增加到908,并寫回到音調(diào)發(fā)生器隨機存取存儲器608中。
一旦采樣被移動,如果需要,采樣器704增加采樣106中的地址910,并把采樣地址標志值標示912設(shè)定到下一幀。在顫音狀態(tài)機702完成了對相位增量量值的調(diào)整并增加到當(dāng)前采樣地址916后,從音調(diào)發(fā)生器隨機存取存儲器608讀取用于操作符的相位增量。如果相位增量使一個地址至少增加一個整數(shù)值時,則采樣地址標志會包含一個非零值,且在下一幀期內(nèi),一個新的采樣從采樣只讀存儲器106拷貝到音調(diào)發(fā)生器先進先出存儲器710。此時,增加的整數(shù)地址并不被存儲。將采樣從采樣只讀存儲器106傳送到音調(diào)發(fā)生器先進先出存儲器710后,采樣器704在下一幀時間內(nèi)增加地址的整數(shù)部分,并將新數(shù)值存回到音調(diào)發(fā)生器隨機存取存儲器608。
在音調(diào)發(fā)生器先進先出存儲器710中,采樣率轉(zhuǎn)換器706接收用于每一操作符的數(shù)據(jù);并對數(shù)據(jù)進行濾波操作以便將原始采樣率轉(zhuǎn)換成一限定的速率,如44.1kHz。對于每一個時鐘周期,采樣率轉(zhuǎn)換器706都從音調(diào)發(fā)生器先進先出存儲器710讀取采樣,從采樣率轉(zhuǎn)換濾波器只讀存儲器712讀取濾波系數(shù),并將采樣與濾波系數(shù)相乘。所計算的乘積用于音調(diào)發(fā)生器先進先出存儲器710的所有采樣(例如起始于先進先出存儲器地址的十二個采樣)的累加。從位于采樣率轉(zhuǎn)換器706內(nèi)的累加器中(未示出)傳來的乘積傳送到采樣率轉(zhuǎn)換器706的輸出緩沖寄存器(未示出)中并將累加器清零。采樣率轉(zhuǎn)換器706重復(fù)這個過程直到所有的音調(diào)發(fā)生器先進先出存儲器710(例如64個先進先出存儲器)都被處理完畢。
在一種實施例中,濾波系數(shù)由一個操作符多相值確定。采樣率轉(zhuǎn)換濾波器只讀存儲器712由256組12抽頭濾波系數(shù)的濾波器組成。采樣器704多相是一個8位值,它與操作符采樣地址的小數(shù)部分的八個最高有效位相同。操作符采樣地址在采樣率轉(zhuǎn)換濾波器只讀存儲器712中被用作目錄,以便從256組濾波系數(shù)中選擇一組濾波系數(shù)。
音調(diào)發(fā)生器只讀存儲器707含有三個數(shù)據(jù)結(jié)構(gòu),包括一個采樣地址只讀存儲器,一個音符顫音缺省參數(shù)存儲,和一個音符顫音包絡(luò)參數(shù)存儲。采樣地址只讀存儲器存儲存在采樣只讀存儲器106中的多采樣的采樣地址,其包括對于某一特定多重采樣的每一個采樣的第一原始采樣起始地址位置,并包括一個用于確定采樣器704何時結(jié)束的原始采樣的結(jié)束地址,還包括一個循環(huán)減法計數(shù),用于在采樣循環(huán)處理期內(nèi)從結(jié)束地址到起始地址的逆向計算。
音符顫音缺省參數(shù)存儲器保持與音樂設(shè)備數(shù)字接口編譯器隨機存取存儲器604中的每一操作信息存儲器對應(yīng)的參數(shù)。音符顫音缺省參數(shù)包括一個狀態(tài)標志,指示音符顫音是否被用作一種初始音符移動或被用作自然音符顫音;一個音程參數(shù),指示由操作符加或減的音符變化量。兩種類型的音符顫音實現(xiàn)包括一個隨時間變化的周期振動過程和音符驟變或音符移動的執(zhí)行過程。音符顫音缺省參數(shù)包括起始時間,用于指示兩類音符顫音的顫音開始。音符顫音缺省參數(shù)還包括用于指示隨時間變化的周期音符顫音過程何時結(jié)束的結(jié)束時間,或在音符移動顫音過程中增加到自然音符的速率。
音符顫音包絡(luò)參數(shù)存儲器保持供音符顫音狀態(tài)設(shè)備702使用的包絡(luò)形狀,其用于修正采樣器704的相位增量。
音符發(fā)生器隨機存取存儲器608是一個大規(guī)模隨機存取存儲器,包括音符顫音狀態(tài)機信息和分別由音符顫音狀態(tài)機702和采樣器704所使用的調(diào)制數(shù)值。音符顫音狀態(tài)設(shè)備信息包括對每個操作符增加采樣尋址值的相位增量參數(shù),用于保持最近的相位增量參數(shù)的前一相位增量,以及用于保持加到操作符中以實現(xiàn)初始音符移動音符顫音的初始相位增量的起始相位增量。音符顫音狀態(tài)機信息還包括一個用于計算相位增量的原始采樣率;在自然音符顫音狀態(tài)下限定它最大相位增量的相位幅度;和一個音符移位半音值和音符移位音程值,它們表示為取得要求的關(guān)鍵值的音符移位量。音符顫音狀態(tài)機信息進一步包括一個音符顫音狀態(tài)參數(shù),它存儲64個操作符中每一個的音符顫音狀態(tài)機702的當(dāng)前狀態(tài);一個音符顫音計數(shù),用于存儲從表示音符顫音開始的起始時間起超過64個周期的采樣頻率的循環(huán)記數(shù);以及一個音符顫音增量值參數(shù),用于保持加到每一幀的相位增量上的增量值。顫音狀態(tài)機信息包括一個使用標志的操作符、一個指示生成數(shù)據(jù)操作的音樂設(shè)備數(shù)字接口通道的音樂設(shè)備數(shù)字接口通道識別器、以及進入顫音信息和音樂設(shè)備數(shù)字接口編輯器只讀存儲器602的采樣器信息的指針。
調(diào)制值存儲頻道調(diào)制值該頻道調(diào)制值通過音樂設(shè)備數(shù)字接口編譯器102而被寫入到音樂設(shè)備數(shù)字接口編輯器隨機存取存儲器604的音調(diào)發(fā)生器先進先出存儲器上。
采樣率轉(zhuǎn)換器706包括一個隨機存取存儲器,音調(diào)發(fā)生器隨機存取存儲器608,它為了在采樣只讀存儲器106中尋址采樣,將當(dāng)前采樣地址存儲到音調(diào)發(fā)生器先進先出存儲器710上。采樣率轉(zhuǎn)換器隨機存取存儲器也包括一個多相參數(shù)以保持每一操作符的采樣地址的小數(shù)部分。在每一個采樣頻率周期內(nèi)且對于每一個操作符,采樣率轉(zhuǎn)換器706都將多相值加到位于采樣只讀存儲器106的整數(shù)地址上,對每一幀面增加相位增量并在多相存儲器中存儲小數(shù)值。隨機存取存儲器同時擁有一個采樣前置標志來保持由采樣器704計算的采樣地址和原始采樣地址數(shù)值之間的差別。在隨后的幀中,采樣率轉(zhuǎn)換器706讀取采樣前置標志,由它來確定由采樣只讀存儲器106傳送到音調(diào)發(fā)生器先進先出存儲器710的采樣數(shù)目。隨機存取存儲器中也包括一個先進先出地址,以便將音調(diào)發(fā)生器先進先出存儲器710中的最新采樣的位置通知采樣率轉(zhuǎn)換器706。
參照圖10,它用示意方框圖示出了音調(diào)發(fā)生器先進先出存儲器710的結(jié)構(gòu)。在所述方案中,音調(diào)發(fā)生器先進先出存儲器710存有六十四個操作符中每一個的最當(dāng)前和前十一個采樣值。音調(diào)發(fā)生器先進先出存儲器710由64個1002和1004緩沖寄存器組成,每一緩沖寄存器有12個8位字。采樣率轉(zhuǎn)換器706在每一時鐘周期讀取一次先進先出存儲器字,通過在一幀中要768次讀取。在每一幀期間內(nèi),采樣器704將最多128個字寫入音調(diào)發(fā)生器先進先出存儲器710。據(jù)此,音調(diào)發(fā)生器先進先出存儲器710具有兩組地址解碼器1006和1008,具有一個用于上半部分的緩沖寄存器1002和一個用于下半部分的緩沖寄存器1004。采樣器704和采樣率轉(zhuǎn)換器706無論何時訪問互不相同的緩沖寄存器1002和1004,因此,采樣器704和采樣率轉(zhuǎn)換器706的緩沖寄存器的通道被制造成不同相的。
在第一相位運行期間,緩沖寄存器1002的先進先出存儲器0-31為了32操作符處理由采樣器704寫入。同樣在第一相位期內(nèi),采樣率轉(zhuǎn)換器706從緩沖寄存器1004的先進先出存儲器32-63上讀出。在第二相位期內(nèi),采樣器704修改緩沖寄存器1004的先進先出存儲器32-63,而采樣率轉(zhuǎn)換器706從緩沖寄存器1002的先進先出存儲器0-31上讀出。緩沖寄存器的訪問是根據(jù)相位由多路傳輸輸入地址的地址多路復(fù)用器1010和1012以及按相位決定將輸出傳送到采樣率轉(zhuǎn)換器706的輸出編碼器1014控制的。
再參照圖7,采樣率轉(zhuǎn)換輸出數(shù)據(jù)緩沖寄存器714是一個隨機存取存儲器寄存器,它用于實現(xiàn)音調(diào)發(fā)生器104和效果處理器108同步。采樣率轉(zhuǎn)換器706以每幀采64樣的速度將數(shù)據(jù)寫入到采樣率轉(zhuǎn)換輸出數(shù)據(jù)緩沖寄存器714。當(dāng)每一數(shù)值要被處理時,效果處理器108就讀入數(shù)值。效果處理器108和音調(diào)發(fā)生器104同時分別讀寫數(shù)值。采樣率轉(zhuǎn)換器輸出數(shù)據(jù)緩沖寄存器714包含兩個緩沖寄存器(未示出),一個緩沖寄存器是在一個幀面內(nèi)由音調(diào)發(fā)生器104寫入,并當(dāng)下一個幀面開始時拷貝到第二個緩沖寄存器中。而第二個緩沖寄存器由效果處理器108讀出。依這種方式,對于一個完整幀來說,對效果處理器108和音調(diào)發(fā)生器104來說,數(shù)據(jù)保持恒不變。
參見圖11,它用示意方框圖示出了效果處理器108的一個實施例。效果處理器108從采樣率轉(zhuǎn)換器708存取采樣并將特定效果加入到由采樣產(chǎn)生的音符中去。效果處理器108將許多特殊的效果加入到操作符的采樣中,包括對操作符采樣的強化效果及執(zhí)行音樂設(shè)備數(shù)字接口命令的效果。效果處理器108主要由兩部分組成,第一部分1102用于處理音樂設(shè)備數(shù)字接口頻道之間的普通處理效果,第二部分1104用于處理單獨音樂設(shè)備數(shù)字接口頻道內(nèi)產(chǎn)生的效果。第一部分1102和第二部分1104的效果都是根據(jù)操作符的要求進行處理。第一部分1102和第二部分1104是利用存儲在效果處理器只讀存儲器1106中的數(shù)據(jù)進行效果處理的。
第一部分1102由操作符控制處理效果,因此每一幀的所有效果都處理64次,以便在每一幀中運用每一個操作符,在音樂設(shè)備數(shù)字接口頻道之間的普通效果包括隨機噪音產(chǎn)生、包絡(luò)產(chǎn)生、相對增益、和用于操作符增強的隨時間變化濾波處理。第二部分1104處理由多個音樂設(shè)備數(shù)字接口頻道產(chǎn)生的效果,包括頻道容積、平移左和平移右,和聲和混響。第二部分1104也是利用用于處理的第16個音樂設(shè)備數(shù)字接口頻道參數(shù)進行每幀64次的效果處理。
第一部分1102是用于處理效果的狀態(tài)設(shè)備,包括白噪聲發(fā)生、隨時間變化的濾波處理、和包絡(luò)產(chǎn)生。第一部分1102噪聲發(fā)生器是由時間變化濾波器,當(dāng)起動時,在音符的演奏期內(nèi)產(chǎn)生隨機白噪音。白噪音用于產(chǎn)生象海邊一樣的音響效果。在一個實施例中,第一部分1102噪音發(fā)生器是利用示于圖12中的線性反饋移位寄存器1200實現(xiàn)的。線性反饋移位寄存器1200包含多個級聯(lián)觸發(fā)器。十二個級聯(lián)觸發(fā)器形成一個被初始化到初始值的十二位隨機計數(shù)寄存器1202。級聯(lián)觸發(fā)器每一循環(huán)向左移動一次。線性回饋移位寄存器包括高階位1204、一個14位中階位寄存器1206、一個3位低階位寄存器1208、一個第一“異”(EXOR)門1210、和一個第二“異”門1212。十二位的隨機計數(shù)寄存器1202包括有高階位1204和中階位寄存器1206的十一個最高有效位。第一“異”門1210在第一輸入端接收14位中階位寄存器1206的最高有效數(shù)位,在第二輸入端接收高階位1204,并產(chǎn)生一邏輯“異”處理結(jié)果傳輸?shù)礁唠A位1204。第二“異”門1212在第一輸入端接收3位低階位寄存器1208的最高有效位,在第二輸入端接收高階位1204,并產(chǎn)生一個邏輯“異”處理結(jié)果,該結(jié)果被傳輸?shù)?4位中階位寄存器1202的最低有效位。
參照圖13,在一種實施例中,第一部分1102是通過利用一個狀態(tài)-空間濾波器由隨時間變化的濾波器實現(xiàn)。所述的狀態(tài)-空間濾波器是一個通常被用作低通濾波器的二階無限輸入響應(yīng)(ⅡR)濾波器。在音符提高期間,隨時間變化濾波器被用來降低低通濾波器的截止頻率。通常,音符保持的時間越長,它的響亮度丟失的就越多,這是由于高頻音符信息與低頻信息相比具有較少的能量且損耗較快。
由于自然音在高頻的衰減速度比低頻的衰減速度快得多,所以隨時間變化濾波器是很有益的。通過利用環(huán)路技術(shù)來產(chǎn)生一種衰減音,并且通過濾掉隨時間逐漸降低頻率的音頻信號而使再生成的人工調(diào)節(jié)的波形更加現(xiàn)實了。當(dāng)聲音的變化被保留時,在波形中有助于較早地建立循環(huán)。
第一部分1102的包絡(luò)發(fā)生器生成用于操作符的包絡(luò)。圖14是用對數(shù)標度音頻信號來說明振幅包絡(luò)函數(shù)1400的圖。振幅包絡(luò)函數(shù)1400包括如下五個階段開始階段1402、保持階段1404、初始非自然衰減階段1406、自然衰減階段1408、和釋放階段1410。開始階段1402時間很短,期間振幅迅速由0位增加到所要求的最高位。保持階段1404在開始階段1402之后保持振幅在選定的短時間內(nèi)穩(wěn)定,當(dāng)然這個期間可能是0。非自然衰減階段1406在保持階段1404之后,用于消除記錄在采樣中的非自然增益。采樣被記錄并存儲成滿振幅。非自然衰減階段1406為了能使適當(dāng)樂器演奏將振幅降低到自然狀態(tài)。自然衰減階段1408在非自然衰減階段1406之后,很明顯是振幅包絡(luò)函數(shù)1400五個階段中時間最長的。在自然衰減階段1408期內(nèi),音符振幅慢慢地象實際音樂信號那樣遞減。當(dāng)?shù)谝徊糠?102狀態(tài)機接收到“音符退出”信息并迅速將音符置于終止時,就以固有的方式進入到釋放階段。在釋放階段1410期間,振幅迅速從當(dāng)前電平減到0位。
第一部分1102包絡(luò)發(fā)生器利用對音符定義基本速率參數(shù)來確定包絡(luò)的形態(tài)。一個較高的基本速率表示了一個較強的觸鍵操作,因此包絡(luò)的振幅是增加的,而且所演奏的音符幅值也是大的。
所播放音符的振幅主要依賴于第一部分1102相對增益操作。相對增益和其它操作符包絡(luò)信息一起計算并存儲在效果只讀存儲器(EROM)中。相對增益參數(shù)是由樂器的相對音量,該樂器音符的相對音量,和相對于組合起來形成音符的其它操作符有關(guān)的操作符的相對音量組成的。
第一部分1102利用共享的相對增益放大器在一單狀態(tài)機上完成許多基于多個操作符的處理操作。依此,完整的第一部分1102狀態(tài)機與普通放大器時間共享。
一旦第一部分1102計算了操作符增益,第二部分1104狀態(tài)機對各個操作符輸出信號進行頻道特性效果處理。頻道特性效果包括頻道容量,平移左/平移右平移,和聲與混響。于是,參見圖15,第二部分1104狀態(tài)機包括頻道容量狀態(tài)機1502,平移狀態(tài)機1504,和聲狀態(tài)機1506、和聲機1508,混響狀態(tài)機1510,和混響機1512。
由于其它保留效果是利用相對容量參數(shù)并行計算的,所以頻道容量狀態(tài)機1502首先處理并存儲頻道容量參數(shù)。在一種實施例中,頻道容量利用乘法器由音樂設(shè)備數(shù)字接口頻道容量命令的線性范圍內(nèi)的相對值而根據(jù)下列公式計算滿刻度衰減量(dB)=40ln{(頻道容量值*表達式-值)/127^2}
此處缺省的表達式值等于127。
在容量測定之后,由頻道容量狀態(tài)機1502完成的第一效果是一種使用全景狀態(tài)機1504的平移效果。音樂設(shè)備數(shù)字接口平移命令決定了向左平移的量,余下的則決定了向右平移的量。例如,在一個0到127的平移范圍內(nèi),數(shù)值64表示了一個中心平移。數(shù)值127表示接近最右平移,數(shù)值0表示最左平移。在所述的一種實施例中,左和右乘法器是通過讀取具有一個量的平方根數(shù)值的查表而不是讀取原始量來實現(xiàn)乘方恒定。用于“等冪”平移計算的公式由下列公式說明左_刻度=((127-平移_值)/127)^0.5,右_刻度=(平移_值/127)^0.5實際的被乘數(shù)根據(jù)平移法從效果處理只讀存儲器的平移常數(shù)中讀取。左和右平移值被計算并被傳送到輸出累加器。在旋律樂器頻道中,平移值(PAN-value)是個絕對值,以致該接收到的數(shù)值代替這個用于該特定頻道選擇的樂器的缺省數(shù)值。在打擊頻道中,該缺省值與每個獨立的打擊音響的缺省值有關(guān)。
效果處理器108讀取幾組存儲于效果處理器只讀存儲器1106中的缺省參數(shù)進行效果處理。效果處理器只讀存儲器1106是頻道值狀態(tài)機1502,平移狀態(tài)機1504,和聲狀態(tài)機1506,和混響狀態(tài)機1570的共用只讀存儲器。存儲在效果處理器只讀存儲器1106中的缺省參數(shù)包括隨時間變化濾波操作符參數(shù)(FROM)、包絡(luò)發(fā)生器操作符參數(shù)(EROM)、包絡(luò)計數(shù)參數(shù)、和聲和混響常數(shù)、平移被乘數(shù)常數(shù)、強度顫音包絡(luò)形態(tài)常數(shù),以及基本速率常數(shù)。
隨時變化濾波操作符參數(shù)(FROM)用于將更自然的實際音通過增加或刪除高頻信息的方式加入到樂器產(chǎn)生的音符的信息。隨時問變化操作符參數(shù)(EROM)包括初始頻率、頻移值、濾波衰減、實際開始時間、衰減時間計數(shù)、初始速率濾波移位計數(shù)、音符移位濾波移位計數(shù)、及一個Q值。初始頻率確定濾波器的初始截止頻率。頻移值和濾波衰減控制頻率截止減少率。有效開始時間決定了音符變?yōu)閷嶋H音符之后濾波狀態(tài)機(未示出)等待開始濾波數(shù)據(jù)的時間。衰減時間計數(shù)控制在固定頻率停止前濾波器連續(xù)衰減的時間。初始速率濾波移位計數(shù)(IVFSC)控制濾波器截止頻率在音符初始速率基礎(chǔ)上被調(diào)整的量。在一種實施例中,初始速率濾波移位計數(shù)根據(jù)下列公式調(diào)整初始截止頻率頻率’=頻率-((127-速度)*2IVFSC)。
音符移位濾波計數(shù)(PSFSC)控制在音符初始移位基礎(chǔ)上被調(diào)整的濾波截止頻率的量值。在一個實施例中,音符移位濾波計數(shù)根據(jù)下列公式調(diào)整初始截止頻率頻率’=頻率-(音符轉(zhuǎn)移*2IVFSC)。
Q移位參數(shù)確定濾波器截止銳度,并在計算最終輸出信號之前被用于濾波計算實現(xiàn)移位高通參數(shù)。
包絡(luò)發(fā)生器控制參數(shù)(EROM)決定每一操作符保持在每一個包絡(luò)狀態(tài)下的時間長度,及此階段的振幅δ值。包絡(luò)發(fā)生器操作符參數(shù)(EROM)包括陡增類型、陡增增量、時間保持、強度顫音度、非自然衰減增量、非自然衰減時間計數(shù)、自然衰減增量、釋放增量、操作符增益、和噪音增益。陡增類型決定了陡增的種類。在一種方案中,陡增類型從反曲線/雙曲線陡高、基本線性斜率陡增、和反向指數(shù)陡增中選擇。陡增增量確定了振幅陡增的速率。時間保持確定了保持階級1404的時間。顫音度確定了為產(chǎn)生顫音效果而增加到包絡(luò)上的調(diào)幅量。非自然衰減增量確定了在非自然衰減階段1406期間包絡(luò)振幅減少的數(shù)量。非自然衰減時間計數(shù)確定了非自然衰減階段1406的周期。自然衰減增量設(shè)定了在自然衰減階段1408期間包絡(luò)振幅減少的量。釋放增量設(shè)定在釋放階段1410期間確定包絡(luò)衰減的速率。操作符增益確定了一個操作符相對于其它操作符的相對增益量。操作符增益被用于確定最大包絡(luò)振幅值。噪音增益確定了加到操作符上的白噪聲。
包絡(luò)計數(shù)參數(shù)包括兩個參數(shù),一個是時間因數(shù),另一個是速率因數(shù)。時間因子和速度因子被用來根據(jù)一個采樣從初始采樣時間開始作音符轉(zhuǎn)移的總數(shù)修正存儲的效果只讀存儲器參數(shù)。如果音符向下移動,則時間因數(shù)增加時間常數(shù)而同時速率計數(shù)降低衰減速率。相反地,如果音符向上移動,時間因數(shù)通過計數(shù)降低時間常數(shù)而同時速率計數(shù)提高衰減速率。
在音符持續(xù)期內(nèi),強度顫音包絡(luò)常數(shù)被包絡(luò)狀態(tài)機(未示出)用來產(chǎn)生強度顫音。強度顫音包絡(luò)形狀常數(shù)包括多個形成強度顫音波形的常數(shù)。
基本速率常數(shù)被包絡(luò)發(fā)生器用作最大振幅公式的一部分?;舅俾手涤涗浽诎j(luò)發(fā)生器查找只讀存儲器中以檢索恒定被乘數(shù)。
效果處理器隨機存取存儲器614是一種便箋本隨機存取存儲器,它由效果處理器108使用,并包含時變?yōu)V波參數(shù)、包絡(luò)發(fā)生器參數(shù)、操作符控制參數(shù)、頻道控制參數(shù)、混響緩沖器、和和聲隨機存取存儲器。隨時間變化的濾波參數(shù)包括濾波狀態(tài)、截止頻率、截止頻率移位值、濾波時間計數(shù)、濾波增量、音符移動半音參數(shù)、延遲D1、延遲D2、和時變?yōu)V波只讀存儲器指針。濾波狀態(tài)對每一個操作符都保持狀態(tài)機的當(dāng)前狀態(tài)。截止頻率是濾波器的初始截止頻率。截止頻率位移值用于指數(shù)衰減近似法中的指數(shù)。濾波時間計數(shù)控制濾波器修改數(shù)據(jù)的時間。濾波增量應(yīng)用于指數(shù)衰減近似法中。截止頻率對時間改變值。音符移位半音參數(shù)是位移原始采樣以提供要求音符的音符移位量。延遲D1和延遲D2表示了無限脈沖響應(yīng)濾波器的第一和第二延遲部件。隨時間變化濾波器只讀存儲器指針是操作符使用的存儲于隨時間變化濾波只讀存儲器上的指針。
包絡(luò)發(fā)生器參數(shù)由包絡(luò)發(fā)生器狀態(tài)態(tài)機使用來計算在包絡(luò)的每一階段對數(shù)據(jù)和計數(shù)時間的振幅乘數(shù)。包絡(luò)發(fā)生器參數(shù)隨機存取存儲器包括包絡(luò)狀態(tài)、包絡(luò)移位數(shù)值、包絡(luò)增量、包絡(luò)時間計數(shù)、包絡(luò)乘數(shù)、最大包絡(luò)振幅、陡增類型、和包絡(luò)計數(shù)參數(shù)。包絡(luò)狀態(tài)表明了用于每一操作符的包絡(luò)狀態(tài)機的當(dāng)前狀態(tài)。包絡(luò)移位值含有用于包絡(luò)振幅計算的當(dāng)前移位值。包絡(luò)增量含有當(dāng)前包絡(luò)延遲振幅值增量并在包絡(luò)狀態(tài)機改變狀態(tài)被修正。包絡(luò)數(shù)據(jù)在每一幀時讀取一項來修正前包絡(luò)振幅值。包絡(luò)時間計數(shù)存儲向下計數(shù)至0的向下計數(shù)值,并在0值時,迫使包絡(luò)狀態(tài)機改變狀態(tài)。當(dāng)狀態(tài)機改變狀態(tài)時,包絡(luò)時間計數(shù)改寫并讀寫每一幀。包絡(luò)時間計數(shù)在每一幀改寫一次,使得采樣頻率周期被分成64周期。包絡(luò)幀計數(shù)每一幀改寫一次,但并不是每一幀都修正。包括乘法器含有用于輸入數(shù)據(jù)相乘產(chǎn)生包絡(luò)的振幅值。當(dāng)一個新的操作符被確定時計算最大包絡(luò)振幅,且該最大包絡(luò)振幅由基本速率、陡增類型、陡增增量推算。陡增類型是新的操作符確定后由包絡(luò)只讀存儲器拷貝到效果處理器隨機存取存儲器614的。包絡(luò)計數(shù)標志通知包絡(luò)狀態(tài)機在從包絡(luò)只讀存儲器拷貝到效果處理器隨機存取存儲器614期間如何計算時間和速率常數(shù)。
操作符控制參數(shù)是效果處理器108用來保持與用于處理操作符的每一操作符有關(guān)的數(shù)據(jù)。操作符控制參數(shù)包括使用標志操作符在使用標志,未使用標志,未使用延音(Sostenuto)操作符標志、音樂設(shè)備數(shù)字接口頻道數(shù)、鍵通速率、操作符增益、噪音增益、操作符振幅、混響度、平移值、和聲增益和包絡(luò)發(fā)生器操作符參數(shù)(EROM)指針。操作符使用標志確定操作符是否在生成聲音?!耙舴顺觥毙畔⒈皇盏綍r,對于操作符產(chǎn)生的特音調(diào)符,操作符未使用標志被設(shè)定。當(dāng)操作符有效且“延音開”(Sostenuto On)命令被特定的音樂設(shè)備數(shù)字接口頻道接收時,設(shè)定操作符未使用延音操作符標志。操作符未使用延音操作符標志使操作符處于持續(xù)狀態(tài)直至接受到延音關(guān)(Sostenuto Off)命令。音樂設(shè)備數(shù)字接口頻道數(shù)包含操作符音樂設(shè)備數(shù)字接口頻道。鍵通速率(Key OnVelocity)是音符啟動命令的一部分的速率值并被包絡(luò)狀態(tài)機用于實現(xiàn)對各種參數(shù)的控制。操作符增益是某操作符的相對增益,并在當(dāng)收到音符啟動信息和確定了操作符之后,操作符增益由音樂設(shè)備數(shù)字接口編譯器1D102寫入到效果處理器先進先出存儲器之中。噪音增益與操作符有關(guān),當(dāng)收到音符啟動信息并確定了操作符之后,它被音樂設(shè)備數(shù)字接口編譯器102寫入到效果處理器先進先出存儲器之中。當(dāng)操作符可在數(shù)據(jù)通道中傳輸時,施加到操作符上的操作符振幅是衰減的。當(dāng)混響控制器發(fā)生變化時,音樂設(shè)備數(shù)字接口編譯器102將混響度寫入到音調(diào)發(fā)生器先進先出存儲器。當(dāng)從音樂設(shè)備數(shù)字接口編譯器102接收到信息時,平移值(Pan value)被用來指示平移常數(shù)(Pan Constant)并被寫入到音調(diào)發(fā)生器先進先出存儲器。平移狀態(tài)機1504利用平移值來確定傳輸?shù)阶蠛陀逸敵鲱l道的輸出信號的百分比。和聲增益用于從只讀存儲器中指示和聲常數(shù)。當(dāng)產(chǎn)生和聲增益的信息發(fā)生變化時,和聲增益被寫入并被和聲狀態(tài)機1506按幀讀出。包絡(luò)發(fā)生器操作符參數(shù)(EROM)指針被包絡(luò)狀態(tài)機用于索引包絡(luò)生成器操作符參數(shù)只讀存儲器。
頻道控制參數(shù)提供了針對用于效果處理器108的音樂設(shè)備數(shù)字接口頻道的信息。頻道控制參數(shù)包括頻道數(shù)、保持標志和延音踏板標志(Sostenuto pedal flag)。當(dāng)頻道容量控制器發(fā)生變化時,音樂設(shè)備數(shù)字接口編譯器102將頻道容量寫入到音調(diào)發(fā)生器FIFD中。當(dāng)持續(xù)踏板控制通(Sustain pedal control on)命令被音樂設(shè)備數(shù)字接口編譯器102接收到時,保持標志被設(shè)定。包絡(luò)狀態(tài)機讀取保持標志以確定在“音符退出”信息出現(xiàn)時是否允許操作符進入釋放狀態(tài)。當(dāng)延音踏板控制器通命令被音樂設(shè)備數(shù)字接口編譯器102收到時,延音踏板標志被設(shè)定。包絡(luò)狀態(tài)機讀取延音踏板標志以確定在音符退出命令出現(xiàn)時是否允許操作符進入釋放狀態(tài)。如果操作符斷延時標志(Operator off sostenuto flag)被設(shè)定,那么包絡(luò)狀態(tài)機就將操作符保持在自然衰減狀態(tài)直到標志被重置。
結(jié)合圖15參照圖16,示意方框圖說明了和聲狀態(tài)機1506的組成部分。平移被確定和和聲被處理。首先,對于每一個頻道,根據(jù)和聲度參數(shù)確定用于和聲的操作符采樣數(shù)量。和聲度參數(shù)通過音樂設(shè)備數(shù)字接口命令送出,而放大器被用來確定傳輸?shù)胶吐曀惴ǖ男盘柕陌俜直?。一旦確定了和聲百分比,就對聲頻信號進行處理用于和聲。和聲狀態(tài)機1506包括用于左頻道的無限輸入響應(yīng)全通(all-pass)濾波器1602和用于右頻道的無限輸入響應(yīng)全通濾波器1604。無限輸入響應(yīng)全通濾波器1602和1604分別包括兩個級聯(lián)的全通濾波器,其每一個都由不同的低頻振蕩器操作。由于低頻振蕩器的截止頻率被掃描,所以和聲狀態(tài)機1506操作以擴展音頻信號的相位。這兩個無限輸入響應(yīng)全通濾波器1602和1604的每一個都包括兩個無限輸入響應(yīng)濾波器。全部四個無限輸入響應(yīng)濾波器都具有被全時掃頻的截止頻率,因此實際上這四個無限輸入響應(yīng)濾波器總是具有不同的截止頻率。
結(jié)合圖15參照圖17,其示意框圖例舉了混響狀態(tài)機1510的各個組件。混響狀態(tài)機1510使用混響度音樂設(shè)備數(shù)字接口控制參數(shù)對送往混響處理器的頻道采樣的百分比進行確定。混響計算涉及對一個信號的低通濾波,以及將多個濾波信號與經(jīng)過多級增量延遲、濾波、和調(diào)制過的復(fù)制濾波信號求和。為了與來自效果處理器108中的其它狀態(tài)機的輸出信號相加,混響狀態(tài)機1510的輸出被送往輸出累加器(未示出)。
混響狀態(tài)機1510是一種數(shù)字混響器,其混響效果是通過在信號通道中插入一個多重延遲并且累加延遲和未延遲信號以形成一個多重回聲音頻信號實現(xiàn)的。多級延遲由一個具有多抽頭的延遲線存儲器1702提供。在一種所述方案中,用一個先進先出緩沖存儲器實現(xiàn)延遲線存儲器1702,該緩沖存儲器有805個具有14位字長的字符。然而,許多適配緩沖存儲器長度和字長是適合于延遲線存儲器1702的。在一個方案中,延遲線存儲器1702包含用于單耳混響計算的字符77、388、644、799處的抽頭。在其它方案中,抽頭安置在其它合適的字位置處。在某些方案中,延遲抽頭放置是程序控制的。抽頭在字符77、388、644、799處的延遲信號和延遲線存儲器1702末端的延遲信號被分別用于第一級低通濾波器1710、1712、1714、1716、和1718。在乘法器1720、1722、1724、1726、和1728中,來自第一級低通濾波器1710、1712、1714、1716、和1718的濾波和延遲信號分別與增益因數(shù)G1、G2、G3、G4、和G5相乘。在所述方案中,增益因數(shù)G1、G2、G3、G4、和G5是可由程序控制的。
在加法器1730中,來自乘法器1720、1722、1724、和1726的延遲、濾波、和乘法信號被累加,以產(chǎn)生一種單耳混響結(jié)果。在加法器1730輸出端,使用加法器1732,將位于乘法器1728輸出端的延遲線存儲器1702終端的濾波延遲信號加入單耳混響結(jié)果,以產(chǎn)生一個左頻道混響信號。在加法器1730輸出端,使用加法器1734,將位于乘法器1728輸出端的延遲線存儲器1702終端的濾波延遲信號從單耳混響結(jié)果中減去,以產(chǎn)生一個右頻道混響信號。
將加法器1730生成的單耳混響結(jié)果施加于乘法器1736,它能將單耳混響結(jié)果與反饋因數(shù)F相乘。盡管反饋因數(shù)有其它合適的數(shù)值,在所述方案中,反饋因數(shù)F為1/8。在加法器1708中,由乘法器1736生成的結(jié)果被加到一個相應(yīng)于混響狀態(tài)機1510的輸入信號的信號中,并且輸入延遲線存儲器1702中,以形成混響狀態(tài)機1510中的反饋通道。
為了縮減內(nèi)存需求,混響狀態(tài)機1510以4410赫茲運行。借助加法器1708,加至延遲線存儲器1702的輸入音頻信號從44.1KHz到4410Hz采樣,并且在現(xiàn)有的混響狀態(tài)機1510上插值返回44.1KHz。效果處理器108的音頻信號以44.1KHz輸送,使用第六級低通濾波器1704濾波,使用分樣器1706以因數(shù)10分樣。第六級低通濾波器1704使用三個二級無限輸入響應(yīng)低通濾波器將音頻信號濾為2000Hz。在所述方案中,采樣器1710是一個實現(xiàn)簡單的單極濾波器功能的四級無限輸入響應(yīng)濾波器,它以移位和加法操作而不是乘法操作來節(jié)省電路區(qū)域和操作時間。通過使左頻道的混響信號通過一個10倍插值器1740和一個第六級低通濾波器1742使混響后的音頻信號被恢復(fù)到44.1KHz從而產(chǎn)生一個44.1KHz的左頻道混響信號。在所述方案中,10倍插值器1740與分樣器1706等同。右頻道的混響信號通過一個10倍插值器1744和一個第六級低通濾波器1746以產(chǎn)生一個44.1KHz的右頻道混響信號。
盡管為混響狀態(tài)機1510例舉了一個特定的電路方案,但混響模擬器也可以采用其它的適當(dāng)方案。尤其是,一種適當(dāng)?shù)幕祉憼顟B(tài)機可以包括一個具有或多或少存儲單元的延遲線存儲器,并且各個存儲單元可以擁有或大或小的位寬度。各種其它的濾波器也以采用,例如用全通濾波器代替低通濾波器。延遲線存儲器設(shè)置有或多或少的抽頭。而且,增益因子G可以為固定值或程序控制的,并且具有各種適當(dāng)?shù)奈粚挾取?br>
在混響使用之前對音頻信號分樣非常有利于從根本上縮減混響狀態(tài)機的內(nèi)存需求。例如,在例舉的方案中,延遲線存儲器1702包括805個12位的存儲單元,使整個存儲容量約為1200字節(jié)。若沒有采樣器和插值器,約為12,000字節(jié)的相對低密度隨機存取存儲器會被用于實現(xiàn)混響模擬器功能。低花費高功能或單芯片高功能的合成器應(yīng)用中可以達到高存儲容量。
雖然所述混響狀態(tài)機1510的分樣因子和插值因子取值為10,在各種不同方案中,混響狀態(tài)機可以采用其它合適的取值進行分樣和插值。
本發(fā)明在參考了幾個方案說明之后,可以明白,所說明的這些方案和本發(fā)明的范圍并不限于這些。對所說明的這些方案的許多變形、調(diào)整、增加和改進都是可能的。例如,一種方案中說明了一種系統(tǒng),它利用多處理器系統(tǒng)包括奔騰主計算機和一個特殊的多媒體處理器。另一種方案中說了一種系統(tǒng),它由鍵盤控制,它用于游戲機,便宜的樂器,音樂設(shè)備數(shù)字接口音響組件及類似設(shè)備。其它配置在聲音發(fā)生器工藝中周知,合成裝置可能被用于其它方案中。
權(quán)利要求
1. 由波形表合成器重現(xiàn)編碼聲音信號的方法,包括如下步驟將音樂信號濾波成若干互相分開的頻帶,包括一個高頻帶和一個低頻帶;在第一采樣期內(nèi)以第一采樣率采樣所述高頻帶;在第二采樣期內(nèi)以第二采樣率采樣所述低頻帶,所述第二采樣率比所述第一采樣率低,且所述第二采樣期比所述第一采樣期短;在一個第一存儲器中存儲所采樣的高頻帶及相關(guān)的重構(gòu)參數(shù);以及在第二存儲器中,存儲所采樣的低頻帶及相關(guān)的重構(gòu)參數(shù);
2. 根據(jù)權(quán)利要求1所述的方法,進一步包括步驟在相鄰的所述互相分開的頻帶之間選擇一個隔離頻率,以便所述相鄰的互相分開的高頻帶的頻譜成分基本為常數(shù)。
3. 根據(jù)權(quán)利要求1所述的方法,其中所述的音樂音響是持續(xù)音響,且所述高頻帶在一個近似的高頻帶周期內(nèi)被采樣。
4. 根據(jù)權(quán)利要求4所述的方法,其中所述的音樂音響是打擊音響,且所述高頻帶被采樣直到所述高頻帶衰減或變?yōu)殪o態(tài)。
5. 根據(jù)權(quán)利要求1所述的方法,其中所述的音樂信號濾波步驟還包括如下步驟在第一低通濾波步驟中低通濾波所述音樂信號以便對高頻帶設(shè)定上限采樣率;在第二低通濾波步驟中低通濾波所述音樂信號以產(chǎn)生低頻帶信號;利用與所述第二低通濾波步驟中的低通濾波器互補的高通濾波器高通濾波所述音樂信號;為了在所述低頻帶獲得并存儲重復(fù)音樂信號的循環(huán)而低通循環(huán)所述音樂信號;以及為了在高頻帶獲得并存儲所述重復(fù)音樂信號的循環(huán)而高通循環(huán)所述音樂信號。
6. 根據(jù)權(quán)利要求5所述的方法,其中所述音樂信號的濾波步驟進一步包括在所述第一低通濾波步驟之后,放大所述音樂信號達到實際上的恒定振幅。
7. 根據(jù)權(quán)利要求5所述的方法,其中所述音樂信號的濾波步驟進一步包括利用循環(huán)周期強制濾波器濾波所述低頻帶音樂信號,以加速從低通濾波器的音樂波形中去除非周期非諧波的頻譜成分。
8. 根據(jù)權(quán)利要求7所述的方法,其中所述的循環(huán)周期強制濾波器是具有可變增益的梳狀濾波器。
9. 根據(jù)權(quán)利要求5所述的方法,其中所述的音樂信號濾波器步驟進一步包括下列步驟利用循環(huán)周期強制處理濾波所述高頻帶音樂信號,以加速從低通濾波的音樂波形中除去非周期非諧波的高頻頻譜成分。
10.根據(jù)權(quán)利要求1所述的方法,其中所述的采樣步驟進一步包括對所述音樂信號分樣構(gòu)成步驟。
11.根據(jù)權(quán)利要求9所述的方法,其中所述音樂信號分樣構(gòu)成的步驟包括確定分樣比;在所述音樂信號中插入0;以及以分樣比采樣所述音樂信號。
12.根據(jù)權(quán)利要求9所述的方法,其中所述的音樂信號分樣構(gòu)成的步驟包括確定分樣比;音調(diào)位移所述音樂信號以致分樣時的循環(huán)長度成整數(shù);在所述音樂信號中插入0以致循環(huán)長度成整數(shù);以分樣比分樣所述音樂信號;以及計算一個虛擬采樣率。
13.一種波形表合成器包括多個用于同時處理多個采樣的獨立操作的波形表處理器;與所述多個波形表合成器相連的采樣存儲器,該采樣存儲器包括一個按權(quán)利要求1所述編碼的音樂信號的方法得到的音樂信號信息存儲器;以及與所述多個波形表處理器及采樣存儲器相連的編譯器,該編譯器用于啟動所述多個波形表處理器,以便同時獨立地處理高頻帶和低頻帶采樣。
14.一種波形表合成器包括多個用于同步處理多個采樣的獨立操作的波形表處理器;一個與所述多個波形表處理器相連的采樣存儲器,該采樣存儲器包括一個音樂信號信息存儲器,它被分成多個相互分離的頻帶采樣,所述采樣包括一個較高頻帶采樣和重構(gòu)參數(shù);一個較低頻采樣和重構(gòu)參數(shù),一個以高采樣率采樣的較高頻帶采樣,及一個相對于較低頻帶采樣的低采樣間隔;一個與所述多個波形表處理器和采樣器相連的編譯器,該編譯器啟動所述多個波形表處理器同時獨立處理高頻帶采樣和低頻帶采樣。
15.根據(jù)權(quán)利要求14所述的波形表合成器,其中所述的互相分開的頻帶采樣被選定的隔離頻率分隔,以致相鄰的互相分開頻帶的高頻帶分量接近恒定。
16.根據(jù)權(quán)利要求14所述的波形表合成器,其中所述的互相分開的頻帶采樣包括一個持續(xù)音樂音響的較高頻帶,它被采樣以獲得一個較高頻帶的近似的單周期。
17.根據(jù)權(quán)利要求14所述的波形表合成器,其中所述的互相分開的頻帶采樣包括一個沖擊音樂音響的較高頻帶,它被采樣直到高頻帶衰減或成為靜態(tài)。
18.根據(jù)權(quán)利要求14所述的波形表合成器,其中所述的多個獨立操作的波形表處理器利用過采樣的多通插值濾波器彼此恢復(fù)較高頻帶采樣和較低頻帶采樣的執(zhí)行頻率。
19.根據(jù)權(quán)利要求14所述的波形表合成器,還包括與所述多個波形表處理器相連的多個效果處理器,所述多個效果處理器用于執(zhí)行從包括包絡(luò)產(chǎn)生、音量控制、平移、和聲和混響的一組功能中選擇的功能。
20.根據(jù)權(quán)利要求14所述的波形表合成器,還包括用于實現(xiàn)波形表合成器功能的存儲器,在波形表合成器中,全部只讀存儲器存儲器的存儲空間少于0.5Mbtyte。
21.根據(jù)權(quán)利要求20所述的波形表合成器,其中所述的波形表合成器是在一個單獨的集成電路芯片中實現(xiàn)的。
22.根據(jù)權(quán)利要求14所述的波形表合成器,其中所述的波形表合成器是在一個單獨的集成電路芯片中實現(xiàn)的。
23.提供波形表合成器的方法包括以下步驟提供多個獨立操作的波形表處理器,用于同步處理多個采樣;提供一個與多個波形表處理器相連的采樣存儲器,該采樣存儲器包括一個音樂信號信息存儲器,該存儲器被分成多個相互分離的頻帶采樣,所述頻帶采樣包括一個較高頻帶采樣和重構(gòu)參數(shù),一個較低頻采樣和重構(gòu)參數(shù),一個以高采樣率采樣的較高頻帶采樣,及一個相對于較低頻帶采樣的低采樣間隔;以及一個與所述多個波形表處理器和采樣器相連的編譯器,該編譯器啟動所述多個波形表處理器同時獨立處理高頻帶采樣和低頻帶采樣。
24.一種多媒體計算機系統(tǒng)包括一個主處理機;以及一個與所述主處理器相連的波形表合成器,該波形表合成器包括用于同時處理多個采樣的獨立操作的多個波形表處理器;一個與所述多個波形表處理器相連的采樣存儲器,該采樣存儲器包括一個與多個波形表處理器相連的采樣存儲器,該采樣存儲器包括一個音樂信號信息存儲器,它被分成多個相互分開的頻帶采樣,所述頻帶采樣包括一個較高頻帶采樣和重構(gòu)參數(shù),一個較低頻采樣和重構(gòu)參數(shù),一個以高采樣率采樣的較高頻帶采樣,及一個相對于較低頻帶采樣的低采樣間隔;一個與所述多個波形表處理器和采樣器相連的編譯器,該編譯器啟動所述多個波形表處理器同時獨立處理高頻帶采樣和低頻帶采樣。
25.一種音響生成系統(tǒng)包括一個鍵盤/控制器;以及一個與所述鍵盤/控制器相連的波形表合成器,該波形表合成器包括用于同時處理多個采樣的獨立操作的波形表處理器;一個與多個波形表處理器相連的采樣存儲器,該采樣存儲器包括一個音樂信號信息存儲器,它被分成多個相互分離的頻帶采樣,所述頻帶采樣包括一個較高頻帶采樣和重構(gòu)參數(shù),一個較低頻采樣和重構(gòu)參數(shù),一個以高采樣率采樣的較高頻帶采樣,及一個相對于較低頻帶采樣的低采樣間隔;一個與所述多個波形表處理器和采樣器相連的編譯器,該編譯器啟動所述多個波形表處理器同時獨立地處理高頻帶采樣和低頻帶采樣。
全文摘要
本發(fā)明涉及用于在波形表合成器中對音樂信號進行編碼和再生的可變采樣率近似技術(shù)。許多聲音實質(zhì)上包含一個大的能量的快速傳遞,然后是隨時間衰減的振動,所以音樂音響的帶寬要求隨消逝的時間而變窄。采用可變采樣率近似技術(shù),音樂音響分為持續(xù)音響和打擊音響。持續(xù)設(shè)備生成噪音激勵,然后持續(xù)由該噪音激勵產(chǎn)生的聲音。而打擊設(shè)備也是噪音源,當(dāng)持續(xù)設(shè)備維持所有頻率幾乎相等時,打擊設(shè)備產(chǎn)生高頻快速衰減的音響信號。持續(xù)和沖擊設(shè)備具有本質(zhì)不同的波形特性,但是對于降低存儲容量而言是類似的。采用一個可變采樣率技術(shù),開發(fā)利用持續(xù)音響和打擊音響的聲特征間的相似性,以及大幅度降低波形表合成器內(nèi)存預(yù)算。
文檔編號G10H7/02GK1230275SQ97197936
公開日1999年9月29日 申請日期1997年9月10日 優(yōu)先權(quán)日1996年9月13日
發(fā)明者邁克爾·捷金斯 申請人:塞瑞斯邏輯公司