ShadowPlayでDISCORDの相手の音声が録音されない(GSX-1000)

GSX 1000

ShadowPlayの仕様とGSX-1000のデバイス特徴

GeForce Experience を使う理由としたら、お手軽な動画キャプチャー&ライブ配信でしょう。GeForceのNVENCを利用してCPUに負荷をかけずにH.264のCODECを用いてリアルタイムエンコードが可能です。

先日、TEAM-BOSS時代からの友人とInsurgency Sandstormを久々にCoopで遊んだところを録画したのですが、DISCORD上の友人の音声が録音されていませんでした。以前はそんなことなかったので、なにか変わったかな?などと思ったのですが、ShadowPlayの仕様と私がオーディオアンプに利用しているゼンハイザー GSX-1000の仕様とを見比べると解決策が見えてきたので自分向けメモです。

GeForce ShadowPlayの録画時の音声はOSで設定されている スピーカーの”規定のデバイス”(デフォルトデバイス)と、マイクの”規定の通信デバイス”です。

ゼンハイザー GSX-1000はヘッドフォン(スピーカー)とマイクの2つのデバイスから構成されており、スピーカーは”GSX 1000 Main Audio”、マイクは”Headset Earphone”として検出されます。

この仕様ですと、ゲームの音と私がマイクで発声している音は拾ってくれます。問題ないですね。

DISCORDで相手の声が録音されない理由

問題はDISCORDで相手の声が録画ファイルに録音されない事象です。DISCORDの音声・ビデオ設定では入力/出力ともにDefaultのデバイスを用いるとしています。このDefaultが問題を引き起こしていました。

ボイスチャットの相手の音声のDefaultとは、実はスピーカーではなく、通信デバイス(ボイスチャット等のヘッドセット等を指しています)からの出力なのです。GSX-1000は通信デバイスとしてのヘッドフォン機能も有していたわけです。ShadowPlayはスピーカーとマイクからしか録音しないので、通信デバイスの音声はミキシング対象外でミュート状態になってしまいます。

ところで、Windowsでは”通信デバイス”と訳されていますが、コミュニケーションデバイスの方が判りやすかったと思うのは私だけですかね。

対処方法

DISCORDで音声設定にある出力デバイスをDefault(つまり通信デバイス)ではなく、スピーカーにしてやればいいのです。GSX1000はヘッドセットとスピーカーを切り替えられますが、それとは別にスピーカーをつけている場合もあるので、ここでは”スピーカー(GSX 1000 Main Audio)を選択するようにしてください。

DISCORD for GSX-1000

謝辞

暑い中、確認試験のための対向環境を準備してくれたドギーに感謝。ボイスチャットで語ったのは15年ぶりくらいか。ドギーはUltima Online時代からの友人です。

ARK dedicated server をたてる

ARK-HEADER

チャイニーズコロナが流行っているので大仏建立のようにサーバを建てる

ボクはゾンビが苦手だ。ゲーム内の爬虫類と虫も嫌いだ。なのにコロナの影響なのか暇こいてARKがやりたいというフレンドがいるので、大仏建立のようにARKのPvEサーバーを建ててみた。設定はARK Server Managerという便利そうなツールがあるので、Dedicated Serverも簡単そうなのだ。

2週間ほどテスト運用してみて、だいたい安定稼働してきた。本家サーバーのように面倒でもPvPサーバーのように殺伐ともしない、ぬるいテイマーライフを満喫してほしい。現マップはIdLandでオーソドックスである。パスワードでロックしているので、本サイトのサーバー情報を見てDISCORDに訪れてほしい。

なんとなくパスワードがピン止めされているはずだw

パスワードはTEAM-BOSS.COM伝統のものなので、由来など面白がって欲しい。

次に建てるのは金剛力士像のようなInsurgency Sandstormだろう

こちらはちょっと難しそうだ。ボクが好きなCoopモードのCheckpoint mapが少ない。どのようにローテーションするべきか悩ましいのだ。

前作のInsurgency(素)であればWORKSHOPのマップがゴロゴロとあったのだが、SandstormはまだWORKSHOPがない。

公式サーバーのCoopはPvEなのに心無いチャイニーズやコリアンが日本人だとみるや、ボクらの背中を撃つフレンドリーファイヤーを繰り返し襲ってくるので辟易しているのだ。

ローカルサーバーのパスワードロックは必須だ。ボクらはCoopがやりたいんだ。

lvmでpv作れない

Mounted filesystem? と怒られた

lvmでpvを作ろうとしたところ、Mounted filesystem?と排他利用されているぞと怒られた。犯人はmpathだった。

犯人はオマエだ!といいたいなら

#fuser -m -v /dev/デバイス名 で判る。

