專利名稱:能夠記錄演奏的樂器和自動分配文件名的控制器的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種能夠管理表示曲調(diào)的演奏的樂曲數(shù)據(jù)文件的樂器,更具體地說,涉及一種配備有管理用文件名標(biāo)注的樂曲文件的控制器的樂器。
背景技術(shù):
樂迷喜歡在各種樂器上演奏樂曲曲調(diào)。他們以演奏樂曲曲調(diào)為樂。然而,存在對他們在樂器上的演奏不滿意的樂迷。他們希望記錄他們在樂器上的演奏。為了滿足這種樂迷,音樂制造商給樂器配備了記錄在其上的演奏的能力。作為示例,自動演奏器鋼琴配備有記錄器,使得人類演奏者可以將他或她的演奏記錄在合適的信息存儲介質(zhì)中。
自動演奏器鋼琴是原聲鋼琴和自動演奏系統(tǒng)之間的組合,并且,在黑鍵和白鍵下方提供了由控制單元控制的電磁控制的鍵致動器(solenoid-operatedkey actuator),作為自動演奏系統(tǒng)的必要部分。當(dāng)人類演奏者在黑鍵和白鍵上用手指彈奏時,手指引起鍵運(yùn)動,并且黑鍵和白鍵使弦槌在自動旋轉(zhuǎn)的終點(diǎn)與琴弦碰撞。然后,弦槌引起琴弦的振動,并且通過琴弦的振動產(chǎn)生鋼琴音調(diào)。因此,人類演奏者喜歡演奏原聲鋼琴。
當(dāng)人類演奏者將自動演奏器鋼琴改變?yōu)樽詣又胤拍J綍r,控制單元依序處理樂曲數(shù)據(jù)代碼,并且有選擇地激勵電磁控制的鍵致動器。電磁控制的鍵致動器代替人類演奏者的手指而引起鍵運(yùn)動,并且使弦槌與琴弦碰撞,好像人類演奏者在黑鍵和白鍵上用手指彈奏曲調(diào)一樣。換言之,自動演奏系統(tǒng)在沒有人類演奏者的任何手指彈奏的情況下演奏曲調(diào),并且人類演奏者欣賞由自動演奏系統(tǒng)再現(xiàn)的曲調(diào)。樂曲數(shù)據(jù)代碼可以具有以MIDI(樂器數(shù)字接口)協(xié)議定義的格式。
自動演奏器鋼琴通常配備有記錄器,并且,通過該記錄器將樂曲數(shù)據(jù)代碼存儲在諸如硬盤的合適的信息存儲介質(zhì)中。這樣,以樂曲數(shù)據(jù)文件的形式將原聲鋼琴上的演奏記錄在硬盤中。標(biāo)準(zhǔn)MIDI文件是樂曲數(shù)據(jù)文件的典型示例。
所述記錄以及諸如自動演奏的其它操作是通過具有數(shù)據(jù)處理能力的控制單元來實現(xiàn)的,并且合適的計算機(jī)程序為了給定的作業(yè)(job)而在控制單元的數(shù)據(jù)處理器上運(yùn)行。
當(dāng)人類演奏者指示控制單元保存表示原聲鋼琴上的演奏的音頻數(shù)據(jù)代碼時,數(shù)據(jù)處理器在硬盤中創(chuàng)建樂曲數(shù)據(jù)文件以便存儲該音頻數(shù)據(jù)代碼,并且用文件名來標(biāo)注該樂曲數(shù)據(jù)文件。人類演奏者為了文件名而通過控制單元的操縱板上的鍵來輸入一系列字符和/或數(shù)字,或者控制單元將文件名自動賦予樂曲數(shù)據(jù)文件。
當(dāng)人類演奏者向控制單元指示重放時,控制單元在其顯示板上產(chǎn)生字符和/或數(shù)字的圖像,即,文件名,使得人類演奏者通過該文件名確認(rèn)要再現(xiàn)的曲調(diào)。
在日本專利申請公開No.Hei 8-286963號中公開了命名方法的典型示例。當(dāng)人類演奏者指示控制單元協(xié)助他進(jìn)行命名時,計算機(jī)程序開始在數(shù)據(jù)處理器上運(yùn)行。首先,數(shù)據(jù)處理器在顯示板上產(chǎn)生詞語列表,并且提示人類演奏者從該列表中選擇一個或多個詞語。人類演奏者從該列表中選擇一個或多個詞語作為文件名。然后,數(shù)據(jù)處理器將所述一個或多個詞語確定為文件名。
在日本專利申請公開No.2002-258853號中公開了文件名展示方法的示例。已經(jīng)用文件名的多種表達(dá)方式(expression)標(biāo)注了樂曲數(shù)據(jù)文件。例如,用日語和英語來表示文件名,并且將日語文件名和英語文件名保存在樂曲數(shù)據(jù)文件中。當(dāng)人類演奏者指示控制單元顯示文件名時,他或她可以對數(shù)據(jù)處理器施加顯示條件。數(shù)據(jù)處理器在樂曲數(shù)據(jù)文件中搜索該文件名的表達(dá)式,并且產(chǎn)生所選擇的文件名的表達(dá)式。假設(shè)人類演奏者對數(shù)據(jù)處理器施加諸如英語的語言的條件。數(shù)據(jù)處理器在顯示板上產(chǎn)生表示文件名的英語表達(dá)式的字母表的圖像。在下文中,將表示文件名的字符和/或數(shù)字簡稱為“字符串”。
對存儲于現(xiàn)有技術(shù)自動演奏器鋼琴中的樂曲數(shù)據(jù)文件的文件名設(shè)置了限制。最多將利用8個字符/數(shù)字來表示文件名,并且向該字符串添加擴(kuò)展名。該限制可以與控制單元的顯示板的圖像產(chǎn)生能力有關(guān)。字符串的最大長度進(jìn)一步對文件名設(shè)置限制,使得用戶不能用長文件名來標(biāo)注樂曲數(shù)據(jù)文件。換言之,用戶必須簡單地給樂曲數(shù)據(jù)文件命名。即使人類演奏者希望按照時間順序積存他或她對曲調(diào)的演奏,對字符串的限制也使得難以在文件名中表示記錄日期。
如果制造商改變了命名協(xié)議,那么將有可能延長文件名的字符串。然而,在自動演奏器鋼琴的舊型號中不使用以新協(xié)議定義的樂曲數(shù)據(jù)文件。因此,在樂曲數(shù)據(jù)文件的兼容性和給予用戶的信息量之間存在著折中。
發(fā)明內(nèi)容因此,本發(fā)明的一個重要目的是提供一種控制器,其允許用戶準(zhǔn)確地管理樂曲數(shù)據(jù)文件,而不損失兼容性。
本發(fā)明的另一重要目的是提供一種樂器,其配備有記錄器。
根據(jù)本發(fā)明的一個方面,提供了一種用于將文件名自動分配給樂曲數(shù)據(jù)文件的控制器,包括樂曲數(shù)據(jù)文件產(chǎn)生器,其在存儲器中創(chuàng)建樂曲數(shù)據(jù)文件,以便存儲一組樂曲數(shù)據(jù)代碼;以及文件名分配器,其將文件名分配給樂曲數(shù)據(jù)文件,并且該文件名分配器包括第一搜索器,其在存儲器中搜索形成被分配給另一樂曲數(shù)據(jù)文件的另一文件名的一部分的最大數(shù)字,所述另一樂曲數(shù)據(jù)文件已經(jīng)被存儲在存儲器中,第二搜索器,其在存儲器中搜索小于該最大數(shù)字的遺漏數(shù)字,以及命名器,當(dāng)?shù)诙阉髌靼l(fā)現(xiàn)遺漏數(shù)字時,其將該遺漏數(shù)字引入文件名中,并且將該文件名分配給樂曲數(shù)據(jù)文件。
根據(jù)本發(fā)明的另一方面,提供了一種用于演奏樂曲的樂器,包括多個操縱器,其由人類演奏者有選擇地操縱,以便順著樂曲指定音名;音調(diào)生成系統(tǒng),其連接到所述多個操縱器,并且產(chǎn)生具有所述音名的音調(diào);樂曲數(shù)據(jù)產(chǎn)生器,其連接到所述多個操縱器,并且順著樂曲產(chǎn)生表示演奏的一組樂曲數(shù)據(jù)代碼;樂曲數(shù)據(jù)文件產(chǎn)生器,其在存儲器中創(chuàng)建樂曲數(shù)據(jù)文件以便存儲這組樂曲數(shù)據(jù)代碼;以及文件名分配器,其將文件名分配給樂曲數(shù)據(jù)文件,并且包含第一搜索器,其在存儲器中搜索形成被分配給另一樂曲數(shù)據(jù)文件的另一文件名的一部分的最大數(shù)字,所述另一樂曲數(shù)據(jù)文件已經(jīng)被存儲在存儲器中,第二搜索器,其在存儲器中搜索小于該最大數(shù)字的遺漏數(shù)字,以及命名器,當(dāng)?shù)诙阉髌靼l(fā)現(xiàn)遺漏數(shù)字時將該遺漏數(shù)字引入文件名,并且將該文件名分配給樂曲數(shù)據(jù)文件。
根據(jù)本發(fā)明的另一方面,提供了一種用于將文件名自動分配給樂曲數(shù)據(jù)文件的控制器,該控制器包括樂曲數(shù)據(jù)文件產(chǎn)生器,其在存儲器中創(chuàng)建樂曲數(shù)據(jù)文件以便存儲一組樂曲數(shù)據(jù)代碼;以及文件名分配器,其將文件名分配給樂曲數(shù)據(jù)文件,并且包含第一搜索器,其在存儲器中搜索具有小于數(shù)值范圍的極限值(limit)的最大數(shù)字的另一樂曲數(shù)據(jù)文件,以及命名器,其將緊接在所述最大數(shù)字之后的數(shù)字引入文件名,并且將該文件名分配給樂曲數(shù)據(jù)文件。
根據(jù)本發(fā)明的另一方面,提供了一種用于演奏樂曲的樂器,該樂器包括多個操縱器,其由人類演奏者有選擇地操縱,以便順著樂曲指定音名;音調(diào)生成系統(tǒng),其連接到所述多個操縱器,并且產(chǎn)生具有所述音名的音調(diào);樂曲數(shù)據(jù)產(chǎn)生器,其連接到所述多個操縱器,并且順著樂曲產(chǎn)生表示演奏的一組樂曲數(shù)據(jù)代碼;樂曲數(shù)據(jù)文件產(chǎn)生器,其在存儲器中創(chuàng)建樂曲數(shù)據(jù)文件,以便存儲這組樂曲數(shù)據(jù)代碼,以及文件名分配器,其將文件名分配給樂曲數(shù)據(jù)文件,并且包含第一搜索器,其在存儲器中搜索具有小于數(shù)值范圍的極限值的最大數(shù)字的另一樂曲數(shù)據(jù)文件,以及命名器,其將緊接在該最大數(shù)字之后的數(shù)字引入文件名,并且將該文件名分配給樂曲數(shù)據(jù)文件。
根據(jù)結(jié)合附圖進(jìn)行的以下描述,將更清楚地理解所述控制器和樂器的特征和優(yōu)點(diǎn),在附圖中圖1是示出根據(jù)本發(fā)明的自動演奏器鋼琴的示意圖,以及圖2是示出文件名的組成的視圖,圖3是示出用于將文件名分配給樂曲數(shù)據(jù)文件的子例程的作業(yè)序列的流程圖,圖4是示出用于將文件名分配給樂曲數(shù)據(jù)文件的子例程的另一作業(yè)序列的流程圖,以及圖5是示出用于將文件名分配給樂曲數(shù)據(jù)文件的子例程的另一作業(yè)序列的流程圖。
具體實施方式為人類演奏者準(zhǔn)備了實施本發(fā)明的樂器,并且人類演奏者在該樂器上演奏樂曲。該樂器主要包括多個操縱器、音調(diào)生成系統(tǒng)、樂曲數(shù)據(jù)產(chǎn)生器和樂曲數(shù)據(jù)文件產(chǎn)生器。所述多個操縱器連接到音調(diào)生成系統(tǒng)和樂曲數(shù)據(jù)產(chǎn)生器。當(dāng)人類演奏者演奏樂曲時,人類演奏者有選擇地移動操縱器,以便指定要產(chǎn)生的音調(diào)的音名,并且操縱器的運(yùn)動被報告給音調(diào)生成系統(tǒng)和樂曲數(shù)據(jù)產(chǎn)生器。音調(diào)生成系統(tǒng)響應(yīng)操縱器的運(yùn)動以便產(chǎn)生音調(diào),并且樂曲數(shù)據(jù)產(chǎn)生器也響應(yīng)操縱器的運(yùn)動,以便順著樂曲產(chǎn)生表示所述演奏的一組樂曲數(shù)據(jù)代碼。當(dāng)完成演奏時,樂曲數(shù)據(jù)文件產(chǎn)生器在存儲器中創(chuàng)建樂曲數(shù)據(jù)文件,以便存儲這組樂曲數(shù)據(jù)代碼,并且文件名分配器將文件名自動分配給該樂曲數(shù)據(jù)文件。這樣,將演奏作為利用文件名指定的樂曲數(shù)據(jù)文件記錄在存儲器中。
文件名分配器包括第一搜索器、第二搜索器和命名器。在此實例中,利用軟件來實現(xiàn)第一搜索器、第二搜索器和命名器。文件名包含數(shù)字,并且這些數(shù)字是從預(yù)定的數(shù)值范圍中選擇的。第一搜索器在存儲器中搜索小于數(shù)值范圍極限值的最大數(shù)字。該最大數(shù)字形成分配給另一樂曲數(shù)據(jù)文件的另一文件名的一部分,并且該樂曲數(shù)據(jù)文件已經(jīng)被存儲在存儲器中。第二搜索器在存儲器中搜索小于所述最大數(shù)字的遺漏(skipped)數(shù)字。當(dāng)?shù)诙阉髌靼l(fā)現(xiàn)遺漏數(shù)字時,第二搜索器向命名器通知該遺漏數(shù)字,命名器將該遺漏數(shù)字引入文件名,并且將該文件名分配給樂曲數(shù)據(jù)文件。
通常將多個樂曲數(shù)據(jù)文件積存在存儲器中,并且用戶有時候從存儲器刪除樂曲數(shù)據(jù)文件。當(dāng)從存儲器刪除樂曲數(shù)據(jù)文件時,文件名變?yōu)闊o效,并且被包含在該無效文件名中的數(shù)字成為遺漏數(shù)字。如果遺漏數(shù)字沒有被重新使用,則該數(shù)字將達(dá)到數(shù)值范圍的極限值。所述文件名分配器對于這種不希望的情形是有效的。文件名分配器重新使用遺漏數(shù)字,使得將大量樂曲數(shù)據(jù)文件積存在存儲器中。這樣,實施本發(fā)明的文件名分配器經(jīng)濟(jì)地將數(shù)字分配給文件名。
實施本發(fā)明的另一樂器包括多個操縱器、音調(diào)生成系統(tǒng)、樂曲數(shù)據(jù)產(chǎn)生器、樂曲數(shù)據(jù)文件產(chǎn)生器和文件名分配器。所述多個操縱器、音調(diào)生成系統(tǒng)、樂曲數(shù)據(jù)產(chǎn)生器和樂曲數(shù)據(jù)文件產(chǎn)生器與在上文中描述的那些相似。由于這一原因,將描述集中在文件名分配器上。
文件名分配器與樂曲數(shù)據(jù)產(chǎn)生器協(xié)作,并且將文件名分配給樂曲數(shù)據(jù)文件。文件名分配器包括第一搜索器、第二搜索器和命名器。第一搜索器在存儲器中搜索具有小于數(shù)值范圍極限值的最大數(shù)字的另一樂曲數(shù)據(jù)文件。當(dāng)?shù)谝凰阉髌靼l(fā)現(xiàn)該最大數(shù)字時,命名器將緊接在該最大數(shù)字之后的數(shù)字引入文件名,并且將該文件名分配給樂曲數(shù)據(jù)文件。
由于文件名分配器將數(shù)字依序分配給文件名,因此用戶易于發(fā)現(xiàn)最新的樂曲數(shù)據(jù)文件,因為這些數(shù)字指示記錄演奏的順序。因此,用戶在實施本發(fā)明的文件名分配器的協(xié)助下迅速發(fā)現(xiàn)最新的樂曲數(shù)據(jù)文件。
第一實施例在以下描述中,術(shù)語“前面”表示比用術(shù)語“后面”修飾的位置更靠近準(zhǔn)備好用手指彈奏的人的位置。在前面位置和對應(yīng)的后面位置之間畫的線沿“縱向”延伸,并且橫向以直角與縱向相交。
首先參考附圖的圖1,實施本發(fā)明的自動演奏器鋼琴主要包括電系統(tǒng)1和原聲鋼琴10。電系統(tǒng)1安裝在原聲鋼琴10中。通過電系統(tǒng)1來進(jìn)行自動演奏和記錄,并且人類演奏者在原聲鋼琴10上演奏曲調(diào)。
原聲鋼琴10是直立式鋼琴,并且包括鍵盤11、動作單元12、弦槌13、琴弦14和鋼琴箱體(cabinet)15。鍵盤11具有以眾所周知的模式放置的黑鍵11a和白鍵11b,并且,將黑鍵和白鍵11a/11b獨(dú)立地從靜止位置移動到終點(diǎn)位置。鍵盤11安裝在鋼琴箱體15的鍵座(key bed)15a上,并且被暴露給坐在鍵盤1前面的人類演奏者。
動作單元12、弦槌13和琴弦14被容納在鋼琴箱體15中。在黑鍵和白鍵11a/11b后部的上方提供動作單元12,并且動作單元12通過絞盤按鈕(capstan button)連接到相關(guān)聯(lián)的黑鍵和白鍵11a/11b的后部。當(dāng)黑鍵和白鍵11a/11b停留在靜止位置上時,弦槌13靜止在相關(guān)聯(lián)的動作單元12上,并且與沿上下方向拉緊的琴弦14相對。
當(dāng)黑鍵和白鍵11a/11b從靜止位置向終點(diǎn)位置行進(jìn)時,絞盤按鈕向上推動動作單元12,以便使動作單元12圍繞舟形桿法蘭(whippen flange)(未示出)旋轉(zhuǎn),并且動作單元12在軌跡上的中間點(diǎn)處脫離弦槌13。然后,弦槌13開始自由旋轉(zhuǎn),并且在自由旋轉(zhuǎn)的終點(diǎn)與琴弦14碰撞。琴弦14振動,并且通過琴弦14的振動產(chǎn)生鋼琴音調(diào)。
電系統(tǒng)1包括控制器1a、電磁控制的鍵致動器1b的陣列、以及鍵傳感器1c的陣列??刂破?a和電磁控制的鍵致動器1b作為整體組成自動演奏器1d,并且控制器1a和鍵傳感器1c的陣列共同形成記錄器1e。自動演奏器1d響應(yīng)用戶給出的指令,并且在沒有人類演奏者的任何手指彈奏的情況下在原聲鋼琴10上重演樂曲演奏。另一方面,記錄器1e記錄原聲鋼琴10上的樂曲演奏。當(dāng)人類演奏者在原聲鋼琴10上用手指彈奏樂曲時,記錄器1e分析鍵運(yùn)動和踏瓣運(yùn)動,以便產(chǎn)生代表原聲鋼琴10上的樂曲演奏的樂曲數(shù)據(jù)代碼,并且為該樂曲數(shù)據(jù)代碼創(chuàng)建樂曲數(shù)據(jù)文件。利用文件名來標(biāo)注該樂曲數(shù)據(jù)文件。在此實例中,樂曲數(shù)據(jù)代碼表示MIDI消息,并且,根據(jù)標(biāo)準(zhǔn)MIDI文件協(xié)議來創(chuàng)建樂曲數(shù)據(jù)文件。
在黑鍵和白鍵11a/11b后部下方的鍵座15a上提供電磁控制的鍵致動器1b的陣列,并且其連接到驅(qū)動電路1f。電磁控制的鍵致動器1b中的每一個具有螺線管和活塞。當(dāng)驅(qū)動電路1f將驅(qū)動信號提供給螺線管時,在螺線管周圍產(chǎn)生磁場,并且磁力被施加在磁場中的活塞上。然后,活塞向上伸出,并且推動相關(guān)聯(lián)的黑鍵11a或白鍵11b的后部??刂破?a依序向驅(qū)動電路1f通知要移動以便產(chǎn)生鋼琴音調(diào)的黑鍵和白鍵11a/11b,并且還依序向驅(qū)動電路1f通知要提供給相關(guān)聯(lián)的電磁控制的鍵致動器1b的平均電流量。當(dāng)要移動黑鍵11a或白鍵11b的時刻到來時,將被調(diào)節(jié)為所述平均電流量的驅(qū)動信號從驅(qū)動電路1f提供給電磁控制的鍵致動器,并且電磁控制的鍵致動器1b利用活塞推動黑/白鍵11a/11b的后部。這樣,電磁控制的鍵致動器1b在沒有人類演奏者的任何手指彈奏的情況下引起鍵運(yùn)動,以便使琴弦14振動。
鍵傳感器1c的陣列被提供在黑鍵和白鍵11a/11b前部的下方,并且被安裝在鍵座15a上。鍵傳感器1c中的每一個具有遮光盤(shutter plate)、一對傳感器頭、光發(fā)射單元和光檢測單元。與相鄰的鍵傳感器1c共享這對傳感器頭,并且與其它鍵傳感器1c共享光發(fā)射單元和光檢測單元。遮光盤被固定到黑鍵和白鍵11a/11b中的相關(guān)聯(lián)的一個的前部的下表面,并且與相關(guān)聯(lián)的黑鍵和白鍵11a/11b一起移動。分別在遮光盤的軌跡兩側(cè)提供這對傳感器頭,并且利用光束橋接傳感器頭之間的間隙。光發(fā)射單元周期性地發(fā)射光,并且將所述光分配給傳感器頭中的所選擇的傳感器頭,以便產(chǎn)生光束。另一方面,光檢測單元將入射光轉(zhuǎn)換為電流,并且產(chǎn)生代表黑鍵和白鍵11a/11b的當(dāng)前鍵位置的鍵位置信號。
當(dāng)黑/白鍵11a/11b從靜止位置向終點(diǎn)位置行進(jìn)時,光束逐漸被遮光盤遮斷,并且光量減少。這樣,將當(dāng)前鍵位置轉(zhuǎn)換為光檢測單元上的入射光量,并且光檢測單元將入射光轉(zhuǎn)換為鍵位置信號。
控制器1a包括信息處理單元1h、顯示板1j、鍵和開關(guān)1k的陣列以及外殼1m。外殼1m被嵌入在鋼琴箱體15中,并且具有暴露在鋼琴箱體15的上前板(upper front board)15b上的前面板。在外殼1m的前面板上提供顯示板1j以及鍵和開關(guān)1k的陣列,以便與準(zhǔn)備好進(jìn)行彈奏的人類演奏者相對。在此實例中,利用液晶顯示板來實現(xiàn)顯示板1j。然而,可以將諸如例如發(fā)光二極管陣列和電發(fā)光板的其它種類的圖像產(chǎn)生設(shè)備用于控制器1a。
對于用戶來說,理想的是顯示單元1j盡可能地窄,以便防止原聲鋼琴10的外觀變差。由于這一原因,顯示單元1j上的字符和數(shù)字的數(shù)目受到顯示單元1j的尺寸以及在被加載于控制器1h中的操作系統(tǒng)的控制下處理的文件名的長度限制。在此實例中,顯示單元1j被適配為與表示文件名的字符串的最大長度一樣寬。
信息處理單元1h包括信息處理器2、存儲器單元3、圖形控制器4、檢測器5、被簡寫為“I/O”的信號接口6、以及共享總線系統(tǒng)7。信息處理器2、存儲器單元3、圖形控制器4、檢測器5和信號接口7連接到共享總線系統(tǒng)7,使得信息處理器2能夠通過共享總線系統(tǒng)7與存儲器3、圖形控制器4、檢測器5和信號接口6通信。
信息處理器2是控制器1h的數(shù)據(jù)處理能力的源,并且,將程序存儲器和工作存儲器與算術(shù)和邏輯單元、控制器和其它外圍電路一起合并在信息處理器2中。將隨機(jī)存取存儲器中的地址位置分配給用于測量時間經(jīng)過的軟件時鐘。可以利用單片微型計算機(jī)或者其上安裝了單片微處理器、只讀存儲設(shè)備、隨機(jī)存取存儲設(shè)備和其它外圍設(shè)備的電路板來實現(xiàn)信息處理器2。另外,利用有線邏輯電路來實現(xiàn)信息處理器2。信息處理器2依序執(zhí)行形成計算機(jī)程序的指令代碼,以便完成作業(yè)。
存儲器單元3具有大數(shù)據(jù)保存能力,并且樂曲數(shù)據(jù)文件被存儲在存儲器單元3中。為樂曲數(shù)據(jù)文件準(zhǔn)備文件目錄,并且信息處理器2借助于該文件目錄來管理樂曲數(shù)據(jù)文件。利用文件名來分別標(biāo)注樂曲數(shù)據(jù)文件,并且文件目錄使得將地址分別分配給與所述文件名相對應(yīng)的樂曲數(shù)據(jù)文件??梢詫⒂脖P單元、柔性盤單元、軟(商標(biāo))盤單元、諸如例如CD-R盤單元的致密盤單元、MO(磁光)盤單元和記憶棒用于存儲器單元3。
圖形控制器4連接到顯示板1j,并且在顯示板1j上產(chǎn)生可視圖像。通過圖形控制器4在顯示板1j上顯現(xiàn)文件目錄。圖形控制器4還在顯示板1j上顯現(xiàn)作業(yè)菜單、提示消息、確認(rèn)以及自動演奏器鋼琴的當(dāng)前狀態(tài)等。
檢測器5連接到鍵和開關(guān)1k的陣列,并且周期性地檢查該陣列的鍵和開關(guān)1k,以查看用戶是否操縱了鍵和開關(guān)1k中的至少一個。當(dāng)檢測器5發(fā)現(xiàn)用戶已經(jīng)操縱了鍵或開關(guān)1k時,檢測器指明該鍵或開關(guān)1k,并且通過共享總線系統(tǒng)7向信息處理器2通知所操縱的鍵或開關(guān)1k。
信號接口6包括數(shù)據(jù)緩沖器、模擬-數(shù)字轉(zhuǎn)換器和數(shù)字-模擬轉(zhuǎn)換器,并且鍵傳感器1c的陣列的光發(fā)射單元和光檢測單元以及驅(qū)動電路1f連接到信號接口6。當(dāng)人類演奏者在原聲鋼琴10上演奏曲調(diào)時,鍵傳感器1c的陣列將所有黑鍵和白鍵11a/11b的當(dāng)前鍵位置作為鍵位置信號而周期性地報告。信號接口6通過模擬-數(shù)字轉(zhuǎn)換器將鍵位置信號轉(zhuǎn)換為數(shù)字鍵位置信號,并且將該數(shù)字鍵位置信號置于數(shù)據(jù)緩沖器中。信息處理器2從數(shù)據(jù)緩沖器提取該數(shù)字鍵位置信號,以便進(jìn)行在下文中詳細(xì)描述的數(shù)據(jù)處理。
計算機(jī)程序分解為主例程M1和子例程SBa、SBb、SB1、…。當(dāng)主例程M1運(yùn)行時,信息處理器2檢查檢測器5,以便查看用戶是否操縱了鍵和開關(guān)1m。用戶從作業(yè)列表中選擇操作模式,并且將他或她的選擇提供給信息處理器2。
所述子例程之一SBa被分配給自動演奏器1d,并且另一子例程SBb被分配給記錄器1e。通過將在下文中詳細(xì)描述的另一子例程SB1來將文件名賦給樂曲數(shù)據(jù)文件。
當(dāng)用戶選擇自動演奏操作模式時,主例程M1開始周期性地分支到用于自動演奏器1e的子例程SBa。用戶從文件目錄選擇文件名,并且信息處理器2將利用該文件名標(biāo)注的樂曲數(shù)據(jù)文件從存儲器單元3傳遞到其中。該樂曲數(shù)據(jù)文件被存儲在隨機(jī)存取存儲器中。
信息處理器2開始測量時間經(jīng)過,并且搜索樂曲數(shù)據(jù)文件,以查看是否要發(fā)生任何音符事件,即音符開(note-on)事件或音符關(guān)(note-off)事件。當(dāng)答案給出為否定時,信息處理器2周期性地增大軟件時鐘,并且等待答案改變。當(dāng)信息處理器2發(fā)現(xiàn)表示音符事件的樂曲數(shù)據(jù)代碼出現(xiàn)時,信息處理器2在該樂曲數(shù)據(jù)代碼的基礎(chǔ)上確定黑/白鍵11a/11b的目標(biāo)軌跡,即一系列鍵位置的值,并且還確定驅(qū)動信號的平均電流量。信息處理器2通過信號接口6向驅(qū)動電路1f通知分配給要移動的黑鍵和白鍵11a/11b的鍵編號以及平均電流量。
驅(qū)動電路1f將驅(qū)動信號調(diào)整為所述平均電流量,并且將該驅(qū)動信號提供給與黑/白鍵11a/11b相關(guān)聯(lián)的電磁控制的鍵致動器1b。活塞從螺線管向上伸出,并且推動黑鍵和白鍵11a/11b的后部。這樣,電磁控制的鍵致動器1b在沒有人類演奏者的任何手指彈奏的情況下引起鍵運(yùn)動。將表示活塞速度的反饋信號從內(nèi)置活塞傳感器提供給信息處理器2,并且信息處理器將當(dāng)前活塞速度和當(dāng)前活塞位置與目標(biāo)軌跡上的鍵速度和鍵位置進(jìn)行比較,以查看黑/白鍵11a/11b是否準(zhǔn)確地在目標(biāo)軌跡上行進(jìn)。
當(dāng)答案給出為肯定時,信息處理器2將平均電流量保持在當(dāng)前值。如果黑/白鍵11a/11b提前或延遲,則答案給出為否定,并且信息處理器2減小或增大平均電流量。信息處理器2向驅(qū)動電路1f通知平均電流量,并且驅(qū)動電路1f將驅(qū)動電流調(diào)整到該平均電流量。這樣,通過伺服環(huán)控制黑/白鍵11a/11b,以便使弦槌12以目標(biāo)弦槌速度與琴弦13碰撞。
當(dāng)信息處理器2發(fā)現(xiàn)表示音符關(guān)事件的樂曲數(shù)據(jù)代碼時,信息處理器2向驅(qū)動電路1f通知鍵編號,并且驅(qū)動電路1f將驅(qū)動信號衰減為無效電平?;钊湛s回到螺線管中,并且黑/白鍵11a/11b返回靜止位置。
信息處理器2對于所有黑鍵和白鍵重復(fù)上述反饋控制序列,使得自動演奏器1d依序移動黑鍵和白鍵11a/11b。這樣,自動演奏器1d在沒有人類演奏者的任何手指彈奏的情況下重演記錄在樂曲數(shù)據(jù)文件中的演奏。
假設(shè)人類演奏者通過鍵和開關(guān)1m的陣列指示記錄器1e記錄他或她的演奏。主例程M1開始周期性地分支到用于記錄器1e的子例程SBb。信息處理器2開始周期性地從信號接口6提取數(shù)字鍵位置信號,并且將黑鍵和白鍵11a/11b的當(dāng)前鍵位置積存在隨機(jī)存取存儲器中。
信息處理器2分析由所積存的數(shù)字鍵位置代表的鍵位置數(shù)據(jù),以查看黑鍵和白鍵11a/11b是否使相關(guān)聯(lián)的弦槌12與相關(guān)聯(lián)的琴弦14碰撞、以及黑鍵和白鍵11a/11b是否使制音器(未示出)衰減琴弦14的振動。當(dāng)一個或多個答案給出為肯定時,信息處理器2確認(rèn)音符開事件和/或音符關(guān)事件,并且將表示該音符開事件和/或音符關(guān)事件的一個或多個樂曲數(shù)據(jù)與從前一音符事件起的時間經(jīng)過一起存儲在一個或多個樂曲數(shù)據(jù)代碼中。對于被按下的鍵11a/11b和被釋放的鍵11a/11b,重復(fù)上述作業(yè)。
當(dāng)人類演奏者完成他或她的演奏時,信息處理器2將由樂曲數(shù)據(jù)代碼代表的樂曲數(shù)據(jù)正規(guī)化,并且為這組樂曲數(shù)據(jù)代碼創(chuàng)建樂曲數(shù)據(jù)文件。信息處理器2從樂曲數(shù)據(jù)中消除由于原聲鋼琴10的個體性導(dǎo)致的噪聲。這樣,通過執(zhí)行子例程SBb而創(chuàng)建樂曲數(shù)據(jù)文件。在此實例中,根據(jù)MIDI協(xié)議創(chuàng)建樂曲數(shù)據(jù)文件,并且該樂曲數(shù)據(jù)文件通常被稱為標(biāo)準(zhǔn)MIDI文件。
當(dāng)完成正規(guī)化時,信息處理器2進(jìn)入用于文件名的子例程SB1。首先,參照圖2對文件名的組成進(jìn)行描述。
圖2示出了文件名的示例。文件名分解為基本名20和擴(kuò)展名23,并且基本名20具有首標(biāo)21和整數(shù)部分22。換言之,首標(biāo)21、整數(shù)部分22和擴(kuò)展名23共同形成文件名。
利用句點(diǎn)和字符串來表示擴(kuò)展名,并且基本名是文件名的剩余部分,即表示文件名的字符串和擴(kuò)展名之間的差。在將字符串“ABCD.xxx”作為文件名分配給樂曲數(shù)據(jù)文件的情況中,字符串“ABCD”是基本名,并且“.xxx”是擴(kuò)展名。如果將超過一個的句點(diǎn)引入表示文件名的字符串,則最后的句點(diǎn)和該最后句點(diǎn)之后的字符串表示擴(kuò)展名。例如,假設(shè)將文件名表示為“ABCD.xxx.wav”。最后的句點(diǎn)和字符串“wav”,即“.wav”表示擴(kuò)展名。
字符串表示首標(biāo)21,并且在圖2中,字符串“PIANO”對應(yīng)于首標(biāo)21。利用十進(jìn)制記數(shù)法中的3位數(shù)到9位數(shù)的正整數(shù),即“1”至“999999999”來表示整數(shù)部分22。當(dāng)該正整數(shù)小于十進(jìn)制記數(shù)法中的100時,對于小于100的正整數(shù)進(jìn)行零填充。例如,如果該正整數(shù)等于十進(jìn)制記數(shù)法中的1,則將該正整數(shù)表示為“001”。
當(dāng)在存儲器單元3中創(chuàng)建新的樂曲數(shù)據(jù)文件時,將所述正整數(shù)增大1。由于這一原因,整數(shù)部分22向用戶告知記錄順序,即樂曲數(shù)據(jù)文件是在其它樂曲數(shù)據(jù)文件之前還是之后創(chuàng)建的。首先將從“001”到“999”的正整數(shù)分配給樂曲數(shù)據(jù)文件,并且,隨后,使用4位數(shù)或更多位數(shù)的正整數(shù)作為整數(shù)部分22。大多數(shù)樂曲數(shù)據(jù)文件將具有由等于或少于3位數(shù)的正整數(shù)表示的整數(shù)部分。
圖3示出了用于將文件名分配給樂曲數(shù)據(jù)文件的子例程SB1的作業(yè)序列。
當(dāng)人類演奏者指示信息處理器2存儲表示他或她的演奏的一組樂曲數(shù)據(jù)代碼時,信息處理器2進(jìn)入用于分配新文件名的子例程SB1。當(dāng)用戶指示信息處理器2將樂曲數(shù)據(jù)文件復(fù)制到存儲器單元3中以及將樂曲數(shù)據(jù)文件傳遞到存儲器單元3中時,信息處理器2也進(jìn)入用于分配新文件名的子例程SB1。假設(shè)向文件目錄登記了該新文件名。
首先,信息處理器2在存儲器單元3中搜索與要新分配給新樂曲數(shù)據(jù)文件的文件名相似的文件名,如步驟S1。相似的文件名已經(jīng)通過執(zhí)行子例程SB1而被自動分配給樂曲數(shù)據(jù)文件。假設(shè)新文件名與圖2示出的文件名相同。當(dāng)樂曲數(shù)據(jù)文件滿足以下條件時,認(rèn)為樂曲數(shù)據(jù)文件是相似的。這些條件是
1.首標(biāo)21與新文件名的首標(biāo)相同,即,利用字符串“PIANO”來表示首標(biāo)。即使首標(biāo)不是由這5個大寫字母組成的,也認(rèn)為首標(biāo)與首標(biāo)“PIANO”21相同。
2.利用3位數(shù)的正整數(shù)來表示整數(shù)部分22,即,“1”、“2”、…或“9”占據(jù)這3位數(shù)的每一個。另外,利用超過3位數(shù)的正整數(shù)來表示整數(shù)部分22;并且,在最高位數(shù)上的字符是“1”至“9”之一,并且“0”、“1”、…或“9”占據(jù)其它位數(shù)。
3.整數(shù)部分22構(gòu)成文件名的末尾部分,即,在字符串的末尾發(fā)現(xiàn)文件結(jié)束符號。另外,擴(kuò)展名23跟隨在整數(shù)部分22之后,并且在擴(kuò)展名之后發(fā)現(xiàn)文件結(jié)束符號。
文件結(jié)束符號指示表示文件名的字符串的末尾。然而,不在顯示板1j上顯示文件結(jié)束符號。
通過步驟S1處的作業(yè),從相似文件名的列表中省略了由用戶手動分配給樂曲數(shù)據(jù)文件的文件名。要從所述列表中省略的文件名的示例是1.“SONATA0001”,因為該首標(biāo)與首標(biāo)“PIANO”不同,2.“PIANO01A.mid.wav”,因為整數(shù)部分包含句點(diǎn)和字母表字母,3.“PIANO0123.mid”,因為“0”占據(jù)了整數(shù)部分的最高位數(shù),以及4.“PIANO01.mid”,因為利用少于3位數(shù)的正整數(shù)來表示整數(shù)部分。
隨后,信息處理器2確定所述列表中的文件名的整數(shù)部分22中的每一個的得分(score),如步驟S2。盡管整數(shù)部分22是利用二進(jìn)制數(shù)字表示的,但是作為十進(jìn)制數(shù)字來評估所述正整數(shù),并且所述正整數(shù)確定每個文件名的得分。通過該評估,算術(shù)運(yùn)算變得簡單。由于利用字母表字母“PIANO”來表示首標(biāo)21,因此在確定得分時從文件名中去除首標(biāo)21。結(jié)果,減小了信息處理器2上的負(fù)荷。
在下文中,對整數(shù)部分和得分之間的關(guān)系進(jìn)行描述。在信息處理器2的只讀存儲器中準(zhǔn)備定義整數(shù)和字母表字母/數(shù)字字母之間關(guān)系的表。所有可能的字符串唯一地對應(yīng)于表中的得分值。
信息處理器以字符串訪問所述表,并且讀出與該字符串相對應(yīng)的得分。字符串“PIANO100”可對應(yīng)于“100”的得分點(diǎn)(score point)。得分值和另一得分值之間的比較優(yōu)于字符串和另一字符串之間的比較。
第一,前者比后者快得多,因為得分點(diǎn)之間的比較不需要任何復(fù)雜算法。第二,信息處理器2能夠正確地將得分點(diǎn)互相比較?,F(xiàn)在,假設(shè)在POSIX的基礎(chǔ)上、通過使用C語言中的字符串的比較函數(shù)來進(jìn)行所述評估,字符串“PIANO 200”具有比字符串“PIANO 1000”的得分點(diǎn)大的得分點(diǎn)。這是因為“2”大于“1”這一事實。另一方面,字符串“PIANO 200”具有小于字符串“PIANO 1000”的得分點(diǎn)的得分點(diǎn)。因此,得分點(diǎn)之間的比較是有優(yōu)勢的。
隨后,信息處理器2檢查所述得分,以查看什么文件名具有最大分點(diǎn)(point),如步驟S3。信息處理器2根據(jù)該最大分點(diǎn)進(jìn)行到步驟S4、S5和S6之一。如果所有文件名都不滿足條件1、2和3,則認(rèn)為最大得分為“0”。
存在三種可能性C1、C2和C3??赡苄訡3、C2和C1將信息處理器2分別引導(dǎo)到步驟S4、D5和S6,并且步驟8和9跟隨在步驟D5之后。
如果最大得分落在從“0”到“998”的范圍或者從“1000”到“999999998”的范圍內(nèi),則步驟S3處的答案給出為“C3”,并且進(jìn)行到步驟S4。信息處理器2將“1”加到最大得分點(diǎn)上,并且將緊接在該最大整數(shù)之后的正整數(shù)分配給整數(shù)部分22,如步驟S4。這一特征是理想的,因為容易通過將得分點(diǎn)互相比較來找到最新的樂曲數(shù)據(jù)文件。當(dāng)完成步驟S4處的作業(yè)時,信息處理器2進(jìn)行到步驟S10。
如果最大得分等于“999”,則步驟S3處的答案給出為“C2”,并且信息處理器2在存儲器單元3中搜索3位數(shù)的正整數(shù),如步驟S5。隨后,信息處理器2檢查在步驟S5找到的文件名的整數(shù)部分,以便查看是否發(fā)現(xiàn)3位數(shù)的遺漏整數(shù),如步驟S7。當(dāng)信息處理器2發(fā)現(xiàn)3位數(shù)的遺漏整數(shù)時,信息處理器2將最小的3位數(shù)的遺漏整數(shù)分配給整數(shù)部分22,如步驟S8。隨后,信息處理器2進(jìn)行到步驟S10。
當(dāng)從存儲器單元3刪除樂曲數(shù)據(jù)文件時,被刪除的樂曲數(shù)據(jù)文件的文件名變?yōu)闊o效,并且該無效文件名中的正整數(shù)被認(rèn)為是遺漏整數(shù)。這樣,將3位數(shù)的正整數(shù)經(jīng)濟(jì)地用于文件名。
順便提到,當(dāng)信息處理器2沒有發(fā)現(xiàn)任何要打分的樂曲數(shù)據(jù)文件時,在步驟S2,將0賦給最大得分。顯然,在步驟S7,不考慮最大得分點(diǎn)0。
當(dāng)信息處理器2沒有發(fā)現(xiàn)任何3位數(shù)的遺漏整數(shù)時,步驟S7處的答案給出為“否”,并且信息處理器2將4位數(shù)的正整數(shù)賦予新文件名的整數(shù)部分22,如步驟S9,并且隨后進(jìn)行到步驟S10。在第一次分配正整數(shù)“1000”之后,信息處理器2對于接下來的樂曲數(shù)據(jù)文件逐步增大該4位數(shù)的正整數(shù),直到“999999998”為止。第4位數(shù)使得文件名的字符串被增加一個字符。
在步驟S10,信息處理器2確定新文件名。該新文件名包括首標(biāo)21“PIANO”、在步驟S4、S8或S9給出的正整數(shù)的整數(shù)部分22、以及任意添加到整數(shù)部分的擴(kuò)展名23。所述正整數(shù)表示字符串。信息處理器2將所述正整數(shù)轉(zhuǎn)換為對應(yīng)的字符串,并且與所述正整數(shù)相對應(yīng)的字符串占據(jù)文件名的整數(shù)部分22。
當(dāng)信息處理器2發(fā)現(xiàn)最大得分處于“999999999”時,步驟S3處的答案給出為“C1”,并且信息處理器2通過顯示板1j向用戶給出警告,如步驟S6。這是因為“999999999”是可用于整數(shù)部分22的最大正整數(shù)這一事實。所述警告指示用戶不能通過軟件將任何文件名自動賦予新的樂曲數(shù)據(jù)文件。用戶可以通過鍵和開關(guān)1k的陣列手動輸入字符串,以用于新樂曲數(shù)據(jù)文件的文件名。另外,用戶可以從存儲器單元3刪除一個或多個不用的樂曲數(shù)據(jù)文件,以便將步驟S5處的答案從否定改變?yōu)榭隙?。?dāng)完成步驟S6或S10處的作業(yè)時,信息處理器2返回主例程。
如將從以上描述理解的那樣,通過子例程SB1而自動地為新樂曲數(shù)據(jù)文件創(chuàng)建文件名。如果只有一個已登記的文件名被表示為“PIANO001”,則將“PIANO002”分配給新的樂曲數(shù)據(jù)文件,并且,對于以后創(chuàng)建的新的樂曲數(shù)據(jù)文件,從002起逐步增大所述正整數(shù)。如果3位數(shù)的最小正整數(shù)是“500”,則將文件名“PIANO 500”分配給新的樂曲數(shù)據(jù)文件,并且將小于“998”的正整數(shù)連續(xù)地分配給以后的新樂曲數(shù)據(jù)文件。如果在沒有任何遺漏整數(shù)的情況下已經(jīng)分配給樂曲數(shù)據(jù)文件的最大正整數(shù)是“999”,則將正整數(shù)1000分配給新的樂曲數(shù)據(jù)文件,并且以后朝著“999999999”逐步增大該正整數(shù)。
信息處理系統(tǒng)1h和用于分配文件名的子例程SB1優(yōu)勢在于在所述正整數(shù)達(dá)到“999”之前,用戶容易地在整數(shù)部分22的基礎(chǔ)上確定記錄的順序,并且,在所述正整數(shù)達(dá)到“999”之后,將文件名經(jīng)濟(jì)地分配給樂曲數(shù)據(jù)文件。
另一優(yōu)點(diǎn)是使得本發(fā)明的自動演奏器鋼琴與已經(jīng)在市場上銷售的自動演奏器鋼琴兼容。詳細(xì)地講,小尺寸的顯示板被合并在被標(biāo)以商標(biāo)“YAMAHA”的自動演奏器鋼琴的若干型號中,并且最多能夠產(chǎn)生11個字符。當(dāng)以3位數(shù)增大所述正整數(shù)時,文件名被表示為“PIANO xyz”,其中,xyz是3位數(shù)的正整數(shù),并且8個字符形成文件名的基本名20。因此,在已經(jīng)使用的自動演奏器鋼琴中可以讀取由信息處理器系統(tǒng)1h創(chuàng)建的樂曲數(shù)據(jù)文件。
據(jù)說,人類能夠在相對短的時間周期內(nèi)記住7±2個字符。由于信息處理器2將遺漏整數(shù)分配給新的樂曲數(shù)據(jù)文件,因此大多數(shù)樂曲數(shù)據(jù)文件具有3位數(shù)的正整數(shù),并且被自動分配給樂曲數(shù)據(jù)文件的文件名使得用戶容易地記住樂曲數(shù)據(jù)文件的文件名和內(nèi)容之間的關(guān)系。這是本發(fā)明的文件名的另一優(yōu)點(diǎn)。
第二實施例圖4示出了根據(jù)本發(fā)明的、用于將文件名分配給新的樂曲數(shù)據(jù)文件的子例程SB2的另一作業(yè)序列。子例程SB2在信息處理器2上運(yùn)行,所述信息處理器2被合并在信息處理系統(tǒng)中,所述信息處理系統(tǒng)繼而被合并在自動演奏器鋼琴中。所述信息處理系統(tǒng)和自動演奏器鋼琴在結(jié)構(gòu)上與第一實施例的那些相似,并且由于這一原因,將描述集中在用于避免不希望的重復(fù)的子例程SB2上。利用指定第一實施例的對應(yīng)系統(tǒng)組件的參考標(biāo)號來標(biāo)注系統(tǒng)組件,以便使得能夠清楚地理解本描述。
現(xiàn)在,假設(shè)人類演奏者指示信息處理器2將代表原聲鋼琴10上的演奏的一組樂曲數(shù)據(jù)代碼存儲在存儲器單元3中,信息處理器2進(jìn)入子例程SB2。
信息處理器2首先在存儲器單元3中搜索已經(jīng)通過執(zhí)行子例程SB2而被自動分配的文件名,如步驟S11。
隨后,信息處理器2檢查整數(shù)部分22,以查看在已經(jīng)分配的文件名的最大整數(shù)之前是否發(fā)現(xiàn)遺漏整數(shù),如步驟S13。
如果已經(jīng)從存儲器單元3刪除了樂曲數(shù)據(jù)文件,則發(fā)現(xiàn)文件名中的正整數(shù)作為遺漏整數(shù),并且步驟S13處的答案給出為肯定“是”。當(dāng)信息處理器2發(fā)現(xiàn)多個遺漏整數(shù)時,信息處理器2將最小遺漏整數(shù)分配給整數(shù)部分22,如步驟S14。
如果未從存儲器單元3刪除任何樂曲數(shù)據(jù)文件,則步驟S13處的答案給出為否定“否”,并且信息處理器2將最大整數(shù)與正整數(shù)的極限值“999999999”進(jìn)行比較,以便查看該最大整數(shù)是否小于所述極限值,如步驟S15。當(dāng)最大整數(shù)等于所述極限值時,答案給出為否定“否”,并且信息處理器2不能向新的樂曲數(shù)據(jù)文件分配文件名。對于否定答案“否”,信息處理器2請求圖形控制器4在顯示板1j上產(chǎn)生警告消息,如步驟S16。
另一方面,當(dāng)最大整數(shù)小于極限值“999999999”時,信息處理器2將緊接在該最大整數(shù)之后的正整數(shù)分配給整數(shù)部分,如步驟S17。
當(dāng)完成步驟S14或S17處的作業(yè)時,信息處理器2進(jìn)行到步驟S18,并且確定在整數(shù)部分22中包括給定整數(shù)的、新樂曲數(shù)據(jù)文件的文件名。
如將從以上描述理解的那樣,通過執(zhí)行所述子例程來將文件名自動分配給樂曲數(shù)據(jù)文件,并且將遺漏整數(shù)分配給新的樂曲數(shù)據(jù)文件。這樣,將文件名經(jīng)濟(jì)地分配給樂曲數(shù)據(jù)文件。
第三實施例圖5示出了用于向樂曲數(shù)據(jù)文件分配文件名的子例程SB3的另一作業(yè)序列。子例程SB3與主例程和其它子例程一起形成計算機(jī)程序的一部分,并且該計算機(jī)程序被安裝在自動演奏器鋼琴中,所述自動演奏器鋼琴在結(jié)構(gòu)上與第一實施例的自動演奏器鋼琴相似。由于這一原因,將描述集中在子例程SB3上。利用指定第一實施例的對應(yīng)系統(tǒng)組件的參考標(biāo)號來標(biāo)注自動演奏器鋼琴的系統(tǒng)組件,而出于簡明的原因不進(jìn)行詳細(xì)描述。
假設(shè)人類演奏者指示信息處理器2將代表原聲鋼琴10上的演奏的一組樂曲數(shù)據(jù)代碼存儲在存儲器單元3中。然后,信息處理器2進(jìn)入子例程SB3。
信息處理器2在存儲器單元3中搜索已經(jīng)被自動分配給樂曲數(shù)據(jù)文件的文件名,如步驟S21。當(dāng)在步驟S21發(fā)現(xiàn)文件名時,信息處理器2將文件名添加到文件名列表中。
隨后,信息處理器2對文件名列表中的文件名打上某些分點(diǎn),如步驟S22。信息處理器2確定最大得分。如果在步驟S21沒有發(fā)現(xiàn)任何文件名,則信息處理器2確定最大得分為0。信息處理器2將該得分與正整數(shù)的極限值,即“999999999”進(jìn)行比較,以查看該最大得分是否小于所述極限值,如步驟S23。
如果所述正整數(shù)已經(jīng)被分配給文件名列表中的文件名的整數(shù)部分22,則步驟S23處的答案給出為否定“否”。對于該否定答案,信息處理器2請求圖形控制器4在顯示板1j上產(chǎn)生警告消息,如步驟S24。
另一方面,當(dāng)最大整數(shù)小于所述極限值時,所述答案給出為肯定“是”。換言之,存在至少一個尚未被分配給任何樂曲數(shù)據(jù)文件的正整數(shù)。對于該肯定答案,信息處理器2將緊接在該最大整數(shù)之后的正整數(shù)分配給整數(shù)部分22,如步驟S25。
隨后,信息處理器2將文件名確定為{(PIANO+正整數(shù))+擴(kuò)展名}。并且將該文件名分配給新的樂曲數(shù)據(jù)文件,如步驟S26。
如將從前面的描述理解的那樣,通過執(zhí)行子例程而將文件名自動分配給樂曲數(shù)據(jù)文件,并且整數(shù)部分表示創(chuàng)建樂曲數(shù)據(jù)文件的順序。這樣,用戶容易地在文件名的整數(shù)部分的基礎(chǔ)上發(fā)現(xiàn)最新的樂曲數(shù)據(jù)文件。
盡管已經(jīng)示出和描述了本發(fā)明的特定實施例,但是,對于本領(lǐng)域技術(shù)人員來說將清楚的是,在不脫離本發(fā)明的精神和范圍的情況下,可以進(jìn)行各種改變和修改。
可以以應(yīng)用程序的形式將用于文件名的子例程提供給用戶。在控制器被設(shè)計用于從樂器外部提供的樂曲數(shù)據(jù)代碼的情況下,所述計算機(jī)程序可以不包括用于記錄器1e的子例程。
本發(fā)明可以與自動演奏器系統(tǒng)有關(guān),所述自動演奏器系統(tǒng)使原聲鋼琴被改型為自動演奏器鋼琴。
3位數(shù)的正整數(shù)不對本發(fā)明的技術(shù)范圍設(shè)置任何限制。可以將超過3位數(shù)的正整數(shù)分配給整數(shù)部分,或者用戶可以將最大正整數(shù)賦予整數(shù)部分。
類似地,字符串的長度可以比圖2所示的字符串長或短。表示文件名的字符串的長度可依賴于在顯示板1j上同時產(chǎn)生的字符圖像的最大數(shù)目。
字符串“PIANO”不對本發(fā)明的技術(shù)范圍設(shè)置任何限制??梢詫⒈茸址甈IANO短或長的另一字符串用作首標(biāo)??梢酝ㄟ^使用小寫字母來表示首標(biāo)21。
可以用語音消息的形式給出警告。
當(dāng)在步驟S9信息處理器2分配4位數(shù)的正整數(shù)時,信息處理器可以將首標(biāo)的字符減少1個。文件名被表示為“PIAN 1000”。當(dāng)將5位數(shù)的正整數(shù)分配給文件名時,可以將首標(biāo)21中的字符數(shù)減少兩個。結(jié)果,將表示基本名20的字符串的總長度保持恒定。
十進(jìn)制數(shù)字和字母表字母不對本發(fā)明的技術(shù)范圍設(shè)置任何限制??梢圆捎檬M(jìn)制記數(shù)體系作為整數(shù)部分22,并且可以在基本名20中使用中文文字和/或日語文字。
可以僅利用整數(shù)部分22來表示基本名20。換言之,基本名20不具有任何首標(biāo)21。
當(dāng)最大正整數(shù)超過“1000”時,信息處理器2可以檢查存儲器單元3,以查看是否發(fā)現(xiàn)遺漏整數(shù)。
自動演奏器鋼琴不對本發(fā)明的技術(shù)范圍設(shè)置任何限制。本發(fā)明可以與用于另一種樂器(例如靜音鋼琴、電琴弦樂器、電打擊樂器、電子鍵盤等)的記錄系統(tǒng)有關(guān)。本發(fā)明可以與幫助樂迷的電子設(shè)備有關(guān)。該電子設(shè)備的典型示例是采樣器。
權(quán)利要求
語言與上述實施例的組成部件相關(guān)如下。
信息處理系統(tǒng)1a和子例程SBb的一部分充當(dāng)“樂曲數(shù)據(jù)產(chǎn)生器”,并且信息處理系統(tǒng)1a和子例程SB1、SB2或SB3充當(dāng)“文件名分配器”,從“001”至“999”的正整數(shù)形成“數(shù)值范圍”,并且從“1000”到“999999999”的正整數(shù)形成“擴(kuò)大的數(shù)值范圍”。
對于前面的兩個獨(dú)立權(quán)利要求
,信息處理系統(tǒng)1a和步驟S1/S2/S3或S11充當(dāng)“第一搜索器”,并且信息處理系統(tǒng)1a和步驟S5/S7或S13充當(dāng)“第二搜索器”。信息處理系統(tǒng)1a和步驟S8/S10或S14/S18充當(dāng)“命名器”。
對于后面的兩個獨(dú)立權(quán)利要求
,信息處理系統(tǒng)1a和步驟S1/S2/S3或S21/S22/S23充當(dāng)“第一搜索器”,并且信息處理系統(tǒng)1a和步驟S4或S25充當(dāng)“命名器”。
黑鍵和白鍵11a和11b對應(yīng)于“多個操縱器”,并且動作單元12、弦槌13和琴弦14作為整體組成“音調(diào)生成系統(tǒng)”。
信息處理系統(tǒng)1a和步驟S6、S16或S24充當(dāng)“消息發(fā)送器”。
權(quán)利要求
1.一種用于將文件名(21,22,23)自動分配給樂曲數(shù)據(jù)文件的控制器,包括樂曲數(shù)據(jù)文件產(chǎn)生器(1a,SBb),其在存儲器(3)中創(chuàng)建樂曲數(shù)據(jù)文件,以便存儲一組樂曲數(shù)據(jù)代碼;以及文件名分配器(1a,SB1/SB2),其將文件名(21,22,23)分配給所述樂曲數(shù)據(jù)文件,其特征在于所述文件名分配器(1a,SB1/SB2)包含第一搜索器(1a,S1,S2,S3;S11),其在所述存儲器(3)中搜索形成被分配給另一樂曲數(shù)據(jù)文件的另一文件名的一部分的最大數(shù)字,所述另一樂曲數(shù)據(jù)文件已經(jīng)被存儲在所述存儲器(3)中,第二搜索器(1a,S5,S7;S13),其在所述存儲器(3)中搜索小于所述最大數(shù)字的遺漏數(shù)字,和命名器(1a,S8;S14),其在所述第二搜索器(1a,S5,S7;S13)發(fā)現(xiàn)所述遺漏數(shù)字時,將所述遺漏數(shù)字引入所述文件名(21,22,23),并且將所述文件名(21,22,23)分配給所述樂曲數(shù)據(jù)文件。
2.如權(quán)利要求
1所述的控制器,其中,當(dāng)所述第二搜索器(1a,S5,S7;S13)發(fā)現(xiàn)多個遺漏數(shù)字時,所述命名器(1a,S8;S14)將最小遺漏數(shù)字引入所述文件名(21,22,23)。
3.如權(quán)利要求
1所述的控制器,其中,當(dāng)所述第一搜索器(1a,S1,S2,S3;S11)發(fā)現(xiàn)所述最大數(shù)字小于數(shù)值范圍的極限值時,所述命名器(1a,S4,S8;S14,S17)將緊接在所述最大數(shù)字之后的數(shù)字而不是所述遺漏數(shù)字引入所述文件名(21,22,23)。
4.如權(quán)利要求
3所述的控制器,其中,當(dāng)所述最大數(shù)字等于所述數(shù)值范圍的所述極限值時,所述命名器(1a,S4,S8;S14,S17)將所述遺漏數(shù)字引入所述文件名(22,23,24)。
5.如權(quán)利要求
4所述的控制器,其中,在所述第一搜索器(1a,S1,S2,S3)發(fā)現(xiàn)所述最大數(shù)字等于所述數(shù)值范圍的所述極限值、并且所述第二搜索器(1a,S5,S7)在所述數(shù)值范圍內(nèi)沒有發(fā)現(xiàn)所述遺漏數(shù)字的條件下,所述命名器(1a,S4,S8,S9)將從比所述數(shù)值范圍的所述極限值大的擴(kuò)大的數(shù)值范圍中選擇的數(shù)字賦予所述文件名(21,22,23)。
6.如權(quán)利要求
5所述的控制器,其中,所述文件名分配器還包括消息發(fā)送器(1a,S6;S16),當(dāng)所述最大數(shù)字達(dá)到所述擴(kuò)大的數(shù)值范圍的極限值而沒有發(fā)現(xiàn)所述遺漏數(shù)字時,所述消息發(fā)送器(1a,S6;S16)向用戶給出警告。
7.一種用于演奏樂曲的樂器,包括多個操縱器(11a,11b),其由人類演奏者有選擇地操縱,以便順著所述樂曲指定音名;音調(diào)生成系統(tǒng)(12,13,14),其連接到所述多個操縱器(11a,11b),并且產(chǎn)生具有所述音名的音調(diào);樂曲數(shù)據(jù)產(chǎn)生器(1e),其連接到所述多個操縱器(11a,11b),并且順著所述樂曲產(chǎn)生表示演奏的一組樂曲數(shù)據(jù)代碼;樂曲數(shù)據(jù)文件產(chǎn)生器(1a,SBb),其在存儲器(3)中創(chuàng)建樂曲數(shù)據(jù)文件,以便存儲所述一組樂曲數(shù)據(jù)代碼;以及文件名分配器(1a,SB1;SB2),其將文件名(21,22,23)分配給所述樂曲數(shù)據(jù)文件,其特征在于所述文件名分配器(1a,SB1;SB2)包含第一搜索器(1a,S1,S2,S3;S11),其在所述存儲器(3)中搜索形成被分配給另一樂曲數(shù)據(jù)文件的另一文件名的一部分的最大數(shù)字,所述另一樂曲數(shù)據(jù)文件已經(jīng)被存儲在所述存儲器(3)中,第二搜索器(1a,S5,S7;S13),其在所述存儲器(3)中搜索小于所述最大數(shù)字的遺漏數(shù)字,和命名器(1a,S8;S14),其在所述第二搜索器(1a,S5,S7;S13)發(fā)現(xiàn)所述遺漏數(shù)字時,將所述遺漏數(shù)字引入所述文件名(21,22,23),并且將所述文件名(21,22,23)分配給所述樂曲數(shù)據(jù)文件。
8.如權(quán)利要求
7所述的樂器,其中,當(dāng)所述第二搜索器(1a,S5,S7)發(fā)現(xiàn)多個遺漏數(shù)字時,所述命名器(1a,S8;S14)將最小遺漏數(shù)字引入所述文件名(21,22,23)。
9.如權(quán)利要求
7所述的樂器,其中,當(dāng)所述第一搜索器(1a,S1,S2,S3)發(fā)現(xiàn)所述最大數(shù)字小于數(shù)值范圍的極限值時,所述命名器(1a,S4,S5,S7)將緊接在所述最大數(shù)字之后的數(shù)字而不是所述遺漏數(shù)字引入所述文件名(21,22,23)。
10.如權(quán)利要求
9所述的樂器,其中,當(dāng)所述第一搜索器(1a,S1,S2,S3)發(fā)現(xiàn)所述最大數(shù)字等于所述數(shù)值范圍的所述極限值時,所述命名器(1a,S4,S5,S7)將所述遺漏數(shù)字引入所述文件名(21,22,23)。
11.如權(quán)利要求
10所述的樂器,其中,在所述第一搜索器(1a,S1,S2,S3)發(fā)現(xiàn)所述最大數(shù)字等于所述數(shù)值范圍的所述極限值、并且所述第二搜索器(1a,S5,S7)在所述數(shù)值范圍內(nèi)沒有發(fā)現(xiàn)所述遺漏數(shù)字的條件下,所述命名器(1a,S4,S5,S7,S9)將從比所述數(shù)值范圍的所述極限值大的擴(kuò)大的數(shù)值范圍中選擇的數(shù)字賦予所述文件名(21,22,23)。
12.如權(quán)利要求
11所述的樂器,其中,所述文件名分配器還包括消息發(fā)送器(1a,S6),當(dāng)所述最大數(shù)字達(dá)到所述擴(kuò)大的數(shù)值范圍的極限值而沒有發(fā)現(xiàn)所述遺漏數(shù)字時,所述消息發(fā)送器(1a,S6)向用戶給出警告。
13.一種用于將文件名(21,22,23)自動分配給樂曲數(shù)據(jù)文件的控制器,包括樂曲數(shù)據(jù)文件產(chǎn)生器(1a,SBb),其在存儲器(3)中創(chuàng)建樂曲數(shù)據(jù)文件,以便存儲一組樂曲數(shù)據(jù)代碼;以及文件名分配器(1a,SB1;SB3),其將文件名(21,22,23)分配給所述樂曲數(shù)據(jù)文件,其特征在于所述文件名分配器(1a,SB1;SB3)包含第一搜索器(1a,S1,S2,S3;S21,S22),其在所述存儲器(3)中搜索具有小于數(shù)值范圍的極限值的最大數(shù)字的另一樂曲數(shù)據(jù)文件,和命名器(1a,S4;S25),其將緊接著所述最大數(shù)字的數(shù)字引入所述文件名(21,22,23),并且將所述文件名(21,22,23)分配給所述樂曲數(shù)據(jù)文件。
14.如權(quán)利要求
13所述的控制器,其中,所述文件名分配器還包括第二搜索器(1a,S5,S7),其在所述存儲器(3)中搜索所述數(shù)值范圍內(nèi)的遺漏數(shù)字,并且當(dāng)所述第一搜索器(1a,S1,S2,S3)發(fā)現(xiàn)所述最大數(shù)字等于所述數(shù)值范圍的所述極限值時,所述命名器(1a,S4,S8)將所述遺漏數(shù)字引入所述文件名(21,22,23)。
15.如權(quán)利要求
14所述的控制器,其中,當(dāng)所述第二搜索器(1a,S5,S7)發(fā)現(xiàn)多個遺漏數(shù)字時,所述命名器(1a,S4,S8)將最小遺漏數(shù)字引入所述文件名。
16.如權(quán)利要求
14所述的控制器,其中,當(dāng)所述第一搜索器(1a,S1,S2,S3)發(fā)現(xiàn)所述最大數(shù)字等于所述極限值時、并且當(dāng)所述第二搜索器(1a,S5,S7)沒有發(fā)現(xiàn)所述遺漏數(shù)字時,所述命名器(1a,S4,S8,S9)將從比所述數(shù)值范圍的所述極限值大的擴(kuò)大的數(shù)值范圍中選擇的數(shù)字引入所述文件名(21,22,23)。
17.如權(quán)利要求
16所述的控制器,其中,所述文件名分配器還包括消息發(fā)送器(1a,S6),在所述第一搜索器(1a,S1,S2,S3)發(fā)現(xiàn)所述最大數(shù)字等于所述擴(kuò)大的數(shù)值范圍的極限值的條件下,并且當(dāng)所述第二搜索器(1a,S5,S7)沒有發(fā)現(xiàn)所述遺漏數(shù)字時,所述消息發(fā)送器(1a,S6)向用戶給出警告。
18.一種用于演奏樂曲的樂器,包括多個操縱器(11a,11b),其由人類演奏者有選擇地操縱,以便順著所述樂曲指定音名;音調(diào)生成系統(tǒng)(12,13,14),其連接到所述多個操縱器(11a,11b),并且產(chǎn)生具有所述音名的音調(diào);樂曲數(shù)據(jù)產(chǎn)生器(1e),其連接到所述多個操縱器(11a,11b),并且順著所述樂曲產(chǎn)生表示演奏的一組樂曲數(shù)據(jù)代碼;樂曲數(shù)據(jù)文件產(chǎn)生器(1a,SBb),其在存儲器(3)中創(chuàng)建樂曲數(shù)據(jù)文件,以便存儲所述一組樂曲數(shù)據(jù)代碼;以及文件名分配器(1a,SB1;SB3),其將文件名(21,22,23)分配給所述樂曲數(shù)據(jù)文件,并且包含第一搜索器(1a,S1,S2,S3;S21,S22),其在所述存儲器(3)中搜索具有小于數(shù)值范圍的極限值的最大數(shù)字的另一樂曲數(shù)據(jù)文件,和命名器(1a,S4;S25),其將緊接著所述最大數(shù)字的數(shù)字引入所述文件名(21,22,23),并且將所述文件名(21,22,23)分配給所述樂曲數(shù)據(jù)文件。
19.如權(quán)利要求
18所述的樂器,其中,所述文件名分配器還包括第二搜索器(1a,S5,S7),其在所述存儲器(3)中搜索所述數(shù)值范圍內(nèi)的遺漏數(shù)字,并且當(dāng)所述第一搜索器(1a,S1,S2,S3)發(fā)現(xiàn)所述最大數(shù)字等于所述數(shù)值范圍的所述極限值時,所述命名器(1a,S4,S8)將所述遺漏數(shù)字引入所述文件名(21,22,23)。
20.如權(quán)利要求
19所述的樂器,其中,當(dāng)所述第二搜索器(1a,S5,S7)發(fā)現(xiàn)多個遺漏數(shù)字時,所述命名器(1a,S4,S8)將最小遺漏數(shù)字引入所述文件名。
21.如權(quán)利要求
19所述的樂器,其中,當(dāng)所述第一搜索器(1a,S1,S2,S3)發(fā)現(xiàn)所述最大數(shù)字等于所述極限值時、并且當(dāng)所述第二搜索器(1a,S5,S7)沒有發(fā)現(xiàn)所述遺漏數(shù)字時,所述命名器(1a,S4,S8,S9)將從比所述數(shù)值范圍的所述極限值大的擴(kuò)大的數(shù)值范圍選擇的數(shù)字引入所述文件名(21,22,23)。
22.如權(quán)利要求
21所述的樂器,其中,所述文件名分配器還包括消息發(fā)送器(1a,S6),在所述第一搜索器(1a,S1,S2,S3)發(fā)現(xiàn)所述最大數(shù)字等于所述擴(kuò)大的數(shù)值范圍的極限值的條件下、并且當(dāng)所述第二搜索器(1a,S,S7)沒有發(fā)現(xiàn)所述遺漏數(shù)字時,所述消息發(fā)送器(1a,S6)向用戶給出警告。
專利摘要
一種自動演奏器鋼琴,具有用于將演奏記錄為樂曲數(shù)據(jù)文件的記錄器(1e);當(dāng)準(zhǔn)備表示演奏的一組樂曲數(shù)據(jù)代碼時,通過子例程(SB1)將文件名(21,22,23)自動分配給樂曲數(shù)據(jù)文件;當(dāng)子例程(SB1)運(yùn)行時,確定形成已存儲在存儲器單元中的文件名的一部分的最大整數(shù)(S1-S3),并且在最大整數(shù)小于數(shù)字范圍的極限值(999)的條件下,將緊接在該最大整數(shù)之后的整數(shù)引入文件名(21,22,23),由此,自動演奏器鋼琴使得能夠從文件名(21,22,23)清楚地讀取創(chuàng)建樂曲數(shù)據(jù)文件的順序;當(dāng)最大整數(shù)等于所述極限值(999)時,將遺漏數(shù)字引入文件名(21,22,23),由此經(jīng)濟(jì)地重新使用所述數(shù)值范圍內(nèi)的整數(shù)。
文檔編號G06F17/30GK1991974SQ200610172720
公開日2007年7月4日 申請日期2006年12月26日
發(fā)明者川端太郎, 相原武祥 申請人:雅馬哈株式會社導(dǎo)出引文BiBTeX, EndNote, RefMan