曲からボーカルを抽出する方法: 4つの手法を比較

要約

曲からボーカルを抽出するには、ミックスをDemucsなどのAIステムセパレーターに通し、2ステム出力のボーカルを書き出します。WAVかFLACから始め、低ビットレートのMP3は避けてください。2分ほどで使えるアカペラが得られ、残るリバーブの尾、ハイハットの漏れ、シビランスは手作業で整えます。

スタジオモニター、スペクトログラムを表示したノートPC、デスク上のヘッドホン

曲からボーカルを抽出するには、ミックス全体をDemucsのようなAIステムセパレーターに通し、2ステム出力でボーカルと伴奏を書き出すのが基本です。ソースはストリーミング品質のMP3ではなく、WAVまたはFLACで用意してください。2分ほどで使えるアカペラが手に入りますが、残ったリバーブの尾やハイハットの漏れは手作業で整える必要があります。

ここから先では、どの手法がどの作業に向いているか、各手法が何を残すか、そして結果をどこまで信頼してよいかを説明します。

どの手法なら使えるボーカルが得られ、どれは時間の無駄になるか?

手法は4つあり、品質の差は小さくありません。以下は、密度の高いポップスのミックスで私たちが実際に試した結果を、品質の低い順に並べたものです。

位相キャンセル(Audacityの「反転してミックス」)は、リードボーカルがセンターにあり、インストゥルメンタル版を引き算できる場合にだけ機能します。インストが手元にないと、薄くて空洞のような音になります。インストのステムを持っていない限り、使わないでください。

EQとスペクトル編集では、1〜4 kHzを持ち上げ、100 Hz以下をカットすることでボーカルを前に出せます。ただし、それはアイソレーションではなくミックスの工夫です。ギターやスネアは同じ帯域に残ったままです。

センターチャンネル抽出(昔ながらの「ボーカルリムーバー」プラグイン)は、同じ発想を見やすいインターフェースで実現したものです。ステレオに広げたボーカルのダブルや、リバーブのかかったボーカルを含む曲では失敗します。

AIステムセパレーションは、ボーカルを独立した音源として扱う唯一の手法です。数千のマルチトラックセッションで学習したニューラルネットワークがボーカルとそれ以外を予測し、差し引きます。ほとんどの場合、これを使うのが正解です。

セッションメモ: レーベルから実際のマルチトラックや公式のアカペラが届いた場合は、それを使ってください。セパレーションは、ステムが存在しないときの代替手段です。

2本のグレーのバッキングトラックの上に分離されたボーカルの波形が表示されたDAWセッション

DemucsでAIによるボーカル分離を手順どおりに行う方法

Demucsは、Metaの研究グループが開発したオープンソースのモデルで、多くの分離サービスが内部で使っています。ハイブリッドTransformer版は、追加の学習データを使った場合にMUSDBベンチマークで9.20 dBのSDRを報告しています(Hybrid Transformers for Music Source Separation の論文)。SDRが高いほど、ボーカルに残る楽器の音が少なく、ボーカルの損傷も少なくなります。

作業は4つのステップです。

  1. 手元で最も高品質なソースを用意します。16bit/44.1 kHzのWAVまたはFLACは、128 kbpsのMP3より常に優れています。非可逆圧縮は、モデルが子音を見つけるために使う高域の情報をすでに潰しているからです。

  2. pipでDemucsをローカルにインストールするか、それをラップしたブラウザツールを使います。ローカル実行ならファイルが外に出ず、1曲ごとの費用もかかりません。

  3. 2ステムのコマンドを実行します: demucs --two-stems=vocals your-song.wav。初回実行時にモデルの重みがダウンロードされ、数百MBあります。

  4. 出力フォルダを開きます。vocals.wavとno_vocals.wavが得られます。両方をDAWに置き、サンプル0の位置に揃えて、足し合わせると元の音に戻るか確認してください。

最近のノートPCのCPUでは、4分の曲に1〜3分ほどかかります。GPUなら数秒です。ファインチューン版のhtdemucs_ftは約4倍遅いですが、ボーカルはやや綺麗です。リリースする素材や、そこからクローンを作る素材には、こちらを使ってください。

分離したボーカルに残る問題

文脈の中で出力がどう聞こえるかを見てみましょう。ボーカルのステムだけを聴くと、繰り返し現れる3つのアーティファクトに気づきます。

