211: ホロちゃんねる 2023/11/01(水) 18:33:53.22
(長くて1画面で表示されないと思うので引用させていただきます)
ここ最近のYouTubeでの 「超低遅延配信すると死ぬほどグルグルする」問題。 ちょっと心当たりがあって個人的に検証を行って、 「(たぶん)OBS 29.1系列のバグ」 という結論に落ち着いた。 以下解説 ---------- YouTube Liveで「グルグルする」って状態は、 1. 配信者からYouTubeサーバへの映像の伝送に問題がある 2. YouTubeサーバ内でのトランスコードに問題がある 3. YouTubeから視聴者への映像の配信に問題がある のどれかがほとんど。 で、数ヶ月にわたって問題が継続してるのを見るに 2や3の問題とは考えにくいのと、 1の問題でも配信者の回線事情やマシンスペックに起因するなら こんなに同時多発的に発生するのもおかしい。 しかも知り合いの配信者にお願いして超低遅延を低遅延に切り替えてもらうとほぼ解消することから、 「OBSの問題では?」という推論にたどり着いた。 ---------- そんな中、8月にOBS 30.0のBeta版がリリースされた。 https://github.com/obsproject/obs-studio/releases/tag/30.0.0-beta1… このリリースのBug Fixリストに 「Fixed max bitrate not working in NVENC VBR mode」 というものがあった。 これはNVENCのVBR(可変ビットレート)モードに於いて、 最大ビットレートの設定が効いてなかったことを意味している。 これは動画配信する上では致命的な問題で、 映像のビットレートを一定範囲内に収めることができなくなるから、 相手先のサーバに激しい負荷を与える。 バッファを極限まで削って処理することで遅延を少なくする YouTube Liveの超低遅延モードなんかにはてきめんに効く。 ---------- YouTube LiveではCBR(固定ビットレート)を推奨しているけど、 一般的に使用されているH.264やH.265には厳密なCBRが存在しない。 あくまでVBRを目標ビットレートに近づけるよう制御するだけで、 VBRが制御出来ないってことはCBRも制御出来ないことを意味する。 実際に色々設定を変えてテスト配信をしてみたところ、 29.1.3と29.1.2でビットレートが 設定値を大幅に逸脱して乱高下することと、 30.0 Beta1以降ではこれがちゃんと 設定範囲内に収まることを確認した。 超低遅延を低遅延に落とす(バッファを多く取って安全率を上げる)と 解消するのもうなずける挙動だった。 どのバージョンからこのバグが混入したかまでは確認できなかったんだけど、 基本は自動アップデートでみんな29.1.3を使ってると思うから、 ほぼ確でこのバグを踏んでるはず。 ---------- これを回避するには 1. 超低遅延を低遅延に落として配信する 2. 30.0系列にアップグレードする の2択になると思う。 現在、30.0はRC1(リリース候補版)になってて あらかたのバグは解消されたから、 まあ本番でも使えるかな?という状態だけど、 リリース前のバージョンではあるしオススメは1の方法。
管理人ちゃん:ふーむ、なるほど。ふーむ…。
一回目にざっと目を通しただけでは難しくてよく意味が分からなかったので、じっくりと時間をかけて読み直しましたが難しくてよく分かりませんでした。
ここ最近のYouTubeでの 「超低遅延配信すると死ぬほどグルグルする」問題。 ちょっと心当たりがあって個人的に検証を行って、 「(たぶん)OBS 29.1系列のバグ」 という結論に落ち着いた。 以下解説 ---------- YouTube Liveで「グルグルする」って状態は、 1. 配信者からYouTubeサーバへの映像の伝送に問題がある 2. YouTubeサーバ内でのトランスコードに問題がある 3. YouTubeから視聴者への映像の配信に問題がある のどれかがほとんど。 で、数ヶ月にわたって問題が継続してるのを見るに 2や3の問題とは考えにくいのと、 1の問題でも配信者の回線事情やマシンスペックに起因するなら こんなに同時多発的に発生するのもおかしい。 しかも知り合いの配信者にお願いして超低遅延を低遅延に切り替えてもらうとほぼ解消することから、 「OBSの問題では?」という推論にたどり着いた。 ---------- そんな中、8月にOBS 30.0のBeta版がリリースされた。 https://github.com/obsproject/obs-studio/releases/tag/30.0.0-beta1… このリリースのBug Fixリストに 「Fixed max bitrate not working in NVENC VBR mode」 というものがあった。 これはNVENCのVBR(可変ビットレート)モードに於いて、 最大ビットレートの設定が効いてなかったことを意味している。 これは動画配信する上では致命的な問題で、 映像のビットレートを一定範囲内に収めることができなくなるから、 相手先のサーバに激しい負荷を与える。 バッファを極限まで削って処理することで遅延を少なくする YouTube Liveの超低遅延モードなんかにはてきめんに効く。 ---------- YouTube LiveではCBR(固定ビットレート)を推奨しているけど、 一般的に使用されているH.264やH.265には厳密なCBRが存在しない。 あくまでVBRを目標ビットレートに近づけるよう制御するだけで、 VBRが制御出来ないってことはCBRも制御出来ないことを意味する。 実際に色々設定を変えてテスト配信をしてみたところ、 29.1.3と29.1.2でビットレートが 設定値を大幅に逸脱して乱高下することと、 30.0 Beta1以降ではこれがちゃんと 設定範囲内に収まることを確認した。 超低遅延を低遅延に落とす(バッファを多く取って安全率を上げる)と 解消するのもうなずける挙動だった。 どのバージョンからこのバグが混入したかまでは確認できなかったんだけど、 基本は自動アップデートでみんな29.1.3を使ってると思うから、 ほぼ確でこのバグを踏んでるはず。 ---------- これを回避するには 1. 超低遅延を低遅延に落として配信する 2. 30.0系列にアップグレードする の2択になると思う。 現在、30.0はRC1(リリース候補版)になってて あらかたのバグは解消されたから、 まあ本番でも使えるかな?という状態だけど、 リリース前のバージョンではあるしオススメは1の方法。
213: ホロちゃんねる 2023/11/01(水) 18:35:54.82
>>211
スバルの枠グルグルはこれのせいか?
スバルの枠グルグルはこれのせいか?
222: ホロちゃんねる 2023/11/01(水) 18:41:04.26
>>211
読んだけど納得の理由と検証だわ、スマホとかのアプリで問題ない元からバッファー多めで遅延が多いからか
(アプリでも設定などで問題は起きる、アプリは無線接続前提なので切断しないようにバッファーは多い)
読んだけど納得の理由と検証だわ、スマホとかのアプリで問題ない元からバッファー多めで遅延が多いからか
(アプリでも設定などで問題は起きる、アプリは無線接続前提なので切断しないようにバッファーは多い)
227: ホロちゃんねる 2023/11/01(水) 18:44:39.06
>>211
確かにんなたんの枠はぐるぐるし難いとかあったしこれかもな
確かにんなたんの枠はぐるぐるし難いとかあったしこれかもな
管理人ちゃん:ふーむ、なるほど。ふーむ…。
一回目にざっと目を通しただけでは難しくてよく意味が分からなかったので、じっくりと時間をかけて読み直しましたが難しくてよく分かりませんでした。
引用元: https://rio2016.5ch.net/test/read.cgi/jasmine/1698808468/
コメント
コメント一覧 (5)
H.264やH.265「自分らデータ量の固定は出来ないのでなるべくそれに近づける感じで使ってください」
OBS 29.1系列「なーほーね、じゃあだいたいこのぐらいで」データ量ドババババ
サーバー「受け取ったデータを超低遅延ですぐ視聴側に送るzあばばばば設定よりデータ量多すぎで捌ききれん」
視聴者「ぐるぐる」
こんな感じ?間違ってたらきっと偉い人が訂正してくれるはず(丸投げ
ホロちゃん管理人
が
しました
ホロちゃん管理人
が
しました
ホロちゃん管理人
が
しました
ホロちゃん管理人
が
しました