デスクトップPCからの音声出力をGPUから出力しているディスプレイから 行っている状態でちょっと困ったことになったのでそれについて。
環境
PCはNVIDIA GeForce RTX 2070 superを積んだWindowsマシン。
普段はここからDisplayPort (to DisplayPort)でディスプレイに画像を出力。
ディスプレイにはスピーカーは付いてませんが、イヤフォンジャックがついていて そこにスピーカーを付けて音を出しています。
こんな感じでDisplayPortやらHDMIのデジタル出力だと画像と同時に音声も送れます。
問題発生
問題が発生したのは別のディスプレイにHDMI (to HDMI)で画像を送ろうと接続した時。
この時、音も新しくつないだディスプレイ(こちらはスピーカー付き)の方から出る様になりました。
その後、HDMIを外すとDisplayPortでつないだ方からは音が出ない状態で、 サウンド設定の辺りを見てみてもそれが見当たりません。
HDMI接続前は32G1WG4というディスプレイのものがありそれが既定になっていましたが、 HDMIを接続するとそれが消え、HDMIに繋がれたCapsule IIというものが既定になります。
その後、HDMIを外すと、当然Capsule IIは利用不可になるわけですが、 32G1WG4は復帰しません。
何故か他に2つDisplayPortはあるのですが、これは恐らくつないでない出力のもの。
治すには一旦スリープに落とすなり再起動する必要がありました。 DisplayPortを繋げ直すと治ることもありましたが治らないことも。
これだと気軽に別ディスプレイを繋げられず困った状態に。
解決策1
NVIDIAのGPUを使っていると、NVIDIAコントロールパネル、というものがインストールされていると思います。
タスクバー上にある緑のアイコンをクリックするかコントロールパネルの中から探して立ち上げます。
この中でデジタル・オーディオ設定、というのを開くと、 各ポートに繋がっているディスプレイ毎にオーディオが選べる様になっています。
GeForce RTX 2070 superは3つのDisplayPort出力と1つのHDMI出力があります。
PCの背面に(設置の向きによりますが)上の画像の通り、右からDisplayPort(1)、HDMI、DisplayPort(2)、DisplayPort(3)と配置されています。 (HDMIが真ん中にぽつんとあるのは設計上の意味があるのでしょうか?)
DisplayPort(3)にAOC 32G1WG4がありますが、これが普段使っているディスプレイ。 (3)を使っていたのは一番左にあり、ディスプレイが(PCの後ろから見て)左側にあるため。
もう一つのHDMIにつながってるCapsule IIが臨時的に付けてるもの。
モバイルプロジェクターです(HDMI入力あり、スピーカー機能もついてる)。
HDMIの方はドロップダウンボックスみたいになっていますが、 ここで、オーディオをオフにするというのを選択出来る様になっています。 (何故かDisplayPortの方はその選択が出来ない。。。)
ここで、HDMIをつないだ状態で一度この設定をオーディオをオフにするにします。 (つないでないと選択も出来ないので一度はつなぐ必要あり。)
ここでオフにしてしまうと、DisplayPortから出してる32G1WG4の方がサウンド設定にはない状態のため 音が出なくなりますが、ここは一旦諦めてHDMIも外してスリープに。
再度開始するとサウンド設定に32G1WG4が現れ、ディスプレイから音が出るようになっています。
このままHDMIを繋いでみると、32G1WG4のディスプレイ側から音が出続け、HDMIを外しても大丈夫な状態に。
HDMIのCapsule II側は選択出来ない状態になりますが、仕方ないか、という状態。
とりあえずこれでもいいか、と思ってましたが、ちょっと別のことを試してみることに。
解決策2
最初はDisplayPort(3)に繋いでいたわけですが、音声出力が優先されるのは上のものでは? ということでDisplayPort(1)に繋いでみました。
HDMIの方は一度Capsule IIに関しても有効にしてあります。
その状態でHDMIをつなぐと、音は32G1WG4のディスプレイの方から出続けました。
この状態だとHDMIの方のCapsule IIも選択出来る状態で切り替えが可能です。
その後、HDMIを外してみてもちゃんとディスプレイ側から音が出続けます。
試しに、HDMIを接続した状態で、Capsule IIの方を既定の出力にしてみると、 HDMIをつなぐとCapsule IIから、外すと32G1WG4のディスプレイの方から出る様になり、 期待通りの動作になりました。
もう一つDisplayPort(2)がありますが、こちらに繋いでも同じ状態。 優先度的にも(1)と同じく、何もしなければHDMIよりもDisplayPort(2)の方が優先される様でした。
なのでNVIDIAコントロールパネルの表示順、というわけではなく、DisplayPort(1)、(2)が優先、 その次HDMIで最後がDisplayPort(3)?
これでDisplayPort(3)とかにも繋げてみると今度はうまくいきそう?な感じになってました。
この状態でサウンド設定を見てみると、繋いでないものも32G1WG4が残っている状態になっています。
ただ、DisplayPort(3)はやはり何かバグってる感じで、 もう一度DisplayPort(3)につなぎ、HDMIを繋いでCapsule IIから音を出すようにした所、 DisplayPort(3)に関する32G1WG4がサウンド設定から消え、 復帰しなくなりました。(一度スリープで復帰)
なのでとりあえずDisplayPort(3)は無視してDisplayPort(2)に繋いだ状態にすることで 問題なく使えるようになりました。
まとめ
NVIDIA GeForce RTX 2070 superの一番左の出力、DisplayPort(3)は問題がある? 様で、HDMIに別のディスプレイを繋ぐことでDisplayPort(3)から音の出力が出来なくなります。
ハードウェア的な問題、というよりはソフトウェア的な問題な感じですが、 この個体が何か壊れているのか、NVIDIA GeForce RTX 2070 superの問題なのか、 もしくはGeForce系ではよくあることなのか?
ざっと同じ様な症状を探してみた所では同じ問題を抱えてる人は見つかりませんでした。 なので個体の問題かもしれませんが、 多分問題があっても、同じ様な状態を作ることは余りないでしょうし、 特にDisplayPort(1)や(2)は問題ないのでなかなか当たらなそう。
個体の問題なら保証でなんとかならないか、とも思いますが、 そうとも限らないし、 とりあえずDisplayPort(2)に繋いでおけば問題ないので、しばらくはそれで。