リバーブの尾が切れます。モデルはドライなボーカルを残し、部屋の響きの多くを落とすため、フレーズの末尾が唐突に止まります。10〜15%のウェットで短いコンボリューションリバーブを足すと、それらがつながります。

ハイハットとシビランスが入れ替わります。8〜10 kHz付近のシンバルのエネルギーがボーカルに漏れ込み、本来の「s」の音が一部抜け落ちることもあります。6〜8 kHzのデエッサーと、穏やかなダイナミックEQのカットで大半は解決します。

バッキングボーカルやダブルは誤ったステムに入ります。モデルは、どの声がリードかを判断できません。重ねられたコーラスは、ひとつのにじんだボーカルとして出てくることがあります。

結果がクリーンだと言う人は信用しないでください。セパレーションは推定であり、元のトラックの復元ではありません。

設定とソースファイルは本当に結果を変えるのか?

変わります。しかも、ツールの選択以上の差が出ます。効いてくるものは3つです。

まずソース品質です。同じ曲をロスレスファイルと低ビットレートのMP3で処理し、得られたボーカルのステム同士をヌルテストで比べてください。MP3版には、破裂音の前に聞き取れるプリエコーが出ます。

次にモデルの選択です。ファインチューン版のDemucsや新しいバンドスプリット型のモデルは、速度と引き換えにアーティファクトを減らします。Deezerの古いSpleeterは高速で軽量ですが、編成の多い曲ではボーカルが平板に聞こえます。

3つ目はオーバーラップとシフトの設定です。オーバーラップ(デフォルトは0.25)を上げ、2〜5回のランダムな「シフト」を加えると、境界部分のアーティファクトが平均化されますが、処理時間は長くなります。最終書き出しなら両方を上げてください。

暖かい光の中のデスクに置かれたコンデンサーマイクとオーディオインターフェース

分離したボーカルをボイスクローンのサンプルに使えるか?

読者からよく寄せられる質問です。短く答えると、許諾がある場合に限られ、フル品質ではほぼ使えません。

分離したボーカルで学習したクローンは、そのアーティファクトを引き継ぎます。切れたリバーブの尾やシビランスの漏れは、生成音声に妙な呼吸音や舌足らずな響きとして現れます。ほとんどのクローンサービスは、音楽が下にない、ドライでマイクに近い音声を30秒から3分求めます。分離した曲のボーカルは、歌われ、処理され、リバーブがかかったものなので、その逆です。

法的な面も同じくらい厳しいです。商業録音は著作権で保護され、歌手の声は国によってパーソナリティ権やパブリシティ権で守られることがあります。許諾なしにリリース済みの曲から歌手をクローンすることは、規制当局がルールを整備しようとしている利用例です。出荷するクローンには、自分の録音か、同意した実演者の音声だけを使ってください。

分離が役立つのは、自分の素材をクリーンアップする場合です。音楽のベッドの上に録ったインタビューや、バッキングトラックが流れている中で録ったボイスメモなら、サンプルをアップロードする前にセパレーションで出発点をきれいにできます。

AIセパレーションを使わないほうがよいのはどんなときか?

実際のステムが手に入るなら、それを使ってください。多くのアーティストはリミックスコンテストのためにステムを公開していますし、Bandcampなどのストアでは公式のアカペラが販売されています。実際のステムにはアーティファクトがまったくありません。

鑑識や証拠に関わる作業には使わないでください。分離したボーカルはモデルの推定であり、もっともらしい細部を作り出すことがあります。

ミックス内の他の楽器と同じ音色を持つボーカルも避けてください。たとえば、シンセのフレーズを重ねて歌う単独の歌手などです。ネットワークは両方を混ぜた状態で出力してしまいます。

練習用トラック、権利処理を行う予定のリミックス用サンプル、カラオケ用のステム、自分の録音のクリーンアップなど、出力の使い道がはっきりしているなら、手間をかける価値があります。

抽出したボーカルのためのクリーンアップチェーン

ステムは完成品ではなく、粗いバウンスとして扱ってください。以下は、私たちがすべての抽出で使っている順序です。

まず80 Hzのハイパスフィルターを入れて、キックのにじみを取り除きます。ボーカルはそれより低い帯域にほとんど有用な情報を持たず、モデルは低音の薄いドンという音を残すことがあります。

