kamitool > 読みもの > OBSのビットレート・解像度・fpsの関係と、数字の決め方の手順
OBSのビットレート・解像度・fpsの関係と、数字の決め方の手順
配信の設定で、いちばん迷いやすいのが、ビットレート、解像度、fps(1秒あたりのコマ数)の3つです。この3つは別々の数字に見えますが、互いに引っ張り合う関係にあります。この記事では、その関係の考え方と、自分の環境に合わせて数字を決める手順をまとめます。配信先ごとの推奨値は、サービス側の都合で変わるため、ここには数字を断定して書かず、必ず公式の案内で確かめる前提にしています。
3つの数字の関係
配信の映像は、パソコンで1コマずつ画像として作られ、それを圧縮して、インターネットに送ります。このとき、次の3つの数字が、画質と負荷を左右します。
| 項目 | 意味 | 上げると |
|---|---|---|
| 解像度 | 1コマの縦横の画素数(例:1920×1080) | 細かく見える。必要なビットレートと、パソコンの負荷が増える |
| fps | 1秒あたりのコマ数(例:30、60) | 動きがなめらかに見える。必要なビットレートと負荷が増える |
| ビットレート | 1秒あたりに送るデータ量(kbpsなど) | 圧縮のつぶれが減る。回線の使用量が増える |
ポイントは、ビットレートが決まっているなら、解像度とfpsを上げるほど、1コマに割ける量が減る、ということです。たとえば、同じビットレートで、30fpsから60fpsにすると、1コマあたりに使えるデータは、おおよそ半分になります。そのため、動きの速いゲームでは、画面が荒れやすくなります。
つまり、「全部を最高にする」ことはできません。回線の太さとパソコンの力という2つの上限の中で、どれを優先するかを決めるのが、数字を決める作業です。
2つの解像度を区別する
OBSの「設定」の「映像」には、解像度が2つあります。「基本(キャンバス)解像度」と、「出力(スケーリング)解像度」です。
基本解像度は、OBSの作業画面(キャンバス)の大きさです。ソースを置く場所の広さで、多くの場合は、ゲームを映すモニターの解像度に合わせます。出力解像度は、実際に配信や録画で出る映像の大きさです。基本解像度より小さくすると、OBSが、縮小してから圧縮します。
たとえば、キャンバスが1920×1080で、出力を1280×720にすると、配信される映像は720pになります。ブラウザソースの幅と高さは、キャンバスに合わせて決めます。出力を小さくしても、ブラウザソースの幅と高さは変えなくて構いません。縮小はOBSが全体にかけるためです。
縮小するときの方式は、「縮小フィルタ」で選びます。バイキュービック、ランチョス、エリアなどがあり、一般に、ランチョスは細部がくっきり出る代わりに、負荷がやや高めです。迷う場合は、初めの値のままで構いません。
解像度の比率(アスペクト比)も大切です。16:9のキャンバスを、4:3のような比率の出力にすると、映像が引き伸ばされたり、黒い帯が出たりします。出力解像度を選ぶときは、基本解像度と同じ比率になる組み合わせを選びます。1920×1080なら、1280×720、1600×900、960×540が、同じ16:9です。
数字を決める手順
「正解の数字」は環境で変わります。そこで、次の順番で、上限から決めていく方法が使えます。
- 配信先の公式の案内を開き、推奨ビットレート、解像度、fps、キーフレーム間隔、音声の条件を確かめる
- 回線の上り速度(アップロード)を測る。測定サイトで、時間帯を変えて数回測る
- 測った上りの値の、おおむね7割から8割以内に、映像と音声を合わせたビットレートを収める
- その範囲で、解像度とfpsの組み合わせを選ぶ(次の節の表を参考にする)
- OBSの設定に入れ、短いテスト配信か、録画で、見た目とドロップフレームを確かめる
- パソコンの負荷が高ければ、fps、解像度、エンコーダーの設定の順に、下げる
3番目の「7割から8割」は、一般的な余裕の見方です。回線の速度は、時間帯や、同じ家の他の機器の通信で揺れるため、上限ぎりぎりに設定すると、途切れやすくなります。この割合も、絶対の決まりではなく、あくまで目安です。
なお、配信先が示す推奨値や上限は、サービスの更新で変わることがあります。この記事に載っている数字は、考え方を説明するための例で、現在の推奨値ではありません。設定を入れる前に、必ず、配信先の最新の公式ページで確認してください。
組み合わせと画素数の考え方
次の表は、あくまで「考え方の例」です。具体的なビットレートの値は、書いていません。公式の推奨や、ご自身のテスト結果と合わせて決めてください。
| 優先したいこと | 解像度とfpsの傾向 | 理由 |
|---|---|---|
| 動きの多いゲームを、なめらかに見せたい | 解像度を下げて、60fpsを保つ | コマ数を確保する方が、動きの印象に効きやすい |
| 文字や細かい絵を、くっきり見せたい | 解像度を保ち、30fpsにする | 動きが少なければ、30fpsでも不自然になりにくい |
| 回線が細い、または不安定 | 解像度とfpsの両方を、控えめにする | 途切れるより、少し荒い方が、見られやすい |
| パソコンの負荷を減らしたい | fpsと出力解像度を下げる | エンコードする画素数が減る |
「動きの多さ」と「必要な量」の関係も、押さえておきたい点です。画面がほとんど動かない配信(雑談や、静止した画面)は、圧縮の効率が高く、少ないビットレートでもきれいに見えます。逆に、画面全体が激しく動くゲームや、細かい模様が動き続ける映像では、同じビットレートでも、ブロック状の荒れが出やすくなります。同じ数字でも、映す内容によって、見た目が変わります。
解像度とfpsの重さを比べるには、「1秒間に処理する画素の数」を計算すると分かりやすくなります。縦横の画素数に、fpsをかけた値です。
| 解像度とfps | 1秒あたりの画素数 | 1920×1080・30fpsを1としたとき |
|---|---|---|
| 1920×1080・60fps | 約1億2,442万 | 2倍 |
| 1920×1080・30fps | 約6,221万 | 1倍 |
| 1280×720・60fps | 約5,530万 | 約0.89倍 |
| 1280×720・30fps | 約2,765万 | 約0.44倍 |
この表から、1080pの60fpsは、同じ1080pの30fpsの2倍の量を処理することが分かります。また、720pの60fpsは、1080pの30fpsより、少し軽いことも分かります。動きの滑らかさを選ぶのか、細かさを選ぶのかを、数字で比べる材料になります。もちろん、実際に必要なビットレートが、この比に正確に比例するわけではありません。圧縮の仕組み上、動きの少ない映像は、ずっと少ない量で済むためです。あくまで、重さを比べる目安として使ってください。
ビットレートを決める流れの例を、仮の数字で示します。実際の数字ではなく、計算の順番を見るための例です。上りの速度を測ったところ、仮に10 Mbpsだったとします。その7割から8割は、7〜8 Mbpsです。ここから、音声の分(仮に160 kbps)を引いた残りが、映像に使える量の上限になります。この上限と、配信先の公式の推奨・上限を見比べて、低いほうの範囲で、映像のビットレートを決めます。
OBSの出力設定で見る項目
「設定」の「出力」で、配信用のエンコーダーとビットレートを決めます。「出力モード」をシンプルにすると、項目が少なく、詳細にすると、細かく選べます。
配信では、一般に「レート制御」を「CBR」(固定ビットレート)にする案内が多くあります。CBRは、一定の量で送り続ける方式で、配信先が決めた上限に収めやすいためです。ただし、サービスによっては別の方式も許されているため、公式の案内に従ってください。
「キーフレーム間隔」は、完全な1コマ(キーフレーム)を何秒おきに入れるかの設定です。サービスによって、指定の秒数が決まっていることがあります。OBSでは、0(自動)のままだと、エンコーダーの設定に任されます。配信先が値を指定している場合は、その値を入れてください。値は公式の案内で確認します。
エンコーダーには、大きく分けて、CPUで処理するソフトウェア方式(x264など)と、グラフィックボードの専用回路を使うハードウェア方式(NVENC、AMF、QuickSyncなど)があります。ハードウェア方式は、パソコンのCPU負荷が小さくなりやすく、ゲーム配信で選ばれることが多い方式です。画質の出方は、世代や設定で違うため、手元のテストで比べるのが確実です。
音声のビットレートも、設定に含まれます。配信全体で使える量のうち、音声に割く量は、映像よりずっと小さいのが一般的です。音声の設定の考え方は、関連記事(obs-audio-basics)にまとめています。
確認の方法
設定を入れたら、実際に動かして確かめます。OBSの画面の右下(ステータスバー)には、配信中の状況が出ます。見る場所は、次のとおりです。
- CPU使用率と、フレームレートの表示(設定どおりのfpsが出ているか)
- ドロップフレームの表示(配信が回線に詰まって、落としたコマの割合)
- ビットレートの数字(設定した値の近くで動いているか)
- 右下の接続状態の色(緑は良好、黄や赤は不安定のサイン)
ステータスの下のほうにある「ドロップされたフレーム」が増えていく場合は、回線がビットレートに追いついていません。ビットレートを下げるか、解像度かfpsを下げます。「レンダリング遅延」や「エンコード遅延」を示す表示が出る場合は、パソコンの負荷が原因のことが多く、ゲームの画質を下げるか、エンコーダーの設定を軽くします。
OBSの「統計」ウィンドウ(「表示」メニューの「ドック」にあります)では、より詳しい数字が見られます。スキップされたフレームや、遅れたフレームの数などで、どこが詰まっているのかの手がかりになります。表示の名前は、版によって少し違います。
配信先の側にも、配信の状態を示す画面(配信管理画面など)があり、受信したビットレートや、警告が出ることがあります。OBS側の表示と、配信先側の表示を、両方見ると、原因を切り分けやすくなります。
よくある失敗
| 起きること | 考えられる原因 | 対処 |
|---|---|---|
| 画面がブロック状に荒れる | ビットレートが足りない、または動きが多すぎる | ビットレートを上げられるか確認する。難しければ、fpsか解像度を下げる |
| 配信が途切れる、ドロップが増える | 回線の上りが足りない、Wi-Fiが不安定 | 有線接続にする。ビットレートを下げる。他の通信を止める |
| ゲームがカクつく | CPU・GPUの負荷が高い | エンコーダーをハードウェア方式にする。出力解像度とfpsを下げる |
| 映像がぼやける | キャンバスより小さい出力に縮小している | 基本解像度と出力解像度の比率を確認する |
| 配信先で、想定と違う画質で出る | 配信先が、受け取った映像を再圧縮している | 配信先の画質の説明を確認する。OBS側の数字だけで決めない |
| ブラウザソースの文字が小さい | 幅と高さがキャンバスと合っていない | obs-browser-source-stepsの記事で、幅と高さを確認する |
設定は、一度に複数を変えないのがコツです。ビットレート、解像度、fpsを同時にいじると、どの変更が効いたのか分からなくなります。1つずつ変えて、結果を確かめます。
ビットレートの考え方を、もう少し補足します。
配信先が何を示しているかも、よく読み取る必要があります。多くのサービスは、「推奨」と「上限」を分けています。推奨は、品質が保ちやすい目安で、上限は、これ以上送ると受け付けない、または制限される値です。上限ぎりぎりまで使う必要はありません。回線の余裕と、視聴者側の再生環境も、考えに入れます。視聴者の回線が細い場合は、配信先が、低い画質を自動で用意することがあります。この仕組みや、用意される画質の数は、サービスによって異なります。
録画のビットレートは、配信とは別に考えます。録画は、回線を使わないため、ディスクの容量とパソコンの負荷の範囲で、高めに設定できます。容量の見積もりは、obs-recording-formatの記事に表があります。配信と録画を同時に行う場合は、パソコンの負荷が、両方のエンコードの合計になる点にも注意してください。
最後に、数字を決めたら、設定をメモしておきます。変更の履歴があれば、調子が悪くなったときに、元に戻せます。シーンやプロファイルをまとめて保存する方法は、obs-scene-collection-backupの記事で説明しています。
最後に、配信のたびに設定を見直す必要はありません。回線やパソコンを変えたとき、ゲームを変えたとき、配信先の案内が更新されたときに、見直せば足ります。見直しのたびに、テスト録画と、ステータスの確認を行うと、設定の変更が悪い方向に働いていないかを、早めに気づけます。