エラー復旧
マスタリングデモでの失敗は、おおむね次の 3 種類に分けられます。ブラウザがファイルをデコードできない/レンダリングがその端末には重すぎる/設定としては有効でも音楽的に合っていない、というケースです。
デモのエラーハンドリングはローカルで完結します。フォールバックのためにファイルをサーバーへ送ることはありません。
ファイルが読み込めない
WAV・MP3・FLAC・OGG など、ブラウザがデコードできる別形式を試してください。ブラウザ側のデコードサポートは OS やビルドによって差があります。
ソースが長尺の場合は、まず短く切り出して書き出した上で試すと、ファイル形式の問題なのか、メモリ/処理時間の問題なのかを切り分けやすくなります。
レンダリングが失敗する
レンダリングは Web Worker 上で動きますが、CPU・メモリ自体は端末のものを使います。長いファイル・高いサンプルレート・リペア多めのプリセットは時間がかかります。
次の順で試してみてください。
- 短いセクションでチェーンが動くかを確認する。
- リペア強度を下げる、もしくは無効化する。
- Pop や Acoustic など軽めのプリセットを使う。
- 重いタブを閉じる。
- 成功したらレポートを書き出して設定を失わないようにする。
結果が不自然に聞こえる
マスターが悪く聞こえるときは、処理をさらに足し続けないでください。意味のある最小の動きまで戻します。
悪くなったら、足すのではなく引く
悪いマスターをさらなる処理で直そうとすると、たいてい問題が深まります。良く聞こえた直近の状態まで戻し、小さな変更を 1 つだけ加えて、また確認します。
| 症状 | まず見る調整 |
|---|---|
| ハーシュ/シャリつく | Air バンド量またはエキサイター量を下げる。 |
| 平坦/生命感がない | スレッショルドを上げる、レシオを下げる、またはアタックを遅くする。 |
| ポンピングする | リリースを遅くする、もしくはコンプレッションを減らす。 |
| 狭い/位相っぽい | ステレオ幅を下げ、相関値を確認する。 |
| ピークが歪む | ラウドネス目標を下げる、もしくはリミッターへの負担を減らす。 |
ミックスに戻るべきケース
マスタリングですべてのミックス問題を直すことはできません。ボーカルが埋もれている/キックとベースがぶつかっている/マスタリング前からステレオイメージが崩れている、といった場合は、先にミックスに戻って直してください。マスタリングチェーンは再生環境間のトランスレートを改善できますが、上流の問題を救済するための処理として使うべきではありません。
実装メモ
UI 側では、ローカルのエラーとワーカー由来のエラーを分けて扱っています。
| 処理 | 実行場所 |
|---|---|
| ファイルデコード | ブラウザの AudioContext.decodeAudioData |
| レンダリングとリファレンスマッチング | モジュールワーカー |
| 出力、レポート、リファレンス、チェーン設定のダウンロード | ローカルブラウザメモリ上の object URL |
これらの object URL は、入れ替え時に必ず revoke します。そのため、何度も試してもブラウザのメモリを漏らしにくい設計です。長尺ファイルで処理途中にタブを閉じた場合でも、参照を持ったまま残るリソースを最小限に抑えます。
検証スクリプトでは、生成信号を使ってマスタリングプリセットを実行し、有限のラウドネス値・適切な範囲のピーク・想定どおりのステージ名を確認しています。ユーザーが実際に流すあらゆるファイルでの成功を保証するものではありませんが、リリース前にプロセッサ配線の破綻やプリセットの矛盾を検出するのに役立ちます。
関連: リペアと入力コントロール, ダイナミクスコントロール, 配信ターゲット