專利名稱:利用軟件虛擬技術結合硬件實現電子音樂信號輸入設備的方法
技術領域:
本發明涉及實現一種電子音樂信號輸入設備的方法,其可以利用軟件虛擬硬件的方式來減化電子音樂信號輸入設備的結構。具體地說,本發明涉及電腦軟件虛擬技術和硬件技術,提出了一種利用軟件虛擬技術結合硬件實現電子音樂信號輸入設備的方法。
背景技術:
眾所周知,樂器是音樂藝術不可缺少的重要工具,傳統樂器如鋼琴、小提琴、風琴等由其各自不同的特色音色而演藝了不同風格的藝術作品,但是傳統樂器存在著制作工藝復雜,不能演藝不同類樂器音色的缺點。
隨著電子技術的不斷發展,出現了模擬電子琴之類的模擬電聲樂器,它們的制作工藝相對簡化,表現的音色多種多樣的優點,但是存在音色生硬,無法媲美真實樂器的缺點。
隨著數字技術特別是計算機技術的飛速發展,模擬電子樂器逐漸被數字電子樂器所取代,得別是結合計算機強大的數字處理能力,給音樂的創作方式帶來了翻天覆地的變化。在數字電子音樂領域眾所周知的最為普及的設備是MIDI鍵盤,它通過MIDI接口與計算機相連,用于向計算機輸入符合MIDI標準的音樂信息,用這樣的方式可以完成大多數傳統樂器所能完成的功能。這類設備功能強大,但是由于要是設備滿足MIDI標準的輸入輸出要求,需要在硬件上使用大量的硬件編碼和控制電路,致使硬件結構復雜,制作成本和銷售價格高昂,無法滿足普通音樂愛好者的要求。有一些發明人通過單片機技術實現了MIDI鍵盤的部分功能并通過標準MIDI接口與計算機連接,但是由于單片機技術成本的高昂,還是不能大副降低音樂輸入設備的成本。
與此同時,通過軟件技術可以在一定程度上模擬MIDI鍵盤的部分功能,如Cakewalk軟件中的虛擬鋼琴(Virtual Piano)軟件就是通過軟件的形式模擬一個鋼琴鍵盤,另外如Keyboard Music軟件使得通過個人計算機用戶可以通過普通PC鍵盤輸入音樂信息。這類軟件大大降低了音樂輸入設備的硬件結果和成本,但是由于其一般不具備力度感應設備,不能表現音樂力度,不符合傳統樂曲的使用習慣。而且音色的表現力很大程度上取決于軟件的編制水平,軟件之間缺乏統一的輸入輸出標準,無法做到兼容使用,所以往往在音色的表現能力上不能盡如人意。
本發明旨在提出一種利用軟件虛擬技術結合硬件實現電子音樂信號輸入設備的方法,既具備MIDI鍵盤的強大音樂信號輸入功能,又兼具虛擬音樂樂器軟件成本低廉的優點。
本發明亦旨在提出利用軟件虛擬技術實現一種跨平臺的軟件兼容性好的電子音樂信號輸入設備的方法。
發明內容
本發明要解決的技術問題是,提出了一種利用軟件虛擬技術結合硬件實現電子音樂信號輸入設備的方法,利用軟件虛擬技術使電子音樂信號輸入設備的硬件結構大幅減少,并通過軟件虛擬技術使本方法具有軟件兼容性和跨平臺的移植性。
為了解決目前的技術問題,本發明采用下述技術方案予以實現。
利用此方法利用軟件虛擬技術結合硬件實現的方式設計整個電子音樂信號輸入設備,包括軟件與硬件兩個主要設計部分。
硬件部分的功能在于輸入表示了鍵位信息和力度信息的信號,這種信號可以是數字信號也可以是模擬信號,可以是串行的也可是并行的。其特征在于,輸入的信號形式簡單,未經過特殊編碼,不符合MIDI標準。另外,本發明的硬件部分的功能可以只用于輸入鍵位的數字信息,而通過不同鍵位信息的組合可以計算出代表力度的信息或其他含義的信息。本領域的技術人員明白在本發明的硬件部分與軟件部分和處理單元之間有鏈接,處理器可以是數字信號處理器或專用處理器或嵌入式芯片,鏈接可以是內部的,也可以是基于諸如PS2、串口COM、通用串行總線(USB)或聲卡的MIC IN模擬信號輸入接口,本發明的硬件部分亦可以具有無線鏈路,比紅外或射頻。
軟件部分包括硬件驅動程序模塊和軟件虛擬技術程序模塊。特別指出,本發明的軟件部分不包括MIDI信息的處理功能,本發明可以利用現有的或未來編制的MIDI處理軟件(如Cakewalk)進行MIDI信息處理。對于各不同平臺的支持MIDI鍵盤輸入的MIDI處理軟件,本發明都能夠提供支持。本發明使硬件簡單的電子音樂信號輸入設備對于各MIDI處理軟件邏輯上是透明的,各MIDI處理軟件將只能看到一個物理上并不存在的MIDI鍵盤在與其進行通信。
硬件驅動程序模塊是根據不同的電子音樂信號輸入設備的硬件結構以及操作系統的要求編制的軟件程序的統稱,它的功能是為電子音樂信號輸入設備硬件的正常工作提供軟件支持,如本領域的技術人員明白的驅動程序概念相一致。
軟件虛擬程序模塊的結構包括與硬件驅動程序模塊進行數據交換的接口模塊、數據處理轉換模塊、程序控制模塊和與MIDI處理軟件進行數據交換的接口模塊。當用戶敲擊硬件,硬件會將相應的數據通過硬件鏈路傳遞給硬件驅動程序,硬件驅動程序通過與硬件驅動程序模塊進行數據交換的接口模塊將數據傳遞給數據處理轉換模塊,數據處理轉換模塊在程序控制模塊的控制下將數據轉換成符合MIDI標準并且符合MIDI處理軟件要求的數據信息,然后數據處理轉換模塊將轉換好的數據信息通過與MIDI處理軟件進行數據交換的接口模塊傳遞給MIDI處理軟件進行處理。
上述的硬件驅動程序模塊和軟件虛擬程序模塊可以是結合在一起,統一成為硬件設備的驅動程序,使得非MIDI標準的硬件設備對于操作系統而言是透明的,操作系統將把它當作一個標準MIDI輸入設備來處理。
軟件虛擬程序模塊的程序控制模塊可以響應MIDI處理軟件的控制和查詢信息,使MIDI設備可以完成相應的初始化以及配置工作。
本發明通過使用非MIDI標準的硬件設備以及軟件虛擬技術實現了部分MIDI鍵盤的功能,并利用MIDI處理軟件達到輸出聲音的目的。
下面結合附圖和實施例對本發明作進一步描述。
圖1是標準MIDI鍵盤作為電子音樂信號輸入設備的方法。
圖2是利用軟件虛擬技術結合串行輸出位置掃描碼的數字硬件設備實現電子音樂信號輸入設備的方法。
圖3是將軟件虛擬技術嵌入硬件驅動程序結合輸入矩形波的模擬電子硬件設備實現電子音樂信號輸入設備的方法。
具體實施例方式
圖2是本發明的一個實施例。本實施例的結構特點是,硬件模塊采用串行輸出位置掃描碼的數字硬件設備,對于每一個按鍵下設兩個掃描點,當有鍵被用戶按壓時,兩個掃描點先后導通并被數字硬件設備識別,硬件設備將兩個掃描點的位置掃描碼通過鏈路傳遞給硬件驅動程序模塊。硬件驅動程序模塊與軟件虛擬程序模塊中的與硬件驅動程序模塊進行數據交換的接口通信,將掃描碼傳遞給數據處理轉換模塊。數據處理轉換模塊進行數據轉換,首先根據兩個掃描點的位置掃描碼首先確定唯一的鍵位編碼,其次根據兩個掃描點的位置掃描碼到達的時間間隔計算出對應于鍵位編碼的力度值,最后將鍵位編碼和力度值結合起來按照MIDI標準轉換成標準MIDI編碼。與MIDI處理軟件進行數據交換的接口模塊將數據處理轉換模塊形成的標準MIDI編碼傳遞給MIDI處理軟件(本實施例中為Cakewalk),由MIDI處理軟件按照MIDI標準解碼處理。程序控制模塊用于數據處理轉換模塊的控制工作,并可以加入硬件無法支持的功能,如音量的軟件控制、換膚技術、通過網絡動態升級等功能。
上述實施例具有跨平臺移植性。對于個人掌上電腦(PDA)、MP3播放器等數字處理設備,利用在這些數字處理設備上成熟的MIDI處理軟件,只需將硬件驅動程序模塊、與硬件驅動程序模塊進行數據交換的接口、與MIDI處理軟件進行數據交換的接口模塊進行相應的修改就可以達到跨平臺移植的目的。
上述實施例中的與MIDI處理軟件進行數據交換的接口模塊由于輸出的數據符合國際MIDI標準,所以本發明將具有向后兼容性,對將來編制的MIDI處理軟件同樣提供了支持。
圖3是本發明的又一個實施例。在本實施例中硬件設備采用輸入矩形波的模擬電子硬件設備,電子硬件設備向處理單元輸出連續的矩形波,不同的頻率代表鍵位,不同的振幅代表力度,通過模擬接口與處理單元鏈接。軟件虛擬程序模塊被集成如硬件驅動程序模塊中,與硬件驅動程序模塊形成一個整體,完成驅動硬件及數據轉換功能,將轉換后的MIDI信息傳遞給MIDI處理軟件。
權利要求
1.一種利用軟件虛擬技術結合硬件實現電子音樂信號輸入設備的方法,包括軟件與硬件兩個主要設計部分,軟件部分包括硬件驅動程序模塊和軟件虛擬技術程序模塊組成,其特征在于硬件驅動程序模塊驅動硬件設計部分向軟件虛擬技術程序模塊發送邏輯上包含鍵位信息和力度信息的非MIDI編碼信息,由軟件虛擬技術程序模塊將其轉換成符合MIDI標準的MIDI信息,并將轉換后的MIDI信息傳送給第三方MIDI處理軟件。
2.根據權利要求1所述的利用軟件虛擬技術結合硬件實現電子音樂信號輸入設備的方法,其特征在于軟件虛擬程序模塊被集成如硬件驅動程序模塊中,與硬件驅動程序模塊形成一個整體,完成驅動硬件及數據轉換功能,將轉換后的MIDI信息傳遞給MIDI處理軟件。
3.根據權利要求1、2所述的利用軟件虛擬技術結合硬件實現電子音樂信號輸入設備的方法,其特征在于所述硬件部分向處理器單元輸出的是數字信號。
4.根據權利要求1、2所述的利用軟件虛擬技術結合硬件實現電子音樂信號輸入設備的方法,其特征在于所述硬件部分向處理器單元輸出的是模擬信號。
5.根據權利要求1、2、3、4所述的利用軟件虛擬技術結合硬件實現電子音樂信號輸入設備的方法,其特征在于所以軟件和硬件設計對于第三方MIDI處理軟件是邏輯透明的,對于第三方MIDI處理軟件來說,利用軟件虛擬技術結合硬件實現電子音樂信號輸入設備的方法使其認為是一個物理MIDI鍵盤在與其通信。
6.根據權利要求1、2、3、4所述的利用軟件虛擬技術結合硬件實現電子音樂信號輸入設備的方法,其特征在于所以軟件和硬件設計對于操作系統是邏輯透明的,對于操作系統來說,利用軟件虛擬技術結合硬件實現電子音樂信號輸入設備的方法使其認為是一個物理MIDI鍵盤在與其通信。
全文摘要
本發明涉及實現一種電子音樂信號輸入設備的方法,其可以利用軟件虛擬硬件的方式來減化電子音樂信號輸入設備的結構。具體地說,本發明涉及電腦軟件虛擬技術和硬件技術,提出了一種利用軟件虛擬技術結合硬件實現電子音樂信號輸入設備的方法。本發明通過使用非MIDI標準的硬件設備以及軟件虛擬技術實現了部分MIDI鍵盤的功能,并利用MIDI處理軟件達到輸出聲音的目的。
文檔編號G06F3/02GK1773473SQ20041009077
公開日2006年5月17日 申請日期2004年11月10日 優先權日2004年11月10日
發明者張冉 申請人:張冉