ポジティブ・アレルギー

物事を顧みず、ひたすら自身にとって都合の良い部分だけを見て突き進まなければならない、ポジティブ社会への拒絶反応

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

Mid/Side分離ルーティング再び

以前に Mid/Sid分離ルーティングについて書いたことがあるのだが、今になって微妙に間違っていたことに気づいた。で、せっかくだから、リベンジも兼ねてもう少し詳しくそれについて書いてみようと思う。使用したDAWはいつも通り、REAPERv0.999。

まず、これが大前提となる公式

・M+S=L、M-S=R

・2S=L-R → S=(L-R)/2、 2M=L+R → M=(L+R)/2

この式を参考にして Mid と Side に分離し、それを元に戻すわけだが、その前にまず、REAPERv0.999 を使って、同じステレオ音声が流れている 1つないしは 2つのトラックから、受信側のトラックがどのような音声の受け取り方をすると、どのようなものが出来上がるか、ということを確かめてみる。実際にそれがどのようなものになったのかは、Brainworx の「bx_solo」を使って確認(逆位相にして無音になれば同一の音声が鳴っているはず)。

bx_solo1.png

其々の下に書かれてある式は、多分こんな風になっているんじゃないか、という個人的な予想(当たっているかどうかは不明)。左右のチャンネルの状態は「左チャンネル◇右チャンネル」、送り手と受け手の関係は「送り手 ≫ 受け手」で表した。

◎レシーブ1

「Tr1:Channel1/2 ≫ Tr2:Channel1/2(モノラルmix)」→ M
Receives1.png

予想:「L◇R」→「L+R=2M◇0」→「M◇M」= M

1つのトラックから元の音声をモノラルmixで受け取ったもの。「bx_solo」の Mボタンを点灯させ逆位相にしたものとぶつけると、打ち消しあってマスターで完全な無音になる。モノラルmixというのは、左右のチャンネルを足し合わせ、それを再び双方のチャンネルに均等に振り分け、受け渡ししているのだと思う。例えば「L◇0」をモノラルmixにして受け取ったものを +6dBにすると L と一致する。これは「L+0◇0」→「L/2◇L/2」→+6dB→「L◇L」のようになっているからだろう。

◎レシーブ2

「Tr1:Channel1/2 ≫ Tr3:Channel1」
「Tr2:Channel1/2 ≫ Tr3:Channel2」→ = M
Receives2.png

予想:「(L+R)/2=M◇0」+「0◇(L+R)/2=M」=「M◇M」= M

これもレシーブ1 と同じく M になる。両チャンネルから片チャンネルに受け渡しが行われる場合、其々の片チャンネルが受け取る容量は、送り手側の両チャンネルが持っている容量の 1/2 になるようだ。

◎レシーブ3

「Tr1:Channel1 ≫ Tr2:Channel1/2」→ L
Receives3.png

予想:「L◇L」= L

「bx_solo」で言うところの「L Solo」と同じものになる。片チャンネルから両チャンネルに受け渡しが行われる場合は、送り手側の片チャンネルの容量が保たれたまま、其々のチャンネルに送られてくる。

◎レシーブ4

「Tr1:Channel2 ≫ Tr2:Channel1/2」→ R
Receives4.png

予想:「R◇R」= R

同じく「R Solo」と一致。

◎レシーブ5

「Tr1:Channel1 ≫ Tr3:Channel1/2」
「Tr2:Channel2 ≫ Tr3:Channel1/2」→ 2M
Receives5.png

予想:「L◇L」+「R◇R」=「L+R=2M◇L+R=2M」= 2M

L に R を混ぜ合わせたもの。音量を-6dB下げると、逆位相にした M と打ち消しあって無音になる。

◎レシーブ6

「Tr1:Channel1 ≫ Tr3:Channel1/2」
「Tr2:Channel2 ≫ Tr3:Channel1/2(逆位相)」→ 2S
Receives6.png

