zkunがいろんなことを横書きするブログのようですw(含み笑)
講座も第6回まで完成し、最初のサビの手前までこぎつけたyo 次はいよいよハモリパートに挑戦だne ポケミクで再生するのと内蔵音源で再生するのとでは、ここで雲泥の違いが生じるんだよne(大苦笑)
内蔵音源で鳴らしてる人はパート1はフルート音色で鳴ってるだけなので、歌詞もくそも関係無いw ただの音程演奏なので、もし上下別のフレーズを鳴らしたければ、ドならド、ミならミの音を入力しておけば、ふつうに2つの音程がなるという当たり前すぎる演奏は聴きなれちゃってて何の驚きもないよne(苦笑) しかも、ここでは単音しか打ち込まないので、内蔵音源の人はフルート単音を聴くだけになるyo(大苦笑)
ところが、ポケミク再生の場合、基本的にモノ発声なので原則1音程しか出せない。それに対してXGエフェクトのピッチチェンジをかけてやることで、2音程出すことができるんだけど、どういう音程幅で鳴らすかは、エクスクルーシブで値を送ってやらないといけないので、初心者にはけっこう敷居が高い。ましてや、実際の楽曲のハモリでは、音程差が変化していくので、それをリアルタイムでコントロールしようと思ったら、そうとうめんどくさい仕込みをしないとダメだというのが現実だよne ところがそれを簡単な制御記号を打ち込むだけで、WEBアプリ上でコントロールできてしまうのが、おそるべきzkunテクノロジーの威力だyo 「とおりゃんせ」のデモソングで示してみせたように、小節中であってもその音程幅を途中変更指示できてしまう超絶テクノロジーだyo まあ、ポケミク自身の処理速度のカベがあるので、どこまで速いフレーズに対応できるかはやってみないとわからないけど、小節単位での切り替え程度なら余裕でこなしているので、調の設定、キーの設定と合わせて指定頻度を極力減らす工夫をすれば、なんとか対応できるんじゃないかなとは思っているけどne あとTAKUROの音程も多少いいかげんなところがあるので、それも込みでの再現ということにして押し切るとかne(失笑)
非常に高度なことに挑戦しているので、みんなもぜひポケミク本体を購入して接続してみてくれw zkunテクノロジーを使えば、こんなにも手軽に歌わせることができるのかと目からウロコなこと間違いないからne(微笑)
講座第7回もうpしてまぁすw(ありまぁす笑) とりあえずハモり部分も打ち込み完了し、1番までが終わったよ。結局、すでに音域がかなり高い部分でハモってるので、四度以上でかけるとロボチックな声になってしまうので、キーなりの三度上と後半は三度下でとどめておいたyo(微笑) そして新たに小節の途中で「ハーモナイズOFF」とする「Y」という記号もひそかに追加しておいたyo(含み笑) まあ、それなりに原曲のイメージを生かしたハモリを表現できてるんじゃないかと思うyo さすがzkunテクノロジーだne(凄過ぎ笑)
続きは2番にあたる部分なので、ループ機能を使って#24小節に戻って「Vo-2」トラックを新たに付加して、2回目演奏時のボーカルを書き込んでいき、#28小節まで歌ったらジャンプ機能を使って後方の#45小節以降につないで間奏部分へいくという段取りだyo いやあ、Zkun Tabの設計思想は完璧に機能してると思わないかい?(超絶笑)
内蔵音源で鳴らしてる人はパート1はフルート音色で鳴ってるだけなので、歌詞もくそも関係無いw ただの音程演奏なので、もし上下別のフレーズを鳴らしたければ、ドならド、ミならミの音を入力しておけば、ふつうに2つの音程がなるという当たり前すぎる演奏は聴きなれちゃってて何の驚きもないよne(苦笑) しかも、ここでは単音しか打ち込まないので、内蔵音源の人はフルート単音を聴くだけになるyo(大苦笑)
ところが、ポケミク再生の場合、基本的にモノ発声なので原則1音程しか出せない。それに対してXGエフェクトのピッチチェンジをかけてやることで、2音程出すことができるんだけど、どういう音程幅で鳴らすかは、エクスクルーシブで値を送ってやらないといけないので、初心者にはけっこう敷居が高い。ましてや、実際の楽曲のハモリでは、音程差が変化していくので、それをリアルタイムでコントロールしようと思ったら、そうとうめんどくさい仕込みをしないとダメだというのが現実だよne ところがそれを簡単な制御記号を打ち込むだけで、WEBアプリ上でコントロールできてしまうのが、おそるべきzkunテクノロジーの威力だyo 「とおりゃんせ」のデモソングで示してみせたように、小節中であってもその音程幅を途中変更指示できてしまう超絶テクノロジーだyo まあ、ポケミク自身の処理速度のカベがあるので、どこまで速いフレーズに対応できるかはやってみないとわからないけど、小節単位での切り替え程度なら余裕でこなしているので、調の設定、キーの設定と合わせて指定頻度を極力減らす工夫をすれば、なんとか対応できるんじゃないかなとは思っているけどne あとTAKUROの音程も多少いいかげんなところがあるので、それも込みでの再現ということにして押し切るとかne(失笑)
非常に高度なことに挑戦しているので、みんなもぜひポケミク本体を購入して接続してみてくれw zkunテクノロジーを使えば、こんなにも手軽に歌わせることができるのかと目からウロコなこと間違いないからne(微笑)
講座第7回もうpしてまぁすw(ありまぁす笑) とりあえずハモり部分も打ち込み完了し、1番までが終わったよ。結局、すでに音域がかなり高い部分でハモってるので、四度以上でかけるとロボチックな声になってしまうので、キーなりの三度上と後半は三度下でとどめておいたyo(微笑) そして新たに小節の途中で「ハーモナイズOFF」とする「Y」という記号もひそかに追加しておいたyo(含み笑) まあ、それなりに原曲のイメージを生かしたハモリを表現できてるんじゃないかと思うyo さすがzkunテクノロジーだne(凄過ぎ笑)
続きは2番にあたる部分なので、ループ機能を使って#24小節に戻って「Vo-2」トラックを新たに付加して、2回目演奏時のボーカルを書き込んでいき、#28小節まで歌ったらジャンプ機能を使って後方の#45小節以降につないで間奏部分へいくという段取りだyo いやあ、Zkun Tabの設計思想は完璧に機能してると思わないかい?(超絶笑)
PR
なかなか快調に打ち込めてるじゃなイカ? その後バグらしいバグも出て来ず、実に安定して動いてくれてるyo やはりMacとポケミクで使うのが一番だne(微笑) タブレットはなんだかんだでしょっちゅうWindowsのリフレッシュをするはめになるし、どうも信頼性が低くていまいちあてにしづらいw(苦笑) 講座が終わったら、表裏コード機能と、カスタムアルペジオの拡張と、スキン機能をつくって、それをPro v1.2として出して、それをベースにデチューンした素Tab v1.3を出そうと思うyo そのあとで新プロジェクトに着手する予定だけど、その前にもう一つちょっとしたものを作るかもしれないw というのも、NSX LIVEを放置しているので、あれもちょっとこれまでの成果を反映させて多少豪華な感じにしてv2にしておこうかと思うからne(含み笑) まあ、そのあたりは柔軟に予定を変更していくと思うyo あと、ここにきてテキスト処理関係の物凄いプログラムのアイデアを思いついたので、それもぜひ実現したいなと思い始めているところだyo zkunがどんなに天才でも、さすがに大きなプログラムを複数同時に開発することは無理なので、どういう予定で着手していこうか悩ましい限りだyo(天才特有の悩み笑)
打ち込み開始と同時に怒濤のようなバグ発見の嵐のようですw(大苦笑) まあこれは通過儀礼ということでw(失笑) 順調にすべて解消していってるので、現在は「講座」のPro v1.1が最良のバージョンのようですw てか、素Tabはもう一度、Pro v1.1以降から改めてダウングレードし直したほうがいいくらい、いろいろ細かい部分も含めて修正が入ってるようですw かつ、またしてもVivo Tabが音源認識しなくなっているので、実際のところタブレットでの運用はハード的なトラブルが多くて快適ではないような気がしてきてるようですw(呆れ笑) タブレットで使える、ということが開発の出発点でしたが、現在では究極の後継ソフトとして使えるProの完成度を高めることを優先としているようですw(含み笑) まあ、電車での長い通勤時間のヒマつぶしにと考えて始めたんだけど、電車はけっこう落ち着かないし、寝てたり、考え事をしてることも多いので、自分にとってはあまり必要性を感じなくなってきたというのもあるけどne(気まぐれな笑) まあ、技術的な興味から、最終的にきちっとした形で、素軽く動く素Tabは出すけど、ボク自身がそれを電車で使うかは微妙かもw(微笑)
バグを大量につぶして、今のv1.1はけっこう順調に打ち込みができてるようですw プログラム制作中は基本的にスクリプトに専念しているので、曲を長々とうちこんで動作確認をするということはしないようですw なので、どうしても既存のデータを読み込ませてちゃんと再生するかどうかのチェックが主になるようですw なので、こうしてあらためて本格的に打ち込みを開始してみると、思わぬ落とし穴があちこちに残っていたことに気付くようですw(大失笑) 制作者本人がユーザーとしてじっくり使ってみることにまさるバグ取りは無いようですw(納得笑)
今回は極力ブラックボックス化しないで、データをいつでも変更できる形式で管理しようという方針でつくってきたyo v2.2でデモ「ありのままで」を作ったけど、あれはブラックボックス方式での最高傑作だったと言えると思うyo 今回のデモ「SOUL LOVE」はオープン方式での新しい基準として示せるように、かっちりと仕上げてみようと思うyo zkunは常に先を見据えているようですw(さすがな笑)
バグを大量につぶして、今のv1.1はけっこう順調に打ち込みができてるようですw プログラム制作中は基本的にスクリプトに専念しているので、曲を長々とうちこんで動作確認をするということはしないようですw なので、どうしても既存のデータを読み込ませてちゃんと再生するかどうかのチェックが主になるようですw なので、こうしてあらためて本格的に打ち込みを開始してみると、思わぬ落とし穴があちこちに残っていたことに気付くようですw(大失笑) 制作者本人がユーザーとしてじっくり使ってみることにまさるバグ取りは無いようですw(納得笑)
今回は極力ブラックボックス化しないで、データをいつでも変更できる形式で管理しようという方針でつくってきたyo v2.2でデモ「ありのままで」を作ったけど、あれはブラックボックス方式での最高傑作だったと言えると思うyo 今回のデモ「SOUL LOVE」はオープン方式での新しい基準として示せるように、かっちりと仕上げてみようと思うyo zkunは常に先を見据えているようですw(さすがな笑)
やると言ったらすぐ始めるのがzkunだyo さっそく第1回講座を作ったようですw まずは手始めにイントロの最初の部分を作ったyo カスタムアルペジオ機能を使って、SOUL LOVEのあのイントロのアルペジオを全編にわたってラクして演奏させようというのが構想の柱にあるyo そのためにスコアの2小節分をZkun Tab Proの1小節分に見立てて、半分の速度で演奏するというワザを使ってるyo まあ、それで無理な部分はテンポ「x2」を指定して通常の尺で作るという切り替えをするというわけだyo いきなりから高度過ぎることをやるな!と言われそうだけど、Zkun Tab Proは高度なワザを駆使しまくりながら使うものだからne レベルは常に高め高めで設定して妥協はしないyo キミたちが必死でついて来さえすればいいことだからne(スパルタ笑)
それからカスタムアルペジオ機能にちょっと改造をほどこしたyo まあ、これは現状だとSOUL LOVE専用仕様になってしまうので、そういうジョーカー的に使える枠を正式に2つくらい作って、そこは自由にアサインできるという設計に進化させるのがいいだろうne 何を言ってるかわかるかな? そして、どこをどう改造したか、見てわかるかな? あまりにzkunのレベルが高過ぎるのでいちいち説明してやっていたら日が暮れてまた日が昇るようですw(苦笑) まあ、この部分については講座の途中でさらに変更するとややこしいので、v1.1ではこのまま押し切って、Pro v1.2を出すときに正式に完全上位互換版として自由設計のものに切り替えようと思うyo(微笑)
(あと細かなバグとりをしたので業務メモしておくyo bconのドラムドット表示が6段目が正しく動作してなかったので、素Tabのほうも直しておくこと。配列データには問題なく、bcon表示のみ反映してなかった。)
それからカスタムアルペジオ機能にちょっと改造をほどこしたyo まあ、これは現状だとSOUL LOVE専用仕様になってしまうので、そういうジョーカー的に使える枠を正式に2つくらい作って、そこは自由にアサインできるという設計に進化させるのがいいだろうne 何を言ってるかわかるかな? そして、どこをどう改造したか、見てわかるかな? あまりにzkunのレベルが高過ぎるのでいちいち説明してやっていたら日が暮れてまた日が昇るようですw(苦笑) まあ、この部分については講座の途中でさらに変更するとややこしいので、v1.1ではこのまま押し切って、Pro v1.2を出すときに正式に完全上位互換版として自由設計のものに切り替えようと思うyo(微笑)
(あと細かなバグとりをしたので業務メモしておくyo bconのドラムドット表示が6段目が正しく動作してなかったので、素Tabのほうも直しておくこと。配列データには問題なく、bcon表示のみ反映してなかった。)
とりあえず動作的には一通りすべて完成したと思うので、v1.0としてリリースするyo いつまでもベータ版だと言ってるのも潔くないからne(失笑) とりあえずこのv1.0にはコンバートしたデモソングをいっぱい入れてあるので、それをポケミクで再生してみるだけでも結構おもしろいと思うyo(含み笑)
ただ、けっこうデータ容量も食ってるので、v1.1としてデモソングをカットしたバージョンも同時に出すyo こいつを使って、「Zkun Tabの使い方講座」を展開しようと思うyo デモソングを段階をふんで作っていきながら、その途中段階のファイルをデモソングとして掲載していくyo そうすれば、どういう作業をしたらどこまでのデータができるかというのもわかりやすいだろうからne 究極のヘルプシステムに続いて、究極の使い方講座まで搭載しちゃうという親切ぶりだyo さすがzkunは考えることの次元が違うようですw(凄過ぎ笑)
制作するデモソングとして、GLAY「SOUL LOVE」を取り上げてみるyo スコアを完全忠実に再現するというよりは、Zkun Tab用にうまく改変しながら、いかに効率よくつくるかを主眼にして進めていくyo その過程で、もしかしたら未発見のバグが見つかるかもしれないne(苦笑) その場合は、講師本人がプログラム制作者なので、その場でバグ修正し、もしかしたら、そこでさらに便利な機能をついでに付加しちゃうかもしれないyo(微笑) バグとりとデモ制作も兼ねて、使い方講座まで開いてしまうzkunはまさに経営の神様のような人のようですw(カリスマ笑)
ただ、けっこうデータ容量も食ってるので、v1.1としてデモソングをカットしたバージョンも同時に出すyo こいつを使って、「Zkun Tabの使い方講座」を展開しようと思うyo デモソングを段階をふんで作っていきながら、その途中段階のファイルをデモソングとして掲載していくyo そうすれば、どういう作業をしたらどこまでのデータができるかというのもわかりやすいだろうからne 究極のヘルプシステムに続いて、究極の使い方講座まで搭載しちゃうという親切ぶりだyo さすがzkunは考えることの次元が違うようですw(凄過ぎ笑)
制作するデモソングとして、GLAY「SOUL LOVE」を取り上げてみるyo スコアを完全忠実に再現するというよりは、Zkun Tab用にうまく改変しながら、いかに効率よくつくるかを主眼にして進めていくyo その過程で、もしかしたら未発見のバグが見つかるかもしれないne(苦笑) その場合は、講師本人がプログラム制作者なので、その場でバグ修正し、もしかしたら、そこでさらに便利な機能をついでに付加しちゃうかもしれないyo(微笑) バグとりとデモ制作も兼ねて、使い方講座まで開いてしまうzkunはまさに経営の神様のような人のようですw(カリスマ笑)
Viewメニューが一応全部動くようになったyo そして、旧オートベース記号を正しく再生できるようにしたyo それを確認できるのがデモ「Dom7 Demo」だyo これはJam4.9に収録してたデモなんだけど、旧オートベース記号に対応するまではコンバートできないなと思ってたやつだyo いよいよこれで旧ファイル関係は全部網羅したことになるne(素晴らしい笑)
ついでに小さな変更をほどこしたyo 制御記号の書き方で、これまでハーモナイズ記号は「&」を、オートベース記号は「%」を、必ず先頭に書く必要があったけど、Tabシリーズからは専用枠ができたので、それを廃止したyo 直接パラメータを書けばよくなったyo ただし、ピアノパートとギターパートの制御記号欄には、2種類の記号が入るので、アルペジオなら「*」を、ストロークなら「$」を先頭に書くのは従来どおりだyo
とりあえずここまで出来上がったので、新デモ曲でも打ち込みながら、未完成メニューの残りを完成させて、操作バグをチェックして、ヘルプの残りも書いて、いよいよ完成版v1.0としてリリースするyo 前から言ってた「表裏コード機能」は難しいと感じる人が多いような気がするので、とりあえず現段階ではボツにしようと思うyo(苦笑) もっと先に搭載するかもしれないけど、今じゃないなと思ってw(妥当笑) そして、Proの完成版をデチューンした素Tab v1.3も出して、年内は終了としようかw いやあ、今年もよく開発したyo あまりにも凄過ぎて、誰もついてこられなくなってる感があるけどne(失笑) まあ、Pro版が完成するので、これの使い方講座みたいな感じで宣伝・啓発を展開していくことになると思うyo 言っておくけど、これは超絶凄いソフトだからne(自画自賛笑)
ついでに小さな変更をほどこしたyo 制御記号の書き方で、これまでハーモナイズ記号は「&」を、オートベース記号は「%」を、必ず先頭に書く必要があったけど、Tabシリーズからは専用枠ができたので、それを廃止したyo 直接パラメータを書けばよくなったyo ただし、ピアノパートとギターパートの制御記号欄には、2種類の記号が入るので、アルペジオなら「*」を、ストロークなら「$」を先頭に書くのは従来どおりだyo
とりあえずここまで出来上がったので、新デモ曲でも打ち込みながら、未完成メニューの残りを完成させて、操作バグをチェックして、ヘルプの残りも書いて、いよいよ完成版v1.0としてリリースするyo 前から言ってた「表裏コード機能」は難しいと感じる人が多いような気がするので、とりあえず現段階ではボツにしようと思うyo(苦笑) もっと先に搭載するかもしれないけど、今じゃないなと思ってw(妥当笑) そして、Proの完成版をデチューンした素Tab v1.3も出して、年内は終了としようかw いやあ、今年もよく開発したyo あまりにも凄過ぎて、誰もついてこられなくなってる感があるけどne(失笑) まあ、Pro版が完成するので、これの使い方講座みたいな感じで宣伝・啓発を展開していくことになると思うyo 言っておくけど、これは超絶凄いソフトだからne(自画自賛笑)
エレメントの生成は全パーツ可能になってるw データの読み込みはボーカルパートまでw データの編集はまだ未対応w 作り始めたらあとはコピペコピペなんだけど、なんせ量が多いw(苦笑) まあ、あせらずやっていきますw やってる途中で、いろんな既存パーツの細かな不具合も発見してバグとりしながら進めているので、ますますペースがのろいようですw(失笑)
選挙が終わるまでは日程的にも体力的にも気分的にも厳しいので、せめてイライラを少しでも軽減するように努めるようですw(含み笑) Viewメニューができたら、先に表/裏コード機能をつくり、次にオートベース記号の再対応スクリプトを作り、その後で素Tab v1.3を出して、年内の予定を終了としようかw スキン変更とかは年始のひまなときにやるかw 新プロジェクトは成人式あたりからスタートするかなw 年末年始のzkun開発スケジュールのようでしたw(孤高の天才笑)
翌日でーすw(ありまぁす笑) Viewメニューのデータ読み込みはすべて対応完了したようです。編集はまだつくってないようですw とりあえず見るだけなら全部見られるようになったけど、これってあらためて使ってみると、物凄いスグレ機能だよne 変化を見たい項目だけいくつでもチョイスして、それらだけを並べて集中的に見ることができるので、v2.2などの広大な画面で表示する方式よりも、むしろ見やすく管理しやすいよne この仕組をばっちり構築したzkunはやっぱりさすが過ぎるんじゃないかなw なにごとも、ただクチで言ってるだけじゃだめだよne zkunのようにしっかり形にし続けていくことこそ、このデジタルの時代に必要なことだと思うんだよne(大事な笑)
10日でーすw(ありまぁす笑) 編集対応もピアノパートのところまで完成したようですw ピアノコード、ピアノ制御の部分のスクリプトはなにげに物凄く高度なことをやってるんだけど、そういうことは誰も気付かないようですw(含み笑) 急げば午前中に残りをできなくもないんだけど、疲れやストレスを残したくないのであえて余裕をもってここまでで今日は終えるようですw(達人の仕事の流儀笑) zkunにとってプログラミングは、もはや武道や茶道のように完成された1つの芸術の領域になっているようですw(凄過ぎ笑)
選挙が終わるまでは日程的にも体力的にも気分的にも厳しいので、せめてイライラを少しでも軽減するように努めるようですw(含み笑) Viewメニューができたら、先に表/裏コード機能をつくり、次にオートベース記号の再対応スクリプトを作り、その後で素Tab v1.3を出して、年内の予定を終了としようかw スキン変更とかは年始のひまなときにやるかw 新プロジェクトは成人式あたりからスタートするかなw 年末年始のzkun開発スケジュールのようでしたw(孤高の天才笑)
翌日でーすw(ありまぁす笑) Viewメニューのデータ読み込みはすべて対応完了したようです。編集はまだつくってないようですw とりあえず見るだけなら全部見られるようになったけど、これってあらためて使ってみると、物凄いスグレ機能だよne 変化を見たい項目だけいくつでもチョイスして、それらだけを並べて集中的に見ることができるので、v2.2などの広大な画面で表示する方式よりも、むしろ見やすく管理しやすいよne この仕組をばっちり構築したzkunはやっぱりさすが過ぎるんじゃないかなw なにごとも、ただクチで言ってるだけじゃだめだよne zkunのようにしっかり形にし続けていくことこそ、このデジタルの時代に必要なことだと思うんだよne(大事な笑)
10日でーすw(ありまぁす笑) 編集対応もピアノパートのところまで完成したようですw ピアノコード、ピアノ制御の部分のスクリプトはなにげに物凄く高度なことをやってるんだけど、そういうことは誰も気付かないようですw(含み笑) 急げば午前中に残りをできなくもないんだけど、疲れやストレスを残したくないのであえて余裕をもってここまでで今日は終えるようですw(達人の仕事の流儀笑) zkunにとってプログラミングは、もはや武道や茶道のように完成された1つの芸術の領域になっているようですw(凄過ぎ笑)
ていうか、予測どおり外的な要因で疲労がたまりまくっていて、じっくりまとまった時間をプログラミングにあてる余裕がないんだよne(苦笑) zkunの場合、アクシデントまできちんと予測済みなところが凄過ぎるんだけどne まあ、どっちみち無理に完成を急いだところで完成品をのんびり使ってる時間もとれなさそうなので、こういう場合は急いでストレスをためる必要性はないようですw(妥当笑)
あとは細かい部分を足し込むだけなので、zkunの開発者魂としては、すでに次のプロジェクトに重心が移っているようですw(せっかちな笑) 1月から着手しようと考えているのは、リアルタイムセッションアプリのようですw 昔から、そんなことができたら凄いな、と思いつつ、その実現方法がまったくわからなかったものの1つのようですw ただ、今ならなんとなくゴールまでの道筋が見えているようですw どの程度のものになるか、反応速度は大丈夫なのか、という疑問はあるとしてもですw(苦笑)
MIDIキーボードからの入力に反応させるのがオーソドックスなパターンでしょう。ただ、ボクは鍵盤奏者ではないので、それだけだと楽しくないようですw なので、GKピックアップでギター演奏を拾って、GRからMIDI信号を吐き出させて、それをUSB-MIDIインターフェイスで変換して、パソコンのUSBに送り込み、それをJazz-Pluginで受信させて、何弦でどの音高を弾いたかを認識させますw ここまでは、通常のDAWなんかに取り込むときも同じことなんですが、問題はMIDIデータ化するときの精度の悪さですw もしかしたらそこを改善させるために、最新のGRなりなんなりのRoland製品を調査して買い替えることがあるかもしれませんne(出費笑)
そこから先がキモの部分。今度はリアルタイム処理なので、SMFを作ってそれを再生実行するというかたちではなく、Zkun Beatの時代のようなクロック計算してWaitさせてから、次のリアルタイム発音命令を実行させる方式でいくと思うyo ドラムスはある程度事前に設定したビートを鳴らすのが基本で、フィルインの入れ具合や、パターンの変更をどのように実行するかに関して、ギター演奏内容からなんらかの影響を受けさせるという処理になると思うne それにしたって、あまり奇妙なところでチェンジするわけにもいかないから、ある程度4小節サイクルで回していくという大枠の中での自由度にすると思うne つまり、ドラムス部分に関しては技術的な難しさはほとんどなく、ほぼ、どういうルールにするかという定義づくりの問題になるne
ベースはそうはいかないyo ギターから送られてきたノート情報を拍単位、小節単位でプールさせて、どのコードである可能性があるかを随時判定させて、弾いても大丈夫な音の集合を用意させるyo 母集合さえ決まれば、あとはzkun伝統のオートベース技術でベースラインをアドリブで生成させることが可能なので、そこから先は技術的な問題はまったくないyo つまり、ベースに関しても、単位時間あたりに発音された音高の集合から、どのコードを指定するかというルールづくりが最大のキモになるne そこまでできたなら、それにピアノ伴奏を付加して、コードやアルペジオを鳴らすのはすでにある技術で可能なので朝飯前だよne いずれのパートも、ロジックを考えることはできたとしても、それを具体的に演奏コマンドとして吐き出させる技術も知識もないという人がほとんどじゃないかなw(含み笑) zkunの場合、これまでの積み重ねがあるので、どのようにすれば既存のルーチンを転用して簡単に演奏させられるかがわかっているので、ものすごいアドバンテージだよne 開発を続けているということは、このように絶大なメリットがあるということだne あとに続く中高生のみんなも是非zkunを参考にすることだne 将来、中高生プログラムコンテスト優勝者のコメントで「zkunさんを目標にがんばってきました!」というコメントが聞けるのを楽しみにしてるyo(妄想笑)
まあ、それはいいとして、技術的にはほとんどBeat v2.8までで使ったもので足りる。単位時間あたりのノートを蓄積するのだって、クロックで区切って、その間に受信したメッセージからノートオンの場合だけ、音高の数値を配列変数の要素番号に順に放り込んでいき、時間を締め切ったら、次の子配列に移る、というだけの処理だよne その後をどう処理するかだけだne
単純に来た音高をその時間中は全部使っていいとするだけなら、アホみたいに簡単なロジックになるne まあ、試作段階ではそのパターンのやつも作ってみようw ただ、音楽ルールはそこまで単純ではないよne(苦笑) 音楽の授業なんかでも少しかじったルールがあると思うけど、それらもあくまで、あらかじめ調性記号がわかっている場合に、その小節では何が使えるかというような説明じゃなかったかな? 事前になにもわかってない状態でいきなり「レミファソラー#ドーー」などと音の羅列が来たときに、はたしてどれをコード構成音、どれを経過音として処理するかは、さまざまな解釈が可能で、前後関係があってはじめてどれが正解になるかが決まるものだよne それをリアルタイム処理でどのようにつじつまを合わせて自然な感じで聴けるようにするかがポイントだろうne
おそらく、より単純な調性、より単純なコードの優先順位を高くすることで、ふつうの素人演奏家が送ってくるノートデータに対して、適切なコードが割りふれる可能性が高くなるような気がするよne(素人の限界を逆手にとる笑) 真っ先にヒットするものがあれば、それに即決させていくという方法で記述していけば、内容もいい線いくし、処理も速いだろうne(微笑) 基本的にそういう感じで構想していってみようかw(方針は決まった笑)
それにしても、なかなか凄い動作になると思うyo いままでありそうでなかったジャンルだからne ポータブルキーボードなんかで、半自動で伴奏が追従してくるなんていうのはあったと思うけど、ほとんどお遊びでしかなかったからne しかも、ギターを弾いて、それについてこさせるなんていうのは、これまでに見たことも聞いたこともないので、これが実際にちゃんと動いたときの感動はなかなか大きいものがあるんじゃないかなと思うne
処理自体はリアルタイム発音になるけど、受信したデータをレコーディングする技術もあるし、伴奏側で何をしたかもすべてログに残せるので、やろうと思えば、今やったセッションをSMFで吐き出して、というリクエストに応えられないこともないだろうne 多少手間ではあるけど。最終的にはその機能もつけるという前提でシステム設計しようじゃないかw(納得笑) 1月からの新プロジェクトはなかなか楽しみなものになりそうですw(含み笑)
あとは細かい部分を足し込むだけなので、zkunの開発者魂としては、すでに次のプロジェクトに重心が移っているようですw(せっかちな笑) 1月から着手しようと考えているのは、リアルタイムセッションアプリのようですw 昔から、そんなことができたら凄いな、と思いつつ、その実現方法がまったくわからなかったものの1つのようですw ただ、今ならなんとなくゴールまでの道筋が見えているようですw どの程度のものになるか、反応速度は大丈夫なのか、という疑問はあるとしてもですw(苦笑)
MIDIキーボードからの入力に反応させるのがオーソドックスなパターンでしょう。ただ、ボクは鍵盤奏者ではないので、それだけだと楽しくないようですw なので、GKピックアップでギター演奏を拾って、GRからMIDI信号を吐き出させて、それをUSB-MIDIインターフェイスで変換して、パソコンのUSBに送り込み、それをJazz-Pluginで受信させて、何弦でどの音高を弾いたかを認識させますw ここまでは、通常のDAWなんかに取り込むときも同じことなんですが、問題はMIDIデータ化するときの精度の悪さですw もしかしたらそこを改善させるために、最新のGRなりなんなりのRoland製品を調査して買い替えることがあるかもしれませんne(出費笑)
そこから先がキモの部分。今度はリアルタイム処理なので、SMFを作ってそれを再生実行するというかたちではなく、Zkun Beatの時代のようなクロック計算してWaitさせてから、次のリアルタイム発音命令を実行させる方式でいくと思うyo ドラムスはある程度事前に設定したビートを鳴らすのが基本で、フィルインの入れ具合や、パターンの変更をどのように実行するかに関して、ギター演奏内容からなんらかの影響を受けさせるという処理になると思うne それにしたって、あまり奇妙なところでチェンジするわけにもいかないから、ある程度4小節サイクルで回していくという大枠の中での自由度にすると思うne つまり、ドラムス部分に関しては技術的な難しさはほとんどなく、ほぼ、どういうルールにするかという定義づくりの問題になるne
ベースはそうはいかないyo ギターから送られてきたノート情報を拍単位、小節単位でプールさせて、どのコードである可能性があるかを随時判定させて、弾いても大丈夫な音の集合を用意させるyo 母集合さえ決まれば、あとはzkun伝統のオートベース技術でベースラインをアドリブで生成させることが可能なので、そこから先は技術的な問題はまったくないyo つまり、ベースに関しても、単位時間あたりに発音された音高の集合から、どのコードを指定するかというルールづくりが最大のキモになるne そこまでできたなら、それにピアノ伴奏を付加して、コードやアルペジオを鳴らすのはすでにある技術で可能なので朝飯前だよne いずれのパートも、ロジックを考えることはできたとしても、それを具体的に演奏コマンドとして吐き出させる技術も知識もないという人がほとんどじゃないかなw(含み笑) zkunの場合、これまでの積み重ねがあるので、どのようにすれば既存のルーチンを転用して簡単に演奏させられるかがわかっているので、ものすごいアドバンテージだよne 開発を続けているということは、このように絶大なメリットがあるということだne あとに続く中高生のみんなも是非zkunを参考にすることだne 将来、中高生プログラムコンテスト優勝者のコメントで「zkunさんを目標にがんばってきました!」というコメントが聞けるのを楽しみにしてるyo(妄想笑)
まあ、それはいいとして、技術的にはほとんどBeat v2.8までで使ったもので足りる。単位時間あたりのノートを蓄積するのだって、クロックで区切って、その間に受信したメッセージからノートオンの場合だけ、音高の数値を配列変数の要素番号に順に放り込んでいき、時間を締め切ったら、次の子配列に移る、というだけの処理だよne その後をどう処理するかだけだne
単純に来た音高をその時間中は全部使っていいとするだけなら、アホみたいに簡単なロジックになるne まあ、試作段階ではそのパターンのやつも作ってみようw ただ、音楽ルールはそこまで単純ではないよne(苦笑) 音楽の授業なんかでも少しかじったルールがあると思うけど、それらもあくまで、あらかじめ調性記号がわかっている場合に、その小節では何が使えるかというような説明じゃなかったかな? 事前になにもわかってない状態でいきなり「レミファソラー#ドーー」などと音の羅列が来たときに、はたしてどれをコード構成音、どれを経過音として処理するかは、さまざまな解釈が可能で、前後関係があってはじめてどれが正解になるかが決まるものだよne それをリアルタイム処理でどのようにつじつまを合わせて自然な感じで聴けるようにするかがポイントだろうne
おそらく、より単純な調性、より単純なコードの優先順位を高くすることで、ふつうの素人演奏家が送ってくるノートデータに対して、適切なコードが割りふれる可能性が高くなるような気がするよne(素人の限界を逆手にとる笑) 真っ先にヒットするものがあれば、それに即決させていくという方法で記述していけば、内容もいい線いくし、処理も速いだろうne(微笑) 基本的にそういう感じで構想していってみようかw(方針は決まった笑)
それにしても、なかなか凄い動作になると思うyo いままでありそうでなかったジャンルだからne ポータブルキーボードなんかで、半自動で伴奏が追従してくるなんていうのはあったと思うけど、ほとんどお遊びでしかなかったからne しかも、ギターを弾いて、それについてこさせるなんていうのは、これまでに見たことも聞いたこともないので、これが実際にちゃんと動いたときの感動はなかなか大きいものがあるんじゃないかなと思うne
処理自体はリアルタイム発音になるけど、受信したデータをレコーディングする技術もあるし、伴奏側で何をしたかもすべてログに残せるので、やろうと思えば、今やったセッションをSMFで吐き出して、というリクエストに応えられないこともないだろうne 多少手間ではあるけど。最終的にはその機能もつけるという前提でシステム設計しようじゃないかw(納得笑) 1月からの新プロジェクトはなかなか楽しみなものになりそうですw(含み笑)
v1.2でフルパート再生可能にしたけど、やはり重いw(苦笑) というか、タブレットでは「処理が重い時が多い」と言うべきか。内蔵音源には荷が重いと判断を下すべきだろうw なので、挙動を一部変更してv1.3を出そうと思うyo
まず考えるのは、特に小節のアタマで処理が重いので、音色、音量変更の処理ルーチンの実行開始タイミングをもう少し前倒ししてみるyo これはProのほうで、ボーカルパートの歌詞データ送信の処理が間に合わなくて小節頭の歌詞が前の文字のまま出てしまう現象が発生したときに、数十クロック前倒しすることで解消できたため、それと同様の改善効果を期待してみるyo
それでは解決が無理な場合、PrefでRec, Polyパートの表示をOFFにしてるときは、両パートの再生もされないようにしてみるyo SMFを内部で生成する時点で除外するようにするので、音色、音量変更処理も含めて、両パートをすべて切り離して再生するというわけだyo この場合でも、ファイル上は完全にそのまま保持させるので、ここで書き出したテキストをProで読み込んで再生すれば、ちゃんと全パート再生されるというわけだyo
どちらになるにせよ、あくまで素Tabでは軽く動作させることができてこそなので、旧互換2パートにつき合い過ぎて重くなるのは本末転倒だからne(妥当笑)
Proのほうは、Viewメニューの中身を鋭意作成中だyo 試作部分ではバッチリ動いているので、これを全パーツに対して記述していくだけだyo まあ、それが結構な手間なんだけどne(大苦笑) これができあがると、制作時の操作性が劇的に変わってくるので、大きな意味をもつメニューだと思うyo まあ、クリスマスまでには完成させるという公約は達成できそうだけどne(含み笑)
まず考えるのは、特に小節のアタマで処理が重いので、音色、音量変更の処理ルーチンの実行開始タイミングをもう少し前倒ししてみるyo これはProのほうで、ボーカルパートの歌詞データ送信の処理が間に合わなくて小節頭の歌詞が前の文字のまま出てしまう現象が発生したときに、数十クロック前倒しすることで解消できたため、それと同様の改善効果を期待してみるyo
それでは解決が無理な場合、PrefでRec, Polyパートの表示をOFFにしてるときは、両パートの再生もされないようにしてみるyo SMFを内部で生成する時点で除外するようにするので、音色、音量変更処理も含めて、両パートをすべて切り離して再生するというわけだyo この場合でも、ファイル上は完全にそのまま保持させるので、ここで書き出したテキストをProで読み込んで再生すれば、ちゃんと全パート再生されるというわけだyo
どちらになるにせよ、あくまで素Tabでは軽く動作させることができてこそなので、旧互換2パートにつき合い過ぎて重くなるのは本末転倒だからne(妥当笑)
Proのほうは、Viewメニューの中身を鋭意作成中だyo 試作部分ではバッチリ動いているので、これを全パーツに対して記述していくだけだyo まあ、それが結構な手間なんだけどne(大苦笑) これができあがると、制作時の操作性が劇的に変わってくるので、大きな意味をもつメニューだと思うyo まあ、クリスマスまでには完成させるという公約は達成できそうだけどne(含み笑)
ようやくNSX JAM v1.0からのコンバート時のバリエーションエフェクトの問題が解決したyo これの原因はとっても単純w v1.0ではバリエーションエフェクトを4つまで使えるように増設したんだけど、そのときに、リターン量は「vari1」のものを共用する仕様になっていたんだyo なんでそうしたのかは覚えてないけど、ともかくそういう仕様なんだからしょうがないw でも、データ的にはそこをブランクとせず「0」をとりあえず入れる処理にしていたので、機械的にコンバートしたら、vari2-4のリターン量は0という設定になってしまっていたので、なぜかエフェクトが効かないという現象が起こっていたというわけだyo(大苦笑) 増築、増築でプログラムを改造してるとこういうへんなことが起こるから、やはり最初から将来を見越した余裕ある設計で作っていかないとダメだよne ただ、NSX JAMを作ったのは本当に急なできごとで、Zkun Jam v4.8くらいまでできあがったころに、ある人にこんなのが出来たyoとメールで伝えたんだけど、そしたら「ポケミクというものが発売されるよ」と情報をもらったので、いろいろ調べてみたら、まさに今ボクが研究している技術でコントロールしまくれるハードだということがわかったので、興味ひかれまくったので一夜にして改造バージョンのNSX JAMを作り、そこにあとからXGエフェクトもコントロールできる機能をつけて、うまく動いたのでそれを4倍に増やして、、、という建て増しを行ったので、非常にややこしい内部仕様になってしまったというわけだyo(呆れ笑) それをいったん整理して、ドラム音色エディットやコントロールチェンジなんかも管理してしまえるようにしたのがNSX JAM v2.0-2.2だyo まあ、一気に多機能化したのでその機能のすべてを使いこなせている人はそういないだろうけどne(失笑) そして今、v3にも相当する上位バージョンのZkun Tab Proが、バリエーションエフェクト部分まで完成して、ほぼその実力を発揮できるところまで仕上がったというわけだyo
まあ、まだ細かい部分でいろいろおかしいところはあると思うけど、とりあえずコンバートした各デモソングをポケミクにつないで再生する分には、きちんと再生できてるようだyo ここからは、作成・編集作業をしていく上でバグがないかをチェックしていくyo あわせて、Viewモードも作っていくことになるne これ以降は、Proについてはタブレットでは使用せず、PCでブラウザはChromeを使い、音源はポケミクをつないでる場合を前提にして話を進めていくので、それ以外の環境については特にことわりがない場合は考慮しないyo ボクもヒマ人ではないんですべての環境のケツをふいてやるまでのサービスはしないからねw(妥当笑)
あと、ちょっと追記しておくと、各小節の頭でエフェクトのパラメータを送信するときにかかる時間が、パート数の増加とともに長くなってきたので、ちょっとだけ早めに送信するように書き換えたよ。そうしないと、小節先頭の歌詞の処理が間に合わず、一つ前のかなをもう一度歌う場合が生じていたからね。とりあえず今は大丈夫になったけど、この点は今後も要注意だね。半分以上はポケミク側の能力の問題なんだけどね。
まあ、まだ細かい部分でいろいろおかしいところはあると思うけど、とりあえずコンバートした各デモソングをポケミクにつないで再生する分には、きちんと再生できてるようだyo ここからは、作成・編集作業をしていく上でバグがないかをチェックしていくyo あわせて、Viewモードも作っていくことになるne これ以降は、Proについてはタブレットでは使用せず、PCでブラウザはChromeを使い、音源はポケミクをつないでる場合を前提にして話を進めていくので、それ以外の環境については特にことわりがない場合は考慮しないyo ボクもヒマ人ではないんですべての環境のケツをふいてやるまでのサービスはしないからねw(妥当笑)
あと、ちょっと追記しておくと、各小節の頭でエフェクトのパラメータを送信するときにかかる時間が、パート数の増加とともに長くなってきたので、ちょっとだけ早めに送信するように書き換えたよ。そうしないと、小節先頭の歌詞の処理が間に合わず、一つ前のかなをもう一度歌う場合が生じていたからね。とりあえず今は大丈夫になったけど、この点は今後も要注意だね。半分以上はポケミク側の能力の問題なんだけどね。