zkunがいろんなことを横書きするブログのようですw(含み笑)
これも結構簡単にできちゃったyo もとの設計が秀逸なので何を作るのも簡単になってきたyo 既存のルーチンをほとんど使い回しできるので、一生懸命コードを打ち込まなくちゃいけないことが減ってきたよne(効率のいい笑)
詳しくはJamの画面下の「コード表記の手引き」に説明をのせてるyo 概要を説明すると「Cm7/G」とかコード記号を記載しているボックスに「Cm7/G*OLHR」のように「*」で始まる4文字のアルファベット大文字をくっつけるだけで、その「拍」で演奏するアルペジオを記述できてしまうというものだyo コード構成音最大5音に対してオクターブ上下の指定と休符の選択もできて実に15文字の中から選べるので、15x15x15x15=50625通りものアルペジオパターンを1拍の中で指定できるというわけだyo(呆れ笑)
もちろん、これまで通りのかんたんアルペジオ指定も有効で、ランダムもカスタムもこれまで通り動作するよ。デモソング「Demoming」では曲の基本アルペジオを上部メニューのセレクタで選んでおき、それ以外のパターンで鳴らしたい「拍」でのみ「*OFMLR」のような下りフレーズを指定して変化させてるyo 有効な記述がある場合のみアルペジオ記号が優先され、そうでない場合は従来のセレクタで指定されているアルペジオパターンが鳴るというわけだyo
これの音長やベロシティは「GUITARIST」メニュー内のセレクタで従来どおりに設定されるyo 音がプチプチする感じがある場合は音長を変えてやれば自然に聴こえる場合があるようだyo
あと細かいことだけど、小節ブロックの行もドラムパターンエディターと同様に、個別に折り畳むこともできるように「close」ボタンをつけたyo 長い曲でドラムパターンエディターを見ながら作業したいときに便利になったよne
これは別件だけど、Firefoxでは「Recording」機能だけが動いてくれないようだne クロムとオペラではオンラインならちゃんと動くのだが。まあ、クセの強いFirefoxはなかなか一筋縄ではいかないne(苦笑) これについてはプラグイン側で対応しないと無理そうなのでボクにはどうすることもできないと思うyo(無理な笑)
さらに別件だけど、Firefoxのエラーコンソール画面は秀逸だねw 重大なエラーはエラーで表示されるけど、それ以外の書式ミスや勘違いの誤記なども「警告」という形で全部リストアップしてくれるんだne おかげで「;」を「:」に打ち間違えてるところや、存在しない属性を指定してるところなんかを全部指摘してくれるので、そこを直したら、どうもおかしいな?と思ってたボタンサイズが正しく直せるようになったりと、色々目からウロコだったyo たまには違うブラウザをいじってみるとまた新しい発見があるものだne 時々Firefoxで開いてみるだけでバグチェックになるならありがたいことだyo(含み笑)
詳しくはJamの画面下の「コード表記の手引き」に説明をのせてるyo 概要を説明すると「Cm7/G」とかコード記号を記載しているボックスに「Cm7/G*OLHR」のように「*」で始まる4文字のアルファベット大文字をくっつけるだけで、その「拍」で演奏するアルペジオを記述できてしまうというものだyo コード構成音最大5音に対してオクターブ上下の指定と休符の選択もできて実に15文字の中から選べるので、15x15x15x15=50625通りものアルペジオパターンを1拍の中で指定できるというわけだyo(呆れ笑)
もちろん、これまで通りのかんたんアルペジオ指定も有効で、ランダムもカスタムもこれまで通り動作するよ。デモソング「Demoming」では曲の基本アルペジオを上部メニューのセレクタで選んでおき、それ以外のパターンで鳴らしたい「拍」でのみ「*OFMLR」のような下りフレーズを指定して変化させてるyo 有効な記述がある場合のみアルペジオ記号が優先され、そうでない場合は従来のセレクタで指定されているアルペジオパターンが鳴るというわけだyo
これの音長やベロシティは「GUITARIST」メニュー内のセレクタで従来どおりに設定されるyo 音がプチプチする感じがある場合は音長を変えてやれば自然に聴こえる場合があるようだyo
あと細かいことだけど、小節ブロックの行もドラムパターンエディターと同様に、個別に折り畳むこともできるように「close」ボタンをつけたyo 長い曲でドラムパターンエディターを見ながら作業したいときに便利になったよne
これは別件だけど、Firefoxでは「Recording」機能だけが動いてくれないようだne クロムとオペラではオンラインならちゃんと動くのだが。まあ、クセの強いFirefoxはなかなか一筋縄ではいかないne(苦笑) これについてはプラグイン側で対応しないと無理そうなのでボクにはどうすることもできないと思うyo(無理な笑)
さらに別件だけど、Firefoxのエラーコンソール画面は秀逸だねw 重大なエラーはエラーで表示されるけど、それ以外の書式ミスや勘違いの誤記なども「警告」という形で全部リストアップしてくれるんだne おかげで「;」を「:」に打ち間違えてるところや、存在しない属性を指定してるところなんかを全部指摘してくれるので、そこを直したら、どうもおかしいな?と思ってたボタンサイズが正しく直せるようになったりと、色々目からウロコだったyo たまには違うブラウザをいじってみるとまた新しい発見があるものだne 時々Firefoxで開いてみるだけでバグチェックになるならありがたいことだyo(含み笑)
PR
フレーズエディターを改造して平凡なHTMLに変更したおかげで、上部メニューの位置ズレの心配もなくなり、自由にサイズ変更とかができるようになったyo さらにはその移植しやすい構造を利用して、アルペジオのフレーズ指定をするエディターも簡単に作ることができたので作ってみたyo
「CUSTOM Arp」というメニューを開くと、どこかで見たような画面が開くyo 左4つが「Custom1」で、右4つが「Custom2」だyo これらを矢印ボタンで上下させてやると、それぞれルート音からテンションノートまで上下するので、その止まってる位置でアルペジオの4音パターンが形成されるというわけだyo これは転送等をしなくてもそのまんまシステムに反映されるので、その状態のままピアノプレイモードで「Arpeggio」を選び、アクティブになるセレクタで下のほうに追加した「Custom1」か「Custom2」を選んでやれば、もうその4音パターンでアルペジオを始めるという超簡単オペレーションだyo
アルペジオ各音のベロシティは「GUITARIST」メニューで通常は指定できるんだけど、Customに関してだけはこのページで指定したベロシティが使われるという仕様になってるyo あと、アルペジオの音の長さは「GUITARIST」メニューでの指定が有効だyo この2つのページは兄弟ページともいうべき密接な関係があるので覚えておいてくれw
あと素晴らしい機能が「Custom1+2」という機能だyo これはアルペジオパターンの「Random by 2」を元に考案したもので、要は「奇数拍ならCustom1、偶数拍ならCustom2が有効になる」というものだyo つまり、2つ合わせて「8音パターン」のアルペジオの繰り返しを作れるというわけだyo ややこしいプログラミングがいるかなあと思っていたら、わずか1分で書き終えちゃったyo(ひらめき笑) これを使えばrest(休符)をまじえながら、ところどころ長音を使ったフレーズを作れるので、ぐっと表現の幅が広がるはずだyo コツとしては「GUITARIST」メニューで音の長さを3か4にしておくと、音の伸びが生きた感じのギターっぽいアルペジオになりやすいと思うyo
この機構もSaveTextB形式で保存すれば、空き領域にきちんと保存されて読み書きできるので、テキストからの読み込みですべて再現可能だyo だんだん段取りが手慣れてきたので一発でそこまで対応できるようになってきたyo(微笑)
次の段階として考えているのは、拍ごとのコード指定記号の中に、使うアルペジオの種類を指定する符号を設定してやれば、それが書かれていたらこのアルペジオパターンを使うというような細かな使い分けが可能になるよne そして、そこまで細かく使い分けられるようになるならば、現行の12パターン+ランダム+カスタム2個という枠にとらわれず、もっと膨大なパターンを定義して使い分けることも可能だろう。さらに言えば、コード指定欄に直接記述するような方式で読み込めるようにすれば、いちいちパターン番号とかを参照しなくてもよくなるよな。どこまでやるかは検討の余地があるけど、拍単位で細かく指定できるようになれば、曲データ全体の中でアルペジオの使い道が大きく広がることはまちがいないよne(納得笑)
「CUSTOM Arp」というメニューを開くと、どこかで見たような画面が開くyo 左4つが「Custom1」で、右4つが「Custom2」だyo これらを矢印ボタンで上下させてやると、それぞれルート音からテンションノートまで上下するので、その止まってる位置でアルペジオの4音パターンが形成されるというわけだyo これは転送等をしなくてもそのまんまシステムに反映されるので、その状態のままピアノプレイモードで「Arpeggio」を選び、アクティブになるセレクタで下のほうに追加した「Custom1」か「Custom2」を選んでやれば、もうその4音パターンでアルペジオを始めるという超簡単オペレーションだyo
アルペジオ各音のベロシティは「GUITARIST」メニューで通常は指定できるんだけど、Customに関してだけはこのページで指定したベロシティが使われるという仕様になってるyo あと、アルペジオの音の長さは「GUITARIST」メニューでの指定が有効だyo この2つのページは兄弟ページともいうべき密接な関係があるので覚えておいてくれw
あと素晴らしい機能が「Custom1+2」という機能だyo これはアルペジオパターンの「Random by 2」を元に考案したもので、要は「奇数拍ならCustom1、偶数拍ならCustom2が有効になる」というものだyo つまり、2つ合わせて「8音パターン」のアルペジオの繰り返しを作れるというわけだyo ややこしいプログラミングがいるかなあと思っていたら、わずか1分で書き終えちゃったyo(ひらめき笑) これを使えばrest(休符)をまじえながら、ところどころ長音を使ったフレーズを作れるので、ぐっと表現の幅が広がるはずだyo コツとしては「GUITARIST」メニューで音の長さを3か4にしておくと、音の伸びが生きた感じのギターっぽいアルペジオになりやすいと思うyo
この機構もSaveTextB形式で保存すれば、空き領域にきちんと保存されて読み書きできるので、テキストからの読み込みですべて再現可能だyo だんだん段取りが手慣れてきたので一発でそこまで対応できるようになってきたyo(微笑)
次の段階として考えているのは、拍ごとのコード指定記号の中に、使うアルペジオの種類を指定する符号を設定してやれば、それが書かれていたらこのアルペジオパターンを使うというような細かな使い分けが可能になるよne そして、そこまで細かく使い分けられるようになるならば、現行の12パターン+ランダム+カスタム2個という枠にとらわれず、もっと膨大なパターンを定義して使い分けることも可能だろう。さらに言えば、コード指定欄に直接記述するような方式で読み込めるようにすれば、いちいちパターン番号とかを参照しなくてもよくなるよな。どこまでやるかは検討の余地があるけど、拍単位で細かく指定できるようになれば、曲データ全体の中でアルペジオの使い道が大きく広がることはまちがいないよne(納得笑)
日曜丸一日かけて、フレーズエディターを根本からつくり直したyo(疲れ笑) 今度はドラッグしたマウスイベントを拾うという手法は使わず、↑↓ボタンで上下させるという枯れた技術を使ってつくったので、どのブラウザでも確実に動くし、位置指定がややこしくなって調整が面倒になることもないyo 操作性はSafariだけで言えば若干落ちたけど、この程度の差ならば汎用性のほうが重要なので構わないyo 機能自体は従来のベースエディターと全く同じで、矢印ボタン以外についてはデザインもほぼ同じにしてるyo
唯一変更したのは、持続音を指定している場合、従来は途中のスライダーを動かそうと思っても動作ロックがかかっていて、先にチェックボックスを外さないとスライダーを動かせないというあまりにも凝り過ぎた仕様になっていたyo しかし、変更したいから動かそうとするのであって、むしろ「動かした場合はロックが解除される」という仕様のほうがストレスがたまらないと思ったので変更したyo ただ、前後のつながりが思ってるとおりにならない場合も起こりうるんだけど、そこは「プレビュー再生機能」がついてるので、聴きながら確認できるのでそれはもう自己責任で判断してもらうことにするyo プレビュー再生できてる通りの音がエクスポートされるので、間違いようがないよne(さむらごうち笑)
ほかにもテーブルのサイズやフォント、余白などなど諸々の指定を調整して、どうにか4ブラウザでふつうに使える状態に整備できたと思うyo Firefox問題も回避できたので、無事フレーズエディターを動かすことができるようになってるyo たった一日ですべて解決しちゃうボクはなかなか有能かもしれないne(上から笑) ただし、こういうものは趣味でやるから楽しいのであって、業務でやったら最低で、二度と画面に向かいたくなくなるだろうne 仕事にしていいものとすべきでないものがあるよne(含み笑)
唯一変更したのは、持続音を指定している場合、従来は途中のスライダーを動かそうと思っても動作ロックがかかっていて、先にチェックボックスを外さないとスライダーを動かせないというあまりにも凝り過ぎた仕様になっていたyo しかし、変更したいから動かそうとするのであって、むしろ「動かした場合はロックが解除される」という仕様のほうがストレスがたまらないと思ったので変更したyo ただ、前後のつながりが思ってるとおりにならない場合も起こりうるんだけど、そこは「プレビュー再生機能」がついてるので、聴きながら確認できるのでそれはもう自己責任で判断してもらうことにするyo プレビュー再生できてる通りの音がエクスポートされるので、間違いようがないよne(さむらごうち笑)
ほかにもテーブルのサイズやフォント、余白などなど諸々の指定を調整して、どうにか4ブラウザでふつうに使える状態に整備できたと思うyo Firefox問題も回避できたので、無事フレーズエディターを動かすことができるようになってるyo たった一日ですべて解決しちゃうボクはなかなか有能かもしれないne(上から笑) ただし、こういうものは趣味でやるから楽しいのであって、業務でやったら最低で、二度と画面に向かいたくなくなるだろうne 仕事にしていいものとすべきでないものがあるよne(含み笑)
文字化けしてるとイチャモンつけてきた人がいたので、はじめてSafari以外のブラウザでJamを開いてみたyo 昔はいちいち各種ブラウザでの見え方とかまで気を配りながらWebをつくってたことがあったけど、はっきり言ってきりがないのである時期から全くやらなくなったんだよne
同じマージンやパディングを指定しても、ブラウザごとにてんでバラバラの間隔で表示されるので、細かく指定しだすと本当にキリがないw(呆れ笑) ブラウザごとに指定をしない場合のデフォルト値とかが違うので、結局すべてをガチガチにドット単位で指定する羽目になるけど、それでも色々例外ルールがあって、結局レイアウトは同じにならないんだよne(虚しい笑) そんなことでストレスをためるよりも、プログラム自体に専念するほうがどう考えても賢いだろ? キリがついた所で、ざっとまとめて一度にケアして、だいたい操作に支障がなくなればいいんだyo(妥当笑)
今回はまずクロムを見たよ。激しくレイアウトがずれていたne(大苦笑) サファリのデフォルト値のほどよさに甘えて、あまりこと細かに指定をしてないからねw(微笑) フォントサイズや行間、幅や高さなどを調整していったyo 各小節ブロックを18px広げればマック版クロムでもまあまあまともなレイアウトになるので、思い切ってちょっと拡幅したyo サファリ的にはちょっとラジオボタンの間が空くんだけど、まあ多くのユーザーのことを考えて目をつぶるyo それに最近は旧再生からSMF再生にメインが移ってきてるので、ラジオボタンを追う機会も減ってきてるということもあるしne
Firefoxではクロムで直した分でだいたいオッケーだったyo ただ、これはキャビ研究所を作ったときから分かってたんだけど、マウスイベントの記述方法が異なるので、「フレーズエディター」が現状ではFirefoxでは動かないんだよne ブラウザを判別して動作させる記述方法もできるんだけど、なんせマウスイベントに関することなのではっきり言って処理が重くなりそうで二の足を踏むんだよne
ただし、「フレーズエディター」はあまりにも凝った作りのため、サファリ以外のすべてのブラウザでレイアウトがずれちゃってるんだよne(苦笑) そのへんも含めて大改造をしたほうがよさそうな感じなので、そのときにFirefoxでも共用で動くような仕組みに変更するかもしれないyo 動作原理自体は完璧に仕上がっているので、UI部分を再考してみるyo
Operaも見たけど、まあだいたい同じだne とりあえず1度サファリでJazz-Pluginをインストールしてあると、ほかのすべてのブラウザでもそのまま利用できるということもわかったyo あっ、ウインドウズでの検証はいっさいしてないから、動くのかどうかもわからないyo(Winには完全に興味ない笑) それにしても元々のJazz-Pluginを作った人は本当にすごいと思うyo ボクはその人の手のひらの上で遊んでるようなものだよne(微笑)
同じマージンやパディングを指定しても、ブラウザごとにてんでバラバラの間隔で表示されるので、細かく指定しだすと本当にキリがないw(呆れ笑) ブラウザごとに指定をしない場合のデフォルト値とかが違うので、結局すべてをガチガチにドット単位で指定する羽目になるけど、それでも色々例外ルールがあって、結局レイアウトは同じにならないんだよne(虚しい笑) そんなことでストレスをためるよりも、プログラム自体に専念するほうがどう考えても賢いだろ? キリがついた所で、ざっとまとめて一度にケアして、だいたい操作に支障がなくなればいいんだyo(妥当笑)
今回はまずクロムを見たよ。激しくレイアウトがずれていたne(大苦笑) サファリのデフォルト値のほどよさに甘えて、あまりこと細かに指定をしてないからねw(微笑) フォントサイズや行間、幅や高さなどを調整していったyo 各小節ブロックを18px広げればマック版クロムでもまあまあまともなレイアウトになるので、思い切ってちょっと拡幅したyo サファリ的にはちょっとラジオボタンの間が空くんだけど、まあ多くのユーザーのことを考えて目をつぶるyo それに最近は旧再生からSMF再生にメインが移ってきてるので、ラジオボタンを追う機会も減ってきてるということもあるしne
Firefoxではクロムで直した分でだいたいオッケーだったyo ただ、これはキャビ研究所を作ったときから分かってたんだけど、マウスイベントの記述方法が異なるので、「フレーズエディター」が現状ではFirefoxでは動かないんだよne ブラウザを判別して動作させる記述方法もできるんだけど、なんせマウスイベントに関することなのではっきり言って処理が重くなりそうで二の足を踏むんだよne
ただし、「フレーズエディター」はあまりにも凝った作りのため、サファリ以外のすべてのブラウザでレイアウトがずれちゃってるんだよne(苦笑) そのへんも含めて大改造をしたほうがよさそうな感じなので、そのときにFirefoxでも共用で動くような仕組みに変更するかもしれないyo 動作原理自体は完璧に仕上がっているので、UI部分を再考してみるyo
Operaも見たけど、まあだいたい同じだne とりあえず1度サファリでJazz-Pluginをインストールしてあると、ほかのすべてのブラウザでもそのまま利用できるということもわかったyo あっ、ウインドウズでの検証はいっさいしてないから、動くのかどうかもわからないyo(Winには完全に興味ない笑) それにしても元々のJazz-Pluginを作った人は本当にすごいと思うyo ボクはその人の手のひらの上で遊んでるようなものだよne(微笑)
ピッチベンドは超簡単だったyo(失笑) ノートオンと同じ書式と同じ個数のパラメータだったので、分岐を増やして数値を変えるだけで一丁上がりだったyo ついでにコントロールチェンジもほぼ同様だったので、モジュレーション、エクスプレッション、パンもホイールコントロールを受信すれば反映するようにさせたyo これで十分だよne てか、これ以上はQuickTime音源のほうが対応してないからw(苦笑) あまりにも簡単にアプデできたのでバージョンとしては同一のままにしておくyo 外観もまるで変わってないしne(含み笑)
とりあえずSaveTextB書式のデモを1個作ったyo 「目覚めよと呼ぶ声がする」だyo ドラムはハットだけの地味なパターン。ベースパートはオートベースにしてピチカートストリングスを効果音的に鳴らさせてみたyo ピアノパートはコードを「Cz」のようなルート音だけのコード指定にして、アコースティックベースで実質的なベース音を鳴らさせてるyo PCKeyboardパートは打ち込み入力でドローバーオルガンでメインメロディーを演奏させてるyo 1番はこれら4パートだけで演奏させてるよ。リピートした2番では、MIDIキーボードパートでちょこっとだけ歌唱部分を録音してみたyo(鍵盤は苦手笑) このように、録音パートは繰り返しの各回ごとに別々の状態を録音できるので、1番だけ出てくるフレーズ、2番だけ出てくるフレーズなどを鳴らさせるのにも都合がいいという性質をもっているyo(あとづけ笑)
いやあ、物凄いところまで来たne あとはアルペジオパターンにもう少し発展させる余地があるように思うんだけど、まあ現行でも十分といえば十分だけどね。今の4音パターンのままバリエーションを増やす方法と、8音一組にしてもう少し長めの「よくあるアルペジオパターン」を表現させる方法とが考えられるんだけど、どちらもけっこう大ごとになるのであまり気が進まないyo 特に8音化しようとするとかなり改造しないといけないからne(苦笑) まあ、しばらくバグチェックを進めながら考えるyo(余裕の笑)
とりあえずSaveTextB書式のデモを1個作ったyo 「目覚めよと呼ぶ声がする」だyo ドラムはハットだけの地味なパターン。ベースパートはオートベースにしてピチカートストリングスを効果音的に鳴らさせてみたyo ピアノパートはコードを「Cz」のようなルート音だけのコード指定にして、アコースティックベースで実質的なベース音を鳴らさせてるyo PCKeyboardパートは打ち込み入力でドローバーオルガンでメインメロディーを演奏させてるyo 1番はこれら4パートだけで演奏させてるよ。リピートした2番では、MIDIキーボードパートでちょこっとだけ歌唱部分を録音してみたyo(鍵盤は苦手笑) このように、録音パートは繰り返しの各回ごとに別々の状態を録音できるので、1番だけ出てくるフレーズ、2番だけ出てくるフレーズなどを鳴らさせるのにも都合がいいという性質をもっているyo(あとづけ笑)
いやあ、物凄いところまで来たne あとはアルペジオパターンにもう少し発展させる余地があるように思うんだけど、まあ現行でも十分といえば十分だけどね。今の4音パターンのままバリエーションを増やす方法と、8音一組にしてもう少し長めの「よくあるアルペジオパターン」を表現させる方法とが考えられるんだけど、どちらもけっこう大ごとになるのであまり気が進まないyo 特に8音化しようとするとかなり改造しないといけないからne(苦笑) まあ、しばらくバグチェックを進めながら考えるyo(余裕の笑)
さらに試行錯誤していたら、うまいこと多重録音したトラックだけを分離してテキスト変換する方法がわかったのでさっそく改造してみたyo これによって、多くの制約がとっぱらわれて、多重録音の合間でもほかのトラックの音色やプレイモードなどを変更できるようになったし、演奏を録音した状態のスコアシートを再び開いて作業を続けることが可能になったyo 保存形式として新たに「SaveTextB」形式を定義したyo これは「SaveText」の上位互換なので、これまでのDEMO SONGのデータもそのまま読めるyo 録音データなしの曲データとして読めるというわけさw それに録音を付加して新たに「SaveTextB」テキストで保存しておけば、次に読み込んだときは録音付きの「SaveTextB」データとして読めちゃうというわけだyo
この技術ができたことで、やろうと思えば複数トラックで録音パートの読み書きをさせて、さらに多くの楽器パートを同時に鳴らすことも可能になったne でも、それらを生演奏録音していかなくちゃならないとなると手軽さは失われていくし、あとからエディットとかもできないのでDTMソフトとしてはえらく不便だしne(苦笑) それはもうZkun Jamの範囲を超えてしまうので、やるとしたら別ソフトになるだろうね。
ただ、midiの生データを1つずつ抽出することも可能になってるので、めちゃくちゃ頑張れば、録音したデータを小節ごとに区切って、必要ならクオンタイズして、フレーズデータに変換してOriginal Playの窓で表示させるということも理論的には不可能ではなくなってるんだよne ただ、そこまでやる意味があるかどうかw(疑問な笑) 細かく作り込みたければCubaseを使えばいいんだからne(妥当笑) Jamでしかできない超簡単なオケ作成こそがキモなのであって、操作が煩雑になるならボク自身も多分使わないw(賢明な笑)
次にトライすべきは、ピッチベンドへの対応だろうね。現状では実はNote ON とNote OFFしか録音できないんだよねw(失笑) まあ鍵盤楽器はいいんだけど、ギターっぽくチョーキングのフレーズを収録できてこそ生演奏レコーディングを付加した意味が大きいと思うからne 次回バージョンではぜひともピッチベンド対応を実現しようじゃないかw データサイズが大きくなりそうでこわいけどne(苦笑)
この技術ができたことで、やろうと思えば複数トラックで録音パートの読み書きをさせて、さらに多くの楽器パートを同時に鳴らすことも可能になったne でも、それらを生演奏録音していかなくちゃならないとなると手軽さは失われていくし、あとからエディットとかもできないのでDTMソフトとしてはえらく不便だしne(苦笑) それはもうZkun Jamの範囲を超えてしまうので、やるとしたら別ソフトになるだろうね。
ただ、midiの生データを1つずつ抽出することも可能になってるので、めちゃくちゃ頑張れば、録音したデータを小節ごとに区切って、必要ならクオンタイズして、フレーズデータに変換してOriginal Playの窓で表示させるということも理論的には不可能ではなくなってるんだよne ただ、そこまでやる意味があるかどうかw(疑問な笑) 細かく作り込みたければCubaseを使えばいいんだからne(妥当笑) Jamでしかできない超簡単なオケ作成こそがキモなのであって、操作が煩雑になるならボク自身も多分使わないw(賢明な笑)
次にトライすべきは、ピッチベンドへの対応だろうね。現状では実はNote ON とNote OFFしか録音できないんだよねw(失笑) まあ鍵盤楽器はいいんだけど、ギターっぽくチョーキングのフレーズを収録できてこそ生演奏レコーディングを付加した意味が大きいと思うからne 次回バージョンではぜひともピッチベンド対応を実現しようじゃないかw データサイズが大きくなりそうでこわいけどne(苦笑)
PCキーボードパートの次はMIDIキーボードでの演奏を録音できるようにしたyo とは言ってもまあ制約はいっぱいあるけどne そこはもう本格的なMIDIシーケンサーではないんだから、とりあえず簡易な録音ができれば儲け物くらいに思って使ってくれyo(苦笑) マジで録音したけりゃCubaseでも使いなよって話だしne(さすがに笑)
でも作る以上はあまり粗末なものにはしないyo Jamで作った演奏パターンを鳴らしながら同時録音が可能なので、演奏性という点では申し分ないyo さらに重ね録りを何回でもオーバーダビングしていくことができるので、たとえば4小節分くらいずつ成功した演奏だけをOKにして足し込んでいって、長い演奏を完成させることも可能だyo また上下2声のメロディーを2回に分けて録音して重ねることもできるyo 発音数に特に制限もないyo
よいことずくめのようだけど、これはSMFファイルにしか保存できないので、Jamのスコアシートに読み込んで展開して再編集できるような構造ではないyo あくまでも出来上がったJamの曲データに最後に生演奏をミックスしてSMFで書き出すという使い方になるyo PCキーボードパートのほうが曲データとして編集・変更が可能という点では優れているということになるyo(一長一短笑)
いろいろ細かな操作説明や注意書きは画面のほうに書いてあるからよく読んでくれyo 作るのも結構ややこしくてたいへんだったyo ふだんは全く使うことのないバイナリの構造やら変換やら、ろくな参考文献もなしにJazz-Pluginのルールを類推しながら作ってるので、どこまでができてどこまでができないのかすらよくわかってないんだよne(大苦笑) それでもたとえばテンポ90の曲がしっかりズレなく録音再生できてるし、補正機構も考えてつけたし、多重録音まで出来るとは自分でも思ってなかったけど、あれこれいじってるうちに、これなら理論上いくらでも多重にかぶせられるよなというのが見えてきて搭載したという感じだyo(迷走笑)
Base64テキストをボタンで直接再生する仕組みも「FILE MENU」に作ったし、だんだんカオス状態になってきたne(失笑) そのうちメニュー体系をもう一度整理するときがくるかもしれないne まあ、必要がなければ新機能は使わなければいいだけで、新たな設定もいらないし、アプデも強制されないし、当然課金も発生しないw ボクのプログラムは時代へのアンチテーゼになっているんだyo(偏屈笑)
でも作る以上はあまり粗末なものにはしないyo Jamで作った演奏パターンを鳴らしながら同時録音が可能なので、演奏性という点では申し分ないyo さらに重ね録りを何回でもオーバーダビングしていくことができるので、たとえば4小節分くらいずつ成功した演奏だけをOKにして足し込んでいって、長い演奏を完成させることも可能だyo また上下2声のメロディーを2回に分けて録音して重ねることもできるyo 発音数に特に制限もないyo
よいことずくめのようだけど、これはSMFファイルにしか保存できないので、Jamのスコアシートに読み込んで展開して再編集できるような構造ではないyo あくまでも出来上がったJamの曲データに最後に生演奏をミックスしてSMFで書き出すという使い方になるyo PCキーボードパートのほうが曲データとして編集・変更が可能という点では優れているということになるyo(一長一短笑)
いろいろ細かな操作説明や注意書きは画面のほうに書いてあるからよく読んでくれyo 作るのも結構ややこしくてたいへんだったyo ふだんは全く使うことのないバイナリの構造やら変換やら、ろくな参考文献もなしにJazz-Pluginのルールを類推しながら作ってるので、どこまでができてどこまでができないのかすらよくわかってないんだよne(大苦笑) それでもたとえばテンポ90の曲がしっかりズレなく録音再生できてるし、補正機構も考えてつけたし、多重録音まで出来るとは自分でも思ってなかったけど、あれこれいじってるうちに、これなら理論上いくらでも多重にかぶせられるよなというのが見えてきて搭載したという感じだyo(迷走笑)
Base64テキストをボタンで直接再生する仕組みも「FILE MENU」に作ったし、だんだんカオス状態になってきたne(失笑) そのうちメニュー体系をもう一度整理するときがくるかもしれないne まあ、必要がなければ新機能は使わなければいいだけで、新たな設定もいらないし、アプデも強制されないし、当然課金も発生しないw ボクのプログラムは時代へのアンチテーゼになっているんだyo(偏屈笑)
★ドラムのフィルインを、同じ小節でもリピートが回ってくるたびに新たに別のフィルインパターンを選ぶように変更したyo
★任意の1小節を削除するボタンをつけたyo
★SMF再生がまだ「?」「!」の連打に対応してなかったので直したyo
★ヒューマンテンポのずれ量が全体に大き過ぎたので係数を減らしたyo
フィルインはとりあえずエディターが動くようになっていたものの、まだあまり詳しく動作チェックをしていなかったyo 50回までリピート可能にしたはいいけど、やはり毎回同じフィルインパターンだといまいちだし不自然だよね。そこで仕様をちょっと進化させて、ループするごとに新たにフィルインパターンを選び直してAx, Ay, Bx, Byにかぶせるように変更したyo これで、限られた4小節や8小節といったフレーズのくり返し演奏でも、フィルインが毎回変化するのでおもしろいというわけだよ。
まあ、本気でねじ込めばオートベースにそれをさせることも可能と言えば可能なんだけど、明らかに動作が重くなると予想されるのでためらうyo(苦笑) ただし、SMF再生のほうはファイルを作るときだけの負荷になるので可能と言えば可能。ただ、そこまでやってもベースラインの微妙な変化はそれほど目立たないので効果は疑問だよねw(失笑) まだちょっとそれは保留だねw
フィルインをちょっと数つくってデモ曲に埋め込んでみたyo 以前BeatのほうでやったSmoke on theーの焼き直しだけどw あのときはドラムトラックとベースパートも直打ち込みでつくり、12小節のリピートにしたけど、今回はたった4小節でオートベースとオートフィルインで作ったyo コードを2種類書き込んだだけという超省力指定だけど、毎回ちがうフィルインが鳴ってけっこう迫力あるyo ますますジャムらしくなってきたんじゃないか?(感心笑)
★任意の1小節を削除するボタンをつけたyo
★SMF再生がまだ「?」「!」の連打に対応してなかったので直したyo
★ヒューマンテンポのずれ量が全体に大き過ぎたので係数を減らしたyo
フィルインはとりあえずエディターが動くようになっていたものの、まだあまり詳しく動作チェックをしていなかったyo 50回までリピート可能にしたはいいけど、やはり毎回同じフィルインパターンだといまいちだし不自然だよね。そこで仕様をちょっと進化させて、ループするごとに新たにフィルインパターンを選び直してAx, Ay, Bx, Byにかぶせるように変更したyo これで、限られた4小節や8小節といったフレーズのくり返し演奏でも、フィルインが毎回変化するのでおもしろいというわけだよ。
まあ、本気でねじ込めばオートベースにそれをさせることも可能と言えば可能なんだけど、明らかに動作が重くなると予想されるのでためらうyo(苦笑) ただし、SMF再生のほうはファイルを作るときだけの負荷になるので可能と言えば可能。ただ、そこまでやってもベースラインの微妙な変化はそれほど目立たないので効果は疑問だよねw(失笑) まだちょっとそれは保留だねw
フィルインをちょっと数つくってデモ曲に埋め込んでみたyo 以前BeatのほうでやったSmoke on theーの焼き直しだけどw あのときはドラムトラックとベースパートも直打ち込みでつくり、12小節のリピートにしたけど、今回はたった4小節でオートベースとオートフィルインで作ったyo コードを2種類書き込んだだけという超省力指定だけど、毎回ちがうフィルインが鳴ってけっこう迫力あるyo ますますジャムらしくなってきたんじゃないか?(感心笑)
追加された機能は次のとおり。
★PCKeyBoardパートに打ち込みフレーズを演奏させる機能を付加したyo
★コード指定の記述方法のルールを明確にしたyo
★エンディング時のテンポ指定だったE1-E3を曲中で自由に使えるR1-R3に変更したyo
★フレーズエディター(旧ベースエディター)でキーボード音での再生も可能になったyo
★作成可能小節数128、ループ回数50回、など各種カウンター数を増量w
これまでBassパートのOriginal Playの時にのみ利用していた打ち込みテキストを、KeyBoardパートでも共用で読み込めるようにして、モノモードの発音ではあるけれどもう1つメロディー楽器を鳴らすことができるようになったyo 使い方は各小節ブロック内にあるPianoパートのプレイモード変更を行う緑色のセレクタで選択するだけだyo 従来の「OFF」「Chord」「Arpeggio」「曲追従」の下に、新たに「OFF+KB」「Cho.+KB」「Arp.+KB」という選択肢が追加されてるよ。この3つのどれかを選べばその小節でKeyBoardパートがONになり、Pianoパートも「OFF」「Cho.」「Arp.」のどれかで演奏されるという仕組みだよ。ピアノに間借りしてるけど動作はベースに似てるというややこしいパートの誕生だyo ベースと全く共通に手入力打ち込みもできるし、エディターでの修正・転送もできるyo 同じ小節でベースパートも同じテキストを読んで同時演奏させることもできるよ。その場合ユニゾンになるので、パンを左右に振って鳴らせば効果的かも。音域が合わない場合はKeyBoardパートのオクターブ指定で調整すればいいyo なかなかよく考えられてるだろ?(一昨日思いついた笑)
コード表記については、Jamの画面下の手引きに詳しく掲載してるよ。ステップ5までの段階をふんで、どのようなルールでコード構成音が決定されるかを明確にしたので、こういう風に書けば第1音の高さはどうなるのか、第4音になぜこの音が入ってるのか、なぜこのコードは第2音が空になってるのか、などの理屈がわかると思うyo これを明確化することでスクリプトも曖昧さが消えて、厳密に動かすようにできたのでよかったyo 通常の和音理論とかとは異なる扱いもあると思うけど、あくまでこれはJamで動かしやすいように定義してるので、アルペジオの都合上4音にしたいとか、音量バランスをとるためとか、色々わけあってややこしいことをしているので、そのへんは理解してくれyo(含み笑)
ほかはまあ小さい変更だよ。ただ、ちゃんと動作するかの確認はたいへんなんだけどねw(苦笑) 今回のデモソングは「フリーバード」もどきだyo こいつのCループを42回やりたいという人にも対応できるようにループ回数のセレクタを上限50回にしたyo(呆れ笑) 画面上ではたった12小節しかないデータで10分間の長い曲のオケトラックがだいたいできちゃうんだから、Zkun Jamの威力はもの凄いでしょ?(感心笑)
さすがにこれで当面の大きなバージョンアップはやり尽くした感があるyo あとはバグ取りと動作の安定、内部処理の最適化などをしばらくは詰めていこうと思うyo マニュアルを完成させてサイトリンクの形で埋め込むのもやるだろうね。おそらくまだまだバグはあると思うので、長めの曲でも作りながらテストをしていこうと思うyo いやあオツカレ、オツカレww(打ち上げ笑)
★PCKeyBoardパートに打ち込みフレーズを演奏させる機能を付加したyo
★コード指定の記述方法のルールを明確にしたyo
★エンディング時のテンポ指定だったE1-E3を曲中で自由に使えるR1-R3に変更したyo
★フレーズエディター(旧ベースエディター)でキーボード音での再生も可能になったyo
★作成可能小節数128、ループ回数50回、など各種カウンター数を増量w
これまでBassパートのOriginal Playの時にのみ利用していた打ち込みテキストを、KeyBoardパートでも共用で読み込めるようにして、モノモードの発音ではあるけれどもう1つメロディー楽器を鳴らすことができるようになったyo 使い方は各小節ブロック内にあるPianoパートのプレイモード変更を行う緑色のセレクタで選択するだけだyo 従来の「OFF」「Chord」「Arpeggio」「曲追従」の下に、新たに「OFF+KB」「Cho.+KB」「Arp.+KB」という選択肢が追加されてるよ。この3つのどれかを選べばその小節でKeyBoardパートがONになり、Pianoパートも「OFF」「Cho.」「Arp.」のどれかで演奏されるという仕組みだよ。ピアノに間借りしてるけど動作はベースに似てるというややこしいパートの誕生だyo ベースと全く共通に手入力打ち込みもできるし、エディターでの修正・転送もできるyo 同じ小節でベースパートも同じテキストを読んで同時演奏させることもできるよ。その場合ユニゾンになるので、パンを左右に振って鳴らせば効果的かも。音域が合わない場合はKeyBoardパートのオクターブ指定で調整すればいいyo なかなかよく考えられてるだろ?(一昨日思いついた笑)
コード表記については、Jamの画面下の手引きに詳しく掲載してるよ。ステップ5までの段階をふんで、どのようなルールでコード構成音が決定されるかを明確にしたので、こういう風に書けば第1音の高さはどうなるのか、第4音になぜこの音が入ってるのか、なぜこのコードは第2音が空になってるのか、などの理屈がわかると思うyo これを明確化することでスクリプトも曖昧さが消えて、厳密に動かすようにできたのでよかったyo 通常の和音理論とかとは異なる扱いもあると思うけど、あくまでこれはJamで動かしやすいように定義してるので、アルペジオの都合上4音にしたいとか、音量バランスをとるためとか、色々わけあってややこしいことをしているので、そのへんは理解してくれyo(含み笑)
ほかはまあ小さい変更だよ。ただ、ちゃんと動作するかの確認はたいへんなんだけどねw(苦笑) 今回のデモソングは「フリーバード」もどきだyo こいつのCループを42回やりたいという人にも対応できるようにループ回数のセレクタを上限50回にしたyo(呆れ笑) 画面上ではたった12小節しかないデータで10分間の長い曲のオケトラックがだいたいできちゃうんだから、Zkun Jamの威力はもの凄いでしょ?(感心笑)
さすがにこれで当面の大きなバージョンアップはやり尽くした感があるyo あとはバグ取りと動作の安定、内部処理の最適化などをしばらくは詰めていこうと思うyo マニュアルを完成させてサイトリンクの形で埋め込むのもやるだろうね。おそらくまだまだバグはあると思うので、長めの曲でも作りながらテストをしていこうと思うyo いやあオツカレ、オツカレww(打ち上げ笑)
画面の上にいつも表示してるPCキーボードのパートにさせればいいじゃないかと、テレビを見ててふと思いついたyo 「コード」か「オリジナル」か、みたいに選択させるとオリジナルを演奏させてる間だけコードが途切れてしまうよねw まあ、そこは単音弾きだけなんだよと言えばそこまでだけど、いっそのこと普段遊ばせているPCキーボードパートに再生させるだけで、コードもアルペジオも別途鳴らせるし、同じ音色に指定すれば複雑な小節内演奏ができているようにも聴こえるよね。これは利用しない手はないんじゃないかなw
実はもうすでに「Original」で鳴らせるように改造済みで、すでにちゃんと動いてるんだけどne これでも悪くはないんだけど、むしろ上記のような動作のほうがより汎用的に使いやすいと思うのでもう一歩前進させることにするyo
やればやるほど「こうしたほうが」と思うことが出てくるよne くれぐれも複雑過ぎてわかりにくくするような改悪だけはしないように気をつけたいne とにかく、わからなければ何も変更しなくともシンプルに動くという基本だけは崩さないようにするyo(含み笑)
実はもうすでに「Original」で鳴らせるように改造済みで、すでにちゃんと動いてるんだけどne これでも悪くはないんだけど、むしろ上記のような動作のほうがより汎用的に使いやすいと思うのでもう一歩前進させることにするyo
やればやるほど「こうしたほうが」と思うことが出てくるよne くれぐれも複雑過ぎてわかりにくくするような改悪だけはしないように気をつけたいne とにかく、わからなければ何も変更しなくともシンプルに動くという基本だけは崩さないようにするyo(含み笑)