YoutubeLive でのUpロード設定の云々メモw


Upロード設定のポイント
ネットワークを使用した映像配信を行う上できってもきれないのが、この映像配信ビットレート設定(解像度とビットレート、音声ビットレート)です。配信マシンにいくら余裕があったとしても、回線のスピードを超える映像配信を行うことは基本的に不可能です。(配信自体を時差さあり配信など特定の条件、手法を除き)また、解像度とビットレートのアンマッチ状態で配信をすると見る側が、見せたいものとはかけ離れた映像になります。
そのため、配信前には自分がこれから配信を行う回線の状態を知り!適切な配信設定を導き出さないといけません(汗

間違った設定をすると、配信がうまく受信できない、解像度が悪すぎる、音声が聞き取れない、画面が固まる、途切れ途切れになるなどのトラブルとなります。
また、逆に正しい値を知ることで、トラブル発生時にどう言ったことをすると改善できるか?がわかってきます。

ネットワークはデジタルで決まっているようで、生き物ののように絶えず変化して行きます。状況を正しく理解していくことが、安定した配信への近道です。

今回、紹介するのは下記の3点です。

1.回線状況を確認する。
2.ベストな設定を導き出す。
3.トラブル時の対応方法


1.回線状況を確認する。

これは簡単!回線スピードを計測しましょう!
簡単な方法としては、Google検索で「スピードテスト」と検索すると
Google純正のスピード計測が可能となります。

Speedcheck
https://www.speedcheck.org/ja/

色々なサイトがあり、混乱するかもしれません
また人によってはあそこはダメ、ここがいい!という人もいるかと思いますが、
個人的にはどれでもOKです。計測法の違いがあり、正しくないとかあるかと思いますが、
それはそれで答えだと思います。

大事なのは?

大事なのは結果!だけではなく、実はライブストリーミングを行う上で
とても大事なものは最大速度や平均ではなく、スピード計測時の安定状態です。
よくある計測方式として、計測時にリアルタイムで計測されているスピードが出ます
良いサイトでは、計測後に計測時の状態を折れ線グラグで表示してくれます
これがとても大事!

もうお分かりかと思いますが、ここで折れ線グラフが一定の状態
120Mbpsがずーっと続いて、結果120Mbpsとなる これが最高です。これでMbpsの数値が高ければ本当に最高!です。
逆位どれだけ高くても、定期的にや瞬間的に0Mbpsや極端に落ち込む場合があると致命的です。ライブ配信では絶えず映像を送信し続けます。そのため、回線スピードが落ちると、送るデータの滞りが発生してしまいいくら瞬間的に高くても、それだけではカバーできないほど蓄積されてしまうからです。
リアルタイムというのがライブの命ですので!
で、

例えば、
1.20Mbpsが絶えず安定している回線、計測結果は20Mbps
2.最大50Mbps、最低0.5Mbpsが波打っている回線、計測結果は40Mbps
(ちなみにこの時の最低へと下がる値をスパイク値なんて呼ぶこともあります。以後で使用します。)

の場合、安定してライブが行える確率が高いのは、1.と言えます。

途中経過が見れない場合は複数回計測するなどするといいかと思います。そのうち、明らかに低い値が出た場合、スパイク値を含んでいると思って以後進めた方がいいでしょう(あるとは限らないがある可能性が高い)

さて、回線を確認したら最適な設定の導き出し方です。


2.ベストな設定を導き出す。


まずは配信解像度別、ビットレート設定です。サンプルはYoutubeです。
各配信サイトにはヘルプで必ず配信設定の推奨値がのっていますので、
気になる方は事前にチェックしておき、自分がターゲットとする配信設定とそれ以下を把握するようにしておきましょう




最初に計測した値でスパイク値がある場合、できればこのスパイク値以下で構成することが望ましい!ただ、スパイクの頻度にもよります。スピード計測時に1度ぐらいの軽山であればOKなことも多いですが、3回以上多発する場合は、スパイク値を基本としたほうがいいいです。
で平均して安定している場合は、その値を基本として、基本の値を1/2にした値をさらに2/3した値を最大ビットレート値として設定します。

例1 平均20Mbps スパイク値なし 10Mbps(1/2)→6.6Mbps(2/3) 上記の表から 1080p/60fpsから1440p30fpsあたりが配信可能です。

例2 平均8Mbps スパイク値4Mbps 2Mbps(1/2)→1.3Mbps(2/3) 上記の表から 480pが可能な範囲となります。

逆算すると 4K.60fps 20Mbpsの場合、平均して120Mbpsが安定して供給されなければなりません(汗 屋外では絶望的数値w(一般ではね

上記はビットレートを優先した解像度選定をしています。これにより、指定された改造では映像的にはキレに見えるようになります。
今回はゲーム配信が主な目的だったため、ビットレートから解像度を選定して行きましたが、逆に、解像度優先での設定も可能です。ただし、留意すべきは、解像度を優先することで、ビットレートが足りない場合は
映像はブロックノイズのような状態で荒く表示されます。推奨値からどれほど足りていないか?を確認しておくといいかと思います。
静止画のように映像変化が少ない場合は解像度を優先してもOK(文字のみでメインは音声など)映像に動きやクオリティを求めるのであれば、ビットレートから導き出すといいかと思います。

留意しなければならないのは、多くのサービスやソフトは配信が一度開始すると終了するまで解像度の変更ができない点です。
間違って、全然足りていない4Kなどでスタートしてしまうと地獄となりますねw

さて、なぜこのように値を割っていくのかを解説です。
一般家庭のインターネットの多くはベストエフォード、計測時には出ていても、ライブ中に下降する場合がある。
また同一回線でたの通信が発生する可能性がある。自分のスマホ、家族のスマホ、PC、公共ならなおさら・・・・・4G-LTEなども同様で人が多くなると当然遅くなる。
そのため、半分程度までというのも自分以外に配信者がいない前提であり、いる場合は互いにどれだけ占有するかを話し合う必要があります。
単独で全ての通信を使い切るというのは理論上可能であっても実際には難しく、ライブ中全てとなると、よほど通信業者と提携してやらないかがギリ不可能です。
また最後の2/3は、自分が確保できた通信帯域の中で映像と音声を送らなくてはいけません。(音声は一般的に128Kbpsなど軽めであるが、必ず必要ですので、こちらも余裕をもっておく)それ以外にも通信をすることが当然ありますので、その余裕として1/3を確保しています。これであれば、最低限度単体でライブを行う場合は初めていいスタート値を導き出すことが可能となります。


3.トラブル時の対応方法について

上記の正しい設定値の解説を見ていただくと大体の対処方法がわかるかと思いますが。
ライブ開始後、の場合は、基本的に解像度をいじることができませんので、ビットレートを下げていく
ライブ開始前であれば、解像度を想定よりも一つ下げておく、これによりビットレートの下げ幅が確保できるので、
少々何かがあって下方修正を行なってもライブ映像の品質が損なわれない傾向にあります。
つづいて、映像の変化を極力なくす。静止画を入れて一度転送映像自体を減らす。

これ以外にもトリッキーな対応方法はいくつかありますが、今回はこれくらいで・・・・



コメント

このブログの人気の投稿

Handbrake CLI で AMDとNVIDIA のGPUエンコードを使用するも・・・・No.01

AMD Radeon ReLive 音が録音できないトラブル

裏2:Amazon Fire TV Stick その使い道は kodi で どうでぃ!