2022年5月17日火曜日

#7 Ichigojam BASICで遊ぶw  MIDI端子からの出力プログラミングについての考察とメモ

前回の続きで、サンプルプログラムを打ち込んでmidiアウトしてみた。

サインプルプログラムの内容は12鍵盤、1オクターブをランダムに鳴らすプログラムとある通りでした。

プログラム記述のコマンドリファレンスで調べると。

UARTとはシリアルポートのON、OFF。

Escキーで止めると止まる場所によっては、途中で強制終了するので、シリアルオープン状態のままになってしまうため、

・Escを押して止める。

・UART 0と入力してシリアルポートをOFFにする。

 

分かりやすい説明がありましたので、こちら

file:///Volumes/Potable%20SSD/Download/20191214-IchigoJam-midi.pdf

さらに詳細説明

https://av.watch.impress.co.jp/docs/series/dal/1046425.html


音源はVolca FMがスピーカー内蔵なんでこれを使えばアダプタだけでいいのだが・・・電源アダプタだらけ・・・本当に邪魔だな・・・

USBは救世主に思えたが・・・USBもいっぱいありすぎて・・・

本当に電気問題は正直、全部PoEみたいな感じでスルーできればいいのに・・・

本当にコンセントだらけで邪魔ですw


●?CHE$(midiポート番号、音程、ベロシティ値???(0 or MAX)

https://fukuno.jig.jp/1300

・#90=1ch・・・#99=10chでON。

・#80=1ch・・・#89=10chでOFF。

なので、それ以降は16進数かな?まあ10chあればいいかw

・しかし、最後のベロシティ値はやはり変わらず。0か最大値ぽい。

音量は変わらないとレポートがあった通りと思う。

まああとは音程分かるとして、音価、テンポなど諸々がさっぱり不明。

まあとりあえず知りたいのは音価は?

前回はWAITの値を変えたが、触れるところがそこが一番簡単だったのでやってみただけだが・・・

 

●WAIT=音価、テンポ

やはりWAITしかないので、テンポは固定バイテンで考えるしかなさそうです。

|WAIT値|音価|

|120|全音符|

|60|2分|

|30|4分|

|15|8分|

|7.5|16分|割り切れないので無理w


とりあえず全部割り切れる音価を倍の値として下から数えていく方法しかありませんw

・5、10、20、40、80

・6、8、12、24、48、96/2=48

・7、14、28、56、112

・8、16、32、64、128 

・9、12、18、36、72、144/2=72

・10、20、40、80、160

・11、22、44、88、176

・12、16、24、48、96、192 /2=96

・13・・・

・14・・・

・15、20、30、60、120、240/2=120

こんな感じでw

16分音符8がコンピューター的に一番分かりやすいかもw

 ただしシャッフルなしなので、基準をシャッフルにして置いた方がいいと思う。

 基本シャッフル+バイテンがいいのかもしれない。

 

●プログラムの記譜方法

音高をまとめてLETに数値記憶させて、?CHR$=キャラクター数値である音高をブッこむ方法ですね。

ただそうすると、やはり音価はほぼ固定されたものが楽で、でもまあそうした方が実はいい音楽ができるのかもw

実際に、ジャズなんかほぼ8分固定ですからねw

まあいい勉強になったが、間違っているのか?あっているのか?は不明w

でも多分あっていると思うw


でもまあそうなるとほぼリズム固定の曲作りしてみるかなw

本当にいい勉強になりましたw

 

0 件のコメント:

コメントを投稿

とりあえずMidi2.0をいち早く体験したいので、NI Kontrol S49 MK3ポチって置いたw ベロシティー65535段階だけでも素晴らしいw

 とりあえず生きているうちに最新ものを、格安で、手っ取り早く体験したいならソフトウェア音源一択。 アイボリー3が現在、唯一Midi2.0音源だそうで、やはりソフトウェア音源の物理モデル以外は65535段階なんか無理ですよねw 次世代のMIDI規格「MIDI 2.0」| DTM制作...