予想:「L◇L」-「R◇R」=「L-R=2S◇L-R=2S」= 2S

L に、R を逆位相にしてぶつけたもの。音量を-6dB下げると、逆位相にした S と打ち消しあって無音になる。

◎レシーブ7

「Tr1:Channel1/2 ≫ Tr3:Channel1/2」
「Tr2:Channel2 ≫ Tr3:Channel1/2(逆位相)」

「Tr3:Channel1/2 ≫ Tr4:Channel1/2(モノラルmix)」 → S
(画面は Tr3 の I/O)
Receives7.png


予想:「L◇R」-「R◇R」=「L-R=2S◇R-R=0」→mono「S◇S」= S

Tr1 からは普通のステレオ音声、Tr2からはレシーブ4(R)を逆位相にしたものを Tr3で受け取り、さらその Tr3 を Tr4 でモノラルmixにして受け取ったもの。S と打ち消しあって無音になる。

◎レシーブ8

「Tr1:Channel1/2 ≫ Tr3:Channel1/2」
「Tr2:Channel1/2 ≫ Tr3:Channel1/2(モノラルmix/逆位相)」→ 「S◇-S」
Receives8.png

予想:「L◇R」-「M◇M」=「L-M=S◇R-M=-S」=「S◇-S」

Mid/Side分離ルーティング - underthemoon@hatena
上記のページで書かれていた方法。こんな方法があったのね。右チャンネルの S が逆位相になっているのがポイント。そしてここでできた「S◇-S」と「M◇M」を混ぜ合わすと…

「S◇-S」+「M◇M」=「S+M=L◇M-S=R」=「L◇R」

となって、元に戻る。

 ***

次に実際のルーティング。レシーブ1、6、7、8 使って M/S を作り、それを元に戻す。幾つかのパターンを挙げてみたが、基本的にどのプロジェクトファイルにも Tr1 に 2mix ファイルを読み込ませていることが前提(一部例外あり)。マスターへ音声を送るのは復元されたトラックのみ(ここでは一旦マスターの前に復元トラックを噛ませているが、必ずしもそれは必要というわけではない。それが必要ないなら、復元トラックを削除し、「Mid/Side」もしくは「Left Channel/Right Channel」から直接マスターに音声を送っても構わない)。使い方は、「Mid/Side」 もしくは 「Left Channel/Right Channel」 にコンプや EQ など好きなプラグインを立ち上げて調整するだけ。個別に音を確認したい場合は、そのトラックのソロボタンを点灯させ、I/O でマスターへのセンドにチェックを入れる(確認し終わったらそのチェックを外す)。

▼レシーブ6でSを取り出すタイプMidSide2_v1.RPP

MidSide2v1.png

Tr1→2mix(←ステレオファイル「L◇R」を読み込ませる。L抜き出し用)
Tr2→2mix(Tr1≫「L◇R」 R抜き出し用)
Tr3→Mid(レシーブ1:「L◇R」をモノラルmixで受け取り→M)
Tr4→Side(レシーブ6:「L◇L」-「R◇R」=2S→-6dBでSに)
Tr5→Left Channel(M+S=L→パンを左に振って「L◇0」 Tr7 へ)
Tr6→Right Channel(M-S=R→パンを右に振って「0◇R」 Tr7 へ)
Tr7→復元(Tr5&6≫「L◇R」→マスターへ)

説明:まず、Tr1 に 2mixファイルを読み込ませる。Tr2 は、Tr1 で読み込まれた「L◇R」をそのまま受け取る。Tr3 はTr1 or Tr2 から「L◇R」をモノラルミックスで受け取り、M を取り出す。Tr4 はレシーブ6 の方法で 2S を取り出し、それを-6dB して S にする。Tr5 では、Tr3&Tr4 をそのまま受け取って「L◇L」を作り、パン左に振って「L◇0」にしてTr7へ送る。Tr6 では、 Tr3 からはそのまま、Tr4 からは逆位相にして音声を受け取る。それによってできた「R◇R」をパンを右に振って「0◇R」にし、復元トラックである Tr7 に送る。復元トラックである Tr7 では、Tr5&6 から其々「L◇0」と「0◇R」を受け取り、出来上がった「L◇R」をマスターへ送る。

