Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

第28章. 自分の楽曲プレイグラウンドを用意する

この章の目的

この章を読み終える頃には、ピアノロールが自分の機械でビルドされて、走っている状態になります。この章を読み終える頃には、ピアノロールが自分の機械でビルドされて、走っている状態になります。

コードはすでに手元にある

第2章で、KeleusmaのソースリポジトリのクローンからKeleusmaのコマンドラインツールをインストールしました。その同じクローンの中にピアノロール例と10曲すべてが入っています。新しくダウンロードするものはありません。この章の作業はそのリポジトリのフォルダの中で行います。第2章で、KeleusmaのソースリポジトリのクローンからKeleusmaのコマンドラインツールをインストールしました。その同じクローンの中にピアノロール例と10曲すべてが入っています。新しくダウンロードするものはありません。この章の作業はそのリポジトリのフォルダの中で行います。

もう一つ必要なもの: CMake

ピアノロールは音を出します。そのためにSDL3 (Simple DirectMedia Layer 3)というオーディオライブラリを使います。最初のビルドのときに、SDL3はソースからコンパイルされます。それをコンパイルするにはCMakeというツールが必要です。ピアノロールは音を出します。そのためにSDL3 (Simple DirectMedia Layer 3)というオーディオライブラリを使います。最初のビルドのときに、SDL3はソースからコンパイルされます。それをコンパイルするにはCMakeというツールが必要です。

続ける前に、お使いのOS用のCMakeをインストールしてください。これは本ガイド全体で唯一の本物の準備コストです。Windowsで一番重く、そこではCMakeもCのビルドツールチェーンもデフォルトで入っていません。macOSとLinuxではCのツールチェーンは普段すでに入っていて、CMakeだけ追加すれば済みます。続ける前に、お使いのOS用のCMakeをインストールしてください。これは本ガイド全体で唯一の本物の準備コストです。Windowsで一番重く、そこではCMakeもCのビルドツールチェーンもデフォルトで入っていません。macOSとLinuxではCのツールチェーンは普段すでに入っていて、CMakeだけ追加すれば済みます。

ビルドと実行

Keleusmaリポジトリのフォルダの中から実行します。

cargo run --release --example piano_roll --features sdl3-example

コマンドを部分ごとに読みます。cargo runはビルドして走らせます。--releaseは速い版をビルドします。オーディオに必要です。--example piano_rollはピアノロールを選びます。--features sdl3-exampleはSDL3オーディオサポートを有効にします。コマンドを部分ごとに読みます。cargo runはビルドして走らせます。--releaseは速い版をビルドします。オーディオに必要です。--example piano_rollはピアノロールを選びます。--features sdl3-exampleはSDL3オーディオサポートを有効にします。

最初の1回は数分かかります。SDL3がソースからビルドされているからです。これは1回きりです。それ以降の実行は、ビルド済みのSDL3を再利用してすぐに始まります。最初の1回は数分かかります。SDL3がソースからビルドされているからです。これは1回きりです。それ以降の実行は、ビルド済みのSDL3を再利用してすぐに始まります。

何が見えて聴こえるか

ピアノロールが起動するとコマンドを表示して、最初の楽曲を再生し始め、ターミナルに入力された1文字のコマンドを聞きます。ピアノロールが起動するとコマンドを表示して、最初の楽曲を再生し始め、ターミナルに入力された1文字のコマンドを聞きます。

  • sで次の楽曲に切り替えます。
  • rで現在の楽曲を最初からやり直します。
  • pで一時停止、もう一度pで再開します。
  • 数字キーでその番号の楽曲に直接ジャンプします。
  • Enterだけ押すと終了します。

スピーカーから音が出ているはずです。ビルドが成功したのに何も聴こえない場合は、ターミナルプログラムがオーディオデバイスを使う許可を持っているか、システムの音量が上がっているか確認してください。スピーカーから音が出ているはずです。ビルドが成功したのに何も聴こえない場合は、ターミナルプログラムがオーディオデバイスを使う許可を持っているか、システムの音量が上がっているか確認してください。

楽曲はすぐそこにある

10曲の楽曲はリポジトリのexamples/scripts/piano_roll/にあり、piano_roll_0.kelからpiano_roll_9.kelの名前です。普通のKeleusmaのソースファイルです。次の章で1曲開いて書き換えます。10曲の楽曲はリポジトリのexamples/scripts/piano_roll/にあり、piano_roll_0.kelからpiano_roll_9.kelの名前です。普通のKeleusmaのソースファイルです。次の章で1曲開いて書き換えます。

この章のまとめ

  • ピアノロール例は第2章のリポジトリクローンの一部です。
  • ビルドにはCMakeが必要です。最初のビルドでSDL3がソースからコンパイルされるからです。ビルドにはCMakeが必要です。最初のビルドでSDL3がソースからコンパイルされるからです。
  • cargo run --release --example piano_roll --features sdl3-exampleでビルドして走らせます。cargo run --release --example piano_roll --features sdl3-exampleでビルドして走らせます。
  • 楽曲はexamples/scripts/piano_roll/の中の.kelファイルです。

次の章では楽曲を書き換えて、その変化を耳で聴きます。