2015/03/30

あのステレオミキサー ・・・

・・・Windowsが XPからVISTAに移行した際に無くなったと騒がれたアレ。


本当のトコロは、実装されている場所(IDが管理される枠組み) と 基本構造 が 変わり、
"オーディオを使用するアプリケーションが 直接呼び出す手段を失っただけ" ってのが真相。

そして、Windowsの設定を使いこなすでもなく、利用していたアプリケーションでの取り回しのみに依存していた連中が
操作する知性の無さを VISTA や 7 に 責任を擦り付けただけってのが実態だ。


では、ドウ実装が変わったのかを説明しよう。


まず WindowsXPの世代中盤から暫くまでは、1システムのオーディオデバイスは1つ、再生の窓口も1つ と云う構成が通常だった。
それにあわせてWindows自体では 単一オーディオデバイスを取り回すだけの [オーディオミキサー] が
(再生する)[ステレオミキサー]として稼動しているに過ぎなかった・・・
厳密には、システムの[オーディオミキサー]に アプリケーション開発者側で アプリケーション分の音声出力先を
レジストリレベルで固定的に追加出来る様になっていただけ。 ・・・しかし この仕様では、該当アプリケーションや
付属するドライバの質が OSの安定性を大きく左右してしまう為、MSとしては好ましい状態では無かったのだ。
だが、それが VISTA登場前辺りから 機器を巡る情勢が大きく変わってきていたのが 実装の大幅変更の素因となった・・・ HDMIやUSBオーディオなど、"複数の着脱自在なオーディオデバイス接続利用の普及" が ソレに該当する。
更に、OSの安定性は 一般市場でさえ、鯖以上のモノが求められるようになってきていた・・・ 以前までの仕組みを引き摺り、
アプリケーションベンダの所業起因の システム全体が不安定にさせられる可能性は、入り口から排除する必要があった。
ソコで VISTA では、アプリケーションからの [音量ミキサー]への(レジストリレベルの直接)音声出力先の追加受付処理を排除した・・・ コレが見た目上起因で 一般に "ステレオミキサーが削除された" ハナシ と なって広まっていたのだ。 続いて VISTA SP1 からは、XPと異なり、[録音デバイス] の 1つとして、標準で [ステレオミキサー] を "正式に" 実装した。
但し、Windows7 でも そうだが、あくまで "(アプリケーションから見て)出力(Windowsからしてみれば入力)に使える窓口" が
1つ用意されているに過ぎないコトを踏まえておかなければならない。
・・・この [ステレオミキサー] は、その [プロパティ]画面 [聴く]タブ の [このデバイスを使用して再生する] 項目で 任意の物理(用途によっては YAMAHA NetDuetto等の 対応した仮想オーディオドライバも可)出力先を選択しない限り機能しない。
且つ [ステレオミキサー] 自身の 仮想ハードウェアIDの配置が [再生]側ではなく [録音]側の1つの仮想機器 と 云う扱いとなり、
多くのアプリケーションの設定画面で "音声再生出力先" としては表示されなくなった・・・
これらを利用するには、別途任意に調整したい再生アプリケーションを、
"標準としては利用されない" 物理オーディオ出力に対して接続させて
その物理接続を [ステレオミキサー] で "任意の出力先にミキシングする" 必要がある。 この構造の採用により、Windowsの[音量ミキサー]自体へ 直接的に(レジストリレベルでの)アプリケーション分の追加を不要としただけではなく、 接続インターフェイスが対応していれば、オーディオデバイスのホットスワップや複数接続運用が (安定性基で)完璧に可能となった。 ・・・で、ココからが紛らわしくて VISTA以降、誤解を生んでいたのだが、
オーディオを利用するアプリケーションで "再生出力先" として
直接 [ステレオミキサー] を 選択するコトは 最新Windowsでも出来ない。
[ステレオミキサー]経由で 音声を再生したい場合は・・・
・該当する再生アプリケーションの設定画面で、[再生出力先]として、
 Windows "既定として使われていない" 再生デバイス(音声出力先)を選択しておく。

・[ステレオミキサー]のプロパティ画面 [録音]タブ-[このデバイスを使用して再生する] 項目で、
 (Windowsオーディオ既定再生先も含む)任意の出力先を選択する。
・・・のように設定すると、利用の開始が可能になる。 [ステレオミキサー]自体のマスターボリュームは、同プロパティ画面の [レベル]タブ-[ステレオミキサー]スライダ を 設定して利用する。 そして この [ステレオミキサー]機能 を、複数の再生アプリケーション で 利用し、それぞれの音量調節を行う場合は、 Windowsの[音量ミキサー]画面で、[デバイス] を "再生アプリケーションの設定画面で選択した出力先" に 切り替える必要がある。
単純に [音量ミキサー] を 開いただけでは、"既定に設定されているオーディオデバイス" が 優先的に表示されている。
・・・そうすると 対象の再生アプリケーションが [音量ミキサー]に列挙され、調整に利用可能となる。

・・・ココまで説明しておいてなんだが、OBSで 配信と 手元で再生される音声で それぞれ 単純に 出したい音、出したくない音 を 任意に割り振るだけなら、[ステレオミキサー] は 使わなくてもイイ場合さえある・・・
この項目は、配信に載せたい音を再生/出力するアプリケーションで、出力先音源を指定できる場合のみが該当します。

PSO2のような、音声出力先指定を GUIの設定項目として持たず、Windowsの設定で [既定]として指定されている音源にしか
音声を出力出来ない旧来の動作環境依存のアプリケーションを取り回す場合は、前述の[ステレオミキサー]を用い、且つ
[既定]音源の設定を少し工夫しないとならないから、この項目には該当しないかな。
具体的には、配信にのみ乗せたいアプリケーションの出力先の指定を・・・
● [HDMI](ディスプレイやTV) を 既定の音声再生先として設定しているなら。
・[スピーカー(φ3.5ジャック)] ないし 多くの機器で要らなくても実装されている [S/PDIF出力(DigitalOutput)]
● [スピーカー(φ3.5ジャック)] を 既定として設定しているなら・・・
・[S/PDIF出力(DigitalOutput)](完全に未使用と仮定)
● S/PDIF出力(DigitalOutput) を 既定として指定し、オーディオアンプ等を使用している場合は。
・[スピーカー(φ3.5ジャック)](完全に未使用と仮定)
・・・の様に設定した上で、OBSで 配信音源として "配信向けに設定したデバイス" を 選択するだけで完結する。 云わずもか、音量調節は 前述と同様、Windowsの[音量ミキサー]画面で、 [デバイス] を "再生アプリケーションの設定画面で選択した出力先" に 切り替えて・・・

・・・未使用のサウンドデバイスが無駄に実装されているのが一般的となっている昨今なら、
要不要に関わらず、物理のサウンドミキサーが 複数機、全ての機材に搭載されているに等しい。
と 考えても、間違いでは無いだろう。 そして、WindowsVISTA以降で云う [ステレオミキサー] とは、
物理で分離されたカタチで実装されている 複数の音源(サウンドデバイス)・・・
簡易に "複数のサウンドミキサー" と 云う認識で良いであろうソレらのウチ、
ソースデバイス(アプリケーションが音声を出力する先となる音源) と 
(Windowsが既定で音声を再生する音源も含む ソースデバイスとは別の)任意の再生デバイス
それぞれ 1つずつの 1セットだけを、一方通行でのみ繋ぐ役割を果たすだけのモノである。
・・・と 明言して ログの〆としよう。

0 件のコメント:

コメントを投稿

注: コメントを投稿できるのは、このブログのメンバーだけです。