レシーブ6 で 2S を作り、それをフェーダーで S(「S◇S」)にするタイプ。其々のトラックが受け持つ役割は上記の通り。REAPERv0.999 では PanLaw が +0.0dB なのでそのままでいいが、別のセッティングになっている場合は、復元トラック、もしくは LeftChannel&Right Channel で其々のセッティングに応じた dB の調整が必要になるかもしれない。尚、ここでは Tr5&Tr6 を一旦復元トラックである Tr7 に送っているが、Tr5&Tr6 から直接マスターに送ってもよい。その場合、復元トラックである Tr7 は必要なくなる。

▼レシーブ8でS(「S◇-S」)を取り出すタイプMidSide2_v2.RPP

MidSide2v2.png

Tr1→2mix(←ステレオファイル「L◇R」を読み込ませる)
Tr2→2mix(Tr1≫「L◇R」 モノラルmix抜き出し用)
Tr3→Mid(レシーブ1:「L◇R」をモノラルmixで受け取り→M)
Tr4→Side(レシーブ8:「L◇R」-「M◇M」=「S◇-S」)
Tr5→復元(Tr3&4≫「M◇M」+「S◇-S」=「L◇R」→マスターへ)

説明:Tr1 に 2mixファイルを読み込ませる。Tr2 は、Tr1 で読み込まれた「L◇R」をそのまま受け取る。Tr3 は Tr2 から「L◇R」をモノラルミックスで受け取り、M を取り出す。Tr4 ではレシーブ8 の方法で音声を受け取り、「S◇-S」を作る。復元トラックである Tr5 は、Tr3&Tr4 から「M◇M」と「S◇-S」を受け取り、「L◇R」にしてマスターへ送る。

普通のステレオ音声とモノラルミックスを逆位相にしたものとを混ぜ合わせ、S(「S◇-S」) を作るタイプ。Tr3&Tr4 を直接マスターへ送るなら、Tr5 は必ずしも必要ない。こちらも一旦 L と R に分けてから復元トラック、もしくはマスターへ送ることも出来る(MidSide2_v2b.RPP)が、それだと一つ目のやり方と同じトラック数を消費することになる。

▼レシーブ7でSを取り出すタイプMidSide2_v3.RPP

MidSide2v4.png

Tr1→2mix(←ステレオファイル「L◇R」を読み込ませる。L抜き出し用)
Tr2→2mix(Tr1≫「L◇R」 R抜き出し用)
Tr3→中継(レシーブ7a:「L◇R」-「R◇R」=「2S◇0」)
Tr4→Mid(レシーブ1:「L◇R」をモノラルmixで受け取り→M)
Tr5→Side(レシーブ7b:Tr3の「2S◇0」をモノラルmixで受け取り→S)
Tr6→Left Channel(M+S=L→パンを左に振って「L◇0」 Tr8へ)
Tr7→Right Channel(M-S=R→パンを右に振って「0◇R」 Tr8へ)
Tr8→復元(Tr6&7≫「L◇R」→マスターへ)

レシーブ7 を使って S(「S◇S」)を作り出すタイプ。こちらは中継トラックの分、最初の方法よりも 1つ余分にトラックが必要になる。ただし、Tr1 と Tr2 に同じ 2mix を読み込ませ、どちらかに中継トラックの役割を担わせるなら、その 1つ分のトラックは節約できる(MidSide2_v3b.RPP)。

  ***

