專利名稱:用來修正音頻信號的方法和系統(tǒng)的制作方法
技術領域:
本發(fā)明涉及用來修正音頻信號的方法和系統(tǒng),特別是吉他音調,
包括音頻信號的音高4斤曲(pitch-bending)。
背景技術:
電信號可以是其中信號由連續(xù)變化的量攜帶的模擬信號和其中信 號由有限組的離散值(經(jīng)常僅兩個,用0和l表示)表示的數(shù)字信號。
例如,在電儀器中處理音樂時,首先用數(shù)字信號替換模擬信號, 在它們被再次轉換成用來播放出的模擬信號以前以所述數(shù)字信號的形 式處理它們。由演奏者演奏的音樂首先由麥克風轉換成電模擬信號, 但是然后通過采樣(按時測量在特定點處的聲音強度, 一秒鐘成千上 萬次)和量化(將每個強度分配給有限數(shù)量的強度等級中的一個)將 所述電信號轉換成零和一的序列。存儲在存儲器中用于進一步處理的 是該零和一的序列。
然后信號和它的譜是隨著時間的過去而波動的 一 系列點的形式并 且在所述頻率范圍(實際上在0 Hz和采樣頻率的一半之間)中。原始 聲音信號的一些部分自然丟失。計算機僅在一些精確時刻知道所述聲 音。為了確保它將被準確播放并且沒有任何模糊,采樣必須非常精確。
對于數(shù)字信號有兩個非常重要的優(yōu)勢。首先,數(shù)字信號可以被精 確復制,并且其次,數(shù)字信號可以被容易地操縱。因為所述信號僅僅 是零和一的序列,并且因為計算機可以對這種序列做可以列舉的任何 事情,所以可以根據(jù)需要通過數(shù)字信號處理(DSP)修正所述數(shù)字信號。
一旦信號被數(shù)字化并且所得到的數(shù)據(jù)利用合適數(shù)據(jù)結構被存儲到 的數(shù)據(jù)文件中,就可以編輯所述聲音。輸入信號的采樣以這種形式存 儲在數(shù)據(jù)文件存儲器中使得每段信號數(shù)據(jù)被如此放置以便形成數(shù)據(jù)段 的隊列。
圓形隊列是回繞的存儲緩沖區(qū),看起來像無限長的緩沖區(qū)。這種 隊列具有輸入指針(其定位下一個可用的存儲位置)和輸出指針(其 定位從所述隊列讀取的下一個位置)。當數(shù)據(jù)被寫入所述隊列時,輸入指針指示數(shù)據(jù)將被存儲在隊列中的哪個地方。然后指針增加到下一 個位置。如果指針到達隊列的末端,則它被復位到隊列的開始。同樣 地,當從隊列讀取數(shù)據(jù)時,輸出指針指示讀取下一個數(shù)據(jù)段的位置。 在從隊列讀取所述數(shù)據(jù)后,輸出指針被增加,并且如必要的話回繞到
隊列的開始。在例如MidiEvent結構中,輸入數(shù)據(jù)被放置和存儲在具 有512個事件(event)的默認大小的圓形隊列中。
為了除去不需要的頻率,使用濾波器。濾波器是被廣泛使用的術 語,其適用于能夠保持或變換部分聲音的任何設備。例如,低通濾波 器被用來抑制不能聽見但是干擾采樣的高頻,而高通濾波器抑制低頻。
實際上,數(shù)字化允許將空氣壓力的變化變換成計算機理解的一系 列數(shù)字。麥克風將壓力變化轉換成電信號并且采樣器將電信號轉換成 數(shù)字。采樣是描述將音頻從模擬源轉換成數(shù)字域的過程的準確的詞語。 采樣器是通稱并且ADC(模擬數(shù)字轉換器)經(jīng)常被電工使用。聲卡可以 記錄點(數(shù)字)的速度被叫做采樣頻率。
電儀器具有拾音器,所述拾音器將共鳴板或弦的振動轉換為電信 號。所述電信號與壓力成比例地被放出。 一些材料如某些晶體、陶瓷、 和聚合物顯示出壓電現(xiàn)象。壓電(Piezo)在希臘語中表示壓力,并且 壓電材料直接將機械振動轉換成電信號。許多拾音器是基于壓電效應。 最普通的拾音器是磁性和壓電的。
在音樂中,音高是用來描述音符(note)有多高或多低的技術術 語。它取決于聲音的頻率(每秒的振動數(shù)),其是以赫茲(Hz)為單 位測量的。因此音高是用于音符頻率的音樂家的術語并且描述音符聽 起來多高或多低。
音高折曲是隨著時間過去對音高進行的逐步和平滑操作。例如, 從一個音符到另一個音符的吉他彈奏者可以選擇簡單地跳躍到第二音 符(其將被認為是音高移位)、或逐漸彎曲(bending)弦使得音高平 滑地從第一音符轉到第二音符。這就是音高折曲。
并且,音高折曲是連續(xù)的控制信號,所述控制信號可以被施加到 鍵盤合成器中通常由在最低鍵(lowest key)左邊的操縱桿獲得的合 成音符。當操縱桿分別向左或向右移動時,聲音的音高變得升高或降 低。
當它隨著音樂進行時,時間利用聲學起基本角色的作用。非常緊密的關系將時間和空間結合在一起,因為聲音是隨著時間過去傳播到 空間中的波。
信號的時標修正(TSM)包括產(chǎn)生不同持續(xù)時間的新信號但是保存 局部的周期性。TSM包括輸入信號的分段以及隨后及時對這些片段進行 重新配置。例如,比例因數(shù)2會將聲音文件伸長到它原始長度的兩倍。
音頻信號的時標修正改變音頻信號的持續(xù)時間同時保持所述信號 的局部頻率含量,導致這樣的總體效果在不影響原始信號的質量、 音高或自然性的情況下加速或減慢記錄的音頻信號被感覺的重放速 度。
一種已知的音高移位(Pitch-Shifting)算法是基于例如在Andy Duncan、 Dave Rossum的文章 "Fundamentals of Pitch-Shifting,, 中介紹的重采樣方法,所述文章出現(xiàn)在the 85th Convention of the Audio Engineering Society, (1988 Oct.), preprint 2714。 為進 行重采樣,需要從一組采樣找到任意時刻的信號值。換句話說,必須 內插采樣之間的信號。對于數(shù)字音頻應用而言,最好的內插法是使用 正弦函數(shù)的P艮帶內插法(band-limited interpolation)。對于音頻 輸入中的每個采樣而言,系統(tǒng)從控制輸入接收一個采樣。控制信號的 值確定與重采樣因數(shù)具有線性關系的音高移位因數(shù)。重采樣因數(shù)又確 定必須內插信號值的時刻。在下一個步驟中,正弦函數(shù)在該時刻與它 的峰排成直線。然后,采樣值乘以正弦函數(shù)的對應值并且彼此相加以 產(chǎn)生信號值。該值被播放,作為輸入采樣的音高移位型式。音高移位 因數(shù)由控制信號確定。因此,重采樣因數(shù)是控制信號的函數(shù)。
因為重采樣信號改變信號的長度,所以時標方法可以被用來將信 號伸長/縮短回它的原始長度,信號長度以該方式被保存。 一個這樣的 時標方法涉及由Francis Lee在1979年在"Time Compression and Expansion of Speech by the Sampling Method" ( JAES Volume 20 Number 9 pp. 738-742; November 1972 )中介紹的環(huán)形緩沖區(qū)方法, 所述環(huán)形緩沖區(qū)方法基于丟棄和重復信號的一些片段以分別壓縮或展 開信號的長度。因為信號的幅度和頻率改變(作為時間的函數(shù)),常 規(guī)的環(huán)形緩沖區(qū)方法導致可聽見的噪聲(artifact)。
在Francis Lee的方法中,輸入和輸出指針分別動作。緩沖區(qū)的 輸入指針負責寫入緩沖區(qū)并且輸出指針根據(jù)時標因數(shù)以不同的速度從緩沖區(qū)讀取。指針環(huán)繞固定長度的緩沖區(qū)移動的不同速度使它們在緩 沖區(qū)中的一些位置處發(fā)生沖突。緩沖區(qū)中的輸入和輸出指針的沖突導 致輸出信號中的不連續(xù)性,所述不連續(xù)性被聽到為可聽見的噪聲。 本發(fā)明的目的
本發(fā)明的目的是研制用來避免所述沖突問題的方法和系統(tǒng)。
發(fā)明內容
本發(fā)明的用來修正音頻信號的方法包括根據(jù)控制信號對音頻信號 進行音高折曲。音頻信號包括限定接收音頻信號的點的輸入信號和限 定信號音高的預期變化的控制信號。所述方法包括以這樣的形式在數(shù) 據(jù)文件存儲器中數(shù)字化和存儲輸入信號的采樣使得每段信號數(shù)據(jù)被放 置在具有定位下一個可用存儲位置的輸入指針和定位從隊列讀取的下 一個位置的輸出指針的隊列中。處理輸入信號以便找到輸入信號的開 始點。所述方法通過作為控制信號的函數(shù)的重采樣執(zhí)行輸入信號的音 高移位,導致相應指針以不同速度圍繞存儲器移動,由此改變信號長 度。為了保存信號長度,通過選擇將被丟棄和重復的輸入信號的片段 通過時標來修正輸入信號。所述方法的主要特征在于,為輸入中的每 個采樣測量輸入指針和輸出指針之間的距離并且根據(jù)測量的距離轉移 存儲器中的輸出指針以便避免在任何位置的指針沖突。
可以執(zhí)行所述方法的本發(fā)明的系統(tǒng)包括用來產(chǎn)生音頻信號的裝 置,例如吉他。它也包括將音頻信號的振動變成電輸入信號的拾音器、 用于輸入信號的模擬數(shù)字轉換器、以及用來存儲數(shù)字化的輸入信號的 存儲器。所述系統(tǒng)還包括數(shù)字信號處理處理器,該數(shù)字信號處理處理 器具有用于控制信號分析的裝置并且具有運行用來處理輸入信號的算 法的裝置的、用于輸出信號的數(shù)字模擬轉換器、和放大輸出信號的放 大器、以及用于輸入信號的開始處理以便找到輸入信號的開始點的裝 置。
本發(fā)明的優(yōu)選實施例具有從屬權利要求的特征。
優(yōu)選地,如果距離短于給出的預定量,則轉移輸出指針是在存儲 器中將輸出指針向后轉移到信號開始重放的點,并且如果距離長于所 述預定量,則輸出指針在存儲器中在輸入指針的后面向前轉移到信號 開始重放的點。本發(fā)明的方法首先旨在用于吉他音調。因此,在本發(fā)明中使用的 音高移位算法基于改變信號長度的重采樣。在本發(fā)明中,在使系統(tǒng)保 持低的等待時間時信號長度的變化可以被補償。
在本發(fā)明中使用的音高折曲算法中,信號的一些片段被重復或丟 棄以便改變信號的長度。在研制的新方法中,標準化濾波相關時標修
正(NFC-TSM)被用來尋找信號片段彼此接合的最佳點。NFC-TSM利用 相關技術尋找標準化低通濾波信號中的最佳接合點(splice point)。
行時間同步。口這補償了大于3毫秒的時間漂z移:'如果溫針之間"測量
距離比預定量長,則在檢測到開始時通過將輸出指針在存儲器中在輸 入指針的后面向前轉移到信號開始重放的點來執(zhí)行時間同步。優(yōu)選地, 如果所述預定距離是空弦周期長度的兩倍以上則執(zhí)行時間同步。
此外,吉他音調的增益和音色處理被用作音高折曲因數(shù)的函數(shù)。 當在電吉他中通過手動操作桿改變音高時,信號的音色和增益變化。 當通過虛擬音高折曲器改變音高時,增益和音色處理模擬這些變化。
本發(fā)明是能夠根據(jù)具有3毫秒的等待時間的控制信號執(zhí)行音調(特 別是電吉他音調)的音高折曲的實時系統(tǒng),已經(jīng)設計了基于重采樣的 時域音高移位算法。本發(fā)明的新方法保存輸入信號的長度,并且以新 的方式使用環(huán)形緩沖區(qū)技術[例如在Fairbanks, G. , W. L. Everitt, 和 R. P. Jaeger 的文章 "Method for Time or Frequency Compression-Expansion of Speech. ,, ( Transactions of the Institute of Radio Engineers, Professional Group on Audio AU-2 (1954): 7—12. Reprinted in G. Fairbanks, Experimental Phonetics: Selected Articles, University of Illinois Press, 1966 )和Francis F. Lee的文章Time Compression and Expansion of Speech by the Sampling Method ( JAES Volume 20 Number 9 pp. 738-742; November 1972 )中介紹的]與交迭和加法算法[例如在Udo Z6lzer的文章Digital Audio Effects ( ISBN: 0-471-49078-4, Hardcover 554 pages, February 2002 )中介紹的]。
通過重復和丟棄信號的一些部分來保存信號長度。為了跟隨信號 中的所有變化,開始檢測器被用來尋找信號中的開始并且在它出現(xiàn)后 以例如3毫秒的等待時間跳到新事件。當在傳統(tǒng)的電吉他中利用手動操作桿使信號的音高向下移位時, 弦振動的程度減弱并且音色變?yōu)樯晕⒌统恋穆曇?,即較高的頻率被衰
減了??梢岳帽灰舾咭莆灰驍?shù)控制的自動增益控制器(AGC)和均衡 器(EQ)來模擬這些現(xiàn)象。將由測量獲得用于自動增益控制器和均衡 器的參數(shù)。因此數(shù)字信號處理處理器優(yōu)選進一步包括用于作為音高折 曲因數(shù)的函數(shù)的音高折曲信號的音色處理以便模擬由于音高移位引起 的信號變化的均衡器、拾音器濾波器和自動增益控制器(AGC)。
此外,分析從附著于系統(tǒng)的拉伸傳感器(stretch-sensor)獲得 的控制信號。未處理的信號有噪聲,并且以大約3毫秒的時間間隔被 處理。因此,平均技術連同曲線擬合法一起被用來使信號平滑。
在本發(fā)明中,傳統(tǒng)的手動操作桿被傳感器替換并且通過DSP算法 執(zhí)4亍音高^斤曲。
然而,能夠對不同手動操縱桿的諧振行為進行模擬。在迅速釋放 操縱桿之后手動操縱桿易于輕微振動,即,在從偏移位置迅速釋放操 縱桿后操縱桿并不完全移到它的靜止位置而是輕微地諧振。這在吉他 信號中引起了可聽見的效果。相比之下,產(chǎn)生控制信號的機電操縱桿 是非常固定的并且不像一些手動操縱桿那樣諧振。操縱桿諧振模型利 用數(shù)字濾波器模擬手動操縱桿的該諧振行為。將在本發(fā)明中使用的合 適的數(shù)字濾波器是諧振器,所述諧振器的參數(shù)根據(jù)實際的手動操縱桿 被調整以控制輸出信號的衰減時間。換句話說,所述濾波器的中心頻 率和衰減時間與目標響應匹配。這樣,手動操縱桿的諧振質量-彈簧系 統(tǒng)被數(shù)字濾波器模擬并且它對輸出信號的影響被適當模擬。在信號鏈 中,濾波器模擬手動操縱桿的諧振行為被放置為輸出前的最后一個塊。 就圖2來說,它被放置在AGC塊的后面(圖2在具體實施方式
部分被 描述)。
下面,通過參考附圖借助于有利實施例的實例來說明本發(fā)明。詳 細描述僅僅是說明性目的并且本發(fā)明并不打算將本發(fā)明限制于下列介 紹的細節(jié)。下列實例例如涉及吉他,但是本發(fā)明的思想同樣可以以用 于例如其他電音樂儀器的其它連接(connection)實施。
圖1示出用來產(chǎn)生電操縱音樂的普通的現(xiàn)有技術系統(tǒng)。圖2描述整個發(fā)明系統(tǒng)的方塊圖。
圖3a-3b更詳細地介紹本發(fā)明的音高移位算法的思想。
具體實施例方式
圖1利用電吉他示出用來產(chǎn)生電操縱音樂的普通的現(xiàn)有技術系統(tǒng)。 在圖1中,電吉他1具有六個壓電拾音器8。拾音器將吉他弦的振 動變成電信號。拾音器中的材料(例如壓電材料)直接將機械振動變 換成電信號。所述系統(tǒng)也包括用于輸入信號的多通道模擬數(shù)字轉換器 (ADC) 2、用于輸出信號的單通道數(shù)字模擬轉換器(DAC) 3、運行用 來處理輸入信號的相關算法的DSP處理器4、用來存儲數(shù)字化輸入信號 的外部存儲器5、放大輸出信號的放大器6和揚聲器7。
吉他上的每個弦連接到壓電拾音器。有六個產(chǎn)生將被處理的信號 的壓電拾音器。這些信號通過6個通道傳導到模擬數(shù)字轉換器(ADC) 的輸入??刂菩盘栍砂惭b在吉他上的相關手動控制設備例如操縱桿產(chǎn) 生并且也將被傳導到模擬數(shù)字轉換器。演奏者利用操縱桿表達音樂應 當怎樣演奏。在DSP處理器中,算法操縱信號以便形成被產(chǎn)生并且被 傳送到數(shù)字模擬轉換器(DAC)的預期輸出信號。對于適當運行的算法 而言,DSP處理器需要用來存儲從音頻輸入信號采樣的中間數(shù)據(jù)的外部 存儲器。在轉換成模擬格式之后,輸出信號被放大并且通過揚聲器播 放。
輸入信號的采樣被數(shù)字化并且以這樣的形式的數(shù)據(jù)文件被存儲在 存儲器5中,即每段信號數(shù)據(jù)被放置在具有定位下一個可用存儲位 置的輸入指針和定位從隊列讀取的下一個位置的輸出指針的隊列中。 通過時標修正輸入信號,導致相應指針以不同的速度圍繞存儲器移動。
在圖1的DSP處理器部分上實施本發(fā)明。
圖2描述本發(fā)明的整個DSP處理器系統(tǒng)的方塊圖。數(shù)字化音頻信 號包括限定接收音頻信號的點的輸入信號和限定信號音高的預期變化 的控制信號。因此,圖2介紹怎樣處理音頻信號的輸入信號9和控制 信號10。
數(shù)字信號處理(DSP )處理器(在圖1中由參考數(shù)字4表示)包括 用于控制信號分析的裝置11、用于開始(onset)處理的裝置12、運 行音高移位算法的裝置13、用于音高折曲信號的音色處理的均衡器14、拾音器濾波器15、和用來產(chǎn)生輸出信號17的自動增益控制器(AGC) 16。然后輸出信號在放大器6 (在圖1中出現(xiàn))中被放大并且通過揚聲 器7 (在圖1中出現(xiàn))播放。
根據(jù)吉他的操縱桿的位置由附著于圖1的系統(tǒng)的傳感器產(chǎn)生控制 信號。接收的控制信號有噪聲。由于控制信號中的周期性噪聲,在察 覺的音高中一些顫動能夠被聽見。因此,從傳感器電路獲得的接收的 控制信號應當被處理以具有平滑的波形。為了該目的可以使用數(shù)字信 號處理方法。
接收的控制信號是具有大約31個采樣的周期(1423 Hz)的脈沖 序列。查看該控制信號,可以認識到,信號的負部分比正部分包含更 多的信息。因此,第一步驟是隔離信號的負部分。
如上所述,控制信號有噪聲。除去噪聲的一個方法是求平均。在 不考慮零值的情況下在脈沖序列的每個周期中計算信號的平均值。如 果我們考察更長的時間間隔中的周期(比如說100個周期)的平均值, 我們會注意到在這些周期范圍內的平均值也不穩(wěn)定地變化。原因在于 在每個周期中存在一些點,所述點的值與信號的實際值具有大的差別。 在下一階段中,再次計算信號的平均值,忽略其與前面的平均值的差 異大于闊值的那些值。根據(jù)實驗確定所述闊值。然后,在每個周期中 用計算的平均值替換采樣值。
即使對單個周期范圍內的控制信號求平均也沒有使信號平滑到預 期程度。下一步驟是利用曲線擬合技術使信號平滑。存在不同種類的 曲線擬合技術。因為控制信號具有非常低的頻率,所以線性曲線擬合 技術適合于我們的應用。首先,計算被計算的平均點的導數(shù)。該導數(shù) 信號凈皮用來確定應當^皮考慮用于擬合分隔線(line between)的點的 數(shù)目。最后,應用曲線擬合技術。
圖2中的開始處理塊12負責尋找輸入信號中的開始。換句話說, 應當能夠檢測聲音的幅度、音高或音色的任何顯著的變化,因為信號 中與它們的出現(xiàn)同時發(fā)生的所有變化必須被聽見。
在本發(fā)明中輸入信號的采樣以這樣的形式存儲在數(shù)據(jù)文件存儲器 中,即每段信號數(shù)據(jù)被放置成使得數(shù)據(jù)段的隊列被形成得具有輸入 指針(其定位下一個可用的存儲位置)和輸出指針(其定位從所述隊 列讀取的下一個位置)。當數(shù)據(jù)被寫入所述隊列時,輸入指針指示隊列中將要存儲數(shù)據(jù)的地方。同樣地,當從所述隊列讀取數(shù)據(jù)時,輸出 指針指示讀取下一段數(shù)據(jù)的位置。
正如可以從音高移位算法推導的,由于時間修正技術(時標), 輸出指針到緩沖區(qū)的位置根據(jù)音高移位因數(shù)而變化。為此,輸出和輸 入指針之間的距離不是恒定的并且很有可能的是,當開始出現(xiàn)時,輸
出指針與輸入指針具有3毫秒以上的距離。這樣,我們不能聽見具有 小于3毫秒的等待時間的新彈撥(pluck)。為避免該問題,如果開始 出現(xiàn),則輸出指針應當向前跳躍到正好在輸入指針的后面等于或小于3 毫秒的距離,以便當開始出現(xiàn)時我們能夠聽見它。
開始檢測器12包括高通濾波器,因為吉他音調中的大部分開始包 含高頻成分。然后,利用積分器計算高通濾波信號的能量。以特定的 時間間隔比較所述高通濾波信號的能量。所述高通濾波信號的能量的 任何相當大的變化都被標記為開始(onset)。然而,信號幅度的突然 變化也引起開始的感覺。因此,在沒有高通濾波的情況下對信號本身 也進行能量計算和比較。
因為該應用應當為低等待時間,所以需要高分辨率開始檢測器。 即,應當能夠在3毫秒內檢測到開始。為此,對能量計算和比較而言 需要非常短的間隔。使用短長度的間隔進行比較是不可能的,因為信 號的能量周期性變化。為解決該問題,比較能量的包絡(音符的特性) 的值,而不是以特定的時間間隔比較信號的能量。為所述高通濾波信 號和輸入信號進行該操作。
運行音高移位算法的裝置13執(zhí)行重采樣和時標(以保存信號長 度)。由控制信號確定音高移位因數(shù)。因此,重采樣因數(shù)是控制信號 的函數(shù)。
本發(fā)明的時標技術是基于分別丟棄和重復信號的一些片段以壓縮 或擴展信號的長度。
緩沖區(qū)的輸入指針負責寫入緩沖區(qū)并且輸出指針根據(jù)時標因數(shù)以 不同的速度從緩沖區(qū)讀取。指針圍繞固定長度的緩沖區(qū)移動的不同速 度通常會使它們在緩沖區(qū)中的一些位置發(fā)生沖突,結果是聽到的輸出 信號不連續(xù)。然而,在本發(fā)明中避免了該問題。
以這樣的方式操縱緩沖器的輸出指針,即它絕不會與輸入指針 沖突并且也總是與輸入指針齊步以跟隨幅度和頻率的變化。因此,對于輸入中的每個采樣,測量輸入和輸出指針之間的距離。如果所述距 離短于特定量則輸出指針在緩沖區(qū)中向后跳躍并且從該點開始播放信 號。另一方面,如果所述距離大于給定量則輸出指針向前跳躍,在輸 入指針的后面。應當注意,跳躍長度不能很長,因為我們目的在于以
短的等待時間來跟隨信號變化。圖3示出輸入和輸出指針在所述的兩 種不同情形下怎樣運轉;當音高在圖3a中升高并且在圖3b中下降時。 在圖3a中,輸出指針(利用信息段隊列下面的箭頭18示出)移 動得比輸入指針(利用信息段隊列上面的箭頭19示出)慢。因此,輸 出指針必須向前跳躍以與輸入指針齊步,這在圖3a中用參考數(shù)字20 表示。
在圖3b中,輸出指針(利用信息段隊列下面的箭頭18示出)移 動得比輸入指針(利用信息段隊列上面的箭頭19示出)快。因此,輸 出指針必須向后跳躍以與輸入指針齊步,這在圖3b中用參考數(shù)字20 表示。
然而,當跳躍到新的點時,不準打破信號的周期性。因此,必須 使用相關技術來尋找正確的點。在本發(fā)明中使用的相關函數(shù)是AMDF(平 均幅度差函數(shù),Average Magnitude Difference Function), 所述 AMDF已經(jīng)顯示了比例如也可以使用的互相關技術更好的結果。在開始 利用AMDF尋找最佳接合點前,信號通過低通濾波器并且然后被標準化。 低通濾波使信號變得更平滑。這樣,更容易找到最佳接合點。通過標 準化低通濾波的信號,在尋找最佳點的過程中信號水平的影響將被消 除,因為這時優(yōu)先保存信號基頻的周期性。最佳接合點是在整個搜尋 區(qū)域中AMDF具有最小值的地方。如果找到了最合適的點,輸出指針可 以從該點開始播放信號。為避免幅度不連續(xù),使用交叉淡化 (cross-fading function)函數(shù)來接合先前的聲音片段與新的片段。
均衡器14用于音高折曲信號的音色處理。DSP處理器也包括拾音 器濾波器15、和用來產(chǎn)生輸出信號的自動增益控制器(AGC)。當通過 電吉他中的手動操縱桿改變音高時,信號的音色和增益改變。當通過 虛擬音高折曲器改變音高時,增益和音色處理模擬這些變化。
權利要求
1. 用來修正音頻信號的方法,包括根據(jù)控制信號對音頻信號進行音高折曲,所述音頻信號包括限定接收音頻信號的點的輸入信號和限定信號音高的預期變化的控制信號,所述方法包括以下步驟a)以這樣的形式在數(shù)據(jù)文件存儲器中數(shù)字化和存儲輸入信號的采樣,即每段信號數(shù)據(jù)被放置在隊列中,該隊列具有定位下一個可用存儲位置的輸入指針和定位從該隊列讀取的下一個位置的輸出指針,b)處理輸入信號以便找到輸入信號的開始點,c)通過作為控制信號的函數(shù)的重采樣對輸入信號進行音高移位,導致相應指針以不同速度圍繞存儲器移動,由此改變信號長度,d)為了保存信號長度,通過選擇將被丟棄和重復的輸入信號的片段通過時標來修正輸入信號,其特征在于,為輸入中的每個采樣測量輸入指針和輸出指針之間的距離,并且根據(jù)測量的距離轉移存儲器中的輸出指針以便避免在任何位置的指針沖突。
2. 如權利要求l所述的方法,其特征在于如果所述距離短于給出 的預定量則在存儲器中將輸出指針向后轉移到信號開始重放的點,并 且如果所述距離長于所述預定量則在存儲器中在輸入指針的后面將輸 出指針向前轉移到信號開始重放的點。
3. 如權利要求2所述的方法,其特征在于使用相關函數(shù)來在所有 情況下找到指針轉移到的最佳接合點。
4. 如權利要求3所述的方法,其特征在于使用的相關函數(shù)是平均 幅度差函數(shù)(AMDF)。
5. 如權利要求4所述的方法,其特征在于在搜尋區(qū)域中的AMDF 的最小值被選擇作為最佳接合點。
6. 如權利要求5所述的方法,其特征在于使用交叉淡化函數(shù)來接合先前的聲音片段與新的片段。
7. 如權利要求1-6中的任一項所述的方法,其特征在于在檢測到 開始時執(zhí)行時間同步。
8. 如權利要求7所述的方法,其特征在于如果指針之間的測量的 距離長于預定量則通過將輸出指針在存儲器中在輸入指針的后面向前 轉移到信號開始重放的點來執(zhí)行開始處的時間同步。
9. 如權利要求8所述的方法,其特征在于如果所述預定距離是空弦周期長度的兩倍以上則執(zhí)行所述時間同步。
10. 如權利要求7-9中的任一項所述的方法,其特征在于為輸入 信號及其高通濾波的信號執(zhí)行開始檢測。
11. 如權利要求10所述的方法,其特征在于比較信號的計算的能 量的包絡值以便檢測開始。
12. 如權利要求1-11中的任一項所述的方法,其特征在于作為音 高折曲因數(shù)的函數(shù)的對信號進行的增益和音色處理以便模擬由于音高 移位引起的信號變化。
13. 如權利要求1-12中的任一項所述的方法,其特征在于將被修 正的音頻信號是吉他音調。
14. 如權利要求1-13中的任一項所述的方法,其特征在于通過調整參數(shù)利用數(shù)字濾波器激發(fā)手動操縱桿的諧振行為使得濾波器的中心 頻率和衰減時間與目標響應匹配。
15. 用來修正音頻信號的系統(tǒng),包括用來產(chǎn)生包含限定接收音頻信號的點的輸入信號和限定信號音高 的預期變化的控制信號的音頻信號的裝置,將音頻信號的振動變成電輸入信號的一個或多個拾音器, 用于輸入信號的模擬數(shù)字轉換器,用來存儲數(shù)字化的輸入信號的存儲器,該存儲器具有這樣的形式 的數(shù)據(jù)文件,即每段信號數(shù)據(jù)被放置在隊列中,該隊列具有定位下 一個可用存儲位置的輸入指針和定位從該隊列讀取的下一個位置的輸 出指針,具有下列裝置的數(shù)字信號處理處理器 用于控制信號分析的裝置,運行用來處理輸入信號的算法的裝置,用于輸出信號的數(shù)字模 擬轉換器,以及放大輸出信號的放大器,所述算法通過作為控制信號 的函數(shù)的重采樣來執(zhí)行輸入信號的音高移位并且選擇將被丟棄和重復 的輸入信號的片段以便保存信號長度,其由于重采樣而變化,用于輸入信號的開始處理以便找到輸入信號的開始點的裝置, 其特征在于所述算法為輸入中的每個采樣測量輸入指針和輸出指 針之間的距離,并且根據(jù)測量的距離轉移存儲器中的輸出指針以便避免在任何位置的指針沖突。
16. 如權利要求15所述的系統(tǒng),其特征在于所述算法使用相關函 數(shù)來在所有情況下找到指針轉移到的最佳接合點。
17. 如權利要求16所述的系統(tǒng),其特征在于運行算法的裝置利用 平均幅度差函數(shù)(AMDF)作為相關函數(shù)。
18. 如權利要求15所述的系統(tǒng),其特征在于數(shù)字信號處理處理器 進一步包括用于作為音高折曲因數(shù)的函數(shù)的音高折曲信號的音色處理 以便模擬由于音高移位引起的信號變化的均衡器。
19. 如權利要求15所述的系統(tǒng),其特征在于數(shù)字信號處理處理器 進一步包括拾音器濾波器。
20. 如權利要求15所述的系統(tǒng),其特征在于數(shù)字信號處理處理器 進一步包括自動增益控制器(AGC)。
21. 如權利要求15所述的系統(tǒng),其特征在于用來產(chǎn)生音頻信號的 裝置是吉他。
全文摘要
本發(fā)明涉及用來修正音頻信號的方法和系統(tǒng),包括根據(jù)控制信號對音頻信號進行音高折曲。音頻信號包括限定接收音頻信號的點的輸入信號和限定信號音高的預期變化的控制信號。所述方法包括以這樣的形式在數(shù)據(jù)文件存儲器中數(shù)字化和存儲輸入信號的采樣使得每段信號數(shù)據(jù)被放置在具有定位下一個可用存儲位置的輸入指針和定位從隊列讀取的下一個位置的輸出指針的隊列中。處理輸入信號以便找到輸入信號的開始點。所述方法通過作為控制信號的函數(shù)的重采樣執(zhí)行輸入信號的音高移位,導致相應指針以不同速度圍繞存儲器移動,由此改變信號長度。為了保存信號長度,通過選擇將被丟棄和重復的輸入信號的片段通過時標來修正輸入信號。所述方法的主要特征在于,為輸入中的每個采樣測量輸入指針和輸出指針之間的距離并且根據(jù)測量的距離轉移存儲器中的輸出指針以便避免在任何位置的指針沖突。可以用來執(zhí)行所述方法的本發(fā)明的系統(tǒng)包括用來產(chǎn)生音頻信號的裝置例如吉他。它也包括將音頻信號的振動變成電輸入信號的一個或多個拾音器、用于輸入信號的模擬數(shù)字轉換器、以及用來存儲數(shù)字化的輸入信號的存儲器。所述系統(tǒng)也包括具有用于控制信號分析的裝置并且具有運行用來處理輸入信號的算法的裝置的數(shù)字信號處理處理器、用于輸出信號的數(shù)字模擬轉換器、和放大輸出信號的放大器、以及用于輸入信號的開始處理以便找到輸入信號的開始點的裝置。
文檔編號G10L21/04GK101421782SQ200780013283
公開日2009年4月29日 申請日期2007年2月1日 優(yōu)先權日2006年2月13日
發(fā)明者亨利·彭蒂倫, 朱哈·勞坎加斯, 米卡·科斯基倫, 阿扎德·哈格帕拉斯特, 韋薩·瓦利馬基 申請人:朱哈·勞坎加斯;米卡·科斯基倫;韋薩·瓦利馬基;亨利·彭蒂倫;阿扎德·哈格帕拉斯特