Alchemusica
お知らせ:開発・ダウンロードページを OSDN から GitHub に移行しました。https://github.com/toshinagata/alchemusica/ です。よろしくお願いします。
1. 概要
Alchemusica は Mac OS 10.9 以上で動作する MIDI シーケンサです。(10.6-10.8 は Alchemusica-Legacy を使ってください。また、現状では Intel 用のバイナリのみです。)
ピアノロールタイプの編集ができます。
イベントリスト(数値入力)編集も一応できるようになっています。
AudioUnit 版のソフトシンセをロードして、MIDI の出力先にすることができます。
作者はかつて Vision のユーザーだったため、Vision が開発終了になってしまったことを大変残念に思っていました。また、MIDIGraphy もサブ的な位置づけで愛用しておりましたが、これまた開発終了となっているようです(公式のアナウンスがあったかどうかはわかりませんが、そもそも OS X 版が存在していない)。
嘆いていても仕方がないので、自分で作り始めました。2004 年頃にようやく形になり始め、2011 年に sourceforge.jp(現 osdn.jp)で公開した頃には、いろいろ問題があるものの一応楽曲制作に使えるようになってきました。実際、Alchemusica で一から制作した MIDI データも公開しています。
VIDEO
MIDI データはこちら 。
まだまだ Vision はもちろん、MIDIGraphy にも遠く及ばないレベルではありますが、高価な DAW を購入せずに MIDI で遊んでみたい、というニーズは満たせるのではないかと思っています。
2. 仕様
インポート可能なファイル形式
標準 MIDI ファイル(フォーマット1)
タイムベース
上限 32767
トラック数
上限 32767
出力可能な MIDI 装置
Mac OS X の CoreMIDI に対応しているもの。ソフトウェア音源(内蔵の DLS シンセサイザーを含む)は40ポートまで同時に使用できる。
同時出力可能なポート数
上限 32767
演奏機能
トラックごとのミュート機能
曲中の任意の場所からの演奏。この際、開始点以前にあるシステムエクスクルーシブ・コントロールチェンジなどを演奏開始前に送信することができる。
編集機能
グラフィックウィンドウ(ピアノロール、ストリップチャート)での編集
イベントリストウィンドウでの編集
回数無制限のアンドゥ
複数トラックにまたがったコピー・ペースト
録音機能
MIDI録音。オーバーダブ、リプレースを選択可能。録音先は、既存トラックと新規トラックを選択可能。
オーディオ録音。ファイル名を指定して書き出すのみで、トラック内にオーディオデータを組み込むことは(まだ)できない。
スクリプト編集
Ruby インタプリタを内蔵、スクリプトを用いた自動編集が可能。
3. ライセンス
Alchemusica は Toshi Nagata(永田 央)の著作物です。GPL (GNU Public License) の下で配布しており、GPL に定められた条件のもとで利用・改変・再配布が可能です。詳しくは、GPL (日本語訳はこちら )を参照してください。
4. 履歴
2024/08/11 Version 0.9.1
最低動作環境を Mac OS 10.9 とした。10.6〜10.8 に対しては、当面 "Alchemusica_Legacy" を提供する。
ビルド環境を Xcode 14.0 に合わせて更新した。
グラフィックウィンドウでのカーソル位置のチップ表示がおかしかったのを修正。
演奏インジケータの表示がおかしかったのを修正。
トラックリストの表示で、1行ごとにアイコンが表示されない場合があったのを修正。
スタートアップ時にスプラッシュスクリーンを表示するのをやめた(10.7 以降はそもそも表示されていなかった)。
スタートアップの動作を改善した。立ち上げが少し速くなったはず。
2023/08/01 Version 0.9.0
プロジェクト管理を OSDN.net から GitHub へ移行した。
オーディオ出力デバイスが 44100 Hz 以外であるときの不具合を修正。
Music Device の内部オーディオフォーマットの改善。
1つの Music Device のロードに失敗すると、他のものを読み込んでいなかった。修正。
ノートをドラッグするとき、ノート以外のイベントが選択されていると不具合が起きていた。修正。
"Scale Selected Time" を改善。
メトロノームクリックを改善。
トラックの色を変えられるようにした。
グラフィックウィンドウの分割ビューが不具合を起こしていた。修正。
MIDI 録音のカウントオフを改善。
ピアノロールのルーラーが起動時に正しく表示されていなかった。修正。
演奏中の現在位置表示を改善。
演奏/停止をスペースバーでできるようにした。
ストリップチャートビューのトラックポップアップにトラック名を表示するようにした。
ピアノロールビューで、編集中にカーソル位置の情報をフローティングテキストで表示するようにした。
Ruby: Sequence, Track オブジェクトを Enumerable にした。
コピー&ペーストにいろいろ問題があったので修正。
演奏前のプレローリング(設定用MIDIイベントのみを送る機能)中に、キースイッチを送るようにした。キースイッチはイベントリストウィンドウのコメントとして指定する。
ストリップチャートビューで、最大値/最小値 (127/0) の取り扱いを改善。
SMF 保存中の内部エラーをユーザーに報告するようにした。
"Visible" でないトラックも編集できるようにした(実験中)
編集トラックを変更した時にストリップチャートビューの表示をアップデートするようにした。
ストリップチャートビューが時々フリーズを起こしていたのを修正。
テーブルビューにペーストした時、イベントは編集中のトラックに入るようにした。
"Editable" と "Solo" アイコンの挙動を改善。
タイムチャートビューでのコマンド+ドラッグ機能を廃止。
編集範囲の取り扱いを改善(特にタイムチャートビューで範囲選択がないとき)。
日本語以外のシステムで立ち上がらないことがあるのを改善。
オーディオデバイスを入力として設定するとクラッシュしていたのを改善。
ストリップチャートビューで、コントロール番号の設定が誤動作していたのを改善。
ストリップチャートビューに縦線を表示するようにした。
ストリップチャートビューで、Add/sub および Scale 機能を改善。
ストリップチャートビューで、入力の解像度を 0.25, 0.5, 1, 2, 4 から選べるようにした。
挿入/削除の undo 後に、選択範囲を回復するようにした。
リストウィンドウでイベントティックを変更した後、同じイベントが選択されるようにした。
Create Tremolo コマンド、Move Selected Events コマンド、Modify Durations コマンドを実装。
グラフィックウィンドウでえんぴつマークをシフト+クリックすると、連続したトラックを編集状態にできるようにした。
バージョン情報にリビジョン番号を入れるようにした。
2019/07/05 Version 0.8.0
バイナリを64ビット版にした。
スケールタイム機能がノート長を誤っていたのを修正。
タイムストリップチャートでスケールタイムを行う時の設定を保存するようにした。
演奏ビューのマーカーポップアップを選択すると、ピアノロールがその位置にスクロールする。
編集範囲をシーケンス終了より後に設定できるようにした(実験中)
ピアノロールで部分的に見えている音の操作を改善した。
ピアノロールで control-ドラッグすると音が鳴るようにした。
テンポストリップチャートはトラックリストのえんぴつマークに関係なく編集できるようにした。
デバイス設定ダイアログのレイアウトを少し変更。
ストリップチャートビューはピアノロールのトラックとは別に編集できるようにした(実験中)
グラフィックビューのフォーカスリングはピアノロールとストリップチャートを区別して表示するようにした。
MIDI録音でカウントオフが機能するようになった。
MIDIスルーと録音でトランスポーズを実装した。
オーディオエフェクトパネルの表示を改善した。
グラフィックビューのスプリッターにマウスが乗っている時の表示を改善した。
オーディオエフェクトパネルで、エフェクト名をクリックするとカスタムビューを書き直すようにした。
オーディオデバイスの設定を書き出し/読み込みできるようにした。
オーディオデバイス設定の書き出しオプションを設定できるようにした。
2017/10/23 Version 0.7.0
Audio Unit ソフトシンセを 40 ポート同時に使えるようにした。
10.5 と PowerPC サポートを終了。一方、10.10 以降でいろいろ問題があったのを修正。
MIDI データの送信手順を見直して、密度の高いデータで送りこぼしが出る問題を修正。
ストリップチャートの編集で、異常に高密度なデータが生成される問題を修正。
グラフィックウィンドウにいろいろあった問題を修正。
スクロールホイールの動作にいろいろあった問題を修正。
Ruby コンソールが機能していなかった問題を修正。
Change Timebase, Randomize Ticks, Thin Selected Events コマンドを実装。
Paste コマンドは既存イベントを上書きせずにマージするように変更。上書き Paste は "Paste with replace" として別途実装。
Get Editing Range from Pasteboard コマンドを実装。
演奏マーカーの表示が崩れていたのを修正(グラフィックウィンドウとリストウィンドウ)。
リストウィンドウで拍子メタイベントのメトロノーム単位を表示。
内蔵 DLS シンセの設定ウィンドウが出せるようにした。
内蔵 DLS シンセを使うとき、プログラムチェンジをポップアップウィンドウから名前で選択できるようにした。
演奏中に Mute/Solo フラグを変更するとフリーズしていたのを修正。
オーディオ入力(ソフトシンセを含む)にエフェクトをかけられるようにした。
(これ以前の履歴は 更新履歴 のページを参照)。