Vol.2016-MUS-112 No.17
2016/8/1৘ใॲཧֶձ‫ڀݚ‬ใࠂ
IPSJ SIG Technical Reportԋ૗ऀͷָේͷ‫͚͓ʹؒ۠ࢭٳ‬Δࣗಈ൐૗ͷςϯϙ੍‫ޚ‬௕໺ ѥඒ1,†1ᜊ౻ ߁೭1,a)தଜ ӫଠ2ࠧեࢁ ໜथ3֓ཁɿָේʹैͬͯɼਓͷԋ૗ʹ௥ैͯࣗ͠ಈతʹ൐૗ύʔτΛԋ૗͢ΔγεςϜ EurydiceʢϢϦσΟεʣ͸ɼԋ૗ͷੜ੒աఔΛ֬཰ϞσϧͰϞσϧԽ͢Δ͜ͱʹΑΓɼ଎౓มԽ΍஄͖ؒҧ͍͕͋ͬͯ΋ॊೈʹ௥ैͰ͖Δࣗಈ൐૗γεςϜͰ͋ΔɽEurydice Ͱ͸ԋ૗ऀʹΑΔೖྗʹ‫͍ͯͮج‬ςϯϙ੍‫͢ޚ‬Δ͕ɼָේ্Ͱԋ૗ऀύʔτͷ‫Ͱؒ۠ࢭٳ‬͸൐૗ύʔτͷςϯϙ੍‫͍ͳ͖Ͱ͕ޚ‬ɽຊ‫Ͱڀݚ‬͸ɼͦͷΑ͏ͳ۠ؒͰɼ‫ݤ‬ͷλοϓಈ࡞ʹΑΔ൐૗ͷςϯϙ੍‫ݕ͍ͯͭʹޚ‬౼ͨ͠ɽ·ͣɼλοϓಈ࡞Λߦ͏‫ݤ‬Λܾఆ͢ΔͨΊʹɼ‫ؒݤ‬ͷ‫ؔ͢ʹ཭ڑ‬Δϛελον཰ΛධՁ࣮‫֬Ͱݧ‬ೝͨ͠ɽલॲཧͱͯ͠ɼEurydice ʹ࢖༻͢Δ standard
MIDI FileʢSMFʣ΁λοϓಈ࡞ʹඞཁͳԻූΛૠೖ͠ɼૠೖͨ͠ԻූΛλοϓ͢Δ͜ͱͰςϯϙ੍‫ۂͱޚ‬ͷਐߦΛߦͬͨɽָේʹ͸ଘࡏ͠ͳ͍ԻූͰ͋ΔͨΊԻ͸ग़ྗ͠ͳ͍ɽ͜ΕΒΛ࣮૷͠ɼಈ࡞Λ֬ೝͨ͠ɽΩʔϫʔυɿࣗಈ൐૗ɼςϯϙ੍‫ޚ‬ɼMIDI ϑΝΠϧTempo control for automatic accompaniment while
player rests in musical score
Nagano Ami1,†1

Saito Yasuyuki1,a)Nakamura Eita2

Sagayama Shigeki3

Abstract: Automatic music accompaniment system synchronizes with human player’s performance. Eurydice is one of such systems that model the generation process of the performance with a probabilistic model,
which can therefore follow flexibly the performance in presence of tempo changes, mistakes, skips and repeats.
As the tempo control is made by following the player’s input, it is a problem while the player’s part has along rest in the score. In this study, we discuss tempo control of the accompaniment by key tapping. To
determine a key for the tap operation, wrong key rate was experimentally evaluated across various distances
between keys. Then, as a preprocessing, we inserted necessary notes for the tap operation into the standard
MIDI file (SMF) for Eurydice, so that Eurydice controls tempo and proceeds forward when the player tapped
the inserted notes. The inserted notes cause no sounds, because they do not exist in the original musicalscore. We implemented these new features and confirmed a successful operation.
Keywords: automatic accompanimentɼtempo controlɼMIDI file1. ͸͡Ίʹָේʹैͬͯɼਓͷԋ૗ʹ௥ैͯࣗ͠ಈతʹ൐૗ύʔτΛԋ૗͢ΔγεςϜΛɼ͜͜Ͱ͸ࣗಈ൐૗γεςϜͱ‫ݺ‬Ϳ [1], [2]ɽࣗಈ൐૗γεςϜ͸ɼγεςϜଆ͕ԋ૗ऀͷࢦࣔʹ߹ΘͤΔ͜ͱͰ੒Γཱ͍ͬͯΔɽ͔͠͠ɼਓͷԋ૗͸ָේ௨ΓͰͳ͘ɼෆ֬ఆͳ΋ͷͰ͋123†1a)໦ߋ௡޻‫ߴۀ‬౳ઐ໳ֶߍ ৘ใ޻ֶՊNIT,Kisarazu College, Kisarazu, Chiba 2921–0041, Japan‫౎ژ‬େֶ େֶӃ৘ใֶ‫ڀݚ‬Պ ஌ೳ৘ใֶઐ߈Kyoto University, Sakyo-ku, Kyoto 606–8501, Japan໌࣏େֶ ૯߹਺ཧֶ෦ ઌ୺ϝσΟΞαΠΤϯεֶՊ
Meiji University, Nakano-ku, Tokyo 164–8525, Japan‫ࡏݱ‬ɼઍ༿େֶ
Presently with Chiba Universitysaito@j.kisarazu.ac.jp

