この記事は、DTM Advent Calendar 2015 に参加するための記事です。12/4に参加するつもりでしたが間に合いませんでした…!!!

以前MS処理の原理について書いたことはあったのですが、説明が今思い返すと雑だったので改めて書いてみます。

まずMS処理とはなにかというと、 Mid/Side処理 の略で、ステレオ(2ch)の音声データを Mid成分Side成分 に分離し、曲に立体感を持たせたり、それぞれに別のエフェクトをかけて音圧調整するために使ったりします。普通はプラグインを使うと思いますが、波形を自ら編集することでも分離することができます。以下に手順を示します。


ステレオの音声データは2chの文字通り、2つのモノラル音声をそれぞれ左右に割り振っているデータです。

右から聞こえる音声の波形の関数を fR(順) 、左の波形の関数を fL(順) とします。(順)というのは波が順相である、という意味です。

ところで、音声は波です。波は逆位相を打ち消す効果があります。例えばfX(順)を逆位相にした音声データの波形の関数をfX(逆)とすると、

fX(順) + fX(逆) = 0

となります。


MS処理の手順を、式とともに見ていきましょう。

1.fR(順)とfL(順)を重ねてモノラルダウンミックスし、出来たモノラルの音声データを MONO とする。
  • MONO = fR(順) + fL(順) となります。
2.fL(逆)、fR(逆) を作る。
3.fR(順)とfL(逆)を重ねてモノラルダウンミックスし、出来たモノラルの音声データを SIDE(順) とする。
  • SIDE(順) = fR(順) + fL(逆)
4.fR(逆)とfL(順)を重ねてモノラルダウンミックスし、出来たモノラルの音声データを SIDE(逆) とする。
  • SIDE(逆) = fR(逆) + fL(順)
  • SIDE(逆)はSIDE(順)を逆位相にすることでも作ることが出来ます。
5.SIDE(順)を右に配置、SIDE(逆)を左に配置、MONOを中央に配置して、ステレオダウンミックスする。
  • 出来上がった
    • ステレオの音声データを MS とする
    • MSの右の波形関数を MSR とする
    • MSの左の波形関数を MSL とする。
  • MONOは中央に配置するので左右どちらからも聞こえるため、
MSR = SIDE(順) + MONO
    = {fR(順) + fL(逆)} + {fR(順) + fL(順)}
    = 2fR(順)

MSL = SIDE(逆) + MONO
    = {fR(逆) + fL(順)} + {fR(順) + fL(順)}
    = 2fL(順)

となり、音量調整をすれば元の音源と同じになります。

6.このとき、MONOを中央に配置したものがMid成分であり、SIDE(順)を右、SIDE(逆)を左に配置したものがSide成分になっています。

ということで、無事2chの波形データを元にMSに分離することが出来ました。なかなか普段原理まで気にする事がないMS処理ですが、仕組みが分かると案外単純かも?

それでは良きMS処理ライフを!