生放送向け libx264 の設定(案)

基本は規定値(何も書き換えない)で十分だが生放送用にはビットレート制限と遅延を考える必要があるので、それを考慮した設定(案)。ベンチの値を比較しているので実際の見え方までは検証不足である。この設定を試せるのは ffmpeg で配信する場合と、XSplit や OBS で高ビットレートで録画してそれを ffmpeg か x264 でエンコードし、そのエンコードログを調べることにより設定を煮詰めることができる。

関連記事と関連サイト

各フレームの枚数、QP(小さい値ほど高品質)の説明


  • Iframe の枚数:全てIframeだとどこでもカットできる、枚数が多いとシーク出来る場所が増える
  • Pframe の枚数:枚数が多いと動きに強くなる
  • Bframe の枚数:枚数が多いと遅延が増える、再生負荷が増える、少ない容量で動きに強くなる

  • Iframe のQP:静止画や、映像に表示される文字が綺麗になる、容量がとても増える
  • Pframe のQP:動きの多い映像にブロックノイズが出にくくなる
  • Bframe のQP:動きの多い映像にブロックノイズがより出にくくなる


具体的な設定内容


映像に必要なビットレートが足りない場合は、Bframe、Pframe、Iframe の順番に容量が少なくなり画質が悪くなる。この場合、qcomp や iprato を調整し、B, P, I フレームの QP は同じくらいになるようにする。

配信ビットレートのバッファを決める -bufsize は配信ビットレート決める -maxrate の 1 倍から 2 倍の間にし、放送が途切れないなどの不具合がなければ 1 倍にする。ただしこのときに配信ビットレートが常時 maxrate の値に張り付くような場合は crf の品質が高い(値が小さいほど高品質)ので値を上げて、前後 5% 程度の変動幅を持つように設定する。配信したファイルを保存し、MPC(表示 < 統計)でビットレートの変動を見るか、FFML で配信時のビットレートを見る。

これでもビットレートを見ることができる
Bitrate Viewer - Main Page

I-Pフレーム間QP係数 --ipratio(-i_qfactor) は静止画像、映像の中の文字を綺麗にするかどうかの Iframe の質を決めるもの。規定値は 1.4。動きに強い Bframe の質を上げる場合は少し下げたほうがよい。例えば 1.2 程度にする。

ビットレート変動量 -qcomp は規定値の 0.6 よりも少し上げたほうが bframes の質やサイズの向上が見られる。例えば 0.7 にする。上限は 0.8 程度とする。

マクロブロックタイプの指定 はプロファイル設定だけでよし、-8x8dct を使う場合の high プロファイル、使わない場合の main プロファイルで使い分ける。NLE の場合は high プロファイルを使うと必ず -8x8dct がオンになるが、ffmpeg は high プロファイルでも -8x8dct をオフに出来る。

フレーム設定 --ref(-refs) を重たくしてもそれほど効果が出ない事が多い。ref B L0: で末尾が 1% 未満で 0% に近いほど bframes の値が大き過ぎて画質向上の効果は薄い。同様に ref P L0: の末尾が 1% 未満で 0% に近いほど ref の値が過ぎて画質向上の効果は薄い。代表例(bframes, b-adapt, b-pyramid, refs)。配信用には --bframes(-bf) は 1、または 2 にし、ref は 3 が調度良い。高い値を指定しても映像がそこまで必要としなければエンコード負荷が増すだけになるので調整が難しい。

動き予測 はどの素材でも値を大きくすると効果が出やすい。特に --me(-me_method) は顕著に現れて、umh や esa は恩恵が大きく全フレームの QP が向上する。--subme(-subq) も同様に 8 にすると良い結果になりやすいが、9 以上は素材による。

その他の個別の設定


-b-adapt は 2 にすると bframe の枚数が増える場合、あまり変わらない場合、減る場合の3種類があり、一般的には増える傾向にある。しかし 2 にして劇的に向上する場合とたいして変化がない場合とがあるので配信スタイルによって使い分けるほうが良い。しかし bframe の枚数が増えると遅延が増えるので遅延を気にする場合は 1 にする。

-b-pyramid は 2 よりも 0 のほうが良い場合が多かった。

-fast-pskip は素材によってオフで画質が良くなる場合と、オフで画質が良くなる場合とがある。

-trellis は 2 にすると負荷がとても増えるが、その画質向上効果は素材によって大きいものと小さいものとがある。

-sliced-threads は規定値では 0 だが、1 にすることでビットレート当たりの画質を少し下げる代わりに遅延を減らすことができる。

-rc-lookahead は fps と同じ値か、その8割程度がバランスが良い。高い値は遅延が増えて非推奨。静止画やお絵かきの線画などでは 0 から fps の 3割程度まで下げる。

まとめると、bframe や ref などのフレーム参照の値を軽く、逆に me の値を重たくして、I, P, B の QP を調整する設定にし、最大ビットレートと最小ビットレートの値を crf で調整をすれば、動きに強く視聴者にもそれほど負荷のない配信になる。

更新履歴
2013/08/20、2014/07/19
関連記事

この記事へのコメント

てぃる2013/05/12 (日) 03:06:41

>マクロブロックタイプの指定 はプロファイル設定だけでよし、-8x8dict を使う場合の high、使わない場合の main で使い分ける。

