新SDK対応により高画質&高速化
H.265のBフレームサポートはハードウェア的なTuringの強化ポイントだが、今回のOBSでは違うところが重要になる。
OBS v23.0.xで盛り込まれた最適化は、H.264用の新しいNVENCエンコーダーとして選択可能になっている(エンコード設定を“詳細”とした場合)。注意点としてはこの新エンコーダーはTuringのNVENCを意味するのではなく、最新のNVIDIA Video Codec SDK v9.0対応という意味となる。つまり、Turingでなくとも新しいNVENCエンコーダーは選べるのだ。
この新しいNVENCエンコーダーでは、画質劣化を抑えつつデータ量を減らす“Rate Distortion Optimization”(RDOと略)、和訳すれば“レートひずみ最適化”手法が追加された。OBSでは「心理視覚チューニング」(英語版だとPsycho Visual Tuning)という項目がこれに該当し、エンコード結果の画質改善に寄与する、とNVENCのドキュメントには記されている。
そして、Video Codec SDK v9.0では、TuringベースのGPUにおいてRDOのハードウェアサポートが追加されているため、Turingのほうが従来のGPUよりも有利であることは言うまでもないが、そもそもTuringより前のGPUで心理視覚チューニングがソフトウェア的に効くのかは明らかにされていない。
さらに重要な点として、これまではGPUがレンダリングした映像を一度メインメモリーに読み込み、それをNVENCに戻すという非効率的な作業を行なってきたが、新SDKではGPUでレンダリングした映像がVRAMからNVENCに直接送られ、メインメモリーの帯域を消費せずにストリームされたデータだけを取り出せるようになった。これによりエンコード時のパフォーマンス低下を抑えることが可能になるのだ。
もうひとつOBSの新しいNVENCに追加された画質オプション「Look-ahead」についても解説しておこう。これはエンコード処理前に次以降のフレームの情報を参照し、Bフレームを必要に応じて入れる設定となる。ただし、Bフレームはデータ量が増える、すなわち実質ビットレートを下げてしまう効果もあるので使わないほうが良い場合もあるだろう。
つまり、OBS v23.0.xでより画質の良い映像を得るには、Turingと新しいNVENCエンコーダーの組み合わせがベストで、続いて旧世代GeForceと新しいNVENC、そしてパフォーマンスが劣る従来のNVENCを使ったエンコードと続く。
ちなみに、OBSには本家OBSのほかに、StreamLabs社が機能やUIを独自に発展させた「StreamLabs OBS」(SLOBS)の2つがあるが、SLOBSにはまだ新しいVideo Codec SDKの要素はない。とはいえ、今後組み込まれてくるだろう。
また、「XSplit」や「Wirecast」といった他の配信ツールもVideo Codec SDK v9.0に準拠すれば同様の効果が期待できる。だがNVIDIAの弁によると、OBSは配信用ツールとして80%程度の大きなシェアを握っているとのこと。つまり、OBSでの存在感を高めればゲーム配信における定番の座をより強固にできるわけだ。これがNVIDIAの戦略なのだ。
週刊アスキーの最新情報を購読しよう
本記事はアフィリエイトプログラムによる収益を得ている場合があります