次に、漏れている帯域にスペクトル修復ツールかダイナミックEQをかけます。ハイハットの漏れは8〜10 kHz付近、スネアの漏れは200 Hzと4 kHz付近にあります。カットは問題の打撃音が鳴っている間だけにして、打撃と打撃の間ではボーカルの空気感を保ちます。

そのうえで、6〜8 kHzのデエッサー、リバーブの尾を再構築するための軽いプレートリバーブ、そしてモデルの確信度が切り替わる箇所のレベル差をならす2:1の軽いコンプレッサーを加えます。ここでの調整は小さく、1〜3 dBのゲインリダクションで十分です。

最後にラウドネスを確認します。分離したボーカルは、通常6〜10 dBほど元のミックスより小さく出てきます。何かと比較する前にノーマライズしてください。

セッションメモ: ステムは必ずヘッドホンとスピーカーの両方で確認してください。スピーカーで消えるアーティファクトも、ヘッドホンでは聞こえることがあります。

セパレーションは十分な品質か? 5分で済む2つのチェックがあります。1つ目はヌルテストです。両方のステムを足し合わせた結果の位相を反転させて元の音と重ねます。忠実に分離できていれば、非常に小さな残留音だけが残ります。2つ目はソロテストです。ボーカルだけを中くらいの音量で聴き、どこでゆらぎ(ワーブル)が出るかをメモします。その箇所は、どのリミックスでも露呈します。

ゆらぎがサビだけに出るなら、オーバーラップを上げて再実行するか、そのセクションだけを分けて処理してください。全体に出るなら、制約はソースファイルか編曲にあり、どんな設定でも直りません。

すべての作業にコマンドラインが必要なわけではありません。作業に合ったツールを選んでください。

自分の話し言葉の録音をまとめて整えるなら、背景音楽も除去できる文字起こしベースのエディターのほうが、ステム分離より速く作業できます。

クローン用のサンプルをクリーンな音声から作るなら、ドライな音声を30秒から数分受け付け、コミット前に品質を報告してくれるサービスを使ってください。

ミキシングコンソールの上に置かれたスタジオヘッドホン

次のセッションの前に

コミットする前に、テストを1つ実行してください。自分の持っている曲をhtdemucs_ftで分離し、2つのステムを足し合わせて元の音とヌルしてください。残留音が約-40 dB以下なら、ほとんどの作業には十分なほど忠実な分離です。

そのうえで、既知の3つの問題を順番に直します。まず短いリバーブを足し、6〜8 kHzをデエッサーで抑え、どのダブルを残すかを決めます。これで10分ほどかかりますが、「明らかに抽出された音」から、ミックスで使える音に変わります。

最後に、自分の音声をクリーンアップすることと、他人の声を借りることの間に、はっきりした線を引いてください。前者は作業の流れです。後者にはライセンスが必要です。

よくある質問

曲からボーカルを無料で抽出できますか?
はい。DemucsとSpleeterはオープンソースで、ローカルで実行すれば1曲ごとの費用はかかりません。それらをラップしたブラウザツールは無料プレビューを提供し、フル品質のダウンロードに料金を取ることが多いです。
抽出したボーカルが水っぽく、フェイジーに聞こえるのはなぜですか?
モデルはボーカルを推定して差し引くため、確信度の低い箇所では高域がにじみます。ロスレスのソース、htdemucs_ftのようなファインチューン版モデル、高めのオーバーラップ設定を使ってください。
Audacityでボーカルを抽出するのは十分ですか?
センターに定位したボーカルで、かつ引き算するインストゥルメンタルがある場合に限られます。通常のステレオミックスでは、反転してミックスする方法は薄くて空洞のような結果になり、AIセパレーションのほうがはるかに良い結果を出します。
抽出するときファイル形式は重要ですか?
はい。16bit/44.1 kHzのWAVまたはFLACは、モデルに高域の細部をすべて与えます。128 kbpsのMP3は子音の情報をすでに失っており、ステムにプリエコーと漏れを生みます。
著作権のある曲からボーカルを抽出するのは合法ですか?
個人的な練習のために曲を分離することは、公開することとは一般に別扱いされます。商業録音からリミックス、サンプル、ボイスクローンを公開するには権利者のライセンスが必要で、ルールは国によって異なります。
抽出したボーカルでボイスクローンを学習できますか?
技術的には可能ですが、品質は落ちます。切れたリバーブの尾やシビランスの漏れがクローンに引き継がれます。クローンサービスは、マイクに近いドライな音声を30秒から3分求め、話者の同意も必要です。