OBS(Open Broadcast Software)は、多くのユーザーに愛用されているオープンソースのストリーミングおよびゲーム録画プログラムです。しかし、このプログラムを使用すると、エンコーダーに負荷がかかりすぎて動きが重くなるという問題が一部のユーザーに発生しています。今回はMiniToolよりこの問題の原因と対処法を紹介したいと思います。
OBSは無料のライブ配信およびゲーム録画ソフトウェアですが、有料ソフトと並ぶ高機能(例えば:プリセット、カスタム設定、編集機能、Twitchに対応など)が備えており、多くのユーザーに愛用されています。
しかし、このプログラムの使用中に、PCの動作が重くなったり、記録画面の画質が汚すぎてはっきり見えないことはあります。これはOBSのエンコーダーに負荷がかかりすぎているからです。そこで、以下の内容で、OBSで発生する最も一般的なエラーの一つである「OBSエンコーダー過負荷」の対処法について解説していきます。
OBSエンコーダー過負荷について
OBSで画面やゲームを配信している時に、エンコード過負荷の問題が発生し、「エンコードが高負荷です! 映像設定を下げるかより高速のエンコードプリセットの使用を検討してください。」というエラーメッセージが出てくる場合はあります。
このエラーは、使用中のコンピュータが、エンコーダのプリセットをサポートするためにビデオをエンコードするのに十分な能力を持っていないことを示しています。そして、このエラーが発生すると、ビデオがフリーズしたり、定期的に乱れたりします。
OBS Studioのエンコーディングがオーバーロードする原因は様々ですが、一般的なものは以下の通りです。
- CPUリソースの不足:ビデオをエンコードするためにかなりのCPUリソースを必要があるため、OBS Studioエンコードの過負荷を引き起こす主な原因となります。
- ディスクストレージが不足している
- 画面の解像度が高すぎる
- インストールされている一部のサードパーティ製ストリーミングアプリケーションがOBSと競合する
続いて、OBSエンコードのオーバーロードを解消するために、以下の方法を試してみましょう。
方法1:出力解像度を下げる
OBSでは、配信しているゲームの画面をリアルタイムでエンコードしているため、OBSのCPU使用率は出力解像度によって大きく左右されます。ゲームをエンコードする際に高い解像度を選択すればするほど、より多くのCPUが使用されることになります。
したがって、解像度を下げることでCPUへの負担を減らし、エンコード過負荷の問題を解決することができます。ここでは、OBSで解像度を下げる方法をご紹介します。
ステップ1: OBS Studioを起動して、画面の右下にある「設定」をクリックします。
ステップ2:左ペインの「映像」タブに切り替え、右側の「出力(スケーリング)解像度」をクリックして、ドロップダウンリストからより低い解像度を選択します。この操作を行っても、エンコードされたゲームのレイアウトは変わりません。
ステップ3: 「適用」と「OK」をクリックして変更を保存し、OBSを終了します。
その後、コンピュータを再起動し、ゲーム配信を再開して、エンコードエラーが解消されるかどうかを確認してください。
方法2:フレームレートを下げる
フレームレートは、元のゲーム映像からキャプチャしたフレーム数を決定します。GPUの使用状況に影響を与える要素です。高いフレームレートでフレームをキャプチャーしている場合、GPUがゲームやストリーミングしているビデオをレンダリングできない可能性があります。
フレームレートを30またはそれ以下に下げても、映像の品質に大きな影響はありません。それどころか、エンコーダーに映像を処理するための十分な余裕を与えることができます。
ステップ1: OBSを起動し、「設定」を開きます。
ステップ2:「映像」タブをクリックし、「FPS共通値」を選択します。表示された値の中から30以下の値を選択します。
ステップ3: 「適用」と「OK」をクリックして変更を確定します。
その後、コンピュータを再起動し、OBSエンコーディングオーバーロードの警告が消えるかどうかを確認してください。
方法3:エンコーダのプリセットを変更する
デフォルトでは、OBS で採用されるビデオエンコーダはx264です。その動作には様々なプリセットがあり、CPU使用率とビデオ品質のバランスを取るためにこれらのプリセットを設定することができます。デフォルトのエンコーダのプリセットは、ほとんどの場合、最適なバランスを提供する非常に高速です。
プリセットは、エンコーダの動作速度を示します。より速いプリセットを設定すると、CPUソースの使用量が減り、ビデオ品質が低下します。また、プログラムを動作するための設定が様々があり、CPU使用率とビデオ品質のバランスを取るために、これらのプリセットを設定することができます。デフォルトのエンコーダのプリセットは、ほとんどの場合、最適なバランスを提供する非常に高速です。
プリセットは、エンコーダの動作速度を示します。より速いプリセットを設定すると、CPUソースの使用量が減り、ビデオ品質が低下します。
そのため、OBSエンコードのオーバーロード問題を解決するために、より高速なプリセットを設定することができます。
ステップ1: OBSを開き、「設定」を開きます。
ステップ2: 左側のペインで「出力」タグを選択します。
ステップ3:右の「配信」セクションで、「エンコーダ」が「ソフトウェア(x264)」に設定されていることを確認し、「高度なエンコーダ設定を有効にする」オプションにチェックを入れます。
ステップ4: 「エンコーダプリセット」をクリックしてリストを開き、CPUサイクルを減らすために「superfast」または「ultrafast」を選択します。
必要に応じてさまざまなプリセットを試してみてください。その後、より高速なプリセットを選択することで問題が解決するかどうかを確認してください。
方法4:ハードウェアエンコードの使用
また、ハードウェアエンコードを使用して CPU の使用率を減らし、OBS Studio のエンコード過負荷の問題を解決することもできます。
OBS では、AMD、Intel、Nvidia の最近の GPU に搭載されている AMF、Quicksync、NVENC などの x264 以外のエンコーダーを使用できます。これらのハードウェアエンコーダは x264 よりも低い品質のビデオを配信するため、CPU への負荷が少なくなります。
以下の手順で行います。
ステップ1: OBS設定で、「出力」タブを開きます。
ステップ2: 右側のペインで、「出力モード」の「詳細」を選択します。
ステップ3:次に、エンコーダのメニューを開き、QuickSync H.264など、利用可能なハードウェアエンコーダを選択します。
方法5:プロセス優先順位の変更
上記のOBSの設定変更を行ってもエンコードオーバーロードの問題が解消されない場合は、コンピュータを最適化する必要があるかもしれません。まず、タスクマネージャからOBSのプロセスの優先順位を変更します。
プロセッサは優先順位の原則に基づいて動作します。つまり、優先順位の高いプロセスがより多くのCPUリソースを獲得し、最初に処理されます。OBSの優先順位が低いと、CPUリソースが他のプロセスに優先的に使われ、OBSプロセスのCPUが少なくなり、OBSエンコーディングが最終的にオーバーロードする原因となります。
プロセスの優先順位を設定するには、以下のチュートリアルに従ってください。
ステップ1: Ctrl + Alt + Delを押し、「タスクマネージャー」を選択してこのツールを開きます。
ステップ2:「プロセス」タブでOBSを見つけて右クリックします。次に、コンテキストメニューから「詳細の表示」を選択すると、「詳細」タブにOBSが直接表示されます。
ステップ3: OBSを右クリックして、「優先度の設定」→「通常以上」を選択し、より高い優先度に設定します。
その後、ゲームに戻れば、問題なく配信できるはずです。
方法6:バックグラウンドの追加プログラムを閉じる
前述のとおり、DiscordやNVIDIA Overlayなど、一部のサードパーティ製ストリーミングプログラムがOBSと競合する可能性があります。そのため、これらの類似した録画プログラムがバックグラウンドで実行されていないかどうかを確認する必要があります。
実行中のアプリケーションを終了するには、タスクマネージャで該当プロセスを右クリックして「タスクの終了」を選択します。必要に応じて、これらのプログラムをアンインストールして、エンコーディングがオーバーロードするOBS Studioを完全に修正することもできます。
方法7:ドライブの空き容量を確保する
OBSはRAM以外にも、一時的な設定や出力ファイルの書き込みなどの操作のために、ハードディスク ストーレジを必要とします。そのため、OBSのエンコードがオーバーロードするもう一つの重要な理由は、ドライブに十分なストレージスペースがないことです。ドライブに十分のスペースがないと、OBSはどんな種類のビデオもストリーミングできません。
ドライブの空き容量を確保するには、手動でデータの削除や転送、不要なアプリケーションのアンインストールなどを行うことができます。
また、ディスククリーンアップを使用することもできます。ファイルエクスプローラーを開き、クリーンアップしたいドライブを右クリックして「プロパティ」を選択します。ポップアップウィンドウで「全般」タブを開き、「ディスククリーンアップ」をクリックします。その後、画面上の指示に従ってドライブをクリーンアップします。
ディスククリーンアップでドライブを解放できない場合や、データを削除したくない場合は、OBSがインストールされているドライブをを拡張するという選択肢もあります。この作業をするには、MiniTool Partition Wizardをお勧めします。
このソフトウェアには、「パーティション拡張」という機能があり、同じディスク上の他のパーティションから空き領域を取って、対象となるドライブのスペースを拡張することができます。
それでは、下記のボタンをクリックしてMiniTool Partition Wizardをダウンロードしましょう。
MiniTool Partition Wizard Freeクリックしてダウンロード100%クリーン&セーフ
ステップ1: MiniTool Partition Wizardを起動して、メインインターフェイスに入ります。
ステップ2: ディスクマップでターゲット パーティションを右クリックして、コンテキストメニューから「拡張」を選択します。または、パーティションを強調表示し、左側のアクションパネルから「パーティション拡張」を選択してください。
ステップ3: 次のウィンドウで、空き容量を取るパーティションまたは未割り当て領域を選択し、下のスライダーを左右動かして、拡張したい空き容量を決定します。その後、「OK」ボタンをクリックします。
ステップ4: メインインターフェイスに戻ったら、「適用」ボタンをクリックして、保留していた操作を実行します。
続いて、コンピュータを再起動して、エラーメッセージが消えるかどうかを確認してください。
方法8:ゲームモードを無効にする
ゲーム好きの方は、ゲームをより快適に体験をするために「ゲームモード」を有効にしているかもしれません。しかし、「ゲームモード」では、CPUリソースをすべてゲームに回してしまい、OBS用のCPUが少なくなることがあります。もちろん、これはOBSのエンコーディングが過負荷になり、配信の失敗につながります。
このエラーを修正するには、「設定」で「ゲームモード」を無効にする必要があります。
Windows + Iを押して「設定」を開き、「ゲーム」→「ゲームモード」の順を進めます。以下の画面が表示されたら、右ペインにある「ゲームモード」のスイッチをオフにします。
方法9:ハードウェアのアップグレードまたは代替ソフトウェアの使用
上記の方法をすべて試しても問題を解決できない場合は、ハードウェアの不良が問題の原因であることを考えられます。ハードウェアが配信とゲームの同時進行に対応できないためにエラーが発生しているのかもしれません。
ゲームの録画と配信のためのOBSの厳しいタスクには、6コアまたは8コアの強固なプロセッサが必要です。また、古いGPUはOBSでのストリーミングに問題をもたらすため、可能であればGPUをアップグレードしたほうがいいでしょう。さらに悪いことに、この原因でコンピュータの動作が遅くなります。コンピュータの動作が遅くなることを解決するには、この記事をご覧ください。
また、OBSエンコード過負荷の問題を解決するのが面倒な場合は、Bandicam、ShadowPlay、Discordなどの代替ソフトウェアを使用することもできます。
結語
この記事はOBSエンコーダが過負荷して動作が重くなる場合の対処法を紹介しました。ご参考になされましたら幸いです。また、もしMiniToolについて何かご質問/ご意見がありましたら、お気軽に[email protected]までご連絡ください。