目次

概要

この記事では、自作のソフトの案内およびどんな機能を持っているか概要レベルで記載します。

よかったらソフトウェア使ってみてください。 あとなんか気になることがあったら報告ください。

SNS連絡先

ソフトウェア

トップページからダウンロード可能にしてます。 他にboothやitch.ioからもダウンロードできるようにしたいと思います。

映像はこんなの。 リアルタイムでソースコードを書き込み、音楽を演奏しています。

https://www.youtube.com/watch?v=g52rHtOzGnI

どんなことができるか

メリット

  1. 楽器演奏ができなくてもリアルタイム演奏が可能
    その場でソースコードを書き換えて再コンパイルすることで、演奏を止めないでフレーズの差し替えが可能です。
    上記によって、打ち込みでライブを行うのが容易に可能。
    また、楽曲作成において演奏しながらデータを書き込んで比較する等、楽曲のメモを作成するのが容易になります。
  2. 保存・バックアップが容易に可能(テキストファイルなので)
    楽曲のデータについては、ソースコードとして保存されます。すなわち、テキストファイルとして保存されます。
    テキストファイルであれば容量もそれほど大きくならないためバックアップは容易、かつバイナリではないため、一部データ破損によって読み込みができなくなるリスクを低下させます。
  3. 必要なソフトウェアは少なくなる(はず)
    Re:codeは単体で音楽再生を行うことができます。現時点では単音や少ない音ですが、サンプル再生に対応しており、将来的にはシンセサイザー実装を予定しております。

録音機能は備えてないため、他にDAW等を用意いただく形になります。

見た目

下記がRe:code本体になります。

このソフトからソースコードを読み込みコンパイルし、音楽再生を行います。 また、ショートカットキーにも対応しており、現行はF10でコンパイル+再生、F9で停止になります。

特徴的なのは「最前面に表示されており、OS上のキー入力からショートカット命令を実行可能」なことです。 すなわち、VSCodeでソースコードを変更して、フォーカスを変えずにF10を押すとすぐフレーズの更新ができます。

記述言語について

Re:codeはデータ作成・再生にMiniScriptの文法・機能を使っています。

MiniScriptとは https://miniscript.org/

また譜面の整形については、独自に定義したMMLという簡単なマクロ言語が利用可能です。 適当にMIDI演奏を鳴らすなら以下の記述だけでOKです。

記述例:(ドレミファソラシ*2回をオクターブ変えて演奏)

rc_midi0( sq_mml("o4 cdefgab>cdefgab") )

この他に繰り返し命令や条件分岐、変数を使ったフレーズ分割・結合等整形が可能となっております。