Skip to content

hasebems/Loopian_Rust

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1,028 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

about Loopian

Loopian is a text-based piano sound sequencer being developed for use in activities like Live Coding. It has the following features:

  • Text is input line by line, allowing you to specify phrases, chords, or control the overall performance with commands.
  • To achieve a somewhat natural performance, the velocity, pitch during chord changes, and damper pedal usage are automatically calculated.
  • Phrases are specified using movable-do solfÚge.
  • Loopian Reference Manual

Loopian ずは

Loopian は、Live Coding などで䜿うために開発しおいる、テキスト入力によるピアノ音色甚シヌケンサです。 以䞋の特城がありたす

  • テキストは1行単䜍で入力し、フレヌズや和音を指定したり、挔奏党䜓をコントロヌルするコマンドを指定
  • ある皋床自然な挔奏になるように、ベロシティや和音倉換時の音皋、ダンパヌペダルを自動算出
  • フレヌズは移動ドにお指定
  • Loopian Reference Manual

Loopian のむンストヌルず起動方法

むンストヌル方法

  • Release ペヌゞより、OSがWindowsの方は loopian_win.zip を、Macの方は loopian_mac.zip をダりンロヌドしおください。
  • ダりンロヌド埌、任意のフォルダで展開すればすぐに䜿甚可胜です。

起動方法、終了方法

  • loopian ずいうファむルをダブルクリックすれば、起動したす。
  • Windowsの方の堎合、Microsoft GS Wavetable Synth が自動で鳎るようにセッティングされおいたす。
  • Macの方の堎合、IACDriver が蚭定されおいるので、Garage Band などのアプリを起動すれば音が鳎るようになりたす。
  • アプリ終了は、Windowを閉じるか、入力スペヌスに !q ず曞いお return を抌しおください。

Loopian蚘法の玹介

Loopianに぀いお

Loopian は、テキストによるオリゞナルの音楜蚘述蚘法ず、それを動䜜させるアプリ、及び関連する呚蟺デバむスを総合した、プロゞェクト党䜓の総称です。 アプリの䞭で䜿われるオリゞナルの蚘法をLoopian蚘法ず呌びたす。䞻にLive Codingを実践するために開発したした。 Live Codingずは、リアルタむムにプログラムを曞くこずで音楜を生成しおいくパフォヌマンスのこずです。 芳客は音楜を聎くだけでなく、プロゞェクタヌで投圱された映像を通しお、プログラムがリアルタむムに曞かれおいく様子や音が映像に反映しおいる様子を芋るこずができたす。 このようにLive Codingでは、プログラムを曞くこずそのものを、パフォヌマンスずしお捉えたす。

Loopianシステムも同様に、テキストで音楜情報を入力し、リアルタむムに音楜を倉えおいくこずが可胜です。 たた、アプリの背景に再生䞭の音楜にシンクロしたグラフィックを衚瀺したす。 ただし、Loopianは䞀般的なLive Codingのシステムずは違い、プログラミングの圢匏でテキストを入力するのではなく、タヌミナル等で䞀行ず぀コマンドを入力するように、䞀行ごずに音楜的指瀺を入力しおいきたす。 このように、Loopianには、他のLive Codingシステムずは若干趣きの違う幟぀かの特城がありたす。 以䞋に、Loopianの䞻な特城を挙げおみたしょう。

  • 䞊述のように、指瀺は䞀行単䜍で入力し、アプリは䞀行ごずに文字列で反応を返したす。あたかもアプリずチャットしおいるようなむンタヌフェヌスずなっおいたす。
  • 基本的にピアノ音色のみを扱いたす。詳现な仕様はピアノ音色を鳎らすこずを意識しお蚭蚈されおいたす。このため比范的萜ち着きのあるクラシカルな雰囲気の音楜を志向したす。
  • 音皋の指瀺は、C,D,E,F...ずいった音名や数倀ではなく、移動ドの考えに基づき、ドレミファ゜ラシドの階名によっお指瀺したす。
  • Loopian蚘法はより音楜の仕組みに寄り添った䜓系ずなっおおり、将来的には教育分野でこの蚘法を利甚するずいった䜿い方も考えられたす。

珟圚Loopianのシステムには、PC䞊で動䜜する専甚アプリ"Loopian::APP"ず、アプリず連携しお動䜜するデバむス"Loopian::ORBIT"が存圚したす。 Loopian::APPは、Loopianの思想を䜓珟する䞭栞を成しおいるので、このアプリを単にLoopianず呌んでも構いたせん。 今埌も、このLoopianの思想に基づいた様々なアプリ、デバむスが出珟する可胜性もありたす。

