FMLEでマルチビットレート配信
Flash Media Live Encoder (FMLE) を使用してマルチビットレート(Multiple Bitrate)配信というものができます。読んで字の如しですが、一つの配信チャンネルで複数のビットレートの配信を同時に流し、視聴者側や端末で最適な物を選べる配信方法です。
特にHD配信とiPhone配信を両立させる場合などに威力を発揮します。この場合FMLE上でどのような設定をしたら良いのかをまとめてみました。なお、これは一応Ustream向けの設定ですが、他のサービス(FMSを使用した)でも応用できる可能性はあります。
この記事の短縮URL→ http://bit.ly/jrsOT7
設定を始める前にまず注意点があります。マルチビットレート配信はものすごくマシンパワーを喰います。マシンがFMLEのエンコードのみで他に何もしない場合、シングルビットレートの配信をさせた時にCPU負荷が50%以下でないと、さらに1つまたは2つのビットレートのエンコードをさせるのはとても無理です。
また、どのようなビットレート・画面サイズ・フレームレートの組み合わせにするか、コーデックを何にするか、音声との割合をどうするかなど検討すべき項目は沢山あります。あまり無理なスペックを目指さず、堅実な設定の積み重ねでだんだん増やして行く等慎重さが必要です。
更に、通信回線の上り帯域が潤沢にない場合も注意が必要です。モバイル接続の場合などで、FMLEからUstreamサーバまでの間で上り回線がパンクすると意味がありません。無理に3種にせずPC用とiPhone用などで2種に納めた方が良いかもしれません。
では設定内容の説明です。まずは通常のシングルビットレートの場合の状態です。
左側のBit Rate: の設定は一つだけにチェックが入っていると思います。図のレートやサイズは例ですので実際は各自の環境に合わせて設定してください。他のパラメータも同様でここでは省略をします。
右の方にあるStream to Flash Media Server 欄に Stream: という項目があります。これはUstreamの設定ページから落として来たXMLファイルを読み込ませると、各自のチャンネルに対応した文字列が入って来ているはずです。
このStream: の文字列にカーソルを入れて隠れている右端を表示させたのが上図の状態です。デフォルト状態ではこの様に末尾が「offair」となっているはずです。ここをまず確認しておいてください。
また、余談ですが「Auto Adjust」機能もシングルビットレートの場合のみ使用が可能になっています。
次に、Bit Rate: に複数のチェックを入れてパラメータを設定してみましょう。
おっと、Auto Adjustにチェックを入れたままだとアラートが出て来てしまいました。まずAuto Adjustのチェックを外してから、Bit Rate: を追加してください。
Bit Rate: のチェックの組み合わせは2つか3つですが組み合わせは自由にできます。 基本的に下に行くほどデータ量が少なくなるように設定をします。例ではBit Rate:(Kbps)の他にOutput Size: もだんだんに小さくして行っていますが、デフォルトでは同じサイズになるように出来ています。これはリサイズがそれなりに負荷になるからと思われます。
ただし、コーデックは共通、フレームレートも共通、音声も共通ですので、サイズを変えて行かないとやたら画質が落ちてしまう可能性もあります。負荷と画質のバランスに注意をして値を決めて行ってください。
そして重要なポイントですが、先ほどのStream: の文字列の末尾(offair)の後ろに %i(半角のパーセント・アイ)を追加してください。(ここ試験に出ます!)
また、Auto Adjustは外してあるはずですが、一応確認をしてください。
これだけで基本的にマルチビットレート配信の準備は完了です。映像・音声ソースを確認してStartボタンを押してみてください。
もし、このようなアラートが出たら、もう一度 Stream: 文字列(の右端)を確認してみてください。%i が入っていなかったり、全角文字になっていると上手く動きません。
問題なくエンコードが開始されましたら、Web Broadcaster(Ustreamの「ライブ配信」ボタンで開くページのこと)を開き・・(中略)・「配信の開始」をしてください。
次に実際に配信されているページに移動しPlayerの状態を確認してください。
ソーシャルボタン([ t ]とか [ f ])の左に「HD」とか「High」と表示があれば成功です。そこをクリックすると配信レートを選択するメニューがポップアップするはずです。
ポップアップの内容は Bit Rate: が2つの場合は「High」「Low」、3つの場合は「HD」「High」「Low」の表示になります。これは解像度やビットレートの数値には全く関係が無いことに注意してください。SDな解像度でも3つのBit Rate: にチェックしていれば「HD」表示が出て来ます。
実験の段階では切換えをハッキリ見分けるためにかなり極端にBit Rate: を変えるか、Output Size: を変えておくと良いでしょう。
なお、ここで「Low」に相当するものがiPhone用の配信に使用されるようになっているようです。
以上でマルチビットレート配信の設定の説明は終わりです。
コメント