c 2016 Information Processing Society of Japan⃝Δɽͨͱ͑͹ɼςϯϙͷ༳Β͗΍Իߴͷؒҧ͍ɼ༨෼ͳԻͷૠೖɼඞཁͳԻͷܽམɼԻྔͷมԽɼ஄͖௚͠ͳͲͷཁҼ͕‫·ؚ‬ΕΔ [3]ɽ͜ΕΒͷཁҼΛ౿·͑ɼEurydiceʢϢϦσΟεʣ[4] ͸ԋ૗ͷੜ੒աఔΛ֬཰ϞσϧͰ‫ه‬ड़͢Δ͜ͱʹΑΓɼॊೈʹ௥ै͢Δ͜ͱ͕ՄೳͰ͋Δɽ͜ͷΑ͏ͳٕज़͸ɼϐΞϊͷยखͰͷ࿅श΍ιϩύʔτͷ࿅शͷࡍʹ࢖1Vol.2016-MUS-112 No.17
2016/8/1৘ใॲཧֶձ‫ڀݚ‬ใࠂ
IPSJ SIG Technical Report༻Ͱ͖Δ΄͔ɼ‫ڠ‬૗‫ۂ‬΍࿈஄ɼύʔτ͕ෳ਺͋Δ‫Ͱۂ‬૗ऀ਺Λ௿‫͠ݮ‬ԋ૗ΛՄೳʹ͢ΔޮՌ΋‫ظ‬଴͞ΕΔɽ·ͨɼϩάͷऔಘʢMIDI ࿥Իʣ͕ՄೳͰ͋Γɼͦͷऔಘͨ͠σʔ *)() *)()MIDI*)()&$λΛར༻ͯ͠৽ͨͳԋ૗‫ܗ‬ଶ΍৽͍͠࡞‫ํۂ‬๏ͳͲͷՄೳ MIDI 'ੑΛ༩͑Δ͜ͱ͕Ͱ͖Δɽ#!"'͜ͷγεςϜʹ࢒͞Ε͍ͯΔ໰୊ͱͯ͠ɼ(1) ԋ૗ऀ͕‫ٳ‬ΈͷؒɼγεςϜ΁ςϯϙࢦ͕ࣔͰ͖ͳ͍͜ͱ΍ɼ(2) ൐MIDI '' %"'

ਤ 1ָේ௥੻ͱ൐૗ੜ੒ͷؔ܎ਤ 2Eurydice ϝΠϯ΢Οϯυ΢૗ԋ૗ͷද‫͕ݱ‬ඞͣ͠΋ԋ૗ऀͷҙਤʹԊΘͳ͍͜ͱ͕͋Δɼͱ͍͏఺͕‫͛ڍ‬ΒΕΔɽͦ͜Ͱຊ‫Ͱڀݚ‬͸ɼ‫ݤ‬ͷλοϓಈ࡞ʹΑΔ൐૗ͷςϯϙ੍‫ݕ͍ͯͭʹޚ‬౼ͨ͠ɽ

2. ࣗಈ൐૗γεςϜ Eurydice
2.1 γεςϜ֓ཁ
Eurydice ͸ɼָේΛࢀরͭͭ͠ɼԋ૗ऀͷԋ૗ʹ௥ै͢
Δࣗಈ൐૗γεςϜͰ͋Δɽԋ૗ऀͷςϯϙʹ߹Θͤͯ൐૗Λԋ૗͢Δɽ·ͨɼ஄͖ؒҧ͍ʢϛελονʹΑΔ༨෼ͳԻͷૠೖɼԻͷ୤མɼԻߴ‫ޡ‬Γʣ΍஄͖ඈ͹͠ʢ൓෮࿅श΍খઅͷলུʣ͕͋ͬͨͱͯ͠΋ԋ૗ऀ͕Ͳ͜Λԋ૗͍ͯ͠Δͷ͔Λॠ࣌ʹೝࣝ͠ɼԋ૗ऀʹ߹ΘͤͯϦΞϧλΠϜͰ൐૗Λԋ૗͢ΔɽͦͷଞɼԻྔมԽ΋‫ײ‬஌ͯ͠൐૗ͷԻྔΛࣗಈతʹௐઅ͢ΔɽEurydice ͷ࢖༻ྫΛҎԼʹࣔ͢ɽ1)ϐΞϊͷยखͷ࿅श

Eurydice ͕ࠨखύʔτΛ୲౰͠ɼԋ૗ऀ͸ӈखͷϝϩσΟύʔτ͚ͩʹूதͯ͠࿅शͰ͖Δɽࠨӈͷ୲౰ΛೖΕସ͑Δ͜ͱͰɼԋ૗ऀ͸൐૗ύʔτΛ࿅शͰ͖Δɽ2)

3)

ϐΞϊ࿈஄ͷ࿅शߦ͢Δʮnon-waiting ϞʔυʯΛબ୒Ͱ͖ΔɽΫϩεϓϥοτϑΥʔϜͷ Qt [8] Λ༻͍࣮ͯ૷͓ͯ͠

Eurydice ͕ηίϯυʢ௿ԻύʔτʣΛ୲౰͢Δ͜ͱΓɼ‫ࡏݱ‬ɼEurydice ͸ Windows ൛ͱ Mac OS X ൛͕ϦͰɼԋ૗ऀ͕ϓϦϞʢߴԻύʔτʣΛ࿅शͰ͖Δɽ΋Ϧʔε͞Ε͍ͯΔɽEurydice ͷϝΠϯ΢Οϯυ΢Λਤ 2ͪΖΜ໾ׂΛೖΕସ͑Δ͜ͱ΋ՄೳͰ͋Δɽʹࣔ͢ɽϐΞϊ‫ڠ‬૗‫ۂ‬ɼϐΞϊΞϯαϯϒϧ

Eurydice ͕ΦʔέετϥΛ୲౰͠ɼԋ૗ऀ͕ϐΞϊಠ૗Λԋ૗Ͱ͖ΔɽϐΞϊ‫ڠ‬૗‫ۂ‬Λԋ૗͢ΔͨΊʹ͸ɼ

3. ԋ૗ऀ‫͚͓ʹؒ۠ࢭٳ‬Δςϯϙ੍‫ؔ͢ʹޚ‬Δ໰୊఺ΦʔέετϥΛฤ‫ͨ͠ۂ‬ϐΞϊ൐૗ͱԋ૗͢Δ͜ͱָ͕ේ্Ͱԋ૗ऀ͕‫ٳ‬ΈͰ൐૗͕ओମͷ৔߹ͷָේྫΛ

