メインコンテンツまでスキップ

「OBS」タグの記事が3件件あります

全てのタグを見る

snake

NVIDIA Broadcastのオーディオ エフェクトをインストールすることで、OBS上で様々なフィルタが有効となります。追加されたフィルタの内「NVIDIA ノイズ除去」、「NVIDIA ルームエコー除去」を適用するとOBSがクラッシュしてしまう問題に遭遇したため、解決策をまとめます。

問題について

OBSのマイクフィルタ設定で、NVIDIA Broadcastで追加される「NVIDIA ノイズ除去」、「NVIDIA ルームエコー除去」フィルタを適用した場合、OBSがクラッシュしてしまう。

NVIDIA Broadcastについて

NVIDIAが公開しているカメラやマイクなどをAIで処理するためのアプリケーションです。詳細は以下をご確認ください。

環境

下記の環境に限った話ではありませんが、念のため情報として記載しておきます。

OS: Windows 11 Pro 64 bit 22H2(22624.1616)
CPU: AMD Ryzen 7 5700X
RAM: 32GB
GPU: NVIDIA GeForce RTX 3060

ソフトウェア

OBS Studio 29.0.2 (64 bit)
NVIDIA Broadcast オーディオ エフェクト バージョン 1.3.0

解決策

Windowsの設定が原因でクラッシュしているため、設定を変更することで問題が解決します。「ハードウェア アクセラレータによる GPU スケジューリング」を無効化してください。

以下は、設定手順です。

Windowsの設定を開き、ディスプレイ設定を開いてください。 ディスプレイ設定ページを下までスクロールして、グラフィック設定を開いてください。 規定の設定の「規定のグラフィックス設定を変更する」を開いてください。 「ハードウェア アクセラレータによる GPU スケジューリング」をオフに切り替えてください。 設定後、パソコンの再起動が要求されるため、再起動してください。

これでOBSでフィルタを設定してもクラッシュしなくなります。

snake

obs-ndiの.debパッケージをインストール時に、下記のようなエラーが発生する場合があります。

Unable to install obs-ndi:

The following packages have unmet dependencies:

Package created with checkinstall 1.6.2

この問題は、obs-ndiとobs-studioを削除し、PPAバージョンのobs-studioをインストールすることで解消可能です。

PPAバージョンのインストール方法は、OBSProject.comのwikiで解説されています。

Wiki - Install Instructions | OBS

以下は、Ubuntu/Mintへのインストール手順の適当な翻訳です。責任は負いません。

OBS StudioはChrome OS上では完全には動作せず、スクリーンキャプチャやウィンドウキャプチャなどの機能は動作しませんのでご注意ください。

フルスクリーンプロジェクターなど、OBSの特定機能で潜在的なパフォーマンス問題を回避するために、xserver-xorgバージョン1.18.4以降が推奨されます。

FFmpegが必要です。FFmpeg がインストールされていない場合(確信が持てない場合は、おそらく持っていないでしょう)、以下のコマンドで取得できます:

sudo apt install ffmpeg

仮想カメラをサポートするには、v4l2loopback-dkmsをインストールする必要があります。以下のコマンドでインストールできます:

sudo apt install v4l2loopback-dkms

Ubuntuソフトウェアセンターでmultiverseのリポジトリを有効にしたことを確認してください(注意:Ubuntuの新バージョンでは、リポジトリを追加すると自動的にaptアップデートが行われます)。その後、以下のコマンドでOBSをインストールします。

sudo add-apt-repository ppa:obsproject/obs-studio sudo apt update sudo apt install obs-studio

snake

不定期でゲームや雑談などの配信を行っているのですが、近年ゲームの要求スペックが向上し、配信のFPSが安定しない事が増えてきました。これまではチューニングすることで誤魔化していましたが、最近では限界を感じ始めた為、パソコン周りの環境整理を兼ねて、配信環境の大幅な更新を行いました。

目標

新たな配信環境を作るにあたっての一番の目標は、配信の安定化及びゲームの動作安定化です。

  • 配信の安定化とは、FPSや映像の乱れなどを起こさずに映像を配信すること
  • ゲームの動作安定化とは、ゲームをプレイする際にFPSなどの低下が発生せず、プレイヤーである自分がストレス無く遊べること

これら2つの達成を目標とします。

1PCから2PCへ

前述した2つの目標を達成する為に、どうすれば良いのかを考えました。単にGPUを新しいものへと買い替えてCPUを新しくすれば終わる話ですが、それができるほど金銭的余裕はありません。今ある環境で最適かつ最高のものを考える必要があります。

それで導き出された結論は、「1PCから2PCへ環境を変更する」です。