とうことで、再び REAPERv0.999 上における M/S 分離ルーティングについて書いてみたが、このやり方だと結構トラック数が必要になる(最少でも4つ)ので、ミックスには向いていないし、一時流行った S 成分を詰め込んで強調するという手法を用いたいだけならば、「bx_solo」やFluxの「Streo Tool」、Voxengo の「MSED」などを使えばいいだけなので、実際には余り役には立たなかったりする。最近の有料プラグインには元々 M/S処理の機能が付いていたりする場合も多いしね。問題があるので修正したいけど、もう 2mix しか残っていないし、有料プラグインも持っていない、という場合くらいかなあ、これが役に立つのは。まあ、一応こういうこともできる、ということで。

――ルーティングではなく、プラグインを使用するならば、もっとシンプルな方法がある。「bx_solo」と、元々 REAPER についている「chanmix2」を併用すれば、たった 2トラックで M/S を分離して処理することも可能。やり方は、2つのトラックに同じステレオ音声のファイルを読み込ませ、Tr1 は「bx_solo」で M にして、Tr2 は「bx_solo」で S にした後ろに「chanmix2」を挿し、right phase を normal→invert に変更する。これで「M◇M」+「S◇-S」=「L◇R」となり、元に戻る。ミックスで M/S 処理をしたい場合は、こちらの方法を使った方が良いだろう(Tr1 から Tr2 に 「Pre FX」で元の音声を送る設定をすれば、ファイルを読み込ませるのは Tr1 だけでよくなる)。

  ***

因みに、「bx_solo」がどうやって M や S を取り出しているかと言えば、恐らく以下のようにしてだろう。

Mボタン = 「L◇R」 → 「L+R=2M◇0」 → 「M◇M」

Sボタン = 「L◇R」 → 「L-R=2S◇0」 → 「S◇S」

つまり、Mボタンを押すと、いわゆるモノラルmixと同等の工程が加えられ、Sボタンを押すと、右チャンネルを逆位相にして左チャンネルと混ぜ合わせ、それが左右に振り分けられている。

それが証拠に、Mボタンを点灯させた「bx_solo」の後ろにさらに Sボタンを点灯させた「bx_solo」を挿すと無音になる。これは、Mボタンで出来上がった「M◇M」の左M に逆位相にした右M がぶつけられた結果だろう。さらに、Sボタンを点灯させた「bx_solo」の後ろに Mボタンを点灯させた「bx_solo」を挿した場合、Sのまま変化しない。これは双方 S になった両チャンネルを足し合わせた後、それを再び双方のチャンネルに振り分けているからだろう。結果、元通りになる。また、Sボタンを点灯させた「bx_solo」の後ろにさらに Sボタンを点灯させた「bx_solo」を挿すと無音になる。

Mボタン and Sボタン = 「M◇M」 ≫ 「M-M=0◇0」 → 「0◇0」

Sボタン and Mボタン = 「S◇S」 ≫ 「S+S=2S◇0」 → 「S◇S」

Sボタン and Sボタン = 「S◇S」 ≫ 「S-S◇0」 → 「0◇0」

恐らくこんな風になっているのではないかと。

コメント

コメントの投稿


管理者にだけ表示を許可する

トラックバック

http://positiveallergy.blog50.fc2.com/tb.php/439-f3afbb01
この記事にトラックバックする(FC2ブログユーザー)

 | HOME | 

プロフィール

後正面

Author:後正面
ひきこもりという役割を引き受け
ざるを得なかった一人として
人間について考えてみる。
でも、本当はただの断末魔ブログ。

働けど無職。
-------------------------
※コメントは記事の内容(主題)に関するもののみ受け付けています。また、明らかに政治活動的な性質を持つ内容のコメントはお控え下さい(そういった性質を持つ発言は、それを許容するような姿勢を持つ一部のブログを除いて、自分のブログで行うものだというのが私の基本的な考え方です)。

最近の記事

最近のコメント

最近のトラックバック

月別アーカイブ

カテゴリー

RSSフィード

リンク

このブログをリンクに追加する

FC2カウンター

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。