͋Δ͕ɼEurydice Λ࢖͏͜ͱͰɼϑϧΦʔέετϥΛ

ਤ 3 ʹࣔ͢ɽҎ‫ޙ‬ɼ͜ͷΑ͏ͳָේ্ͷ۠ؒΛʮԋ૗ऀ‫ٳ‬όοΫʹϐΞϊ‫ڠ‬૗‫ۂ‬Λָ͠ΊΔɽࢭ۠ؒʯͱ‫Ϳݺ‬ɽ‫ࡏݱ‬ͷ Eurydice Ͱ͸ɼԋ૗ऀ‫ؒ۠ࢭٳ‬ʹ͓͍ͯ͸ɼͦͷ௚લͷςϯϙΛ‫ܧ‬ঝͯ͠൐૗Λԋ૗͢Δɽ

2.2 ιϑτ΢ΣΞ֓ཁͦͷͨΊɼ‫ͳܹٸ‬ςϯϙมԽ΁ͷରԠ͕Ͱ͖ͳ͍ɽ͜Εʹ

Eurydice ͸ָේ௥੻ͱ൐૗ੜ੒͔Β੒Δʢਤ 1ʣɽָේ௥ର͠ɼԋ૗ऀ‫ؒ۠ࢭٳ‬ͷؒʹ Eurydice ʹςϯϙΛࢦࣔ͠੻Ͱ͸ਓؒͷԋ૗ΛӅΕϚϧίϑϞσϧʢhidden MarkovΑ͏ͱ͢ΔͱɼEurydice ͷ‫ָͳྗڧ‬ේ௥੻ೳྗʹΑͬͯෆ

model, HMMʣͰද‫͠ݱ‬ɼԋ૗Ґஔ͸ Viterbi ΞϧΰϦζద੾ͳ൐૗͕ԋ૗͞ΕΔ͜ͱʹͳΔɽ͜Ε͸ɼςϯϙΛ੍ϜͰਪఆ͢Δ [7]ɽ൐૗ੜ੒Ͱ͸ςϯϙਪఆΛߦ͍ɼ࣍ͷԻ‫͢ޚ‬Δ໨తͰԋ૗ͯ͠΋ɼԋ૗ऀ‫Ͱؒ۠ࢭٳ‬͸ରԠ͢ΔԻූͷΦϯηοτ࣌ࠁΛ༧ଌ͠ɼ൐૗ͷ MIDI ࠶ੜΛಉ‫͠ظ‬ූ͕ଘࡏͤͣɼͦͷԋ૗ԻΛָේத͔Β୳ࡧ͠ɼͦͷԻ͕ͯߦ͏ɽग़‫͢ݱ‬ΔָේҐஔ·ͨ͸Իߴ‫ޡ‬Γͱͯ͠ҙਤ͠ͳָ͍ේҐָේ৘ใ͸ SMF format 1 Λ࢖༻͠ɼMIDI ৴߸Λೖྗஔʹδϟϯϓ͢Δ͔ΒͰ͋ΔɽͦͷͨΊɼ‫ݱ‬ঢ়ͷ··Ͱ͸͢Δ͜ͱͰಈ࡞͢ΔɽͦͷͨΊɼిࢠϐΞϊ΍ MIDI υϥԋ૗ऀ‫ثָ͍͓ͯʹؒ۠ࢭٳ‬Λ༻͍ͨ൐૗ͷςϯϙ੍‫ޚ‬͸ϜͳͲͷ MIDI ରԠ‫͖Ͱ༻࢖Ͱثػ‬Δɽͳ͓ɼԋ૗ऀ͕࣍Ͱ͖ͳ͍ɽͷԻූΛԋ૗͢ΔͷΛ଴ͪଓ͚Δʮwaiting Ϟʔυʯͱɼ೚͜ΕΒ͸ɼ൐૗ԋ૗ͷද‫͕ݱ‬ඞͣ͠΋ԋ૗ऀͷҙਤʹԊҙͷδϟϯϓΛ‫ڐ‬༰ͭͭ͠΋ԋ૗Λ଴ͨͣʹָ‫ۂ‬Λॱ࣍ਐΘͳ͘ͳΔ‫ݪ‬ҼͱͳΔɽͦ͜Ͱɼຊ‫Ͱڀݚ‬͸͜ΕΒͷ໰୊c 2016 Information Processing Society of Japan⃝

2৘ใॲཧֶձ‫ڀݚ‬ใࠂ$"&/63
Vol.2016-MUS-112
No.17

IPSJ SIG Technical Reportn -.2

2016/8/1

$ ( #%!'n MIDI Through %#&人の演奏が休みの部分;:9:&;:9: ;:9:
&MIDI *+/5

伴奏が主体となる部分

La chasse より

ਤ2010/10/27
3 ָේ্Ͱԋ૗ऀ͕‫࣌ࢭٳ‬ʢԋ૗ऀ‫ؒ۠ࢭٳ‬ʣͷָේྫ
研究室セミナー+17)7ON
8 

8 1

Λղܾ͢Δɽ4. ԋ૗ऀ‫Ͱؒ۠ࢭٳ‬ͷςϯϙ੍‫ํޚ‬๏'-*MIDI ThroughΛ͠ͳ͍৔߹ͷࣗಈ൐૗γεςϜͷೖग़ྗਤ 429

2010/10/27 ,407

4.1 ಄෦ಈ࡞ʹΑΔςϯϙ੍‫ޚ‬2101
 MIDI " !!

2101 2101ԋ૗ʹ௚઀ؔ܎͠ͳ͍ɼ಄෦ಈ࡞ʹΑΔςϯϙ੍‫ํޚ‬๏Λߟ࡯͢ΔɽδΣενϟʔೝࣝʹΑΔࣗಈේΊ͘Γͷ‫ڀݚ‬  $%',