前提知識として1PCと2PCの説明が必要かと思いますので、下記にまとめます。

1PCとは

1PCは1台のパソコンで配信を全て行う事を指します。これは多くの配信者にとってのスタンダードです。1台のパソコンにゲーム、エンコード、配信などの環境をやることができます。

1PCのメリットは、1台のパソコンで全てが完結する為、余計なことを考える必要がなく、1台の強いパソコンがあればいいという点です。

2PCとは

2PCは2台のパソコンで配信を分業して行うことを指します。有名な配信者・ストリーマーはこれでやっていることがあります。1台で配信に写すゲームなどをやりながら、もう1台は配信のエンコードのみを行うというやり方です。

2PCのメリットは、配信を別のPCに任せるので、配信が安定する点です。配信がゲームであれば、ゲームにGPUの処理を全振りできる利点もあります。

2PCの構成

2PC構成にするにあたって一番重要な点が、どうやって映像と音声をやり取りするかです。

今回は、Network Device Interface(以下、NDIとします)と呼ばれる技術を選択しました。NDIとは、NewTek社が開発したIPを利用した低遅延かつ高品質な映像伝送技術です。細かい技術的な説明は、難しいので省きます。詳細は自分で調べてください。

今回、NDIを使うにあたって必要なものですが、安定した高速なネットワークさえあれば大丈夫です。NDI自体は、回線が安定していないくても使えなくはないものですが、配信の安定化を目標としているのでネットワークが安定して高速である必要があります。

2PCのスペックもここで記しておきます。

PC1(ゲームPC)

OS - Windows 10

CPU - Ryzen 5 2600X

GPU - Nvidia GeForce GTX 1050 Ti

メモリ - 32GB

PC2(配信PC)

OS - Linux Mint

CPU - Intel Core i7-6700HQ @ 2.60GHz

GPU - Intel HD Graphics 530 / Nvidia GeForce GTX 950M

メモリ- 8GB

配信ソフトウェア - OBS Studio

NDIをOBSで使う

NDIを使うのは良いけど、どうやって使うのさ。っていう問題があるわけですが、簡単に使う方法があります。OBSプラグインの「obs-ndi」を使用します。これはOBSを2つ使い、片方のOBSの映像・音声をもう片方のOBSへNDIを使って送信するものです。

OBSにプラグインを導入する

前提としてOBSはインストールされている状態です。されていない場合は、インストールしておいてください。

プラグインをGitHubからダウンロードしてください。

Releases · Palakis/obs-ndi

自分と対応するOSのファイルをダウンロードしてインストールしてください。

Windowsの場合は、Windows-Installer.exeを使えば全てやってくれるので、終わります。

私の環境はLinux Mintなので、debをダウンロードします。Debian系の場合、libndiもインストールが必要なので、libndi4_4.5.1-1_amd64.debとobs-ndi_4.9.1-1_amd64.debの2つをインストールします。

obs-ndiの設定

obs-ndiの設定は、送信側・受信側の両方で行う必要があります。

送信側

obsを起動して、ツール -> NDI Output settings を開く。

Main Outputのチェックマークを入れて、Main Output nameを何か設定する。お好きな名前を設定すればいいですが、パソコンを識別できる名前をおすすめします。

受信側

シーンにNDI Sourceを追加する。

Source nameで送信側で設定した名前を選択する。

Bandwidthは、Highestを選択してください。回線が細くて安定しない場合は、Lowestを選択してください。音声だけで良ければ、Audio onlyで構いません。

その他は、都度設定を変更してください。

映像と音声を送信する

実際に映像を送信してみます。

送信側PCのOBSでキャプチャするウィンドウやゲームなどをシーンに追加してみてください。

送信側PCでOBSにシーンを追加するだけで、受信側PCに映像が届いていることが確認できます。

配信をする場合、受信側PCで配信を開始すれば大丈夫です。

目標は達成した

NDIを活用した2PC構成で配信をしてみて、相当快適でした。近年のゲームの要求スペックはすごい勢いで上がっています。少しでも良い画質、良いFPSでプレイするにはGTX 1050Tiは貧弱なので、2PCを選択したのは良かったです。

配信PCは、GeForce GTX 950Mですが、1080p 60fpsで配信が余裕でいけます。相当異常な負荷がかかる状況になったりしなければ、当分はこれで配信楽しくやっていけそうです。

ちなみにNDIですが、結構色々できます。スマホのカメラ映像をNDIで送信してOBSに取り込んだりもできるので、使い方次第ではもっと色々なことができそうです。LANケーブルさえあれば、導入できるのは相当強みですね。