とありますが、プロファイル設定をしていない場合、配信ソフトによってmainだったり、highだったりしますよね?
そこで、NLEは、設定していない場合、highになりますよね?
その場合、8x8dictは設定しなくても、i8x8は使えるのでしょうか?

てぃる2013/05/12 (日) 11:08:10

連レスすみません

自己解決しました i8x8は8x8dictを使用設定しなくても使用できました
8x8dictを使用しないと、思った以上に画質変わる(落ちる)んですね・・・

〉maxrate の値に張り付くような場合は crf が高いので下げて、前後 5% 程度の変動幅を持つように設定する。

とありますが、crfを下げるとは、品質を下げるのか、数値を下げるのか、どっちなのでしょうか?

ロベルト2013/05/12 (日) 12:26:20

てぃる さんこんにちは

指摘ありがとうございます。以下のように訂正しました。
maxrate の値に張り付くような場合は crf の品質が高い(小さい値ほど高品質)ので値を上げて、前後 5% 程度の変動幅を持つように設定する。

管理人のみ通知 :

トラックバック


ニコニコチャンネル始めました
ニコラボチャンネル
スポンサード リンク
THE IDOLM@STER THE@TER ACTIVITIES 03
THE IDOLM@STER THE@TER ACTIVITIES 03

Fate/EXTELLA REGALIA BOX for PlayStation (R) 4 【初回限定特典】ネロ・クラウディウス、アルトリア・ペンドラゴン衣装「純真のナイトドレス」プロダクトコード付+【Amazon.co.jp限定特典】アルテラ衣装「スイートデビル」プロダクトコード配信 - PS4
Fate/EXTELLA REGALIA BOX for PlayStation (R) 4 【初回限定特典】ネロ・クラウディウス、アルトリア・ペンドラゴン衣装「純真のナイトドレス」プロダクトコード付+【Amazon.co.jp限定特典】アルテラ衣装「スイートデビル」プロダクトコード配信 - PS4

妖怪ウォッチ くったりぬいぐるみだニャン ジバニャン
妖怪ウォッチ くったりぬいぐるみだニャン ジバニャン

Fate/EXTELLA VELBER BOX 【初回限定特典】ネロ・クラウディウス、アルトリア・ペンドラゴン衣装「純真のナイトドレス」プロダクトコード付+【Amazon.co.jp限定特典】アルテラ衣装「スイートデビル」プロダクトコード配信 - PS4
Fate/EXTELLA VELBER BOX 【初回限定特典】ネロ・クラウディウス、アルトリア・ペンドラゴン衣装「純真のナイトドレス」プロダクトコード付+【Amazon.co.jp限定特典】アルテラ衣装「スイートデビル」プロダクトコード配信 - PS4

Fate/EXTELLA REGALIA BOX for PlayStation (R) Vita 【初回限定特典】ネロ・クラウディウス、アルトリア・ペンドラゴン衣装「純真のナイトドレス」プロダクトコード付+【Amazon.co.jp限定特典】アルテラ衣装「スイートデビル」プロダクトコード配信 - PS Vita
Fate/EXTELLA REGALIA BOX for PlayStation (R) Vita 【初回限定特典】ネロ・クラウディウス、アルトリア・ペンドラゴン衣装「純真のナイトドレス」プロダクトコード付+【Amazon.co.jp限定特典】アルテラ衣装「スイートデビル」プロダクトコード配信 - PS Vita

【早期購入特典あり】初音ミクシンフォニー~Miku Symphony 2016~オーケストラ ライブ CD(初音ミクシンフォニー描き下ろしクリアファイル付き(ランダム配布))
【早期購入特典あり】初音ミクシンフォニー~Miku Symphony 2016~オーケストラ ライブ CD(初音ミクシンフォニー描き下ろしクリアファイル付き(ランダム配布))

「うたわれるもの 偽りの仮面&二人の白皇」歌集(初回限定盤)
「うたわれるもの 偽りの仮面&二人の白皇」歌集(初回限定盤)

TVアニメ『ラブライブ!サンシャイン!!』挿入歌シングル「想いよひとつになれ/MIRAI TICKET」
TVアニメ『ラブライブ!サンシャイン!!』挿入歌シングル「想いよひとつになれ/MIRAI TICKET」

『刀剣乱舞-花丸-』 歌詠集 其の三 特装盤
『刀剣乱舞-花丸-』 歌詠集 其の三 特装盤

本好きの下剋上~司書になるためには手段を選んでいられません~第一部 「本がないなら作ればいい3」
本好きの下剋上~司書になるためには手段を選んでいられません~第一部 「本がないなら作ればいい3」

新着記事と追記・編集記事
スポンサード リンク
ブログ内検索
プロフィール

Author:ロベルト
お問い合わせはこちらまで
robelt2525[at]gmail.com

中の人 @nico_lab
ブログ更新用 @blo_nico_lab

詳しいプロフィールはこちら

カテゴリ
アクセスの多い記事
記事アーカイブ

最新コメント
リンク
ニコニコ静画
アニメカテゴリ毎時ランキング
免責事項
当ブログはリンクフリーです。記事によりトラブルが生じた場合でも、当ブログ管理人は一切の責任を負いません。 当ブログに記載されている情報の正誤や利用は、ご自身の判断でお願いします。 紹介したアプリケーションに関する問い合わせは作者に問い合わせてください。ニコニコ動画に関する質問はまずは公式掲示板、2ch、各Q&Aサイトを参照ください。
ブログの読者になる(RSS)
アクセス数