[決定版]ニンテンドースイッチでサラウンド環境を整える方法

Nintendo Switch

知識編

以下、ニンテンドースイッチのついていろいろ調べた情報です。

  • 5.1chはHDMI経由でしか出力されない
  • BluetoothやUSBでの音声出力には対応していない
  • USBゲーミングヘッドホンは使えない
  • 音声出力はリニアPCM2ch/5.1chしか対応していない
  • WH-600はリニアPCM5.1chに対応していない
  • 既存のキャプチャーボードはほとんど5.1chに対応していない

間違っていたらコメントで連絡お願いします。

結論から言ってしまうと、ニンテンドースイッチはHDMIかイヤホンジャックでしか音声出力ができません。

そしてイヤホンジャックは2chまでしか対応していないので、サラウンドを楽しむことは不可能です。

つまり、HDMI経由でなんとかサラウンド環境を整える必要があります。

三通りの方法でスプラトゥーン2でサラウンド環境を整える方法を載せたので、興味がある方は是非どうぞ!!

ダメな方法

SPDIF

このような分離器を使って映像信号と音声信号をわけることができればいろいろ応用ができそうな気がするのですが、これもできません。

何故ならSPDIF(光デジタル音声)はリニアPCMには2chまでしか対応していないからです。

上記の商品を買っても全くの無駄足です。

情報が信用できないという方のために、下にソースを載せておきます。

PCゲームで5.1chサラウンドを楽しむときは、S/PDIFとHDMIのどちらを使うべきか(完結編)
PCゲームで5.1chなどのマルチチャンネル音声を再生しようとすると、光デジタル出力とHDMIのどちらを使っても、何らかのトラブルが発生してしまう。この問題に自分自身は一定の結論を出したので、その顛末を書いてみよう。

相変わらず光デジタル出力では、2ch以上の未圧縮音声(リニアPCM)は送れないし、HDMIでは音声のみを送信することはできないからだ。

【Nintendo Switch】光デジタル出力端子やドルビーデジタルやらに対応してないことにまず注意が必要。
引用元: 791: 名無しさん必死だ...

それリニアPCM5.1ch対応してないよ、ドルビーデジタルのみ対応の製品多いので注意

Switchの音声はリニアPCMで出力されていますが、リニアPCMの5.1chはS/PDIFには規格上乗せられないらしく、このスプリッタを経由する時点で2ch分しか通りません。

S/PDIF - Wikipedia

Dolby Digital等では1 – 6.1チャンネル、リニアPCMでは最大2チャンネルの音声を1本のケーブルで転送可能である。

WH-600

この製品はARC(オーディオリターンチャンネル)と呼ばれるHDMIの機能を利用してサラウンド環境を整える製品ですが、ARCはSPDIFと仕様が同じためリニアPCMは2chまでしか伝送することができません。

つまり、この製品を使ってもスプラトゥーン2をサラウンドで楽しむことはできません。

ゲーミングヘッドホン

オススメ度 ☆☆☆

手順は複雑ですが、一度完成すればリアルサラウンドが楽しめます。

5chにLPCMデコーダを利用してサラウンド環境を構築した人がさっそうと現れました。

この方法を使えばちょっと面倒ですが確実に5.1ch環境がスプラトゥーンが楽しめます。

書き込みの内容から現在では購入が難しいものがあるので、購入が簡単な代替品に置き換えてみました。

必要な製品

全部アマゾンで手に入るのがいいところですね。

実際に音を聴くためのヘッドホンです、これがないと話になりませんね。

デコーダはこれらの二つのうち、どちらかが必要になります。

下の方が値段は安いですが、ケーブルが余計に三本必要になります。

スプリッタが必ず一つは必要です。

後述するバスリダイレクト機能を実現するためには二つ必要です。

オプション

デコーダとしてaEX-LPCM71chを選んだ場合はこのケーブルが三本必要になります。CLUX-11SAの場合は不要です。

Tiamat 7.1 V2にはバスリダイレクト機能がないのでゲームによっては低音域がスカスカになってしまう可能性があります。