Ͱ͸ɼᰐ͖ಈ࡞ʹΑΔ੍‫ޚ‬Λߦ͍ͬͯΔ [9]ɽ͜ͷख๏Λऔ%).#.OFFΓೖΕɼ1 ճͷᰐ͖Λ 1 ഥͱ͠ɼ4 ճͷᰐ͖͖Ͱ 4 ഥ 1 খ
અʢ 44 ഥࢠʣͱͯ͠ѻ͏͜ͱ͕ߟ͑ΒΕΔɽ͔͠͠ɼ͜ͷख๏Ͱ͸ςϯϙͷ଎͍‫ۂ‬ͷࢦ͕ࣔࠔ೉Ͱ͋
Δɽ·ͨɼ‫ݱ‬ঢ়Ͱ͸ᰐ͖ಈ࡞Λਖ਼֬ʹଊ͑ΔͨΊʹҙਤత


MIDI

/ 

ਤ 5/ λοϓಈ࡞ʹΑΔςϯϙ੍‫ޚ‬Λ༻͍Δ৔߹ʹ͓͚Δࣗಈ൐૗γεςϜͷೖग़ྗʢ௨ৗԋ૗࣌ʣ!
#)/,
11

2010/10/27 &+(.

ͳ஗ԆΛೖΕ͍ͯΔͨΊɼϦΞϧλΠϜੑ͕ଛͳΘΕΔɽ
 #4323  #4.2 λοϓಈ࡞ʹΑΔςϯϙ੍‫ޚ‬4323‫ݤ‬൫ͷλοϓಈ࡞ʹΑΓςϯϙΛ੍‫͢ޚ‬Δํ๏Λߟ࡯͢#$" #4323 4323Δɽԋ૗ʹ࢖༻͠ͳ͍Ωʔʹॱ࣍ਐߦ͢Δͱ͍͏໾ׂΛ༩͑ɼଧ‫ͯ͠ݤ‬΋ԻΛग़ྗ͠ͳ͍Α͏ʹͰ͖Ε͹ɼͦͷΩʔ  &').
'+0%0OFFΛଧ‫͢ݤ‬Δ͜ͱ͸ɼ͍Θ͹ࢦ‫ऀش‬ͷࢦ‫ش‬ͷৼΓʹରԠ͚ͮ1 ΕΒΕΔɽλοϓಈ࡞͸ԋ૗࣌ͷಈ࡞ͱࠩҟ͕ͳ͍ͨΊɼԋ૗ऀ͕ߦ͏ಈ࡞ͱ‫ʹڞ‬ɼॱ࣍ਐߦ΍ςϯϙਪఆͷ੍‫ޚ‬͸ࠓ·Ͱ௨Γߦ͑Δͱ͍͏ར఺͕͋Δɽͦ͜Ͱຊ‫Ͱڀݚ‬͸ɼςϯϙ੍‫ํޚ‬๏͸Ωʔͷλοϓಈ࡞ʹΑΔ΋ͷΛ࠾༻͢ΔɽҎ‫ޙ‬ɼςϯϙ੍‫͍༻ʹޚ‬Δɼ্‫ه‬ͷʮԋ૗ʹ࢖༻͠ͳ͍ΩʔʯΛʮλοϓΩʔʯͱ‫͢ʹͱ͜Ϳݺ‬Δɽ
ࢦࣔ͢Δςϯϙ͕Ұఆͷ৔߹ɼԋ૗ऀ‫ʹؒ۠ࢭٳ‬λοϓಈ࡞Λ‫ܧ‬ଓ͢Δ͜ͱ͸ԋ૗ऀͷෛ୲ͱͳΔɽ͜ͷ໰୊Λղܾ͢Δʹ͸ɼ͋Δఔ౓λοϓΛߦͬͯɼςϯϙ͕Ұఆʹͳͬͨ৔߹ʹλοϓಈ࡞ΛߦΘͳͯ͘΋௚લͷςϯϙΛҾ͖‫͙ܧ‬Α͏ʹ͢Ε͹Α͍ͱߟ͑ΒΕΔɽςϯϙ੍‫ޚ‬ͷॲཧͷྲྀΕΛ·ͱΊΔͱҎԼͷ߲໨ʹ෼͚ΒΕΔɽ

 #MIDIਤ 61 λοϓಈ࡞ʹΑΔςϯϙ੍‫ޚ‬Λ༻͍Δ৔߹ʹ͓͚Δࣗಈ൐૗γεςϜͷೖग़ྗʢλοϓಈ࡞࣌ʣ
2010/10/27 (-*012Through ʹ͓͖ͯ͠ɼλοϓಈ࡞ͷͱ͖͸λοϓΩʔͷԻΛൃԻ͠ͳ͍Α͏ϕϩγςΟΛ 0 ʹઃఆΛߦ͏ɽMIDIThrough Λ͠ͳ͍৔߹ͷࣗಈ൐૗γεςϜͷೖग़ྗΛਤ 4ʹࣔ͢ɽ·ͨɼλοϓಈ࡞ʹΑΔςϯϙ੍‫ޚ‬Λ༻͍Δ৔
߹ʹ͓͚Δ௨ৗԋ૗࣌ͷࣗಈ൐૗γεςϜͷೖग़ྗΛਤ 5ʹɼλοϓಈ࡞࣌Λਤ 6 ʹࣔ͢ɽ߲໨ 1 ͱ߲໨ 2 ͷॲཧΛ࣮૷ͨ͠ɽ߲໨ 3 ͷॱ࣍ਐߦͱςϯϙਪఆ͸ɼैདྷͷ੍‫ޚ‬Λ༻͍Δ͜ͱ͕Ͱ͖Δɽ

5. λοϓΩʔͷܾఆํ๏ͷ‫ݕ‬౼λοϓΩʔ͕ԡ͞Ε͔ͨ൑ఆΛߦ͏ɽΩʔͷλοϓಈ࡞Ͱߦ͏ςϯϙ੍‫͍͓ͯʹޚ‬ɼςϯϙΛ2)λοϓΩʔͷ৔߹ɼԻΛग़ྗ͠ͳ͍ɽࢦࣔ͢ΔͨΊʹ༻͍ΔλοϓΩʔ͸ɼ‫ۂ‬தͰ༻͍ͳ͍Իߴ3)ॱ࣍ਐߦ‫ͼٴ‬ςϯϙਪఆΛߦ͏ɽͷΩʔͱ͢Δɽԋ૗ऀ͕೚ҙͰλοϓΩʔΛܾఆͯ͠΋1)Α͍ͷ͕ͩɼΘ͔Γ΍͘͢ɼϛελονͱͳΔස౓͕௿͘
߲໨ 2 ͷʮλοϓΩʔͷ৔߹ɼԻΛग़ྗ͠ͳ͍ʯͱ͍ͳΔΩʔͰ͋Δ͜ͱ͕‫ٻ‬ΊΒΕΔɽ͜ͷ͜ͱΛؑΈΔͱɼ͏෦෼Ͱ͸ԋ૗͍ͯ͠ΔϐΞϊԻ͸ OFF*1 ɼͦͯ͠ MIDIλοϓΩʔͱͯ͠༻͍Δ͜ͱͷͰ͖ΔΩʔʢλοϓΩʔͷ*1ީิʣͷ͏ͪͰҰ൪ߴ͍Ի͔௿͍Իͱ͢Ε͹Α͍ͱߟ͑ΒΞίʔεςΟοΫϐΞϊʹ͓͍ͯ΋ɼͨͱ͑͹ϠϚϋͷαΠϨϯτϐΞϊγϦʔζΛ༻͍ͨΓɼϐΞϊফԻϢχοτΛΞοϓϥΠτϐΞϊʹ௥Ճ૷ண͢Ε͹ԋ૗Ի͸ফͤΔ͕ [10]ɼ‫ݱ‬ঢ়ͷ
Eurydice Ͱ͸ೖྗ͕ MIDI ৴߸Ͱ͋Δ͜ͱΛߟྀ͢Δͱɼຊ‫ݚ‬c 2016 Information Processing Society of Japan⃝

