みなさまこんにちは。TOM1192です。
今回は、自身が完全に確証を持てていない情報をあたかも知ったかぶり的なことをしたので、検証がてらマジでGT730を導入して配信ができるかを試してみました。
該当のツイートは
まあそもそもGT710のリアルタイムエンコ能力自体はたかがしれてるし、NVEncだからといって、H.265を指定するとRTX2070が強制使用されるかCPUが使用されちゃうからね。
— TOM@沼の縁 (@TOM246911) 2022年5月8日
です。
- 1.GT730とは
- 2.実際買ったもの
- 3.ASUS GT730-4H-SL-2GD5の特徴
- 4.GPUのドライバインストール
- 5.PC上での配信準備
- 6.OBSでの配信設定
- 7.実際にやってみた結果
- 8.総評
1.GT730とは
700番台(Kepler)に該当するGPUで、Xが付かない時点でお察しではありますが、ローエンド向けGPUとなります。
そして、同じ型番で前世代のGPUコアを積んでいるモノが存在するという珍妙なことをしでかしているGPUでもあります。
詳細はこちらの記事でどうぞ。
2022.5.14追記
ある程度評価したので取り外しました。
定期的にBSODを吐く原因っぽい可能性を感じてたので、その意味もあります。
どちらにせよ、最新ハードと8年前のハードは共存させにくいようです。
2.実際買ったもの
で、実際GT730を購入したわけですが、今回購入したのは
コイツですね。
ちゃんとKeplerのGT730です。ご安心ください。
GT730としてはかなり高いですが、それにはとある理由があります。
3.ASUS GT730-4H-SL-2GD5の特徴
そのグラボの最大の特徴は、接続規格が
PCIe2.0 x1
であるという点です。
つまりどういうことかというと、
こういうことです。
このグラボは本来GPUの取り付けに必要なx16スロットを一切消費せずにGPUが増設できるという究極の汎用性を持つ代物です。
ゆえに、増設用としてはこの上ないほど最適なGPUであり、わざわざ最安の倍値もするような代物を買ったというわけですね。
ちなみに、映像出力はHDMIが4個。
内4K出力は2枚までが可能で、3枚以上つなぐ場合はFHD or WQHDまでに解像度が制限されます。
4.GPUのドライバインストール
GT730は現在メインサポートが終了しており、公開されている最新ドライバは472.98がとなっています。
が、ここに重大な落とし穴があり、この最新ドライバは「Kepler専用」であるという点です。
つまり、GTX900番台以上のドライバと全く異なるバージョンであるということになるため、いつもの感覚でドライバをインストールするとほぼ100%事故ります。
少なくとも2例確認していて、巧妙な罠であることがよくわかります。
現状唯一可能な方法は、双方が使えるバージョンのドライバを使うモノです。
単純かつ簡単な方法ですが、以下のデメリットがあります。
- セキュリティー上の不安がある
- 最新の機能が使えない可能性が高い
このため、あくまで一時しのぎ的なインスパイアで運用するのが理想的ではあるかと思います。
単純にエンコを併用するだけってならGTX900番台かGTX750および750TiのMaxwellを探すほうがドライババージョン的にも効果的でしょう。
なお、最新のNVEncの世代はTuring(第7世代)で、コレが使える最もローエンドなグラボはGTX1650(TU116 or TU106)となりますが、どちらの場合においても補助電源が必要となります。
このため、補助電源が不要という条件となると、RTX A2000が最有力候補となりますが、そのために導入するには費用対効果があまりにも悪すぎるので、その予算でRTX3070とかを買う方が幸せになれると思います。
2024.2.19追記
NVEncの最新世代であるRTX4000番台ではAV1のエンコードが可能になっています。
また、前世代のTuringに関してはここ最近発売されたRTX3050(6GB)にて補助電源レスかつ比較的良心的な価格で購入できます。
当方も購入・検証を予定はしていますが、すぐではないことを念頭においていただければ幸いです。
(追記ココマデ)
ただし、この方法をするまえに既存のドライバはアンインストールしておくとより確実でしょう。
なお、双方が使えるバージョンは472.12が最新です。
NVEncを使う上で世代を知っておくとコレを導入する理由がないってことがわかります。
5.PC上での配信準備
今回は1号機で検証を行いますが、そもそも1号機は4KUHD60p+HDRでのゲーム配信が可能なスペックであるため、じつのところ追加する意味はなかったりします。
詳細はコチラにてどうぞ。
が、言ってしまったことは検証せざるを得ないのが自作erの性。というわけで検証をしっかりと行ってしまいましょう。
配信用ソフトウェアはフリーで使える「OBS Studio」を使用します。
コレですね。
ちなみに、いつもの配信事業(休止中)は「Mirillis Action!」という有料ソフトを使用しております。
理由は、直接HDRの録画と配信を行えるソフトはコレ一択しかないためです。
なお、増設したGPUには一切の映像出力はいたしません。
これにもしっかり理由があり、Windowsの画面管理ソフトである、「Desktop Window Maneger(DWM.exe)」がメインモニタにつながっているGPUでしか実行されないというものに起因しています。
かつて、RTX2080TiとGT1030を共存させてかつ、GT1030にサブモニターを接続して運用して問題が生じたのでコレに関しては間違いありません。
運用状態としては、eGPUをGPUを演算処理にのみ利用する状態と全く同じということになります。
が、そんな奇妙な状態はそうそう長く続かせる予定は一切ないので検証後は動作確認用GPUとして余生を過ごしてもらう予定です。
なお、eGPUと同じという表現からもわかるかと思いますが、未使用時はなんと非アクティブ(スリープ状態)になります。
つまり、サブGPUをメイン運用するとメインGPUをスリープさせるという芸当も可能であるということですね(現状する気はありませんが)。
6.OBSでの配信設定
OBSはフリーのわりに結構多彩な配信録画ソフトであり、HWエンコでの配信・録画を行えてかつ、埋め込みなども行えるというのは数少ない特徴であります。
ただ、今回はあくまで配信ができるかどうかの設定。細かいところに関しては各自で調べたうえで実行していただければかと思います。
なお、個人的に
この方が書いている内容がOBSのほとんどを網羅してくれているので、実はコレ以外に知りたかったとかいう場合はこちらを覗くほうが確実だと思います。
さて、2GPU環境(非SLI)におけるサブGPUでのHWエンコにはちょっとした手順を踏む必要があります。
- OBSの設定を開き、「出力」の項目を選ぶ
- その中にある「出力モード」を「基本」から「詳細」へと変更する
- 「配信」タブの中にある、エンコーダを「NVIDIA NVENC H.264(new)」へ変更
- 下部にある「GPU」の数字を変更する
といった感じで行います。
最後の「GPU」の数字はタスクマネージャー上で確認することができ、HWエンコを投げたいGPUの番号を選んで行いましょう。
基本的にGPU0がメイン、GPU1以降がサブとなるはずではありますが、ケースバイケースなのでここはしっかりと確認したうえで変更することをオススメします。
配信自体の設定は上記のブログなどでセッティングするといいでしょう。
6.追記(2022.9.1)
本日、OBS Studioのバージョン28が正式版になりました。
こちらではHEVC(H.265)によるエンコードが可能となりましたが、このGPUは非対応であるため、引き続きH.264しか利用できません。
予めご了承ください。
7.実際にやってみた結果
配信にあたって、実際に使った設定はこのようになります。
サービスはYoutubeですが、4KHDR配信の際にその安定性の高さを買って、HLSを使用しています。
おそらくRTMPSでも大丈夫だとは思いますが、よっぽどの低遅延配信をする場合以外は問題ないでしょう。
画質周りはこんな感じ。
FHD配信における推奨ビットレートが6MbpsとのことなのでVBRで真ん中を6Mbpsにしたうえで、最大値を8Mbpsにしておきました。
キーフレーム間隔は2としておきました(こちらはTwitchのほうで記載があった)
プリセットはLow-Ratancyを選択。
Performanceだと画質が粗く、Quality以上はGPUが耐えられなかったので、バランスがよさそうなモノがコレとなったわけです。
プロファイルはhighではなく、meinを選択。
highにするとドロップ量が尋常じゃなかったので、やめました。
GPUは0(RTX3090)ではなく1(GT730)を選択。
コレにしておかないと検証の意味がありませんからね。
5.11 追記
配信時におけるHLSを使用する場合、Youtube側でも設定をぶち込んでおく必要があります。
Youtube Studioの配信設定画面から
「ストリームキーを選択」のところで「新しいストリームキーを作成」を選択。
すると下記画面となるので、
名前と説明を適当に用意して、ストリーミングプロトコルをデフォルトの「RTMP→HLS」へ変更します。
そして作成を押せばHLS用のストリームキーができます。
なお、HLSを使う場合は、ストリームキーをコピーしてOBS側に渡すほうが確実です。
まずはYoutube Studioの画面に戻り、
ストリームキーのところ「コピー」をクリックします。
こうすることで、ストリームキーがクリップボードに入るので、OBSを開いて、
配信の項目の中段くらいにある、ストリームキーを使用するを選び、
このような画面になるので、あとはCtrl + Vで貼り付ければ完成です。
Youtube Studio側のストリームキーを入れ替えない限りは、OBS側の配信開始でブロードキャストできます。
こうすることにより、Youtube Studioにストリームキーが多重生成されないので、管理もしやすかったりします。
さて、追記はほどほどに、結果はこちらとなります。
7-1 World of Tanks
今回、検証するにあたって使用したゲームその1はWargamingが運営している「World Of Tanks」です。
理由としては
というものですね。
ブロックノイズが多少目立つとはいえ、GT730のわりには高画質なんじゃないかな…と思ってます。
ドロップ量も十分許容範囲だとは思いますね。
7-2 World of Warships
今回、検証するにあたって使用したゲームその2は同「World of Warships」です。
理由は同じですが、グラの負担はWoT以上なので純粋な結果違いが気になったというところですね。
WoTよりも最大フレームレートがもとから低いのもあってか案外問題なかったです。
左上に追加されてるのはGPU他の温度とFPSなどのオーバーレイ表示ですね。
エンコ中でも温度が40℃台という破格の低さはやはりローエンドらしい低発熱です。
実はちょっとだけビットレートを上げた(6.3Mbps)んですが、録画負荷の影響は少なそうなので、もう少し上げられるかもしれません。
結果からいえば、まあ多少いい意味では裏切られたのかな…
なお、PCIe2.0x1の帯域で不足しているような挙動はなかったあたり、この点は大丈夫であったということでしょう。
8.総評
先に他者様のブログに答えらしきものがあるのですが、実際に検証してみたくて導入したというモノでした。
結果論から言えば、
実用可能だが、実用十分とまでは言えない
といったところでしょう。
それよりも上位の設定でRTX3090を使用すると7%程度の使用率っていうのも鑑みれば、メリットが0でないにしても6000円で劇的な改善が見込めるかはちょっと微妙。
中古でもOKならちょっと予算を盛って同じ補助電源がいらないGTX750Tiを選ぶのも一考かもしれません。
あるいは上の記事にもあるとおり、GTX1050を探すのもアリかも。
継続中のグラボ高騰もようやくひと段落してきている雰囲気を感じてるので、次期1号機改修ではメインGPUを眠らせる運用を試験したいところですね。
・追記
試してみました。
さて、今回はここまで。次回もまたお楽しみに。