なので以下の製品が必要になる場合があります。

スプラトゥーンの低音はフロントと同時にでているのでこの機器は不要だそうです。

TiamatはUSBから電源供給をしますが、USBをPCに繋ごうとすると届かない場合が多いです。
USBとアナログ端子がまとまっているためです。

スプリッタとバスコントローラを接続するために必要なケーブルです。
これが二本必要です。

バスリダイレクトとは

下記のURLで詳しく解説されているのでどうぞ!

「Razer Tiamat 7.1 V2」レビュー。今や貴重なリアル7.1ch出力対応ヘッドセットは誰のためのものか
 Razerのリアル7.1ch出力対応ヘッドセット第2世代モデルとなる「Razer Tiamat 7.1 V2」。「サラウンドサウンド出力はバーチャルで」というのが主流の現在にあって,あえてアナログ接続で7.1chサラウンドを実現する製品は,果たして誰のためのものなのか。サウンドデザイナーである榎本 涼氏が徹底検証する...

特に仕組みが気にならない人はスルーで大丈夫です。

この記事が大変参考になりました。

配線

ゆうや(@TanzWalzer111)さんがTiamatの接続図をアップロードされていたので、それを元にRemynya(@Remynya_Spla)さんがより手軽にできる配線を考案してくださいました。

【朗報】
スプラトゥーンで5.1chのリアルサラウンド環境をRazerのヘッドセットTiamat 7.1 V2で構築することに成功しました!用意するものと接続全体図を共有します。
かなり難題でもあったバスリダイレクトも解決できたので低音もバッチリです。
全国のリアルサラウンダーたちのチカラになれれば!

スプリッタを一つ使った接続方法

Remynya式のメリット

  • スプリッターが一つで済むので金銭的に安い
    • 約5000円ほどの差が出ます
  • スプラをプレイする分には音の違いはない
    • 他のゲームでは違いがでるかもしれません

デメリット

  • ヘッドセット付属のコントローラで音量操作ができない
    • 大きめに聴こえるので、索敵などで違和感があるかも…

とりあえず簡易のRemynya式で試してみて、上手く5.1chがいけたらバスリダイレクト機能も実装するという感じで良いのではないでしょうか。

バーチャルサラウンドヘッドホン

オススメ度 ☆☆☆☆☆

簡単に環境が整いますが、バーチャルサラウンドなので気になる人は気になるかもしれません。
環境構築までには35000円位かかります。 HW700DSを買ってHDMIを接続するだけなので失敗がないのもオススメです。

サラウンドに対応していて最も環境を構築するのが簡単なのはMDR-HW700DSです。

AVアンプ

オススメ度 ☆☆

一度完成すればリアルサラウンド環境が手に入ります。
環境構築までには60000円位かかります。 スピーカーの質によっては最も良いい質が得られますが、夜には大きな音が出せないというデメリットもあります。

V583が旧機種ですが値段が安くていいかもしれませんね。

キャプチャーボード

もしも5.1chの音声を録画・配信したいのであればIntensity Pro 4K以外の選択肢は現状ありません。

GC573は5.1chの録画・配信には対応していませんが5.1chパススルー(正常なダウンミックス)に対応しているので “5.1chでプレイ・2chで配信” という環境ができます。

AverMedia製の他のキャプチャボードでは5.1chを2chにダウンミックスする際に音声チャンネルが欠落するので音が消えてしまいます。

GC573でのサラウンド録画

GC573は5.1chのキャプチャに対応していないので、この動画ファイルは2chです。

しかし、5.1chを正しく2chにダウンミックスできているので、配信していても視聴者は正常に音声を聴くことができます。

GC550でのサラウンド録画

GC550は5.1chのキャプチャにもパススルーにも対応していないのでキャプチャーすると音声が消えてしまっているのがわかります。

そのため、サラウンドでプレイしながら配信すると視聴者は聴こえない音があるために違和感を覚えてしまいます。

MDR-HW700DSとの接続