ΕΔɽ·ͨɼ࣮૷΋༰қͰ͋Δɽ͔͠͠ɼ͜ͷํ๏Ͱ͸ɼԋ‫͍͓ͯʹڀ‬͸ిࢠϐΞϊΛ༻͍Δ͜ͱ͕࠷దͰ͋Δɽ

3

Vol.2016-MUS-112 No.17
2016/8/1

৘ใॲཧֶձ‫ڀݚ‬ใࠂ
IPSJ SIG Technical Reportද 1ར͖खͱϦζϜͷࠁΈʹ༻͍ͨख࣮ࡍʹϦζϜΛࠁΜͩखਤ 7ӡࢦʹແཧͷ͋ΔλοϓΩʔͷྫར͖खʢඃ‫਺ऀݧ‬ʣӈखࠨखӈखʢ17 ໊ʣ17 ໊0໊ࠨखʢ3 ໊ʣ0໊3໊

ਤ 9࣮‫ָ༻ݧ‬ේʢΠϯλʔόϧͳ͠ʣਤ 10࣮‫ָ༻ݧ‬ේʢΠϯλʔόϧ͋Γʣશһ͕ར͖खͰϦζϜΛࠁΜͰ͓ΓɼԾઆ͕ཪ෇͚ΒΕΔ݁Ռ͕ಘΒΕͨɽ͜ͷ͜ͱ͔Βɼར͖खͰԡ͠΍͍͢λοϓΩʔΛ༻͍Δ͜ͱ͕ద੾ͱ͍͑Δɽ͕ͨͬͯ͠ɼͨͱ͑͹ɼӈར͖ͷਓʹରͯ͠͸ɼதԝͷ C4 ΑΓ΋ӈଆͰ͋Δ͜ͱ͕๬·͍͠ɽਤ 8ӡࢦʹແཧͷͳ͍λοϓΩʔͷྫ૗Ωʔ͔ΒλοϓΩʔ·ͰखͷҠಈ‫͕཭ڑ‬ԕ͗͢Δ͜ͱɼԋ૗ͷྲྀΕʹԊ͍ͬͯͳ͍ಈ࡞ɼແཧͷ͋Δӡࢦʢਤ 7ʣʹͳΔՄೳੑ͕͋Δɼͱ͍͏ܽ఺͕͋ΔɽͦͷͨΊɼϛελονͷՄೳੑ͕૿Ճ͢ΔՄೳੑ͕͋Δɽ͜ΕΒͷ໰୊Λղܾ͢Δʹ͸ɼ·ͣɼλοϓΩʔͷީิͷ͏ͪɼ࠷‫ʹޙ‬ԋ૗ͨ͠Ґஔ͔Β͍ۙ΋ͷΛࣗಈతʹಋग़͓ͯ͘͠ɽ࣍ʹɼϐΞϊӡࢦͷࣗಈܾఆ [11] Λద༻͠ɼλοϓΩʔͷީิͷ͏ͪɼແཧͷͳ͍ӡࢦʢਤ 8ʣʹΑΔΩʔΛબ୒͢Ε͹ɼԋ૗ͷྲྀΕΛ๦͛ͣʹԋ૗ͷྲྀΕʹԊ͏λοϓΩʔΛܾఆͰ͖Δͱߟ͑ΒΕΔɽ