Loopian蚘法の基本的な考え方

これより、Loopian蚘法に぀いお詳现に説明したすが、たずこの蚘法の特城やその背景に぀いお、最初に説明したす。

移動ドず音皋衚蚘に぀いお

すでにLoopianの玹介の項で述べたずおり、本アプリでは音皋を階名によっお指瀺したす。 音楜教育の堎では、音皋をドレミファ゜ラシドで衚す時、固定ドず移動ドのどちらが良いかずいう論争が存圚したす。䞀般的には、専門教育が固定ドで行われおいるため、ほずんどの教育の堎で固定ドが䜿われるこずが倚いようです。 しかし、音皋は移動ドで衚珟されるべき、ずいう開発者の背景思想があるため、本アプリでは移動ドを甚いたす。 移動ドに぀いおは、ここでは詳现に説明したせんが、䟋えばヘ長調でFを挔奏したずき、その音はヘ長調の䞻音なので、移動ドでは「ド」ず呌びたす。 このように、移動ドでは調によっおドレミファ゜ラシドの䜍眮が倉わりたす。

本アプリでは、䞖の䞭の音楜ツヌルではあたり䞀般的でない移動ドによっお音皋指瀺を行いたす。 たた、移動ドによる音皋指瀺の理論的背景ずしお、トニック゜ルファ法、コダヌむシステムによる゜ルミれヌションを参考にしおいたす。

Loopian蚘法による階名の衚蚘は以䞋の通りです。

階名 ド レ ミ ファ ゜ ラ シ
衚蚘 d r m f s l t
半音䞊の衚蚘 di ri mi fi si li ti
半音䞋の衚蚘 da ra ma fa sa la ta

和音の衚蚘に぀いお

通垞、和音の衚蚘はコヌドネヌムを䜿うのが䞀般的です。 䟋えば、Fmaj7ず曞くず、Fを根音ずした長䞃和音を意味したす。しかし、音皋衚蚘が移動ドで衚蚘するのに和音を音名で衚蚘するこずは矛盟したすし、アプリ内での蚘述の䞀貫性が取れなくなりたす。 埓っお、Loopianでは和音においおも盞察的な衚蚘で音皋を指定したす。 䟋えば、冒頭のFmaj7をハ長調で挔奏したい堎合、IVmaj7ず衚蚘したす。Fはハ長調の䞻音のCからみお番目の音だからです。 このように、Loopian衚蚘では、和音の根音の衚蚘をロヌマ数字颚にI,Vを䜿っお衚珟したす。ロヌマ数字はその調の䞻音からの距離を衚したす。

Loopian蚘法による和音の根音衚蚘は、以䞋の通りです。

䞻音からの距離 䞀床 二床 䞉床 四床 五床 六床 䞃床
根音の衚蚘 I II III IV V VI VII

ピアノ音源向けの蚘法

Loopian蚘法はピアノ台分の音楜を再生するように考慮されおいたす。 Loopianでは、぀のパヌトを独立に蚘述するこずができたすが、それらは、巊手を2パヌト、右手を2パヌトで構成されたす。たた、すべおの挔奏情報のMIDIチャンネルは䞀぀しか䜿甚したせん。 さらに、ペダルは音楜党䜓で䞀぀しかコントロヌルしたせん。

基本的な音笊の衚蚘

具䜓的な衚蚘に぀いお玹介したす。 楜譜においお各音笊は最䜎でも、音䟡ず音皋を蚘述する必芁がありたす。音䟡ずは、音笊の長さのこずで、䞀般には四分音笊、八分音笊ずいった名称で指定されたす。 Loopian蚘法では、音䟡、音皋の順で音笊をテキストで衚珟したす。 䟋えば、四分音笊のドの音笊は qd です。q は四分音笊を衚したす。 以䞋に音䟡の衚蚘に぀いお玹介したす。

音䟡 二分音笊 四分音笊 八分音笊 十六分音笊 䞉十二分音笊
衚蚘 h q e v w
付点時の衚蚘 h' q' e' v' 未察応
䞉連笊の衚蚘 3h 3q 3e 3v 3w

音䟡は党おの音笊に曞いおも良いですが、前の音笊ず同じであれば衚蚘は省略するこずができたす。

䞀般の楜譜では音笊を時間順に䞊べるこずで、旋埋を衚珟するこずができたす。loopian蚘法では、音笊を , カンマで区切っお連続しお蚘述するこずで、旋埋を衚珟したす。たた小節線は / スラッシュで区切りたす。 たた、䞀぀の旋埋は角括匧で括りたす。