よくあるミスとして音声がキャプチャできないぞ!?というのがあるので対処方法を載せておきます。

MDR-HW700DSの設定からTV+HP Audio Out: Onにすれば聴きながらキャプチャできます。

ただし、先述したようにGC573とIntensity以外は5.1chのパススルーに対応していないので録画すると音声の大部分が欠落するのでそれら以外のキャプチャボードで運用するのは難しいと思います。

コメント

  1. 匿名 より:

    Intensity Pro 4K について補足しておくと、あれはちゃんと 5.1 ch キャプチャできる装置です。ただし、実際には 2 ch / 8 ch / 16 ch の選択肢しかなく、8 ch がいわゆる 7.1 ch でこれで 5.1 ch が拾えます。手元の環境だと SMPTE/ITU の一般的な L/R/C/LFE/Ls/Rs と違って 3 ch が LFE で 4 ch が C になっているので反転させる必要がありました。スイッチの仕様なのか Intensity Pro 4K の仕様なのかは不明です。
    私個人は DeckLink SDK に入っている CapturePreview.app を改造して使っています。r210 と pcm のデータはフレーム単位で補足できているので、ちゃんとプログラムを書けばネット配信も可能だと思います。

    最近のサラウンドシステムは HDMI に対応しているので、キャプチャボードで取り込んだ音声を HDMI で音声出力する方法もあります。
    他にもサラウンドで鳴らしたいだけなら、YAMAHA のサウンドバーなんかは HDMI のパススルーに対応しているので、スイッチ-スピーカ-モニタという配線もあり得ます。
    サラウンド入出力対応のテレビやAVレシーバーとかならスイッチ-テレビ-スピーカも可能。機器を介する分、映像が遅れたり乱れる可能性は常に付き纏いますが。

    前記事で話題だったミックスは、ミックスするなら最初から 2 ch に出力にすればいいと思いますが、好みのミックスをしたい場合に実現する方法はいくつかあります。
    デジタルでのダウンミックスはキャプチャ用のプログラムを改造すれば良いのですが、知識と SDK マニュアルを読む根気さえあれば誰でもできます。キャプチャボードはフレーム単位でデータを取り出していますし PCM データなため線型性がありますから単純な足し算をするプログラムをつくるだけでダウンミックスできてしまうわけです。
    アナログだとミキサーは高価な製品なので、自分で組んだ方が安上がりです。例えば YAMAHA が環境設計用に公開している資料 M2TB にアナログ回路の概念図がありますから、これを参考に、HDMI から DAC で信号を六つ取り出したら、オペアンプで加算回路組んで合成しましょう。「ミキシングアンプ 自作」で検索するとたくさん参考になるページが出てきます。

    Mac 以外ではどうするかわかりませんが、USB の 2 ch DAC を三つ接続して Audio MIDI 設定で機器セットを作成して擬似的な 5.1 ch スピーカとすればチャンネル分離用の高価な装置を使う必要性はなくなります。どうしても装置が手に入らない場合はこういう方法もありますので参考までに。

    • me より:

      ものすごく詳しく解説頂いてありがとうございます。
      キャプチャは映像はできるのですが、音声が上手くできないので自分には少しハードルが高いかもです。

    • 匿名 より:

      環境の構築は目的によるところが大きいと思います。VHS のキャプチャ用に買った Intensity Pro 4K がたまたま手元にあったので勉強がてら色々プログラム書いて使っています。
      標準の Blackmagic Media Express でも音声キャプチャ可能です (ただし HDD だと書き込み速度の問題で 1080p は頻繁にドロップします) が、あれはプレビューアプリではないので映像の確認が出来ないのが難点ですね。
      IntensityShuttleViewer なるアプリを開発している人もいます。DeckLink API に対応する他のデバイスで使えるかは試してないのでちょっとわかりませんが、その手のアプリを探されてる方は参考になさってください。

    • me より:

      自分はpythonで書いているのですが、言語は何を使われていますか?

      IntensityShuttleViewerというアプリは初耳でした、情報ありがとうございます!

  2. 匿名 より:

    Cocoa アプリで使うので基本的には Objectice-C と C です。音声処理部分は Core Audio が C ライブラリという理由もあって C で書いてます。

    CapturePreview で映像表示するとコマ落ち (“イカラジオ”のプレイ画面がわかりやすい) することが判明したので、最近 View そのものを OpenGL で再実装し書き直しました。
    結果、View のアンチエイリアスのかけ方が異なるのか、以前より画面がきれいになるという思わぬ誤算がありました(正しい色空間が sRGB ではないらしく困っていますが)。
    この View は NSOpenGLView を使って Objective-C で書いた物で描画の際に OpenGL の API を呼び出しています。必要があれば色やエンディアンの変換で SSE3 使ったりするのでここは C 系以外は難しいと思います。
    ちなみに調べるまで知りませんでしたが、コマ落ちは Core Video の API で実装すると除去出来ました。一般に 60 Hz のモニタは更新間隔が 16 ms/17 ms と異なるため CVDisplayLink による垂直同期が必要となり、仮に均等なタイミングでコールバックするタイマーで View を動かすとコマ落ちするみたいです。

    残念ながら IntensityShuttleViewer は最新OSで不具合という理由から現在公開停止されているようです。

    • me より:

      Cは四年ほど経験があるのですが、Objective-CはiOSアプリでほんのちょっとしか触ってないのなかなかハードルが高そうです。

      60fpsのキャプチャに垂直同期が必要となるとますますソフト開発が難しそうですね。
      知識量がすごすぎて正直なんてコメントを返していいものか悩んでいます(笑)

    • 匿名 より:

      追記:色空間は単純な sRGB でした。正しい色は iOS アプリの Nintendo Switch Online に表示されるアイコンを比較して決めました。盲点でした。この結果からみて CapturePreview の表示は sRGB だと思っていたのですがどこか間違っているようです。Metal Kit の MTKView を使うと特に悩むことなく正しい色で描画できるようになりました。参考にしたのは Apple の Sample Code “Creating and Sampling Textures” と Qiita の “macOSでOpenGLプログラミング” の二つです。あとやり始めるまで知りませんでしたが、フラグメントシェーダを書いた方が 10bit RGB r210 を 8 bit RGB にしたり色の変換が簡単みたいでした。

      私は C++ のことをほとんど知らないので CapturePreview のコードを読むのが大変でした。この手の API はやはり C++ で書かれていることが多いですね。シェーダも C++ 前提のつくりになってますし・・・。macOS アプリの入門には有名なヒレガス本がオススメです。Objective-C は API の設計に癖があって最初は使い方がわかりにくいように思いますが、あれ一冊で一月もあれば macOS アプリが自作できるようになります。最近は Swift という罠ができつつありますけど。

      成果物は需要ありそうならそのうちどっかでこっそり公開するかもしれません。RAW だと 8.3 MB/Frame と重過ぎるので FFmpeg API 呼び出して MEPG-2 で書き出せるようにしようとか、もともと画像解析に興味があったので、キャプチャ中のデータにアクセスできる API をくっつけておいて昔あった IkaLog 的な物を XPC のプラグイン形式で導入しやすくしようとか、そんなことも考えてます。

  3. 匿名 より:

    Remynya式についてですが、
    この方法でバスリダイレクトできているのでしょうか?

    意図は、スプラトゥーンはRL/FRからLEFの音も出ていることから
    FL/FRの音をLEFからも出そうということかと思いますが、
    この接続では
    FLの音はLEFから出て、FRの音はFCから出たり、
    LEFの音がFLから出て、FCの音がFLから出たりして
    左右のバランスがおかしくなりませんか?

    • えむいー より:

      手元にTiamatがないため確認できないのですが、Remynya氏曰く「ゆうや氏の方法がベスト」だということです。
      ただ、実際にRemynya式でも音量の細かい調節ができないこと以外に不便(聞こえない音があったり)などはないようです。

タイトルとURLをコピーしました