Skip to content

実践ユースケース ​

ここにある各ページは、手元の素材から目的の成果物までの 1 つの仕事を通しで扱います。多くはターミナルに貼り付けて実行できる CLI の手順です。ノートと歌声を扱うページには Python の手順が加わり、アプリのページは WASM パッケージを使った JavaScript です。

掲載しているコマンドはすべて現行エンジンに対して実行し、示している数値はそのとき出力されたものです。テスト素材の多くは合成音で、意図的に単純にしてあるため、検出器を惑わせる箇所は各ページで指摘しています。

作業から選ぶ ​

音を扱うのが初めてなら、練習用トラックを作る から始めてください。曲のファイルが 1 つあれば足り、どの手順も 1 コマンドで、結果をすぐ耳で確かめられます。表はやさしい順に並んでいて、各ページは上のページで出てきた用語を前提にしています。

レベル手元にあるものやりたいこと実行環境ページ
1練習中の曲減速・移調・パート分離した練習用トラックCLI練習用トラックを作る
2ピアノ曲の WAV や MP3譜面と照合済みの MIDI ファイルCLI + Pythonピアノの録音を MIDI にする。まず ピアノ採譜 で試せます
2荒い録音素材の山整音済みのテイクと、何が問題だったかの記録CLI録音素材をまとめて整音する
2ホスト・ゲスト・BGMダッキング済みでラウドネス規定を満たした 1 話CLIトーク番組を仕上げる
3ステムのフォルダ配信プラットフォームに出せるマスターCLICLI だけでミックスからマスタリングまで
3自分のミックスと、目標にしている市販曲音色とラウドネスを参照曲と同じ土俵に乗せるCLIリファレンス曲に寄せる
3納品直前のマスターCI で回る合否判定CLI納品前チェックを CI で回す
3何音か音程のずれた歌のテイクずれた音だけを正しい音程に。ビブラートは歌ったままCLI + Python歌のピッチを直す
4ローカルのステムと Web アプリの画面操作しながらミックスし、WAV をダウンロードJavaScript(WASM)ブラウザでミキシングアプリを作る
4インサートやマスタリングチェーンを扱うアプリエンジン自身のパラメータ記述子から生成した操作画面JavaScript(WASM)パラメータ記述子からコントロールを組み立てる

レベル 1 は各手順が 1 コマンドです。レベル 2 ではバッチスクリプトや、編集して使うプリセット、結果を採点する短い Python スクリプトが加わります。レベル 3 は複数の段をつなぎ、ラウドネスや音色を自分で判断する場面があります。レベル 4 はアプリケーションのコードです。知らない用語が出てきたら、オーディオ基礎 と ミキシングの基礎 を参照してください。

各ページの冒頭には「用意するもの」の枠があり、必要なファイルとその形式、インストール方法をまとめています。素材が合成音のページでは、同等のテスト用ファイルを書き出す短いスクリプトも載せているので、自分の音源で試す前にすべての手順を実行できます。

CLI のページの前提 ​

CLI の手順は Python CLI(pip install libsonare)を使います。手順に関わる次の 2 点は、CLI リファレンスで解説しています。

  • 2 つの CLI でコマンドは揃っていません。 シーンミキサー(mix)、プリセット駆動の master と mastering-chain、declip は Python CLI 専用です。逆に低レベルなメータリング系(meter、clipping、phase、stereo、dynamic-range)はネイティブ CLI 専用です。どちらの CLI を使うか を参照してください。
  • ほとんどのコマンドはモノラル前提です。 ミキシングとマスタリングはステレオペアを最後まで保ちますが、計測系のコマンドの多くはモノラルにダウンミックスし、その旨を標準エラー出力に出します。各ページでラウドネスを別途 lufs で測らずマスタリングレポートから読んでいるのはこのためです。ステレオとモノラルの扱い を参照してください。

すべてのコマンドが --json を受け付け、失敗はすべて終了コードに対応づけられています。そのため、どの手順もスクリプトから無人で実行できます。

CLI + Python のページは同じ Python パッケージ(Python 3.11 以降)を使います。CLI のページにある Node のタブと JavaScript のページは、はじめに と同じ WebAssembly 版の npm パッケージ npm install @libraz/libsonare(Node.js 22.12 以降)を使います。Node と Python の各タブには音声の読み込み方も載せているので、タブ内の変数はすべて定義済みです。

スクリプトではなく API を使う場面

UI やプラグイン、リアルタイム処理に行き着くユースケースは、シェルスクリプトではなく API の領分です。JavaScript API、Python API、C++ API から始めてください。考え方は同じで、このセクションの各ページからも要所で対応するガイドへリンクしています。