google tag

My Soundcloud Channel --- Testing :D

Wednesday, May 23, 2007

今日の audacity で remixごっこ、のナゾ

注釈) 2018/9/30 追記 もはや古い記事なので一応補足しておきますが、最近のDAW関連の音声ソフトウェアでは、録音済みのトラックから、特定の楽器だけ取り出す、楽器で鳴らしている和音を変更する、などかつて考えられなかった音声操作が可能になってきている様で、当然ヴォーカルをきっちり抜き出すという事も出来るようです・・・ ということを念頭にお読みください(笑)
---
素人がCDなどの音源から ヴォーカルトラックを抜き出して別オケに重ねる、というリミックス、YouTubeなどにもよくupされている。 しかし単純に元音源の切り貼りだけでは作れない。ピッチやテンポを合わせる、ヴォーカルのみを抜き出す、などのテクニックが必要であり、よく作ってるよなぁ、なんて思うと同時に、どうやっているのか、少し疑問に思っていた事でもあった。

例えば、ヴォーカルトラックを消しさってカラオケを作る、のは比較的簡単で、原理的にはヴォーカルはステレオ音像内のセンターに定位させるのが普通で、それはほぼ左右同相成分である、という事を利用して、同相成分を消し去るフィルターを通せば良い事になる。これは xmmsのプラグインにも付属しているし 音声エディットソフトなどの のエフェクトにも存在する。 左右同相を抜いてしまうので、低音も抜けてシャカシャカがつよくなるし、相対的に逆相成分が多くなるので元の音質は保てなくなるが、おおむねヴォーカルが消える事はたしかだ。

しかし、それとは逆に、バックのオケを消しさって、ヴォーカルのみにする、のはどうすれば良いのだろうか? このテクニックが無いと元の歌声に別オケを重ねるというリミックスは成立しない。ヴォーカルは左右同相、という理屈から左右同相成分のみにしても... 広がりのないモノラルになるだけで、オケは消えない。

波形をエディットしてヴォーカルのみを取り出す、のも無理だろう。歌声のみが通過する魔法のフィルター...は素人考えでも無理に近いのは明白... 素人がミックス前のヴォーカルトラックのみを手に入れるのも難しいだろうし、では作り手はいったいどうやっているのだろう....

と言うような事を仕事帰りにiPodで曲を聞きつつテクテクと歩きながら考えてたら....あぁもしかしたら! と気がついた。早速試してみると、音源にもよるけれどもお遊び程度のものなら作れる事が分かったので書いてみることにする...

----
音源、 これが肝心で、すべては音源しだい。制約は... 原曲と、その 原曲と全く同じだがヴォーカルの入っていない off vocal トラック (カラオケトラック:CDシングルなどのオマケトラック) が揃っている事。 原曲の音源のみからヴォーカルを抜き出すのはやはり無理そうだ。しかし off vocalトラックがあれば...そう、 原曲の音源から off vocalの音源を 引き算してやれば、 ヴォーカルのみの音が取り出せる...はずである。

(ヴォーカル + オーケストラ ) - ( オーケストラ ) = ヴォーカル

と言うことである。

---
で、これを試してみるのに audacity という フリーでオープンソースなマルチトラック音声エディターを使う。 audacityは マルチプラットフォームで Mac用も Win用もある。 Debianの公式パッケージにも含まれているので Debian使いはaptで入れられる。

で、この audacityで 元音源(ヴォーカル入り) と off vocal 音源の二つを importで取り込む。取り込んだら、ヴォーカルの無い部分、曲の冒頭や終りの部分を拡大して、特徴ある音声波形を見つけて、元音源と off vocal音源の 山を完全に一致させる。 これが不完全だとオケの消え具合が悪くなる。原理的には曲の冒頭で合わせれば最後まで合うはず、であるが、音源によっては 微妙にずれてしまうという事もある。

( これはCDの出来次第、なのか、マスタリングの時になんらかのずれが生じるのか、よく分からない。ずれてしまう場合は、ぴったり合った付近のみオケが消え、ずれが大きくなるにつれオケの音が大きくなる、と言う事になる。 )