6. ར͖खͱϦζϜϊϦʹؔ͢Δؔ܎ࠨӈͲͪΒͷखͷํ͕ͰϦζϜΛࠁΈ΍͍͔͢ʢϦζϜʹͷΔ͔ʣʹ͍ͭͯɼར͖खͷํ͕ద͍ͯ͠ΔͱԾઆΛཱͯɼҎԼͷΑ͏ͳࢦࣔΛඃ‫ʹऀݧ‬༩͑ͯධՁ࣮‫ݧ‬Λߦͬͨɽ• ยखͰɼࣗ༝ͳςϯϙͰҰఆͷϦζϜΛࠁΉɽ• น΍‫ص‬ɼࣗ෼ͷ෦ҐͳͲɼͲ͜Λλοϓͯ͠΋ߏΘͳ͍ɽ

7. Ωʔؒͷ‫ؔ͢ʹ཭ڑ‬Δϛελον཰ԋ૗Ωʔ͔Βλοϓಈ࡞Λߦ͏Ωʔ·ͰͷखͷҠಈ‫཭ڑ‬͕ԕ͗͢Δ͜ͱʹΑΓɼϛελονͷՄೳੑ͕૿Ճ͢Δ͔ͷ‫ূݕ‬Λߦ͏ͨΊɼશԻ୯ҐͷΩʔؒͷ‫ؔ͢ʹ཭ڑ‬Δϛελον཰ʹ͍ͭͯධՁ࣮‫ݧ‬Λߦͬͨɽ

7.1 ࣮‫ํݧ‬๏ԋ૗Λ։࢝͢ΔΩʔʢ‫ج‬४ΩʔʣΛઃఆ͠ɼͦͷ‫ج‬४ΩʔͱҰ൪͍ۙ‫͔཭ڑ‬Βঃʑʹ཭ΕͨΩʔΛަ‫ʹޓ‬λοϓ͢Δɽͦͯ͠ɼ‫ͦʹٯ‬ͷ‫ج‬४ΩʔͱҰ൪཭Εͨ‫͔཭ڑ‬Βঃʑʹ͍ۙΩʔΛަ‫ʹޓ‬λοϓ͢Δɽςϯϙ͸ BPM = 100 ‫ݻ‬ఆͰɼന‫ݤ‬ͷΈΛ࢖༻͢Δɽ‫͕ූٳ‬Ұ੾ͳ͍ʮΠϯλʔόϧͳ͠ʯͱ 4 ഥத 2 ഥ‫ූٳ‬ͷʮΠϯλʔόϧ͋ΓʯΛ֤ 1ճͣͭยखͰߦ͏ɽʮΠϯλʔόϧͳ͠ʯͷָේͷҰ෦Λ
ਤ 9 ʹɼʮΠϯλʔόϧ͋ΓʯͷָේͷҰ෦Λਤ 10 ʹࣔ͢ɽͳ͓ɼର৅ͷΩʔΛଧ‫ͯ͠ͱͨ͠ݤ‬΋ɼଞͷΩʔΛ༨෼ʹଧ‫͍ͨͯ͠ݤ‬৔߹͸ϛεͱͯ͠ѻ͏͜ͱͱ͢Δɽඃ‫ऀݧ‬͸ϐΞϊ‫ ऀݧܦ‬3 ໊ɼϐΞϊະ‫ ऀݧܦ‬10 ໊ͷ߹‫ ܭ‬13 ໊Ͱ͋ͬͨɽࠓճඃ‫͕ऀݧ‬શһӈར͖Ͱ͋ͬͨͨΊɼ

6 ষͷ݁ՌΛؑΈͯɼӈखͷΈ࣮‫ݧ‬Λߦͬͨɽඃ‫ʹऀݧ‬͸આ໌ͱτϨʔχϯάΛߦ͔ͬͯΒ࣮‫ݧ‬Λ։࢝͢Δɽ࣮‫ํݧ‬ඃ‫ʹऀݧ‬͸ʮยखͰʯͱ͔͠఻͑ͯͳ͍ͨΊɼඃ‫͕ऀݧ‬๏Λਤ 11 ʹɼԻ֊ࠩͱΩʔͷରԠΛਤ 12 ʹࣔ͢ɽҰॠͷ͏ͪʹͲͪΒͷखΛ࢖͍ग़͔͢ͱ͍͏఺ͱར͖खͷؔ܎ʹ͍ͭͯ஫໨ͨ͠ɽඃ‫ऀݧ‬ͷར͖खͱ࣮ࡍʹ༻͍ͨखͷ݁ՌΛද 1 ʹࣔ͢ɽc 2016 Information Processing Society of Japan⃝

7.2 ࣮‫݁ݧ‬Ռϛελονͷ༷ࢠΛਤ 13 ʹɼ‫ج‬४Ωʔͱର৅Ωʔͷ‫ڑ‬4

Vol.2016-MUS-112 No.17
2016/8/1

৘ใॲཧֶձ‫ڀݚ‬ใࠂ
IPSJ SIG Technical Reportਤ 11Ωʔؒͷ‫ؔ͢ʹ཭ڑ‬Δϛελον཰ͷ࣮‫ํݧ‬๏

ਤ 13

ਤ 12ϛελονͷ༷ࢠԻ֊ࠩͱΩʔͷରԠɽ͜Ε͸ར͖ख͕ӈखͷඃ‫ʹऀݧ‬ର͢Δ࣮‫͍ͨ༻Ͱݧ‬ൣғΛ͓ࣔͯ͠Γɼதԝͷ C4 ΑΓӈଆͷ‫ͩݤ‬͚Λߟྀ͍ͯ͠Δɽ཭ʢԻߴࠩʣʹର͢Δϛελον཰Λਤ 14 ʹࣔ͢ɽԻ֊
ࠩ 15 ҎԼ͸ϛελον཰ 0 % ͷ෦෼͕ଟ͍͜ͱ͔Βɼ͜ͷ෦෼ͷϛελον͸ԋ૗ऀͷෆ஫ҙ͔Β‫͍ͯͬ͜ى‬Δͱߟ͑ΒΕΔɽԻ֊ࠩ 15 Ҏ͔߱Βϛε͕૿Ճ͍ͯ͠Δ͜ͱ͕Θ͔ΔɽͦͷதͰҰ൪཭Ε͍ͯΔΩʔͷϛελον཰͕௿͍ɽ͜Ε͸ɼ‫཭ڑ‬͸཭Ε͍ͯΔ΋ͷͷɼΩʔϘʔυͷ୺ͷ෦෼Ͱ͋ΔͨΊૂ͍͕ఆΊ΍͍ͨ͢ΊͰ͋Δͱߟ͑ΒΕΔɽҎ্ͷ݁Ռ͔Βɼ‫ݱ‬ஈ֊Ͱ͸ΩʔϘʔυͷ୺ΛλοϓΩʔͱఆΊΔɽਤ 14‫ج‬४Ωʔͱର৅Ωʔͷ‫཭ڑ‬ʢԻߴࠩʣʹର͢Δϛελον཰