䞊蚘のルヌルを甚いお、有名なベヌトヌノェンの第九のメロディを、小節分Loopian蚘法で蚘述しおみたしょう。

[qm,m,f,s/s,f,m,r/d,d,r,m/q'm,er,hr]

第九の有名な旋埋はDから始たりたすが、ニ長調なので、ドから始たりたす。始めから小節はすべお四分音笊なので、最初の音笊に q を曞いお埌の音笊は省略できたす。 4小節目の頭は、付点四分音笊なので 'q ずなり、次は八分音笊、そしお最埌は二分音笊ずなりたす。

さらに長い音䟡を指定したい堎合、たたもう少し埮劙な長さの音䟡を指定したいずき、. ピリオドを䜿っお特定の音笊の長さを敎数倍で衚珟するこずができたす。 ピリオドは階名の埌ろに぀けたす。倍の時は䞀぀、倍の時は二぀、ず長さが増えるたびにピリオドの数を足しおいきたす。

䟋えば、付点四分音笊は八分音笊が䞉぀分の長さです。䞊で小節目の頭にあるミの付点四分音笊は eq.. ず衚珟するこずが可胜です。 ピリオドを䜿うず、先ほどの第九のメロディは以䞋のようにも蚘述できたす。

[qm,m,f,s/s,f,m,r/d,d,r,m/em..,r,hr]

拍子、テンポ、調の蚭定

通垞、楜譜の冒頭で拍子やテンポ、調号などが明瀺されたす。 これらは音楜の基本的な芁玠であり、どのような蚘譜法でも必芁なものです。 以䞋では、Loopian蚘法での拍子、テンポ、調号の指定方法に぀いお玹介したす。

拍子は䟋えば4/4拍子の堎合、次のように入力したす。 set.beat(4/4) beatの埌の括匧の䞭は、通垞の音楜で䜿われる拍子ず党く同じ衚蚘です。なお䜕も曞かない堎合、4/4拍子が蚭定されおいたす 次に、テンポですが、テンポが120の堎合、次のように入力したす。 set.bpm(120) テンポは䜕も曞かないず100が初期倀ずしお蚭定されおいたす。

次に調の指定に぀いお説明したす。 その前に、Loopianでは䞀぀重芁な考え方がありたす。Loopianには短調ずいう抂念がありたせん。もう少し䞁寧な蚀い方をするのなら、短調ず長調の区別がありたせん。 Loopianでは、調の抂念ずスケヌルの抂念を分けお考えたす。 具䜓的な䟋でお話ししたす。 䟋えば、ハ長調ずむ短調の関係は、平行調ず蚀われたす。平行調ずは、同じ調号で衚蚘される長調ず短調の関係のこずを蚀いたす。 Loopianでは、この二぀を別の調ではなく C ずいう同じ調ずしお扱いたす。そしおこの二぀の違いは、スケヌルの違いず捉えたす。 Loopianで、ハ長調あるいはむ短調を衚す堎合、次のように入力したす。 set.key(C) これを日本語で匷匕に曞くなら「ハ調」ずいうこずになるかず思いたす。この C の郚分は、通垞の蚘法通り、D,E,F... ずいうようにアルファベットによる音名で蚘述したす。半音䞊がったり、䞋がったりする堎合も同様に、音名の埌に F# Ab ずいうように #,b を぀けるこずで衚珟したす。

和音の入力

Loopian蚘法では和音の入力をサポヌトしたす。 これらの入力により、Loopian::APPがどのように音楜を加工しおいくかは、たたアプリの仕様にお詳现に玹介したす。 ここでは、Loopian蚘法における和音の曞き方のルヌルに぀いお蚘述したす。 冒頭でも玹介したずおり、和音の根音にあたる音は、ロヌマ数字によっお指瀺したす。ロヌマ数字ず蚀っおも、実際にはテキストの I ず V の組み合わせでロヌマ数字を衚珟したす。 このロヌマ数字の埌に、和音の皮類を衚蚘したす。

和音の衚蚘

Loopianでサポヌトする和音の皮類ずその衚蚘を以䞋に挙げたす。 たた、その和音の構成音をLoopian蚘法のドレミで蚘述したす。 なお、以䞋の衚では根音を _ アンダヌバヌで衚蚘しおいるので、実際に䜿甚する際はロヌマ数字に眮き換えおください。

和音名 和音の衚蚘 和音の構成音
長䞉和音 _ d,m,s
短䞉和音 _m d,ma,s
属䞃長䞉和音 _7 d,m,s,ta
六の和音 _6 d,m,s,l
属䞃短䞉和音 _m7 d,ma,s,ta
長䞃和音 _M7 d,m,s,t
↑ _maj7 d,m,s,t
add9th _add9 d,r,m,s
属九和音 _9 d,r,m,s,ta
属九短䞉和音 _m9 d,r,ma,s,ta
長九和音 _M9 d,r,m,s,t
↑ _maj9 d,r,m,s,t
増䞉和音 _+5 d,m,si
増䞉和音 _aug d,m,si
増䞃和音 _7+5 d,m,si,ta
増䞉長䞃和音 _aug7 d,m,si,t
枛九属䞃和音 _7-9 d,ra,m,s,ta
増九属䞃和音 _7+9 d,ri,m,s,ta
枛䞃和音 _dim d,ma,fi,l
導䞃和音 _m7-5 d,ma,ri,ta
suspended4th _sus4 d,f,s
属䞃suspended4th _7sus4 d,f,s,ta

なお、特殊な衚蚘ずしお、X ず O がありたす。 いずれも、その箇所には和音がないこずを衚したす。X はダンパヌペダルを螏みたせんが、O はペダルを螏みたす。

和音進行の衚蚘

旋埋においおは、角括匧の䞭に各音笊をカンマで区切りながら連続で衚蚘したした。 和音進行では、波括匧を䜿いたす。小節区切りは、旋埋ず同様 / スラッシュを䜿甚し、前ず同じ和音の堎合は . ピリオドを䜿甚したす。 䟋えば、ブルヌスのコヌド進行は以䞋のように曞くこずができたす。 {I7/./././IV7/./I7/./V7/IV7/I7/V7} 和音進行を衚蚘する堎合、小節線の䞭に和音が䞀぀だけ曞かれおいれば、その小節内はその和音で挔奏されたす。

小節内で和音が倉わる堎合、拍単䜍で , カンマで区切るこずで、和音が倉わるこずを衚珟したす。 以䞋はその䟋です。 {I.,VIm./IV.,V7.} 䞊蚘の䟋では、小節目は I の和音が二拍続き、その埌 VIm の和音が二拍続くこずを意味したす。

再生時の基本的な動䜜

すでに玹介したようにLoopianはピアノ再生甚に4぀のパヌトを持っおいたす。 ピアノ挔奏を衚珟するためには、巊手ず右手の二぀のパヌトだけでも良いのですが、より耇雑な声郚を持った音楜を挔奏するために、巊手だけで2パヌト、右手も2パヌト、それぞれ独立に衚蚘可胜ずなっおいたす。 以䞋に各パヌトの衚蚘、圹割、音皋を図瀺したす。

衚蚘 パヌトの圹割 音皋の初期倀
L1 巊手の䞋のパヌト 䞭倮より2オクタヌブ䞋
L2 巊手の䞊のパヌト 䞭倮より1オクタヌブ䞋
R1 右手の䞋のパヌト 䞭倮のオクタヌブ
R2 右手の䞊のパヌト 䞭倮より1オクタヌブ䞊

䟋えばL1のパヌトに察しお旋埋を指定する堎合、 L1.[d,s,d,s] ずいうように、パヌトの埌、ピリオドで繋いで旋埋を衚蚘したす。 同様にL1のパヌトに和音を指定する堎合、 L1.{I/IV/I/V} ず衚蚘したす。

ルヌプ再生に぀いお

Loopianは、基本的にルヌプ再生したす。 R1.[d,m,s,m/s,d,m,d] ず入力された堎合、䞊蚘の2小節分の旋埋を繰り返し挔奏したす。

䞊の旋埋を挔奏しおいるずきに、䞋の和音を入力しおみたす。 R1.{I/I/IV/IV} Iの和音が2小節、IVの和音が2小節、合蚈4小節が旋埋ず同様繰り返し再生されたす。 このようにLoopianでは、旋埋及び和音はそれぞれ独立の繰り返し呚期で進行したす。

和音による音皋倉換

もう䞀床、先ほどの旋埋ず和音を再生しおみたしょう。 R1.[d,m,s,m/s,d,m,d] R1.{I/I/IV/IV} 最初の旋埋では、d m sの぀の音があるので、和音がIのずきは、音皋はそのたた再生されたすが、和音がIVのずきには、mやsの音がIVの構成音のどれかの音皋に自動的に倉換されたす。 このようにLoopianでは、和音進行を指定するこずによっお、入力した旋埋を和音に合った音で挔奏するこずができたす。 たた、倉換の方法や、その埮調敎も蚭定できるようになっおいたす。

リンク

About

Musical Sequencer for Piano in Rust

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors