- ブログ:WebMIDIツールのニュース、ガイド、アップデート
- 🛡️ プライバシー・バイ・デザイン:MIDI Toolboxのアーキテクチャ徹底解説(ファイルを保存しない理由)
🛡️ プライバシー・バイ・デザイン:MIDI Toolboxのアーキテクチャ徹底解説(ファイルを保存しない理由)
ミュージシャン、作曲家、プロデューサーにとって、MIDIファイルは単なるデータではなく、**知的財産(IP)**です。それが次のヒット曲の下書きであれ、個人的な練習セッションであれ、あなたはこう問う権利があります:「MIDI Toolboxを使うとき、私のファイルはどこへ行くの?」
「クラウド・ファースト」が当たり前の時代において、私たちはあえて 「プライバシー・ファースト」 のツールを構築するという決断を下しました。
あなたの信頼を得るために、私たちは 「徹底的な透明性(Radical Transparency)」 を信じています。この詳細な記事では、当社の技術がどのように機能するのか、ローカルツールとクラウドツールの違い、そしてたとえ私たちが望んでも物理的にあなたの音楽を「盗む」ことができない理由を正確に説明します。
1. 中核となる哲学:「クライアントサイド」処理 💻
当社の機能の90%(プレーヤー、エディター、オーディオコンバーターを含む)において、MIDI Toolboxは「クライアントサイド」アーキテクチャを採用しています。
仕組み(技術的な内訳)
MIDIファイルをプレーヤーやエディターにドラッグ&ドロップすると、次の一連のイベントが発生します。
- ブラウザのサンドボックス: ウェブブラウザ(Chrome、Edgeなど)は、「サンドボックス」と呼ばれる安全で隔離された環境を作成します。
- メモリへの読み込み: 当社のコードは、あなたのファイルを
ArrayBufferとしてデバイスの RAM(メモリ)に読み込みます。 - ローカルシンセシス: Web Audio API と Tone.js などのライブラリを使用して、コンピュータのサウンドカードから直接音を生成します。
重要なのは、この全プロセスにおいて、あなたのMIDIファイルは一度もインターネット上を移動しないということです。 これは、コンピュータのメモ帳でテキストファイルを開くのと何ら変わりません。処理能力は当社のサーバーではなく、あなたの CPUから供給されます。

2. 例外:「楽譜(Score)」ビジュアライザーとそのセキュリティ 🎼
私たちは正直さを大切にしています。当サイトには、サーバーサイドの処理を必要とする特定の機能が1つあります:MIDIから楽譜(Score)へのコンバーターです。
なぜでしょうか?生のMIDIデータを読みやすく美しい楽譜(MusicXML/PDF)に変換するには、現在のところウェブブラウザで効率的に実行するには重すぎる、複雑なレンダリングエンジンが必要だからです。
「エフェメラル処理(一時的な処理)」プロトコル
Scoreページを使用する場合、私たちは エフェメラル処理 と呼ばれる厳格なセキュリティプロトコルを採用しています。このページでのデータのライフサイクルは以下の通りです。
- セキュアなアップロード (TLS 1.3): ファイルは暗号化されたSSLトンネル (HTTPS) を介して送信されます。
- 即時変換: サーバーはファイルを 一時メモリバッファ に受信します。楽譜エンジンによって即座に処理されます。
- 「ファイア・アンド・フォーゲット(撃ちっ放し)」ポリシー: 楽譜が生成され、画面に送り返されると、元のファイルと結果は当社のサーバーのRAMから即座に削除されます。
私たちはファイル保存用のデータベースを持っていません。 サーバー上に「ユーザーフォルダ」もありません。トランザクションが完了すると、データは当社側から完全に消滅します。

3. なぜ「ローカル」は「速い」のか(パフォーマンスの利点) ⚡
プライバシーだけがこのアーキテクチャを選んだ理由ではありません。パフォーマンス も重要です。
従来の「クラウドコンバーター」では、レイテンシー(遅延)のループ に直面します:
アップロード(待機) -> サーバーのキュー(待機) -> 処理(待機) -> ダウンロード(待機)
ローカルで処理することで、MIDI Toolboxは ゼロレイテンシー解析 を実現しています。
- AudioWorklet技術: ブラウザの
AudioWorkletを利用して、別のCPUスレッドでオーディオ処理を実行します。つまり、10,000個の音符を持つ「Black MIDI」ファイルを再生しても、インターフェースがフリーズしたり、オーディオが途切れたりすることはありません。 - 即時フィードバック: エディターで音符を移動すると、すぐに音が聞こえます。オーディオを「再レンダリング」するためにサーバーと往復する必要はありません。
4. 「オフライン」の証明(機内モードテスト) ✈️
私たちの主張を検証する最良の方法は、あなた自身でテストすることです。すべてのユーザーに 「機内モードテスト」 を試すことをお勧めします。
- MIDI Player をロードします。
- インターフェースが表示されたら、インターネット接続を切断してください。
- MIDIファイルをロードして再生します。
完璧に動作するはずです。

これは、当社のサウンドエンジンとSoundFontsがブラウザにキャッシュされているためです(不変キャッシュ戦略により、最大1年間)。MIDI Toolboxは本質的に、ブラウザ内で実行されるデスクトップアプリになります。地下室、飛行機、またはWi-Fiの弱いスタジオで練習しても、データはあなたのマシンに安全に残ります。
5. 履歴の管理(IndexedDB) 💾
最近開いたファイルの「History(履歴)」リストに気づくかもしれません。サーバーにファイルを保存していないのに、どうやってこのリストを表示しているのでしょうか?
私たちは IndexedDB と呼ばれるブラウザネイティブのデータベースを使用しています。
- あなたのデータ、あなたのデバイス: このデータベースは、あなたの ハードドライブ上の あなたの ブラウザプロファイル内に存在します。
- 外部アクセスなし: 私たち(ウェブサイトの所有者)は、あなたのIndexedDBにリモートでアクセスすることはできません。
- 完全なコントロール: 「Clear History(履歴を消去)」 ボタンをクリックするか、ブラウザのキャッシュをクリアすることで、いつでもこの履歴を消去できます。

結論:アーキテクチャによる信頼
私たちがMIDI Toolboxをこのように構築したのは、それが簡単だったからではありません。JavaScriptで完全なDAWのようなエンジンを構築するのは困難です。私たちがこのように構築したのは、クリエイティブなツールがあなたをスパイすべきではない と信じているからです。
ローカルで編集する場合でも、安全な一時サーバーを介して楽譜を生成する場合でも、プライバシーは当社のアーキテクチャにハードコードされています。
自由に創作してください。私たちが守ります。