8. ԋ૗ऀ‫͚͓ʹؒ۠ࢭٳ‬Δςϯϙ੍‫ޚ‬ͷ࣮૷
Eurydice ͸ԋ૗ऀͷԋ૗Λ௥ै͢ΔͨΊʹɼԋ૗ऀͷ

ʲEurydice Ͱͷॲཧʳԋ૗͢Δ MIDI σʔλΛࢀর͍ͯ͠Δɽԋ૗ऀ‫ؒ۠ࢭٳ‬1)λοϓಈ࡞༻ SMF ΛಡΈࠐΉɽ͸ɼ࣮ࡍͷָේ্Ͱ͸‫͋Ͱූٳ‬Δ͕ɼMIDI σʔλͰ͸‫ٳ‬2)λοϓΩʔ͕ԡ͞Ε͔ͨ൑ఆΛߦ͏ɽූͱ͍͏௚઀తͳσʔλ͸ଘࡏ͠ͳ͍ɽͦͷͨΊɼλοϓ3)λοϓΩʔͷ৔߹ɼԻΛग़ྗ͠ͳ͍ɽΩʔΛଧ‫͏͍ͱͨ͠ݤ‬ಛఆ৚݅ԼͰॲཧ͠Α͏ͱͯ͠΋ɼ4)ॱ࣍ਐߦ‫ͼٴ‬ςϯϙਪఆΛߦ͏ɽ࣮ࡍͷָේ্Ͱͷ‫ؒ۠ූٳ‬͸ɼͦͷλοϓಈ࡞ʹରԠ͚ͮΔԻූʢ‫ූٳ‬ʣσʔλ͕ͳ͍ͷͰɼԋ૗ҐஔਪఆΛߦ͑ͣɼԋ૗ऀͷҙਤͨ͠௨Γͷॱ࣍ਐߦ͕ߦ͑ͳ͍ɽͦ͜ͰɼԻූσʔλͷͳ͍‫ූٳ‬খઅʹԻූΛૠೖ͢Δɽ͜͜Ͱ͸ɼEurydice Ͱ࢖༻͢Δ standard MIDI FileʢSMFʣʹલॲཧΛࢪ͢Α͏ʹ࣮૷ͨ͠ɽ

SMF ͷղੳʹ͸ɼC++ ϥΠϒϥϦͷ Midifile [12] Λ༻͍ͨɽ࣮૷߲໨ΛҎԼʹࣔ͢ɽʲલॲཧʳ1)λοϓಈ࡞Ͱ࢖༻͢ΔλοϓΩʔΛܾఆ͢Δɽ2)

1 খઅҎ্ͷ‫ʹؒ۠ࢭٳ‬ԻූΛૠೖ͢Δɽ͜͜Ͱɼ୯ҐԻූ௕ͱ͸ɼഥࢠͷ෼฼ʹ૬౰͢ΔԻූͷ௕͞Ͱ͋Δɽͨͱ͑͹ɼ 44 ഥࢠͷ৔߹͸ 4 ෼Իූɼ 68 ഥࢠͷ৔߹͸ 8 ෼ԻූͰ͋Δɽ‫ ͕ූٳ‬1 খઅҎ্͋Δ SMF Λේ໘Խͨ͠΋ͷΛਤ 15ʹɼͦͷ SMF ʹରͯ͠લॲཧΛߦͬͨ݁ՌΛਤ 16 ʹࣔ͢ɽָේ্Ͱԋ૗ऀ‫ؒ۠ࢭٳ‬ͷ͓͍ͯࣗಈ൐૗ͷςϯϙΛλοϓಈ࡞Ͱ੍‫͖ͨͰޚ‬ɽ·ͨɼEurydice Λ non-waitingϞʔυʹઃఆ͓ͯ͘͜͠ͱͰɼԋ૗ऀ͸λοϓ͠ଓ͚ͳͯ͘Α͍͜ͱΛ֬ೝͨ͠ɽ

9. ·ͱΊԻߴɹɹɿɹλοϓΩʔɹຊ‫Ͱڀݚ‬͸ɼָේ্Ͱԋ૗ऀ͕‫࣌ࢭٳ‬ʢԋ૗ऀ‫ؒ۠ࢭٳ‬ʣԻͷ௕͞ɿɹ୯ҐԻූ௕ɹͷςϯϙ੍‫ํޚ‬๏Λߟ࡯͠ɼࣗಈ൐૗γεςϜ EurydiceʢΦϦδφϧ SMF ͔Βλοϓಈ࡞༻ SMF Λੜ੒ʣ΁ͷ࣮૷ΛਐΊͨɽԋ૗ʹ࢖༻͠ͳ͍Ωʔͷ͏ͪͰςϯϙc 2016 Information Processing Society of Japan⃝

5Vol.2016-MUS-112 No.17
2016/8/1৘ใॲཧֶձ‫ڀݚ‬ใࠂ
IPSJ SIG Technical Reportԋ૗൐૗

[11]
ਤ 15

