S.F. Page

Programming,Music,etc...

WebMIDI

シーケンサーの作りかけもちょっと修正とか

昨日はSMFPlayerを修正したあと、シーケンサーの作りかけの修正も行った。 MIDI Sequencer 縦ピアノロールタイプという少し変わったシーケンサーではあるが、エディットができるくらいで放置してしまった。nw.jsだとローカルへの保存もできるからこれをベー…

SMF Playerを修正する

気が付くと ちょっと前に作ったWebMIDI関連のコードが動かなくなっていた。まあドラフト版をベースに作るとこのようになる。それは仕方がない。 まずはSMFPlayerを少し直してみることにした。SMFPlayerはSMFファイルをページにドラッグアンドドロップして、…

ポケミクの音源部の音色エディット

ポケミクの内蔵音源はある程度音色のエディットができるので、ちょっとしたデモを作ってみた。 といってもエフェクト以外の音色エディット機能の部分だけ(フィルタのカットオフ・レゾナンス、アンプのADR)だが。 ポケミク音色エディットデモ シンセ・ベー…

knockout.jsの勉強(2)

computed,options,foreachバインディングを試す。 ポケミク・シーケンサーのUIをknockout.jsベースにすべく、jsfiddleを使用して勉強中である。昨日今日とcomputed,options,foreachバインディングを試していた。WebMIDIを使用して入力MIDIイベントをフォーマ…

ポケミク・シーケンサーを作る(11)

ワールドカップが始まったせいでさらにプログラミングに割く時間が無くなっているが、まあぼちぼちとやっている。今日はコンテキストメニューを作った。Bootstrapのdropdown-menuとあとはjQueryとの組合わせで比較的簡単に作ることができた。ピアノロール上…

ポケミク・シーケンサーを作る(10)

ようやくゲートタイム調整機能ができた。。 ようやくピアノロールエディタのノートデータのゲートタイムを調整する機能が実装できた。まだエリア外にノートデータを移動したときの挙動とか未実装な部分は多いが。なんとなく技術的には実装しきれそうな気がし…

ポケミク・シーケンサーを作る(9) Shortcut (Hotkey)の実装

削除やコピペの実装に入るのだが、これを実現するにはコンテキスト・メニューとキーボード・ショートカットが欠かせない。コンテキストメニューの実装はなんとなく行けそうに思えるものの、キーボードショートカットはkeydown/keyupイベントを捕まえてキーコ…

ポケミク・シーケンサーを作る(8) 縦ピアノロールエディタの実装

じわじわ機能を実装中 縦ピアノロールエディタをじわじわ実装中である。今のところマウスでのノート挿入・移動が可能である。Undo/Redoもできる。挿入したノートを再生ボタンで鳴るようにした。というかこれはBugで鳴らなかっただけなのだが。 縦ピアノロー…

ポケミク・シーケンサーを作る(7) undo/redoの実装

はじめに 縦ピアノロールエディタという奇怪なUIを実装し始めたがまだまだ道のりは長い。 実装方法をある程度理解できていたはずのundo/redo機能にてこずっていた。ようやくできたけれども忘れたとき用にまとめておくことにする。 Undo/Redo機能の仕様など …

ポケミク・シーケンサーを作る(6)

挿入機能は一通りできたので、次はノートを移動する機能を実装している。ついでに移動をグリッド単位で移動できるようにコードを追加したり、挿入機能で書いたコードが移動でも使いまわしできそうなのでメソッドとしてまとめたりとか行っていた。ピアノロー…

ポケミク・シーケンサーを作る(5)

相変わらずのペースだが、ぼちぼちと実装を進めている。マウスでノート挿入する機能を実装してみているところである。何しろあまりUIを真剣に作りこんだことがないのでいろいろ躓きながら手戻りしながらである。少しずつしか進歩しない。 Undo/Redoもできる…

ポケミク・シーケンサーを作る(4)

今週もあまり成果はない。Undo/Redoをコントロールするオブジェクトを作ったり、レイアウトをデスクトップ専用にするためにCSSをいじったりしていた。画面上の変化ではタブでトラックを切り換えるようにできるようにしたくらいか。 Bootstrapのデフォルトテ…

ポケミク・シーケンサーを作る(3)

いつものとおりゆっくりと実装を進めていっている。今どうなっているかというとトラックのシーケンスデータを表示できるところまで。まだ完全な実装ではなく、とりあえず表示してみたレベルである。 縦ピアノロールというUIはおそらく音ゲーかプレイヤーくら…

ポケミク・シーケンサーを作る(2)

ようやくシーケンスエディターを作成しはじめた。エディター部分をどのように作ろうか1週間ほど考えていたが「Single Track DAW」サンプルに倣い、canvasを使ってUI部分を作ることにした。canvasは1-2年ほど前にいじって遊んでいたのでまあそんなにハマると…

ポケミク・シーケンサーを作る

ポケミク用シーケンサーをWeb MIDIでぼちぼち実装し始めている。ST/GTタイプを目指しているがひょっとすると縦ピアノロールタイプになるかもしれない。MIDIのシーケンサーのエンジン部分というのは音源は作らなくてもよいので比較的簡単に作れるのではないか…

WebMIDI API を使ってSMFプレイヤーを作る

WebMIDI APIを使用してST/GTタイプのシーケンサーを作ろうとしているが、その前にWebMIDI APIやBootStrapなどに慣れるために簡単なSMFファイルプレイヤーを作ってみた。SMF読み込みは「SMFreader.js」を使用している。プレイヤーそのものはSMFファイルをドラ…

WebMIDI APIを読む

Web MIDI APIを読む というわけでEditor's Draft 2014-02-13を読むことにしたが、差異を知るためには現在のTRを読む必要もあるので両方読むことにした。TRは日本語訳があるのでまずはTR版を読み、そのあとEditor's Draftを読んだ。 MIDIデータの入出力だけな…

Web MIDI API のEditor's Draft (2014/2/13) を読むことにする

SC-88Proとレイ・ハラカミさん、nsx-39 そこそこきちんとST/GT方式のシーケンサーを作ろうと思い、Web MIDIを触り始めた。作ろうとしているのはもちろんポケミクをターゲットにしている。でもできれば汎用性も持たせたい。去年買ったSC-88 Proも使わないまん…

WebMIDIでポケミク(NSX-39)を動かしてみる(1)

私も遅ればせながらWebMIDI APIを使ってポケミクを動かしてみることにした。DOMINOをもってしてもNSX-39の膨大なパラメータをいじってテストをするのは結構面倒なので。 テストアプリのページへ 作るのも結構面倒であるが、新しいAPIへのチャレンジであるの…

nsx-39(ポケミク) & nsx-1を調べた。

nsx-39(ポケミク)とnsx-1の情報を集める nsx-39はプリセットだけではあまりおもしろくない。能力を引き出すにはPCからのコントロールが不可欠だ。GM音源部分をいじるのもPCからでないとできないしね。まずは仕様に関して情報収集をすることにした。 調べて…