![]() |
||||||||||||||||||||||||||||||||||||
| Top > Windows用ソフトウェア一覧 > Domino > | ||||||||||||||||||||||||||||||||||||
|
Last update : ----/--/--
MIDI音楽編集ソフト「Domino」(仮) 開発日誌
Ver.1.00リリースまでに使っていた日誌です。
途中で投げ出す可能性もあったので(?)こっそり作っていましたが、 今後はトップページの日記の方へ書いていこうかと思います(?)。 ▼ 2007/01/28 晴れ
Domino Ver.1.00 beta005をアップしました。
マニュアルも一通り書き終わりましたので、後はEXEアイコンを待ちながら不具合を修正していき、正式版リリースをしたいと思います。 ここのサイトも日記メインではなくてDomino紹介ページに変えないといけません。 (凝るつもりはないので、すぐに作れるでしょうけど^^;) 今日も不具合報告をありがとうございましたm(_ _)m 以下を修正
▼ 2007/01/27 晴れ
Domino Ver.1.00 beta004をアップしました。
midiデータいじりを頼まれてdominoで読み込もうと思ったらSMF format0で読めないって事でformat0に急遽対応。 おまけにholdがonになったまま演奏を停止すると音が鳴りっぱなしになる不具合も見つけてしまったため、 演奏時にholdメッセージの監視をして演奏停止時にhold offにするようにしました_| ̄|○ 不具合報告もありがとうございました。 早速修正いたしました。
▼ 2007/01/26 晴れのち雨
Domino Ver.1.00 beta003をアップしました。
今日は不具合修正およびマニュアル書きをやりました。 修正した不具合は次の通りです。
またmidiデータいじりを依頼されてしまったので、数日間そちらで時間をくいそうです。 ▼ 2007/01/25 晴れ
帰宅→ZZガンダムのDVDを見る→コタツが居心地良すぎて寝る のパターン。
1時間ぐらいでアラーム掛けてても起きれず。 コタツ恐るべし。 明日はこの罠に引っかからないようにしないと。 マニュアルをちょこっと書いて今日もさっさと寝ます(^^; 明日は不具合に挙がっているMidRadio Playerの調査などをしたいと思います。 ▼ 2007/01/24 晴れ
Domino Ver.1.00 beta002をアップしました。
今日も不具合を報告していただいて有り難うございますm(_ _)m 助かります。 早速いくつか修正しました。
(伸ばせば伸ばすほど負荷になる可能性がありますが、これぐらいしか今のところはやりようがありません) マニュアルも内容の善し悪しはともかく順調に進んでいます。 最近寝不足気味なので今日は早めに寝ますorz ▼ 2007/01/23 晴れ
Domino Ver.1.00 beta001を公開しました。
wikiもwikihouseからwikiwikiへ引っ越したことで、夜でもレスポンスが良くなりました(しかもデザインも結構オシャレ)。 早速不具合を報告していただいてありがとうございますm(_ _)m 今日の更新でいくつか修正いたしましたので、確認をお願いいたします。
今現在、スカッドハンマーをやりつつマニュアル書き中です。 定義ファイルよりはマニュアルの方が楽かな・・・。 ▼ 2007/01/22 晴れ
Domino Ver.1.00 beta000を公開しました。
選択範囲に直線・曲線を入力する機能を実装しました。 ![]() マウスドラッグ操作でカーブなどを入力すると、開始・終了位置が調節しづらいんですが、この機能を使えば その辺の微調整がしやすくなるかと思います。 昔PC−98のDOSの頃にミュージ郎だとかBallade3だとかを使っていたのですが、 それらのボリュームやエクスプレッション入力がこんな感じの二点指定でした。 ピッチベンドの時に限っては、キー指定をする欄が出まして、現在のピッチベンドレンジと希望のキー(オフセット)を指定することで 自動的にピッチベンド値を算出する事が出来るようになっています。 ![]() ピッチベンドレンジとかは、そのトラックのイベント状態を解析して、 ちゃんとその時点でのレンジを導き出して使用しています。 一応これでVer.1.00betaとなりますが、新規ソフトですので不具合が結構出ると思います。 もし不具合を見つけられましたら、お手数ですが不具合報告サイトにて報告をお願いいたします。 ちなみに、不具合報告サイトとしてwikihouseからwikiをレンタルしているのですが、 夜間は結構重いみたいですorz すぐに移転するかもしれません・・・。 明日からは動作チェック&マニュアル作成作業に入ります。 ▼ 2007/01/18 晴れ
最新版:
今日も地味に定義ファイルを更新。 一応SC-8850とGM Level1が終わりました。 GM Level2も作ろうかと思っていましたが、あんまり普及してないみたいなので、要望が多数来てから作ろうかと思います。 Ver.1.00β版までの残件は
EXEアイコンは知り合いのデザイナーさんが協力してくださるという事で楽しみに待っているところです。 マニュアルはHTML形式(htm)、Win32help形式(hlp)、コンパイル済みHTMLファイル(chm)、MSワード(doc)、 いろんな形式があって迷ったのですが、作りやすさと見やすさで一番バランスの取れているHTML形式にしようかなぁと 思います。 本当はMSワードが一番画像系が楽なんですが、画面上で見ることを考えるとHTML系の方が良いかな、と思います。 (俺はHTMLのマニュアルなんて絶対嫌だぜ!なんて方がいらしたら早めに言ってください。) #19〜21日は開発をお休みします ▼ 2007/01/17 曇り
▼ 2007/01/16 曇りのち雨
最新版:
今日も地味に定義ファイルのみ更新。 EFXマクロ(30〜43)を追加しました。 明日明後日でEFXマクロは終わらせたいなぁ・・・。 とは言っても直列3〜5でパラメータも20個フルに使ってるやつがゴロゴロ出てくるので大変そう。 不具合&要望管理掲示板もなかなか良いのが見あたらず。 livedoor wikiなんてのが出来たのを思い出したので試してみたけど、#bugtrackプラグインみたいなのないのねorz (デザインとかレスポンスは良いんですけどね^^;) wikihouseとかから借りようかなぁ。 今週末(金〜日)はスノボーツアーに行くハメになったので開発はお休みしまーす。 なんか、雪見るのって1〜2年ぶりな気がする・・・。板もサビサビ。 ▼ 2007/01/15 晴れ
最新版:
スカッドハンマーズのやり過ぎで右腕が筋肉痛orz 今日は定義ファイルのみ更新。 SC-8850の定義ファイルにEFXマクロ(20〜29)を追加しました。 要望などもちらほら来ていますが、まずは開発当初の設計内容を一通り実装してVer.1.00リリースを目指したいと思います。 (マニュアルが一番面倒くさいですけど。) その後で要望をちょこっとずつ消化していこうかと思いますが、あんまり沢山要望や質問がメールなどでどかどか来ても 対応しきれなくなってしまう、というか、プログラム組んでるよりメールの返事書いている時間の方が多くなってしまう、 なんて事も過去のソフトで経験していますので、そういう要望・不具合・質問を貯めておけて、かつ管理しやすい掲示板(CGI)がどっかに落ちてないかなぁと、放浪中。 要望対応したら、対応済み!みたいにスレッドタイトルに表示されるやつがいいなぁ・・・。 (無かったら自分で作るか有りモノで我慢するか・・・・) ▼ 2007/01/14 晴れ
最新版:
定義ファイルでは、値と文字の表をValue、Gate毎に自由に定義する事ができるのですが(Entryタグ)、 場合によっては定義済みの表を使い回したい時があるので、 そうしたテーブルの使い回しが出来るようにしました(Tableタグで定義、TableID属性で参照)。 (EFXも結構使い回してるテーブルがあります。) 今回もEFXマクロを追加(05〜19まで)。 あと、定義ファイルの「DefaultTrackList」タグですが、マークの追加やコンダクタートラックの指定、カレントトラックの指定などが 出来るようになりました。 トラック情報以外の情報も入れるようになった影響でタグ名も「DefaultData」に変更しました。 ▼ 2007/01/13 晴れ
最新版:
「演奏位置とMIDI機器の状態を合わせる」機能をほんの少しだけ高速化しました。 あと、EFXのマクロを3つ追加
定義ファイル側で「マクロへのリンク」に対応させました。 これで、マクロIDを節約しつつ、全パラメータをツリー内に追加することができるようになりました。 ![]() (マクロリンクでは、IDとValue,Gate属性を指定可能) 残りEFX60個orz ▼ 2007/01/12 晴れ
最新版:
CCマクロをいくつか選んで一気に追加する機能を追加しました。 ![]() フォルダにチェックを入れると、そのフォルダ内のマクロが全てチェックされます。 これでテンプレートにしなくとも、EQやEFX設定を一度に挿入することが出来るようになりました。 あと、起動直後や新規作成時に用意されるトラック情報は、今まで固定情報を埋め込んでいたのですが、 例えば初期化に必要な情報というのは音源毎によって違いますので、 定義ファイル側で持つようにしました(DefaultTrackListタグ)。 これが無いとトラックが空の状態で立ち上がります^^; トラック毎にCCを細かく入れることも出来ますし、テンプレートを使って挿入することもできます。 SC-8850定義ファイルの方は、いよいよEFXに突入。 まだStereo-EQしか作ってませんが、マニュアルの情報が飛び飛びで読みづらいですorz 時間掛かりそう・・・。 ▼ 2007/01/11 晴れ
最新版:
日記一ヶ月記念。三日坊主にならなくて良かった。 まあでもネタが有るのは今のうちだろうな^^; 今日はマウス操作のカスタマイズ機能を実装しました。 ![]() 設定を流用しているツールもあるので、全部が全部変えられるわけではないですが、 シングルクリックじゃなくてダブルクリックでノートを置くようにする程度の事は簡単に設定できますので、好きなように変えてください。 あと、ちょこっとメニュー構成もいじって、「イベント」メニューを「挿入」メニューと「イベント」メニューに二分しました。 それから、SC-8850定義ファイルに以下のマクロを追加。
あんまり階層が深いと不便になってしまうのですが、この辺のパラメータは頻繁に使うモノじゃないのでたぶん大丈夫。 各種パラメータはわざわざテンプレートで用意しないで、「CCマクロをいくつか選んで一気に挿入する機能」を付けて、こっちで挿入してもらうようにしようと思います。 あとはEQと、EFXぐらいでしょうかね。EFXは大変そうだな。。。 EXEアイコンもそろそろ誰かに頼まないとなあ。。。 起動ロゴ(スプラッシュウィンドウ)も作り手側としては付けたいんですが、 ユーザー側としては邪魔くさいだけの存在なんですよね。 そんな画像表示してる暇あったらさっさと起動しろよ、と。 (てか、大抵のソフトってプラグインとかロードするついでに画像表示してるだけなんでしょうけど) ▼ 2007/01/10 晴れ
最新版:
イベントリスト上でCtrl+(Shift+)↑↓したら微調整する機能」は終わったっぽいです。 以前、ちょろっと書いた奴なんですが、 > 民謡アレンジをしている時に思ったのですが、例えばベースパートなんかで「長いGate、短いGate」を > 繰り返し打ち込んだ後で長いGateの方だけをちょっと変えたい!なんて思うことが時々あります。 > 今までは一個一個ノートを指定してGateをちまちまと変えるしか無かったのですが、 > なんとか「Gate60〜300未満のノートのGateを−10する」みたいな条件付きの一括置換処理が実現できないか検討中 これを実現するために「選択範囲の絞り込み機能」を付けました。 (選択範囲フィルタと言った方が伝わる方もいるかもしれませんが) ![]() この後で一括変換とかやればOKです。 あと、「音源定義ファイルの情報」画面も追加しました。 ![]() これに伴って定義ファイル側の属性を増やしまして、ファイルバージョンやWebSiteを指定出来るようになりました。 URLの表示部分のように青くなって下線が入ってマウスオーバーするとカーソルが指になって、クリックするとURLに飛んで・・・みたいな 動きのパーツを作るだけでも30分ぐらいかかってしまいまして、ただの「URLを開く」とかの四角ボタンなら一瞬なのに、デザインにこだわって無駄に(?)時間掛けてしまいます^^; また、IDの空き状況を確認するために、ID順にCCマクロを表示してみました。 この辺が動いたついでに、SC-8850をちょっとだけ進めてみました。 ↓を追加。
システムエフェクトやEFX辺りもどんどん追加していこうかと思います。 ▼ 2007/01/09 晴れ
最新版:
先にツールバーカスタマイズ機能を実装しちゃいました。 ツールバーのボタンなどを好きなように並べ替えられます。 ![]() コンボボックスとかを複数置いても大丈夫なように設計してあります。 この辺りのカスタマイズ機構はEDGE2からいろいろ流用&拡張しています(^^; ちなみにEDGE2の頃はコンボボックスしかツールバー上に設置出来なかった(する必要がなかった)のですが、 dominoは小節表示パネルやデフォルトベロシティ入力欄と言ったコンボボックス以外のものも置けるようにしないといけないので、その辺で多少手を入れています。 あと、昨日書いた「イベントリスト上でCtrl+(Shift+)↑↓したら微調整する機能」の実装も始めていまして、 CCイベント辺りはそこそこ動くかと思います。 明日は各種イベントでもこの機能が動くように作り込みたいと思います。 ▼ 2007/01/08 晴れ
最新版:
久々に早起き(?)したので眠いー。 今日も残件を実装。
▼ 2007/01/07 台風並み
最新版:
明日から仕事開始ってことで憂鬱になりつつ残件実装。
▼ 2007/01/06 雨のち暴風
最新版:
ソフト名、迷いに迷って「Domino(ドミノ)」にしました。 途中まで作って一回崩れて作り直してるところなんかがまさに・・・。 ・・・というのは冗談で、特に意味はありません。 オシャレな雰囲気と、綴りの見た目で決めました。 若干まだ違和感がありますが、たぶんこういう名前って時間が経てば馴染んでくるんでしょうね。 (Wiiも最初変な感じだったけど馴染んじゃったし) 名前が変わった影響で専用ファイルの拡張子もmps→dms(Domino Sequanceファイル)に変わりました。 過去のデータも拡張子を変えるだけで読めます。 EXEアイコンはドッターさんに頼んでみようかなぁ、やってくれる人いるかなぁ^^; 今日は出かけてたりしたので、ろくに開発してないですが、いくつか残件を実装しました。
▼ 2007/01/05 晴れ
最新版:
残件をいくつか実装しましたー。
今は、リアルタイム録音機能辺りを書いてます。 あと、メールでいくつか不具合報告やらなにやらを頂いたので、そちらをいくつか対応しました。
それから、小節の開始についてなんですが、0からじゃなくて1からの方が良いんじゃないかという指摘もありました。 たしかに今までSSW使ってる人からMIDIの編曲依頼なんかが来たときに、「○○小節からのフレーズを・・・」なんて 話をしてたときに一小節ずれてて、「○○小節からですよね?」なんて聞き返してたことがありましたが、 まさかソフトウェア側でずれてたとは思いませんでした_| ̄|○ たしかにその辺のソフト触っても0小節なんて無いので1からにしようかと思います。 (既に保存したmpsデータを読むとマークとか拍子とかの小節情報がずれちゃうかもしんないけどゴメン) ▼ 2007/01/04 晴れ
最新版:
SMF format1での書き出しが動いたっぽいです。 また、直線入力の際のインターバル設定画面や、トラックの追加・削除辺りも実装しました。 これでとりあえずmidiでの制作依頼とかがあっても使えるぐらいの出来になってきました。 (バグってデータ破損とかなきゃいいけどw) 自分で作ってると、いまいち信頼性が無いのが問題だな〜。 (安定性とか信頼性を得るにはどのみち時間が掛かるとは思うけど。) それから、イベントグラフでピッチベンドとかを入力する際に、ユーザー定義の曲線を使えるようにしました。 ![]() ↑直線にちょっとランダム値を足すとかが自由にできます。 サイン関数なんかも使えますので、「y1 + sin((x - x1) / 200) * (y2 - y1)」とかすれば ![]() なんてこともできます。 ただ、曲線の式を作るのがめんどくさいし、解りづらいのが難点。 結構ソフトっぽくなってきたところで残件整理。
まだ結構あるなー。 ▼ 2007/01/03 晴れ
最新版:
SMF format1の読み込み機能を実装しました。 歌詞イベントなんかはスルーしています。 壊れたファイルを読み込ませると、たぶんバグります。 あと、結構不具合も潜伏してたので、その辺もいくつか潰しました。 次はSMF書き出し辺りをやろうかなぁと思います。 ▼ 2007/01/02 曇り
SMF format1を読み込むプログラムを書いている所です。
参考書を読みながらコーディングするだけの、結構地味な作業。 SMFに限った話ではないですが、処理できないイベントとか出てきそう。 ▼ 2007/01/01 晴れ
あけましておめでとうございます。
今年もよろしくお願いいたしますm(_ _)m 最新版: トラックリスト編集画面を実装しました。 Tabキーで瞬時に切り替えられます。
マウス編集系の機能はだいぶ使えるようになってきたかと思います。 趣味に使うにしても、SMF形式での入出力が出来ないと意味がないので、その辺も徐々に実装していこうかと思います。 大晦日の夜から友人らと初詣に行ったのですが、そのときにMidiPortalの正式名称についていろいろ話をしてました。 開発コードネームは「Portal(ポータル)」でして、これは簡単に言ってしまえばmidiをこれから始めようとする人の「入り口」となるようなソフトを目指してこんな名を付けました。 (別に開発コードなんだから何でもいいんですけどw) ソフト名はとりあえずこの開発コードネームに「Midi」を付け足して「MidiPortal」としてきましたが、ぶっちゃけ長いし「ミディ」って発音しにくい(=呼びにくい)よね、って事で名前を考えてみることに。 とにかく一言でバキッと言える名前が良いなぁとは思います。 メーラーで有名なところだとBecky(ベッキー)とか(笑) DAWとかで有名なソフトも、短い名前が多いですよね。
EDGEの時なんて何度も「えどげ」って読まれてたので、ソフトをリリースする際はフリガナは必須です。 あと、ソフト名の前に添える一言ですが、「MIDIシーケンサ」、というか「シーケンサ」って解らん人多いと思うので もうちょっとかみ砕いて「MIDI音楽編集ソフト」とかにしようかなぁと思います。 ベータ版リリース前には決めないとなぁ^^;; ▼ 2006/12/31 晴れ
今日は遊びまくって開発時間ほぼ0。
K-1が再放送ばかりでたいくつなのでその間にちょろっと更新。 皆様、今年1年、こんなサイトに見に来てくださってありがとうございました。 ▼ 2006/12/30 晴れ
最新版:
イベントグラフペインにて、アンカー表示をオンにしている場合に、アンカー(つまみ)を表示するようにしました。 ペンツールで上下左右にドラッグすることができます。 ![]() Shift+ドラッグでクォンタイズが効き、Ctrl+ドラッグで上下のみの移動となります。 この辺はまた変わるかもしれません。 ▼ 2006/12/29 晴れ
最新版:
イベントグラフペインの実装を行いました。 ほとんど流用でいけました(^^; パンポットとかピッチベンドって上限と下限のサイズが違うので計算上、ど真ん中の数値って0にならないんです。 とは言っても編集上は0の方が使いやすいので、なんとかその辺の計算をごにょごにょして0になるようにしています。 (うまく微調整できないケースが出たらごめんなさい) ![]() たまには開発環境の話を。 今現在開発にはMicrosoft Visual C++ 6.0(& MFC)を使っています。 今年の頭ぐらいに(?)Visual Studio 2005を購入したのですが、MFC自体はあんまり変わってないですし、 IDEも他言語との統合やらをやられたおかげでVC6のClassWizard相当の機能がやたらと使いにくくなってしまって、 結局VC6を使っています(動作も軽いですしね。よく落ちますけど。) MIDI制御の方法は↓で勉強しました。
Windowsサウンドプログラミング―音の知識×プログラミングの知識翔泳社 発売日: 価格:\3,990 あんまりMIDI規格については詳しく触れていませんが、Windows上でのMIDI制御方法や、SMFの構造の説明が丁寧に書かれているのでお勧めです。 DirectXの本とかって海外の本を翻訳したモノが多くていつも解りにくいなぁと思っているんですが、この本は日本の方が日本語を使って書いているので、読みやすいです。 シーケンサ作ろうと思っている方は、書籍購入の選択肢に入れてみてください。 プログラミングの知識全くないけど、Windowsでシーケンサ作ってみたい!というエネルギッシュな方は
なんて書いたは良いけど「C言語勉強し始めたけどポインタでつまずいた」なんて言われても責任とれません(^^; ▼ 2006/12/28 晴れ
最新版:
スプリッターバーやウィンドウサイズを変更したときに、画面の更新に無駄があったので、その辺を改良してみました。 イベントグラフペインの高さを調節してる時のちらつきも前よりマシになったかと思います。 あと、ファイルのプロパティ画面を実装したので、曲名とか著作権とかを変えられます。 イベントグラフペインで表示する内容をコンボボックスで選べるようにしたいわけなんですが、 コンボボックスのボタンクリックで出てくるウィンドウって好き勝手にいじれないっぽいです。 そんなわけで自前描画でツリーコンボボックスを実装。なんかそれっぽくできた。 ![]() ただ、この手のポップアップウィンドウを表示するとメインウィンドウが非アクティブになってしまうのがたまにキズですが、 そんなの普通の人にしてみたらどうでもいい事ですね。 ▼ 2006/12/27 晴れ
最新版:
ファイルセーブロード、一括処理、ストローク機能辺りを実装しました。 ストローク機能は、同じtickに配置してあるノートのタイミングを上もしくは下からちょっとずつ時間をずらす機能です。 ギターやら三味線やらの弦ごとのタイミングずらしを一括で行うことが出来ます。 ベロシティが大きな数値ほどノート間の間隔を短くする、という事も可能です。 ![]() イベントグラフペインの実装も徐々に始めています。 (背景だけ描画してみました。) ▼ 2006/12/26 雨
最新版:
コントロールチェンジイベント周りを実装中。 おおよそおわったかも。 コントロールチェンジイベントのプロパティ画面はこんな感じになりました。 (まだキーボード参照ボタンとか動かないですが) ![]() 各コントロールマクロがフォルダ分けしてあるのがミソです。 並びやフォルダ構成は定義ファイルで自由に変えられます。 各コントロールチェンジマクロにはIDが振られていて、0〜127は通常のコントロールチェンジ(だけじゃないけど)、 128〜255辺りはなるべく各音源で同じようなマクロを定義(RPN,NRPNなどなど)、256〜1023は好き勝手定義、という感じになるかと思います。 (最大、1024種類のマクロが1音源で定義できます。足りなかったら増やすかも・・・・) まだSC-8850独自のマクロを全く追加していないので、 そのうちEFX、リバーブ、コーラスの設定もCCマクロ&テンプレで手軽に変えられるようにしようかと思います。 ▼ 2006/12/25 晴れ
最新版:
各イベントのプロパティ画面をざっくりと実装しました。 「イベント」メニューからプログラムチェンジなりエクスクルーシブなりを挿入して、イベントリストでイベントをダブルクリックすると、プロパティ画面がでます。 昨日書いたエクスクルーシブの書式もそのまま実装できたと思います。 プログラムチェンジプロパティ画面では、音色名を検索出来る機能も付けておきました。 よく使う音色なら音色番号を覚えているのですが、たまにしか使わない「Shamisen」だとかを探すのに 時間が掛かるときがあるので、そう言った時に役立つと思います。 ![]() そろそろコントロールチェンジイベントやイベントグラフペインまわりの実装をしようかと思います。 Perryからあんまり流用できない箇所なので時間がかかるかもしれません。 ▼ 2006/12/24 晴れ
メリークリスマス!てか、こんな日に見てる人いるか疑問ですが(笑)
今日はほとんど開発時間がなかったですが、エクスクルーシブデータの書式を決めました。 入力画面の説明文です。
▼ 2006/12/23 晴れ
最新版:
今日は昼間に寝覚め、年賀状を作りまくって、久々にゼルダを進めて、その後にちょろっと開発。 マークの編集、拍子の編集辺りが動くようになりました。 あと、環境設定のMIDI-INも設定できるようになりましたので、 設定すればMIDIキーボードからの入力でトラックの音を出すことができます。 リズムトラックで左にとりあえずGM規格の音色名を出しておきました。 (GMLevel1用の定義ファイルを用意しましたが、まだ通常の音色名とかは全く記入してません) そのうちトラックプロパティでドラムセット名を選べるようにします。 エクスクルーシブイベントのデフォルトのデータを入力している時に気がついたんですが エクスクルーシブデータってメーカーIDやモデルIDなんかが含まれているのでデフォルトを固定にしておけないんですよね。 そんなわけでこのデフォルトデータは定義ファイル側で持つ事にしました。 ▼ 2006/12/22 曇りのち晴れ
最新版:
環境設定→MIDI-OUT部分で音源を選択出来るようにしました。 今のところどのぐらいの定義ファイルを用意できるか不明ですが、 沢山入れても目的の音源を探しやすいようにフォルダツリー構造にしました。 (現在はSC-8850しかないので、ツリーの恩恵を受けることはありませんが^^;) あとは、昨日音符アイコンを描いたので、今回選択範囲のクォンタイズ機能を実装しました。 明日はマーク編集や拍子設定辺りをいじろうかと思っています。 そういえば、ペンと選択ツールの操作方法を載せ忘れていたので載せておきます。 ≪ペンツールの操作方法≫
≪選択ツールの操作方法≫ (消しゴムツールもほぼ同じ)
ちょっと癖があるかもしれませんが、各動作は全てカスタマイズ可能にする予定ですので変だったら変えてください。 ノートは左クリック(ドラッグ)で置けるようになっていますが、 ドラッグ中に右クリックすると操作をキャンセルできます(配置しません)。 これは、他のドラッグ操作でも同様にキャンセルできます。 ▼ 2006/12/21 晴れ
クォンタイズコンボボックスにアイコンを付けました。
なんとか音符っぽく描けたかなー。 ここ何日かで平行して定義ファイル(XML)を読み込むルーチンを書いていますが、あともうちょいです。 XMLパーサーは自作したので信頼性はあんまりないですが、読み込み速度はそこそこ速くなっているはずです。 ▼ 2006/12/20 晴れ
環境設定画面からMIDI-OUTデバイスを選べるようにしました(MIDI-INはまだハリボテ)。
これでとりあえずノート置いて再生するぐらいはできるようになりました。 カレントトラックの変更もできます。 あとはいろいろアイコンを追加したりだとか。 ノートを選択して上下にドラッグすると、その音階で試聴ができるのがミソです。 クォンタイズコンボボックスにもアイコンを付けようと思っていますので、 次は各種音符のアイコンを描くところからかな。 ▼ 2006/12/19 晴れ
コタツで寝てしまったorz 現在午前4時。
ピアノロールの表示倍率変更あたりが動くようになりました。 (高さはピアノ画像を作らないといけないので、とりあえず二段階しかないですけど) イベントリスト側のGateやVelocityをキーボードから数値入力する辺りも動くようになりました。 MIDI In/Outの設定画面をそろそろ作ろうかなぁ。 (環境設定ボタン押せますが、まだハリボテです。設定できません。) 民謡アレンジをしている時に思ったのですが、 例えばベースパートなんかで「長いGate、短いGate」を繰り返し打ち込んだ後で 長いGateの方だけをちょっと変えたい!なんて思うことが時々あります。 今までは一個一個ノートを指定してGateをちまちまと変えるしか無かったのですが、 なんとか「Gate60〜300未満のノートのGateを−10する」みたいな 条件付きの一括置換処理が実現できないか検討中(一括置換機能の処理対象をオプションで変更って感じかな?)。 ▼ 2006/12/18 晴れ
イベントリストのデザインをちょっといじってみた。
今まではフォーカスがある場合→演奏線&カーソル表示 フォーカスが無い場合→演奏線のみ表示 だったものを フォーカスがある場合→カーソルを濃く表示 フォーカスが無い場合→カーソルを薄く表示 に変更してみました。 前よりはマトモになったかなぁ。 他にもいろいろ実装しまして、コマンドやアンドゥ・リドゥなどが使えるようになっています。 (例によってPerryから流用しまくりですが、流用できる所ももう少しで切れます。) あとは、SC-8850の音源定義ファイルをModuleフォルダに入れてみました。 まだ途中ですが、おおよそ詰め込んであります。 これをどの程度のスピードで読み込ませられるか、が問題ですね。 起動が出来るだけ早くなるようにいろいろ工夫しないと。 ▼ 2006/12/17 晴れ
イベントリスト&ピアノロールを流用しまくりで実装。
一応ピアノロール上でノートを置いたり選択したりできます。 (まだ動かないコマンドばっかりですが) イベントリストの方を15日に提案したイメージ通りにやってみたものの、 赤い演奏位置線 → 青い雰囲気の中で赤線は違和感ありまくりだったのでボツ 小節の変わり目をテキストではなく1ドットの直線にする → テキストの方が見やすいような気がする ・・・という感じで微妙です。 うーん、どうしようかなー。テキスト区切りに戻そうかなぁ。 ▼ 2006/12/16 晴れ
ツールバー周りの配置変更、メニューアイコンの追加、イベントグラフペインの配置辺りを実装。
イベントグラフ部分の高さは可変(スクロールではなく伸縮)にし、同時に二つまで表示出来るようにします。 ツールバーにいろいろ詰め込みすぎたかもしれませんが、動作環境は画面の横幅が1024以上になりそうです。 (800x600ユーザーさんごめんなさい・・・・いや別にツールバーカスタマイズしてもらえればいいのか。) 年賀状と民謡アレンジやらんとなぁ(憂鬱)。 ▼ 2006/12/15 晴れ
忘年会が早く終わった(というか1次会しか参加しない)ので早速時間&テンポを表示するパネルを実装。
アクアデザインはやっぱり浮いたのでべた塗りにしました。 それからイベントリストの枠&スプリッターバーも配置してみました。 Perryから流用できる部分が多いので、意外と早く完成するかもしれませんね。 次に、SC-8850から音色名を吸い取るアプリのCSV書き出し機構を実装。 ExtractSC8850_dev001.ZIP これで書きだしたcsvからMidiPortal専用音源定義ファイル(xml)へ変換するプログラムを書こうと思います。 (その方がデバッグしやすいし。) シーケンサ本体の方はイベントリスト周りのデザイン変更を考え中。 Perryのスクショを画像加工してイメージ作ってみました。 ポイントは、小節の変わり目をテキスト(------ M1 ------)ではなく直線にすることで見やすくしよう(&選択できない不思議イベントを取っ払おう)、という試みです。 あと、これが直線になったら、演奏位置(カーソル位置)を示す線が反転線だと解りにくいから、赤い線にしよう(→ピアノロールも赤い線にしよう)、という辺りです。もしかすると反転線の方が良いのかもしれませんが^^;;; それから、イベントリストの時間に関わる部分(meas,tick,step)とデータ部分を色分けすることで、これまた見やすくしようと試みています(各イベントの色も決めないとなぁ〜)。 ちなみに知り合いの音楽屋から民謡の和風ロックっぽいアレンジ(?)を頼まれてしまったので、そちらをやらないといけないです。 そういうの全然得意じゃない、というかむしろ音楽作成そのものがど素人なのですが、なにやら人手不足で困ってるみたいです^^;誰か代わりに頼まれてくれる人募集_| ̄|○(音源はSC-8850、報酬は要相談?) ▼ 2006/12/14 雨
昨日に引き続き、メニューアイコンを付けました。
ツールバー類も適当に配置してみましたが、ボタンの順番などはもうちょっと変わるかもしれません。 ツールバーの白くなっている部分はmeas : tick、それからtempoを表示するパネルです。 アクアっぽいパネルにしようとは思っていますが、デザイン的に浮くかも・・・。 明日は忘年会があるので、実装はまた今度。 ▼ 2006/12/13 雨のち曇り
定義ファイルそっちのけで、今日は本体をちょろっと開発。
まずはアウトプットペインというのを画面下部に付けてみました。 これは普段は隠れていますが、エラーとかがあると出てくるウィンドウです(Visual Studioみたいに)。 起動時に「MIDIOUTのオープンに失敗しました」だとかその手の内容がメッセージボックスで表示されるといちいちOKボタン押さないといけなくて面倒なので、 そのあたりを全部アウトプットペインに出してしまおうというもくろみです。 他にも定義ファイルの構文エラーだとか、その他よくわからんエラーが出たときにここへ出力しようと思います。 ちなみに、アウトプットペインの高さを調節するバー(通称スプリッターバー)にイボイボを付けたりして、動かせる事をアピールしてみました。 あとは、メニューにアイコンを付けてみました(まだ途中ですが)。 半分以上はVisutal Studio 2005におまけで付いていたアイコン集からいただいています。 消しゴムとかは頑張って描いてみたんですが、ドット絵あんまり上手くないので困りもの。 メニューにアイコン付けるのって、実は結構面倒くさくて、一応自前で実装しているのですが、 いつかOffice2003の一個前(アイコン部分が白い帯のもの)とかに変更するかもしれません。 それから、各エリアの名称ですが、手元のMIDIの書籍によるとメジャーなインターフェース案としてイベントリスト(左側)→「ステップビュー」、ピアノロール(右上)は「ピアノロール」、 コントロールペイン(右下)は「イベントビュー」という名称で紹介されていました。が、ステップビューなんて名前を付けたらレコンポーザみたいな入力方式を想像されてしまいそうで怖いのでやっぱり「イベントリスト」にしようと思います。 右下の部分も、「コントロールペイン(ケークウォークだとコントローラ?)」「イベントビュー」などと呼ばれるようですがちょっとピンと来ないなぁと思いまして、 「イベント値ペイン」「ベロシティ/バリューペイン」「イベントグラフペイン」辺りを候補に思いつき、とりあえず「イベントグラフペイン」にしておきました。 ▼ 2006/12/12 雨
ゼルダを遊びすぎて開発があまり進まない。
SC-8850から音色名をダンプさせて受け取るアプリを作成中。 あとは書き出す部分を作るだけです。 このままSC-8850の定義ファイルを作ってしまおうかと思います。 1音源に対して1つの定義ファイルを作ります。 形式はXML、このXMLの中に、
▼ 2006/12/11 晴れ
Perryの設計ミスや配布ミスを反省しての(?)シーケンサ作り直し開始。
定義ファイルはXML形式にして、独自フォーマットにします。 ユーザーインターフェースはPerryとほぼ同じ(ピアノロール+コントロール+イベントリスト)になる予定です。 名前は「MidiPortal」と付けておきましたが、また気が変わるかもしれません。 とりあえずメニューだけ再構築してみました。 (まだなんも動かないです) 音源定義ファイルの音色リスト部分は流石に全部手打ちというわけにはいかないので、 どこかにデータが落ちていないかとローランドのサイトに行ってみたものの 加工しにくいしドラムのトーン一覧は無いしで、使い物にならん・・・。 と、音源本体からダンプ出来ないかとマニュアルを探ってみたら出来ることが判明。 今は音源から音色一覧を吸い出すプログラムを書いてます。 |