lsblk でも判るだろう。

排他利用から手をひかせるためにはlsblkで表示されたデバイス名を控えておき

#dmsetup remove eui.xxxx (今回はこのようなデバイス名)で削除できた。

改めてpvcreate しましょう。

Windows10に Node.jsを導入する

インストールは簡単

Node.js サイトにアクセスすると、最新のmsi インストーラが掲載されているので、それをダウンロードしてインストールするだけです。私はLTS版をインストールしました。

セットアップ PROXY

会社でnode.jsを使う場合はproxy サーバーの設定が必要になる。コマンドプロンプトよりnpmコマンドで環境変数に定義する。

> npm config set proxy http://<ユーザー名>:<パスワード>@<PROXYサーバーアドレス>:<ポート番号>
> npm config set https-proxy http://<ユーザー名>:<パスワード>@<PROXYサーバーアドレス>:<ポート番号>

セットアップ npmを最新にする

最新にしておかないと、オメーのnpm古すぎ!とか怒られることあるので、パッケージ管理ツールのnpmを最新にします。

> npm install -g npm
:
> npm rebuild
> npm --version
6.11.3

 

誤自宅のメモリ事情

今、メモリ価格は底値をついた

先週末までメモリ価格は底値でした。5月連休で2枚セットで約26000円したメモリが18000円まで下がっていました。ところが先週末は反転して19000円に上昇です。買うなら今です。

私が購入したものではないですが、主にゲーム用OCメモリもkakaku.comによれば同じような形で価格遷移しています。

誤自宅サーバーで使うメモリ

光らないメモリ。メモリを光らせてどうするのさ。非発光原理主義者としては基本要件ですが、それとは別にZen2が待ちきれなくて 5月連休にRyzen7 2700XとX470アーキでメモリにはG-SKILLの3200MHzを購入しました。正直なところですと、Zen2アーキがでたとしてもRHEL7のカーネルで動くとは思えなかったので。

Ryzenの場合はメモリ性能がシステム全体の性能に影響します。リンク先の DDR4 Memory Scaling Performance with Ryzen 7 2700X on the AMD X470 Platform ベンチマークを見てください。メモリクロックが3000MHzを境界に性能差があきらかになっています。購入時には是非とも3000MHz以上のものをチョイスしたいところですが、シングルランクとデュアルランクという区別と、その区別毎に動作可能最大周波数が異なるそうです。
誤自宅サーバーを組む場合は全メモリスロットに挿すだろうし、可能な限りの大容量で組みますのでなかなか難しいです。今回のアーキですと4枚挿しで1枚あたり16GBのメモリを入れたいところですが、4枚挿しの場合のクロックはシングルランクのメモリでも2133MHzまでしか標準スペックです。容量を犠牲にして2枚挿しでマザーボードが6層基板であれば2933MHzまでとか。ふむ。3000MHz以上はつまりOCですので安定稼働は優先課題から除外します。容量と性能優先です。

購入品 G.Skill F4-3200C16D-32GSXWB を2セット

メモリのスペックは以下の通りです。これを2セット、4枚挿入しています。

Memory Type DDR4
Capacity 32GB (16GBx2)
Multi-Channel Kit Dual Channel Kit
Tested Speed 3200MHz  PC4-25600
Tested Latency 16-18-18-38-2N
Tested Voltage 1.35V
SPD Speed2133MHz
SPD Voltage 1.20V

マザーボードの設定を変更してSPDなど無視して額面どおりに動かす設定にしました。1.35Vで3200MHzにして、ついでにCPUクロックも全8コア4.1GHz固定にしています。CPUクーラーは虎徹2にしました。安定稼働は未判断ですが2週間程度は連続稼働できています。

参考までにマザーボードはASUSのPRIME X470-PROにしています。これを購入する前にASRockのMASTER SLIを購入したのですが、痛恨のミスでPCIeスロットが2本しか搭載していないのを確認しておらず、急きょ購入しました。RAIDアレイボードと10GbEのNICがあり、これにビデオボードを挿す必要があるので16レーン形状のスロットが3本必要です。

X470-PROはPCIe の3本目がGen2 でレーン数4本と貧弱ではあるのですが、スロット形状は16レーンなので、再貧弱ビデオボードを挿すことが可能です。たとえば表示するだけなら1スロット幅で搭載できるGT1300です。サーバーでMLをするわけでもないのでこれで十分です。GNOMEたちあげてChromeからYouTubeも閲覧できます。

今、この構成にSATAのSSDを取り除いて、NVMEのSSDを搭載して性能向上を図ろうとしています。NVMeをそれもLinuxで扱うのは初めてだったのでそのあたりの技術的な情報は後日報告します。