• 
    <ul id="o6k0g"></ul>
    <ul id="o6k0g"></ul>

    利用計算機軟件的樂音發生器系統技術方案

    技術編號:3040793 閱讀:210 留言:0更新日期:2012-04-11 18:40
    本發明專利技術涉及利用計算機軟件的樂音發生器系統,其中MIDI表演信息通過操作系統(OS)被接收,根據接收的MIDI表演信息,驅動一個應用級別的軟件樂音發生器,使得軟件樂音發生器在OS上具有較大范圍的簡單應用。為了這個目的,在OS中安裝了一個偽驅動器,從應用軟件輸出的表演信息通過操作系統被偽驅動器接收,并然后送到應用級別的軟件樂音發生器。作為另一個例子,軟件樂音發生器作為一個驅動器被安裝在操作系統中,使得從應用軟件輸出的信息可通過操作系統被軟件樂音發生器接收。(*該技術在2017年保護過期,可自由使用*)

    【技術實現步驟摘要】

    本專利技術涉及一種樂音發生器系統,通過利用一個通用目的的算術處理器例如CPU或計算機執行一個聲音波形數據形成程序來形成樂音或者聲音波形數據。
    技術介紹
    在當今的許多電子樂器中,都使用微處理器執行樂音產生處理。在某些情況下,微處理器甚至執行向通過樂音產生處理形成的樂音波形取樣數據施加效果的處理。在本領域通常的做法是,通過具有取決于所采用的特定的樂音產生方法(例如,波形存儲器或FM合成方法)的電路結構的專用的硬件(例如,樂音發生器LSI或DSP)來實現這種微處理器。但是,感謝近來對CPU的運算能力的改進,已經出現了利用結合在通用目的計算機或專用樂音產生裝置中的CPU來執行描述樂音產生處理的預定的步驟的程序的電子樂器。這里,基于這種樂音產生處理程序的樂音產生裝置或方法將被稱為“軟件樂音發生器”,利用專用硬件的傳統的樂音產生裝置或方法將被稱為“硬件樂音發生器”。傳統的軟件樂音發生器被設計成為應用級軟件。圖22示出了用于實現這種應用級軟件樂音發生器的軟件的結構的例子。為了簡化這種軟件的復雜性,該軟件被以可相互獨立的編程的多個小單元(模塊)的組合而分層次地排列。具體地說,在最高級別的程序為用于產生MIDI消息的模塊,它們是應用軟件形式的,例如音序器軟件,游戲軟件和卡拉OK軟件。在圖22所示的例子中,提供了兩種應用軟件,一種是安裝在卡拉OK播放器中的卡拉OK軟件,另一種是安裝在MIDI播放器中的MIDI再生軟件。MIDI播放器在其中預先存儲了MIDI格式的卡拉OK音樂片斷的文件,并且可以讀出對應于選定的音樂段的文件,以便以MIDI消息格式輸出選定的樂段的表演信息。在卡拉OK軟件之后,提供了一個軟件樂音發生器模塊,在其輸入側,包括用于軟件樂音發生器的預定的應用程序接口(“API”)。在圖22的例子中,用于軟件樂音發生器的應用程序接口(API)被示為“SGM MIDI outAPI”。所述的軟件樂音發生器模塊包括一個軟件,用于根據經過專用軟件樂音發生器API例如接口“SGM MIDI out API”提供的MIDI消息形成樂音波形數據。如圖23所示,該軟件樂音發生器模塊包括一個MIDI輸出驅動器部分和一個樂音發生器(或引擎)部分。MIDI輸出驅動器部分是一個用于驅動樂音發生器部分的模塊,它響應于MIDI消息將語音數據轉換成控制參數控制樂音發生器部分。該控制參數通過預定的模塊間接口(未示出)被送到樂音發生器部分。由于MIDI輸出驅動器部分被初始化,一組必需的波形數據從給定的文件被裝載并存儲在波形數據貯存器部分。利用這組波形數據并根據所述的控制參數,樂音發生器部分產生給定音樂特征例如音調和音色的樂音波形樣本數據(即,在相繼的取樣點的樂音波形數據)。在計算機中所使用的預定的操作系統(OS),例如視窗3.1(windows 3.1)或視窗95(windows 95)(微軟公司商標)中,提供了用于接收和傳送已形成的波形取樣數據的接口(在windows 3.1中該接口可以是“WAVE out API”)。輸出設備為一個在操作系統(OS)中安裝的驅動器模塊,它通過預定的接口例如“WAVE out API”接收由作為應用軟件提供的軟件樂音發生器模塊形成的波形取樣數據并將形成的取樣數據輸出到外部硬件。例如,輸出設備包括一個軟件,它通過一個直接存儲器存取(DMA)控制器讀出由軟件樂音模塊形成和處理并存儲在一個存儲設備例如硬盤中的波形取樣數據,然后將讀出的取樣數據輸出到外部硬件例如數字/模擬轉換器(DAC)。圖22中所示的MIDI播放器是具有MIDI再生和其中預先安裝有軟件樂音發生器模塊的那種類型。MIDI再生模塊讀出標準的MIDI文件(SMF)以便再生MIDI消息。每個再生的MIDI消息由軟件樂音發生器模塊處理以便以與上述相似的方式形成對應于MIDI消息的樂音波形取樣數據。在由MIDI播放器中的軟件樂音發生器模塊如此形成的樂音波形取樣數據通過預定的接口例如“WAVE out API”被送到輸出設備進一步處理并然后輸出到外部硬件例如數字/模擬轉換器(DAC)。在計算機操作系統中,也提供了一種用于根據哪種波形取樣數據被形成用于接收和傳送表演信息(典型地為MIDI消息)的接口(在使用windows 3.1的情況下該接口可以是“MIDI API”)。利用這樣一種接口,輸出MIDI消息的軟件可以被用作為應用軟件,參見圖24所示的例子。在圖24中的例子中,提供了游戲軟件,游戲軟件,多媒體軟件,等等,使得各種游戲效果聲音,背景音樂聲音,MIDI數據或自動音序表演聲音的表演信息可以以MIDI消息的形式從這些軟件輸出。每個這種MIDI消息通過預定的接口例如“MIDI API”被操作系統(OS)接收,然后到達MIDI驅動器。MIDI驅動器向外部硬件樂音發生器提供基于所述的MIDI消息的樂音形成數據,外部硬件樂音發生器反過來根據樂音形成數據利用預定的樂音產生硬件設備形成樂音波形取樣數據。但是,如上所述的傳統的應用級的軟件樂音發生器不能從用于接收和傳送表演信息的接口(例如MIDI API)接收數據,根據接收到的數據執行波形取樣數據形成處理,盡管它們可以向操作系統的預定的接口(例如WAVE out API)輸出已形成的波形取樣數據。因此,在過去,通過計算機操作系統將表演信息(MIDI消息)產生軟件,例如游戲軟件,音序器軟件或多媒體軟件與應用級軟件樂音發生器簡單地結合起來是不可能的。因此,為了使這種表演信息(MIDI消息)產生軟件能夠被加到計算機操作系統并在其中被容易地使用,一個昂貴的硬件樂音發生器是絕對必要的。在樂音產生處理是根據例如MIDI消息的表演信息執行的情況下,由計算機單獨執行樂音產生處理是很少見的,絕大多數情況下是計算機在同一操作系統的控制下與樂音產生處理同時地或并行地運行一個或多個其它的軟件程序。例如,當運行游戲軟件時,對于計算機來說,可能有必要執行其它的處理,例如與聲音產生處理并行地產生動畫,或者運行卡拉OK軟件,對于計算機來說,也可能有必要執行用于產生歌曲或背景圖象的文字的可視顯示的處理。如果采用了軟件樂音發生器,計算機在同一操作系統OS的控制下,計算機以并行的方式執行軟件樂音發生器程序和其它必要的軟件程序。在這種情況下,為了保證由軟件樂音發生器執行的樂音波形取樣數據形成處理不受其它處理的影響,在一個具有完全多任務功能的操作系統(例如windows 95)上執行樂音產生處理是所希望的。但是,事實上,不具有完全多任務功能的操作系統(例如windows3.1)目前也在被廣泛地應用,而且也存在著在這種不具有完全多任務功能的操作系統上執行樂音產生處理的日益增長的需要。使用不具有完全多任務功能的操作系統,樂音的產生可能會由于其它的處理而使樂音產生處理被延遲而受到妨礙,或者其它處理的執行被樂音產生處理占用過多的時間而被延遲。特別地,如果一個軟件樂音發生器被加到一個與硬件樂音發生器一同使用的應用軟件并因此不出現上述與并行處理相關的問題的話,預先考慮適當的裝置或方案以避免計算機在并行處理中出現的問題是所希望的。
    技術實現思路
    因此,本專利技術的一個目的是提供一種利用計算機軟件的樂音發生器系統,它能夠通過一個操作系統驅動一個應用級別的軟件,接收表演信息,例如M本文檔來自技高網
    ...

    【技術保護點】
    一種樂音產生設備,包括:提供裝置,用于提供表演信息;激活裝置,用于基于表演信息激活樂音產生處理,由于其它處理的影響,所述激活裝置以非周期方式激活樂音產生處理;樂音產生裝置,用于執行由所述激活裝置激活的樂音產生處理;以及指示裝置,用于根據直到那時仍未形成的一些樂音數據,變化地指示在所述激活裝置對樂音產生處理的每次激活時要由所述樂音產生裝置產生的樂音數據樣本的特定數量;其中,在樂音產生處理的每次激活時,所述樂音產生裝置產生由所述指示裝置變化地指示的所述特定數量的樂音數據樣本。

    【技術特征摘要】
    JP 1996-1-17 024748/1996;JP 1996-3-12 083157/19961.一種樂音產生設備,包括提供裝置,用于提供表演信息;激活裝置,用于基于表演信息激活樂音產生處理,由于其它處理的影響,所述激活裝置以非周期方式激活樂音產生處理;樂音產生裝置,用于執行由所述激活裝置激活的樂音產生處理;以及指示裝置,用于根據直到那時仍未形成的一些樂音數據,變化地指示在所述激活裝置對樂音產生處理的每次激活時要由所述樂音產生裝置產生的樂音數據樣本的特定數量;其中,在樂音產生處理的每次激活時,所述樂音產生裝置產生由所述指示裝置變化地指示的所述特定數量的樂音數據樣本。2.一種使通用算術處理單元基于所提供的表演信息執行樂音產生處理的樂音產生方法,所述方法包括第一步驟,基于所提供的表演信息激活樂音產生處理,由于其它處理的影響,所述激活裝置以非周期方式激活樂音產生處理;第二步驟,根據直到那時仍未形成的一些樂音數據,變化地指示在所述第一步驟的每次激活時要由所述樂音產生處理產生的樂音數據樣本的特定數量;以及第三步驟,執行由所述第一步驟激活的樂音產生處理,以產生由所述第二步驟指示的所述特定數量的樂音數據樣本。3.一種樂音產生設備,包括提供裝置,用于提供表演信息;激活裝置,用于基于表演信息激活樂音產生處理,由于其它處理的影響,所述激活裝置以非周期方式激活樂音產生處理;樂音產生裝置,用于執行由所述激活裝置激活的樂音產生處理;指示裝置,用于根據直到那時仍未形成的一些樂音數據,變化地指示在所述激活裝置對樂音產生處理的每次激活時要由所述樂音產生裝置產生的樂音數據樣本的特定數量,使得所述樂音產生裝置產生由所述指示裝置指示的所述特定數量的樂音數據樣本;緩沖器裝置,用于暫時存儲所述樂音產生裝置產生的樂音數據,當預定量的樂音數據已被暫時存儲在所述緩沖器裝置中時進行再生預定。再生裝置,用于從所述緩沖器裝置中連續地再生已進行再生預定的樂音數據;以及控制裝置,如果當所述再生裝置對樂音數據的再生完成時,還未對所述緩沖器裝置進行所述樂音產生裝置產生的樂音數據的再生預定,那么所述控制裝置用于暫時復位由所述樂音產生裝置當前正在執行的樂音產生處理,然后使樂音產生處理由所述樂音產生裝置重新開始以進一步產生樂音數據。4.一種使通用算術處理單元基于所提供的表演信息執行樂音產生處理的樂音產生方法,所述方法包括第一步驟,基于所提供的表演信息激活樂音產生處理,由于其它處理的影響,所述激活裝置以非周期方式激活樂音產生處理;第二步驟,根據直到那時仍未形成的一些樂音數據,變化地指示在所述第一步驟的每次激活時要由所述樂音產生處理產生的樂音數據樣本的特定數量;以及第三步驟,通過執行由所述第一步驟激活的樂音產生處理來產生由所述第二步驟指示的所述特定數量的樂音數據樣本,并將產生的樂音數據暫時存儲到輸出緩沖器中以進行再生預定;第四步驟,從輸出緩沖器中連續地再生已進行再生預定的樂音數據;以及第五步驟,如果當所述第四步驟對樂音數據的再生完成時還未對輸出緩沖器進行由所述第三步驟進行的對暫時存儲在輸出緩沖器中的樂音數據的再生預定,則暫時復位由所述第三步驟當前正在執行的樂音...

    【專利技術屬性】
    技術研發人員:田邑元一
    申請(專利權)人:雅馬哈株式會社
    類型:發明
    國別省市:JP[日本]

    網友詢問留言 已有0條評論
    • 還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。

    1
    主站蜘蛛池模板: 国产成人精品无码一区二区| 亚洲AV蜜桃永久无码精品| 国产成人无码精品一区在线观看| 久久精品无码一区二区三区日韩 | 无码人妻一区二区三区av| mm1313亚洲国产精品无码试看| 无码人妻丰满熟妇啪啪| 亚洲国产成人精品无码区在线秒播| 无码aⅴ精品一区二区三区| 一本一道av中文字幕无码| 人妻老妇乱子伦精品无码专区| 日韩乱码人妻无码中文字幕久久| 亚洲av中文无码乱人伦在线r▽| 中文字幕久久久人妻无码| 亚洲Av无码专区国产乱码DVD| 无码一区二区三区免费视频| 国产精品ⅴ无码大片在线看| 人妻少妇伦在线无码| 无码喷水一区二区浪潮AV| 精品少妇无码AV无码专区| 亚洲Av无码精品色午夜 | 人妻无码αv中文字幕久久| 中文字幕无码无码专区| 国产做无码视频在线观看| 亚洲AV无码精品国产成人| 国产乱妇无码大片在线观看| 在线a亚洲v天堂网2019无码| 国产成人无码免费看片软件 | 四虎国产精品永久在线无码| 亚洲aⅴ天堂av天堂无码麻豆| 日韩精品人妻系列无码专区| 亚洲精品无码成人片久久| 无码超乳爆乳中文字幕久久| 国产真人无码作爱视频免费| 国精品无码一区二区三区在线蜜臀| 国产激情无码一区二区三区| aⅴ一区二区三区无卡无码| 国产精品亚洲а∨无码播放不卡 | 亚洲AV成人无码久久WWW| 亚洲6080yy久久无码产自国产| 久久久无码精品亚洲日韩京东传媒 |