2011年6月30日木曜日

FL Studio Mobile購入

一昨日、久しぶりにあるCD屋に入ったら、棚の一番目立つ位置にアナログレコードがずらっと飾られて売られていました。そういう時代なのだろうか?

それはさておきImage LineのFL Studio Mobileがリリースされたので、iPhone版を購入してみました。その理由は、簡単に書いておくと以下の通りです。
  •  知名度が高いソフトウェア会社のシーケンサーをチェックしておきたい
  •  使用用途を音源に限っても十分に安いこと
  •  デザインが好み

しかし、その一方でUIがMusic Studioに非常に似通っている点は、懸念していました。これについて調べたところ、どうやらMusic Studioの開発者はFL Studio Mobileの開発に協力しているようです。
Music StudioのForumのGeneral discussion "Why did Xewton help develop FL Studio Mobile?"に詳しい。

一方で、僕はMusic Studioは購入していません。Lite版を使って満足してしまったのが正直なところです。ただ、Music StudioもFL Studio Mobileも個人的に問題だと思うのはボタンが小さ過ぎる点です。UIの話はまだ何も書いていませんが、"押せる"と"押しやすい"を分け考えていますので。

だいたいの使用感はMusic Studio Lite版ですでに分かっていたのですが、エクスポートしたSMFの出力がどうなっているかという点には関心がありました。各楽器トラックの先頭0tickに以下のイベントが出力されていました。
  • Program Change
  • CC7 (Volume)
  • CC10 (Pan)
  • CC72 (Release Time)
  • CC73 (Attack Time)
midif0nも現状"空のトラック"に関しては、0tickに以下のイベントを置いています。
  • Program Change
  • CC0 (Bank Select MSB)
  • CC7 (Volume)
  • CC10 (Pan)
  • CC32 (Bank Select LSB)
この点、SMFの作法があるのは承知しているのですが、あくまで現状はこのようにしています。SMFのセットアップに関しては、案外悩みどころです。
※SMFの作法に関しては、YAMAHAのpdf "XG楽曲データ制作の指針 Ver2.01"をチェックすると良いでしょう。

midif0n バージョン1.5.1 Ready for Sale

 6/28日付けで、バグ修正版 midif0n バージョン1.5.1がリリースされました。修正内容は前のエントリを見て下さい。マイナーバージョンが上がっていない理由は、機能の追加がないためです。

2011年6月28日火曜日

midif0n バージョン1.5.1 審査待ち

 midif0n バージョン1.5に落ちるバグがありましたので、対応版としてmidif0n バージョン1.5.1をアップしました。修正箇所は以下の通りです。

  • タイボタンで落ちるバグ修正

この問題に遭遇した方には、ご迷惑をおかけしました。問題の原因は、MIDIファイル読み込みの高速化でデータの初期化方法を変更したことによるものです。

基本的にメモリ、パフォーマンスをなるべく最適化したいので、問題があれば内部実装の大幅な変更も厭わないつもりです。ですので、以前動いていた箇所が動作しなくなる可能性はあります(まあテストの行程がしっかりしていれば問題ないのですが)。

特に落ちる問題は、なるべく早く対応しますので、ご報告頂けると助かります。
※ただ、メモリが原因の場合もありますので、メモリチェックもして頂けると嬉しいです。

2011年6月18日土曜日

ダブルタッチフリック?対応

   midif0n バージョン1.5で最初に覚えておくべき操作は、ダブルタッチフリック?です。
?が付けてあるのは、正式な名称がわからないためです。

ダブルタッチフリックとは、ここではダブルタッチ後(2本指で画面を押さえて)にフリック(指を素早く弾く)することとします。フリックの実装は、自前で実装しているため軽くスライドさせるぐらいで十分反応すると思います(逆に標準の挙動と比べて違和感があるかもしれません)。

さて肝心なのは、ダブルタッチフリックで何が起こるのか?ということです。
答えは、"表示モードの変更"になります。