ともかく、 元音源と off vocal 音源を正確に同期させる。その次は引き算作業であるが、これは audacityのエフェクターを使う。

まず、 off vocal トラックをセレクトして メニューの Effectから Invert をかける。これで off vocal トラックの極性が反転、つまり元トラックと山谷が反転する事になる。


反転が済んだら、そのままプレイボタンで再生してみる。これでオケの音が小さく、ヴィーカルが大きく聞こえるはずである。波形を拡大して時間軸を微妙に合わせ込んでオケの音が最小になる様に調整。

仕上げはミックスダウン。元音源と反転させた off vocalトラックを足してやれば良い。これは二つのトラックを選択してから メニューの Project から QuickMix で行う。元音源と 極性反転させた off vocal を足し算する.. のは 元音源から off vocal を引き算する、事になるので、これでヴォーカルのみが取り出せる事になる。 実際はチャカチャカ言う高音までは完全には消えないのではあるが、別オケをかぶせると気にならないぐらいの S/N は得られる様である。

( 一方、元音源と off vocal音源はほとんど同じなのにうまく消せない音源も存在した。ものすごく微妙に 何山かずれてしまう、そういうレベルでの時間軸での差が出る音源があった。部分的には合うので、そういう場合は フレーズ毎に細かく区切ってやればよいのかも知れない、がものすごく手間が掛かるだろう... )

オケやヴォーカルのテンポやピッチは、メニューの Effect 内の Change temp, Change pitchを使って変更できる。 音程を変えずにテンポを変える、テンポを変えずにピッチを変える、というミラクルなエフェクトである。 多少チリチリとする場合もあるが、アナログ信号処理では絶対に不可能な作業であるし、こういう事がPCとフリーなソフトで簡単に出来てしまうのは驚きでもある。

なおピッチは絶対音感など無くても、キーボードなど楽器を鳴らして比較しながら調べられるが、テンポは道具がないと手間である。自分で拍子をカウントして 一分間に何拍...なんて調べる...のは単純そうで結構難しい...ので 例えば CountBeats みたいなソフトを使うと便利だ...

お遊びリミッックスと言う事で実際試してみたのだが、 元曲から抜き出したヴォーカルを、別アレンジのオケに、 テンポ約172のヴォーカルを テンポ120かつピッチが半音高いオケに 重ねてリミックス、という荒技を試してみたのだが、お遊びとして笑って聞けるぐらいに合わせ込む事ができた。



---
とまぁ、どういうソフトを使っているかは別として、おそらく皆さんこういう作業をしてリミックスして遊んでるのだろうなぁ...と言うことが分かったわけである。

ちなみに、カラオケに合わせてキーボードでソロを取る、とかカウンターを当てるみたいなお遊びは楽しい。楽しいし、ただ鳴らしているだけの遊び弾きでも、なんとなく 弾いてる気分になれる。

けれど、その逆、ヴォーカルに合わせて伴奏する、というのは、難しい。これはきちんと本当の意味で弾ける人でなければ出来ない。 同様に、プロのカラオケトラックに声を乗せるのは誰にでも出来るだろうが、自分でオケを作りなおす...のは誰にもは出来ない。少なくともきちんと、なんらかの形でオケを作れる技術と感性がなければできない...と言う当り前の事を再認識した次第であった... 音楽的に無学文盲だと譜面の読み書きもままならずコードも分からず両手で弾けず、しかし 感性と勘で弾いてもまず合わない...って事である...
---
追記

その後 歌声りっぷと いうWin用ソフトがLinuxのwineで動作し、その抜き取り結果も素晴らしい事が分かった。 歌声りっぷが使える環境ならそれを使ったほうが速くて簡単で確実で綺麗に出来る。 wine は   Intel MacのOS-X にもポートされてる?ので、 Intel Mac ユーザーはあきらめずに wine や crossoverについて調べて試してみる価値はあると思う。