issues
search
cat2151
/
MML-chord-generator
コード進行(テキスト)からMMLを生成して演奏 http://cat2151.github.io/MML-chord-generator/
MIT License
0
stars
0
forks
source link
非FLASH環境で、FM音色を鳴らせるようにする
#61
Open
cat2151
opened
6 years ago
cat2151
commented
6 years ago
※非FM音色は、もう鳴らせている。
Sionic.js
を用いている。
案いくつか。Sionic.js がよさそう。
Sionic.jsにMMLを渡す前にプリプロセスし、@3,@4,@5,@6を当てはめる
Sionic.jsに外部音源と外部MMLコンパイラを追加する
Sionic.jsに機能追加。registerToneGenerator() 関数(名称は仮)。現在 Sionic.js 内にある、FMSynthBass() などの関数と同形式の関数を、外部ライブラリとして追加可能にする。これによりSionic.jsと音源ライブラリとを疎結合にし、音源ライブラリ単体での頻繁なアップデートをしやすくする。と書いてみたものの実現可能性が不明。
Sionic.jsに機能追加。registerToneMmlCompiler() 関数(名称は仮)。MML内の音色定義部分のみをわたし、外部音源ライブラリにわたすための関数。これも疎結合化の一環。同様に実現可能性が不明。
さておき実現可能であれば、そこで音源 TGfm2151like1() と音色MMLコンパイラTCfm2151like1() (名称は仮)を外部ライブラリとして用意して、SiONでのOPM音色定義を読み込んで鳴らせるようにする。注意点としてはMML互換性で、そこは基準としては「SiONのサブセット」、そしてあとは適宜プリプロセスでMML変換をしてゆく、という考え方が現実的でわかりやすそう。
cat2151
commented
6 years ago
現在は、取り急ぎ、
Sionic.js で鳴らす場合かつ@0を指定している場合は、@6 のMMLを生成する としています。 目指したいのは 2. です。
※非FM音色は、もう鳴らせている。Sionic.js を用いている。
案いくつか。Sionic.js がよさそう。