どの表示モードでも、上下、左右に表示モードが切り替えられるのですが、とりあえず以下の表を覚えておけばOKです。

トラックの表示単位
モード
カレントトラック
ピアノロール
五線譜
ドラム
4トラック
トラック別ピアノロール
ミキサー(トラック情報)
16トラック
トラック別小節リスト
ミキサー(トラック情報)

※後で画像追加する予定。

この操作は、複雑なジェスチャにあたるため、システムメニューからも操作できるようにしてあります。しかし、これらのボタンはUIのガイドライン上用意しているだけですので、基本的にこのボタンを使用することは想定していません(メニューアイテムとして存在するコピー&ペーストみたいなものです)。

ちなみにトラックの表示単位ですが、プログラムのコードネームでは、以下のように名付けてあります。これは表示単位というより、編集単位を重視しているためです。

  • NOTES
  • MEASURES
  • TRACKS

もちろん、和音のように厳密に対応しない要素もありますが。

2011年6月16日木曜日

midif0n バージョン1.5 Ready for Sale

6/14付けで、midif0nバージョン1.5がリリースされました。変更点は前回のエントリの通りです。

前回のエントリで、バージョン1.6と予告を書いてしまいましたが、次期バージョンはメジャーバージョンを上げて2.0にするかもしれません。理由は、今まで単純にSMFを扱うMIDIシーケンサーでしたが、コード機能の強化によりこの部分が変わってくる可能性が高いためです。とは言え、よくあるように独自フォーマットで保存、SMFをインポート、エクスポートのような形式を採らずに、ちょっと違う形にするつもりです。

2011年6月11日土曜日

midif0n バージョン1.5 審査待ち

midif0n 1.5をアップしました。以下、変更点、バグ修正点になります。

変更点
  • GM System On対応(再生のみ)
  • メイン画面のモード構成を変更(カレントトラック、4トラック、全トラック)
  • メイン画面に編集モード表示とトラックバーを付加
  • 小節リピート編集機能
  • MIDIファイルの読み込み時重複イベント削除&高速化
  • 五線譜ドラム表示をドラム譜に近い形式に変更
  • システムメニュー、編集メニューボタン構成変更
  • プリセット選択画面再変更(プログラム番号でまとめる方式に)
  • ドラムノート選択画面変更(GMマップにアクセスしやすいように)
  • カーソルのゲートタイム表示を復帰
  • オプション画面の日本語対応


バグ修正点
  • コードが保存されていないバグ修正
  • ノートの表示不具合修正
  • 長い曲の読み込み不具合を修正

変更点を見ればわかる通り、機能的にはあまり追加していません。表示関係の修正が主です。GM System On対応、SMF読み込みの重複イベント削除、プリセット選択画面の変更に関しては、予告通りです。

表示モード、操作によっては負荷がかなり高くなるので注意して下さい。16トラック表示時やトラックバーの操作等のドラッグ時は特に注意が必要です。ドラッグ操作に関しては、こちらではあまり重い処理をしていないので、原因はデバイスかシステム周りだと思うのですが、現在のところ正確な情報は得られていません(この点、開発者で問題にしている人が少ないような気がします)。

システムメニューと編集メニューのボタンの構成はかなり変わっていますが、以前より正確な意味付けになっていると思います(メトロノーム設定辺りはまだ検討中)。

プリセットリストの変更に関して少し詳しく書いておきます。変更にあたり重視したのは以下の3点です。
  • GMのプリセットに簡単にアクセスできること
  • バンクのバリエーション
  • デザイン的に見やすくすること
以前より、選択し難くなっていますが、許容範囲内としました。むしろ問題としているのは、重いことです。Cocoa Touch(Apple の標準SDK)からさらに脱却して、独自の実装にしないといけないのかなと考えています。

バージョン1.6では、ドラムノートの編集を現在のトラック編集と同じ形式にするつもりです。またコード&フレーズ編集に再度向き合うつもりです。これらの変更にあたり、再度のフォーマット変更も検討中です。