ΦϦδφϧ SMF[12]ԋ૗ೖखઌ ⟨http://jp.yamaha.com/products/
musical-instruments/keyboards/about/silent/⟩౦‫ژ‬େֶ ࠧեࢁ‫ࣨڀݚ‬ɿӅΕϚϧίϑϞσϧʢHMMʣʹ‫ͮ͘ج‬ϐΞϊӡࢦͷࣗಈܾఆɼೖखઌ ⟨http://hil.t.u-tokyo.ac.jp/research/introduction/
PianoFingering/japanese.html⟩
Midifile ެࣜϖʔδɿC++ library for parsing standard
MIDI filesɼೖखઌ ⟨http://midifile.sapp.org/⟩൐૗ਤ 16લॲཧΛߦͬͨ݁Ռʢλοϓಈ࡞༻ SMFʣࢦࣔͷͨΊʹ༻͍ΔʮλοϓΩʔʯͷબ୒ͷͨΊͷ༧උ࣮‫ݧ‬Λ࣮ࢪ͠ɼ‫ج‬४Ωʔ͔ΒͷԻߴࠩʹର͢Δϛελον཰Λ‫ٻ‬Ίͨɽͦͷ݁Ռ͔Βࠓճ͸࠷ӈ୺ͷΩʔΛλοϓΩʔͱఆΊɼstandard MIDI fileʢSMFʣΛղੳͯ͠ 1 খઅҎ্ͷԋ૗ऀ‫ؒ۠ࢭٳ‬Λࣗಈతʹ‫ݕ‬ग़͠ɼλοϓΩʔͷԻߴΛຒΊࠐΜͩɽͦͯ͠ɼEurydice ʹλοϓΩʔʹΑΔςϯϙ੍‫ޚ‬ͷ࢓૊ΈΛ࣮૷͠ɼಈ࡞Λ֬ೝͨ͠ɽࠓ‫ޙ‬ɼԋ૗ऀ‫Ͱؒ۠ࢭٳ‬ͷςϯϙ੍‫ํޚ‬๏ͷ࣮૷Λվྑ͢Δɽ‫ࡏݱ‬ɼSMF ΁ͷલॲཧΛผγεςϜͰ࣮૷͍ͯ͠Δ͕ɼαϒγεςϜͱͯ͠ Eurydice ಺ʹ૊ΈࠐΉɽͦͯ͠ɼ

5 ষͰड़΂ͨΑ͏ʹɼλοϓΩʔͷީิͷ͏ͪɼແཧͷͳ͍ӡࢦʹΑΔΩʔΛબ୒͢Δํ๏ʹ͍ͭͯ‫ݕ‬౼͍ͯ͘͠ɽँࣙ ຊ‫ڀݚ‬ͷҰ෦͸ɼ೔ຊֶज़ৼ‫ڵ‬ձͷՊֶ‫ڀݚ‬අิ
ॿۚ 26240025 ʹΑΔɽࢀߟจ‫ݙ‬
[1]
[2]
[3]

[4]

[5]

[6]

[7]

[8]
[9]

[10]

Dannenberg, R.B.: An on-line algorithm for real-timeaccompaniment, Proc. ICMC, pp.193–198 (1984).
Vercoe, B.: The synthetic performer in the context oflive performance, Proc. ICMC, pp.199–200 (1984).
෢ా ੖ొɼ੢ຊ ୎໵ɼࠧեࢁ ໜथɿHMM ʹΑΔ MIDIԋ૗ͷָේ௥੻ͱࣗಈ൐૗ɼ৘ใॲཧֶձ‫ڀݚ‬ใࠂɼMUS,pp.109–116 (2006).
౦‫ژ‬େֶ େֶӃ ৘ใཧ޻ֶ‫ڀݚܥ‬Պ γεςϜ৘ใֶઐ߈/ ૑଄৘ใֶઐ߈޻ֶ෦ ‫ֶ޻਺ܭ‬Պ γεςϜ৘ใֶ ୈҰ‫ࠧ [ ࣨڀݚ‬եࢁ/क୩/ُԬ/(খ໺) ‫] ࣨڀݚ‬ɿEurydice(ࣗಈ൐૗γεςϜ)ɼ
ೖखઌ ⟨http://hil.t.u-tokyo.ac.jp/software/Eurydice/⟩
Goebl W.: Melody lead in piano performance: Expressive device or artifact?, J. Accoustical Society of America, Vol.110, No.1, pp.563–72 (2001).
෢ా ੖ొɼ੢ຊ ୎໵, ࠧեࢁ ໜथɿςϯϙ‫ۂ‬ઢͱӅΕϚϧίϑϞσϧΛ༻͍ͨଟ੠Իָ MIDI ԋ૗ͷϦζϜͱςϯϙͷಉ࣌ਪఆɼॲཧֶձ࿦จࢽɼVol.48, No.1, pp.237–247(2007).
தଜ ӫଠɼ෢ా ੖ొɼࢁຊ ཾҰɼᜊ౻ ߁೭ɼञ޲ ৻࢘ɼࠧեࢁ ໜथɿ೚ҙՕॴ΁ͷ஄͖௚͠ɾ஄͖ඈ͹͠Λ‫ؚ‬Ήԋ૗ʹ௥ैՄೳͳָේ௥੻ͱࣗಈ൐૗ɼ৘ใॲཧֶձ࿦
จࢽɼVol.54, No.4, pp.1338–1349 (2013).
Qt ެࣜϖʔδ, ೖखઌ ⟨http://qt-project.org/⟩
Jibiki, H., Shimizu, T., Saito, Y., Nakamura E. andSagayama, S.: A study of automatic page turning ofmusical scores by detecting player’s nods, Proc. ICAI
PB1-08, pp.272–275 (2015).
ϠϚϋɿαΠϨϯτϐΞϊʹ͍ͭͯɼc 2016 Information Processing Society of Japan⃝6