スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

XSplit・NLE高画質プリセット -プリセット知識簡易解説-

|´д`)´Å`)ノ..。o♪コンバンヮァ♪

どうもお久しぶりです。 長らくブログ放置していました…申し訳ありません。
そんな放置している中でも

XSplit高画質設定
NLE高画質設定
アスペクト比維持設定(NVIDIA)
低スペックPC向けパソコン軽量化記事
サドンアタック爆破MAP名称一覧

等の記事により、多くの方が足を運んでくれていました。

が。

ずっと放置していた為XSplitやNLEの度重なるアップデートにより、
記事が大変古い内容となってしまい皆様にはご迷惑をおかけしました。

公式的なブログでは無いため、更新が非常に遅い場合がありますがご了承下さい。



そんなわけで今回は!!

僕のプリセットを配布するだけでなく、それを基盤とした
プリセットの編集知識・編集すべき数値を紹介していきたいと思います!!


※注意!!━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━!!

・僕自身エンコード知識が博識というわけではなく、各種調べつつ大雑把に把握しています。
 エンコード知識が間違っているものもあるかもしれません。その際は優しく指摘して頂けるとありがたいです。

XSplit・NLE共にバージョンが変わってくると「最新版では記載不要なコード」が出る場合もあります。
「FPSゲーム」をする上での高画質、動きの激しい前提で考慮していますので静止画での高画質は除きます。
ニコ生放送(XSplit)に関するエンコード知識である為、
 x264ファイルのエンコード知識が全て載っているわけではありません。ご了承下さい。

!!━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━!!


ぜひ編集意欲がある方はご覧下さい。


なお「自作プリセットを作りたい、x264コードの知識が欲しい」という方や、
「FPSゲームの高画質プリセット設定が知りたい」という方は「このまま続きを表示する」より
追記の部分を見ていただければ
プリセットの説明と推奨値が確認出来ますので参照ください。











----------------------------------▶◀----------------------------------




 x264ファイルプリセットの編集!!~簡易編~


※0~9、a~z 順に並んでいます。
※「お勧め入力コード一覧表」、「カテゴリ別コード表と推奨値」、「その他注意点等」の順番で記載してあります。
※カテゴリ別コード表は、「重要項目」、「ブロックノイズ低減項目」、「タイムラグ低減項目」
  「低スペック向け項目」、「静止画向け項目」の5項目に分かれます。
  「高スペック・FPSゲーム配信向け設定」は追記にある「x264プリセットの編集~知識編~」にて紹介しています。
※推奨値/推奨コードは主観によるもので、必ずしもそれが良いわけではありません。
※XSplitの表記である為、NLEとは若干書き方が異なる場合もあります。
OBSやffmpegとはプリセットの表記法が違いますのでご注意下さい。






お勧め入力コード表

※あくまで「基準」として入れて頂きたいだけなので超高画質プリセットにはしていません。
  (高画質ゲーム配信のプリセットを基盤に以下のプリセットを作成しました。いくつか削除したものもあります)
  このまま使用してもいいですが環境によっては以下のプリセットでも重たいです。値を調整することをお勧めします。
  プリセットの配布が多忙な時期だと中々お渡し出来ない場合があるので(ぶっちゃけ本当はコンタクトが増えて面倒臭い)
  こちらを参考にしコピペして下さい。 このプリセットを基盤にして高画質化・軽量化していくと良いと思います。

&ex:preset:medium
&ex:8x8dct:1
&ex:aq-mode:2
&ex:aq-strength:1.1
&ex:b-adapt:2
&ex:bframes:3
&ex:b-pyramid:normal
&ex:cabac:1
&ex:colormatrix:smpte170m
&ex:deblock:1:1
&ex:direct:auto
&ex:ipratio:1.28
&ex:keyint:250
&ex:level:3.1
&ex:mbtree:1
&ex:me:hex
&ex:merange:16
&ex:min-keyint:auto
&ex:mixed-refs:1
&ex:no-dct-decimate:0
&ex:no-fast-pskip:1
&ex:partitions:i8x8,p8x8,b8x8,i4x4
&ex:pbratio:1.30
&ex:profile:high
&ex:psy:0
&ex:qcomp:0.8
&ex:qpmax:69
&ex:qpmin:16
&ex:qpstep:4
&ex:ratetol:1
&ex:rc-lookahead:25
&ex:ref:3
&ex:scenecut:40
&ex:subme:7
&ex:threads:0
&ex:trellis:2
&ex:weightb:1
&ex:weightp:0




カテゴリ別コード表と推奨値

※ここでは「用途・目的別」に見ておきたいプリセットコードを記載しておきます。
  推奨値は主観の為必ずしも良いというわけではありません。参考程度にして下さい。



=「カテゴリ別コード表と推奨値」、「その他注意点等」現在修正中。すみません後々公開します。= ----------------------------------▶◀----------------------------------


[情報:2015/10/27―一部編集・修正]





 x264ファイルプリセットの編集!!~知識編~


※0~9、a~z 順に並んでいます。
※○部分に数値、またはコードが入ります。そこが変動させる部分です。
※高画質化の推奨値/推奨コードは主観によるもので、必ずしもそれが良いわけではありません。
※コマンドOFFの「no-○○」に関してはオフ推奨の主流なもののみ記載してあります。
※XSplitの表記である為、NLEとは若干書き方が異なる場合もあります。
OBSやffmpegとはプリセットの表記法が違いますのでご注意下さい。








・preset
表記: &ex:preset:○ (全10種類に変更可能。詳細は以下「内容」参照。初期値はmedium(?)。)
条件: 各プリセットコード毎に基礎のx264プリセットにコードが追加・設定される詳細は以下「内容」を参照
内容: デフォルトプリセットと呼ばれ、プリセット編集の基盤になる重要な項目です
     NLEでの表記は「x264=medium」というような表記法になります
     XSplitではプリセット編集画面の「Extra Encoder Parametars」ではなく
     「EncoderPreset」を変更する事で、自動で&ex:preset:の値が設定(記載)されると思います
     (XSplitでは「EncoderPreset」項目から設定するように。詳細はコチラの⑥の編集画面を参照。)
     画質・負荷の増減は以下の順で、右に行くほど高画質・高負荷になります。
     ultrafastsuperfastveryfastfasterfastmediumslowslowerveryslowplacebo
     基準はmediumからですがveryslowplaceboは重たいだけで効果が全然ないのでやめましょう。
     ultrafastsuperfastは非常に軽いですが画質が最悪です。スペックと相談しながら設定しましょう。

     各コードによるプリセットの設定は以下の通りです。
     以下の内容が基盤に追加されますが、各コード指定したものはそちらが優先されます
     ultrafast … no-8x8dct aq-mode:0 b-adapt:0 bframes:0, no-cabac no-deblock me:dia
     no-mbtree no-mixed-refs partitions:none ref :1 scenecut:0 subme:0 trellis:0
     no-weightb weightp:0
     superfast … no-mbtree me:dia no-mixed-refs partitions:i8x8,i4x4 ref :1 subme:1
     trellis:0 no-weightb weightp:0
     veryfast … no-mbtree no-mixed-refs ref:1 subme:2 trellis:0 weightp:0
     faster … no-mixed-refs rc-lookahead:20 ref:2 subme:4 weightp:1
     fast … rc-lookahead:30 ref:2 subme:6
     medium … 各x264コードのデフォルト値のまま変更なし。
     slow … b-adapt:2 direct:auto me:umh rc-lookahead:50 ref:5 subme:8
     slower … b-adapt:2 direct:auto me:umh partitions:all rc-lookahead:60 ref:8
     subme:9 trellis:2
     veryslow … b-adapt:2 bframes:8 direct:auto me:umh merange:24 partitions:all
     rc-lookahead:60 ref:16 subme:10 trellis:2
     placebo … b-adapt:2 bframes:16 direct:auto no-fast-pskip me:tesa merange:24
     partitions:all rc-lookahead:60 ref:16 subme:10 trellis:2 slow-firstpass(マルチパス時のみ)

     生放送で実用的なのはsuperfastveryfastfasterfastmediumslowslower辺り。
     高画質なら「&ex:preset:slow」推奨。(EncoderPresetを「slow」に設定するという事。)



・8x8dct
表記: &ex:8x8dct:○ (0~1に変更可能。初期値は1。)
条件: profile:high が必要
内容: 離散コサイン変換。partition というコードのi8x8を有効にする為、この8x8dctが必要になる
     0で無効。1で有効。 高画質なら「1」推奨。



・aq-mode
表記: &ex:aq-mode:○ (0~2に変更可能。初期値は1。)
条件: 特に無し。
内容: 「AQ」の有効/無効。AQ(Adaptive Quantization)とは、画質劣化の目立ちにくい部分からビットを削り
     画質劣化の目立ちやすい部分にビットを再配分(割り当て)することである
     0で無効。1で有効(VAQ)。2で再配分を強くする(Auto-VAQ)。 高画質なら「2」推奨。



・aq-metric
表記: &ex:aq-metric:○ (0~3に変更可能。初期値は0(?))
条件: 特に無し。
内容: 量子化パラメータ推定の精度。 多分AQの精度を上げるかどうかの設定。
     映像をより細かく量子化(ブロック化)させてAQを細かく行うかどうか・・・だと・・思う。
     特徴はaq-mode(VAQ)の作業が数十~数百倍重い(遅い)ということ。スペックと要相談
     0で無効。1でVAQの12倍重い。2でVAQの30倍重い。3でVAQの120倍重い。 高画質なら「3」推奨(?)



・aq-strength
表記: &ex:aq-strength:○.○ (0~3.0に変更可能。初期値は1.0。)
条件: aq-strengthを0にするとaq-modeも0(無効)になる
内容: AQ(aq-mode/VAQ)の強度。この値を上げればAQの効果が強まり、下げれば弱まる。
     単色(低周波部分)が多い映像なら0.3~0.6辺りで弱めるのが良い。(例:アニメ映像)
     細部(高周波部分)が多い映像なら1.0~1.5辺りで強めるのが良い。(例:3Dゲーム映像)
     0で無効。0.1~3.0で有効。 高画質(FPSゲーム前提)なら「1.2~1.5」推奨。



・b-adapt
表記: &ex:b-adapt:○ (0~2に変更可能。初期値は1。)
条件: 特に無し。
内容: bframeで指定したBフレーム連続枚数の内どれをBフレーム/Pフレームとして処理するかという指定。
     Bフレームに適さないものはPフレームとして処理するのだが、b-adaptを0にしてしまうと
     bframeで指定した枚数全てをBフレームにしてしまうため0は非推奨
     1は高速処理の為bframesが6以上の場合に使用。 2は正確処理の為bframesは5以下推奨
     基本bframeは1~5が多いので2推奨。 高画質なら「2」推奨。



・b-bias
表記: &ex:b-bias:○ (-90~100に変更可能。初期値は0。)
条件: 特に無し。
内容: Bフレーム(後述)を入れやすくするかどうか。b-adaptに影響する。
     マイナス方向にすると入れにくくなり、プラス方向にすると入れやすくなるが、
     どちらにしても画質劣化しやすい為記載しない方が良い高画質なら記載しないのを推奨。



・bframes
表記: &ex:bframes:○ (0~16に変更可能。初期値は3。)
条件: 特に無し。
内容: 動く画像(映像)の変化のある部分のみを圧縮・変換(エンコード)するのをフレーム間予測という。
     1秒間に何枚画像を表示(送信)するかという「FPS」があるが、その秒間に表示(送信)する画像に深く関係する。
     まず映像のメインとなる一枚画、「Iフレーム」(無化工で最も重たい画像)がある。
     そしてそのIフレームから変化の起こった部分“だけ”を切り抜いた画像「Pフレーム」がある。
     FPS30の場合1秒間に30枚画像を表示(送信)するわけだが、
     1枚目に表示(送信)するのは必ずIフレームで、もし2枚目に変化があった(動いた)場合、
     Pフレームを表示(送信)する事で1枚目と重なり、2枚目が動いた後の画像のように見える。
     しかし1秒間に30枚も表示(送信)していると、動きの激しくない映像では特に、
     何度も「あまり変化の無いIフレーム画像が連続する」という事が起こる。データ送信量が非常に重たい。
     そこで「さっき表示した画像と変化が無い場合、さっきの画像を再利用する(新たに送信しない)」とか、
     「次の画像は変化する画像だから、次の画像(変化部分)をコピーして表示する」というのが
     「Bフレーム」であり、実質「前後の画像を見て手抜きをする」というデータだけなので極小容量である。
     I画像が一枚画、P画像が変化部位、B画像が手抜きコマンド(指令データ)という判断で以下のイメージ参照。
     I(一枚画) B- B- B+ P(動いた部分画像) B+ B- B- I(一枚画)
     -は前の画像をそのまま再利用、+は次の画像をコピーといった具合。(実際はコピーではなく作成?)
     …このBフレームの説明が一番間違ってるかも。難しい..。 間違いがある場合は指摘して頂けるとありがたいです。
     こちらのサイトで詳しく説明しています―GOP(Group of Picture)について ~ I・P・Bフレームとは   by「生放送ってどうやるの? 」様

     仕組みを説明すると難しいが、bframesの値が多くなると、映像の容量が減り、処理が軽くなる
     しかしbframesの値が多くなると遅延が伸びるという点だけ理解しておけば良い。
     基本bframesは3。静止画配信なら5~6。高画質(FPSゲーム前提)なら「1」推奨。



・b-pyramid
表記: &ex:b-pyramid:○ (0~2 または none/strict/normal に変更可能。初期値はnormal。)
条件: b-pyramid:normalの場合 bframes:2 以上 が必要
内容: Bフレームを生成する際、IフレームとPフレームを参照するだけでなく、Bフレームも参照するというもの。
     予測誤差を抑えられ、エンコードと画質が若干上がるが、視聴者側の負荷が増える
     0(none)で無効。1(strict)はBlue-Rayの規格に適合させるだけなのであまり使用しない。
     bframesを2以上に指定している人(動きの少ない配信の人)は2(normal)推奨
     高画質(FPSゲーム前提)でbframe:1に指定してる人なら記載の必要は無い。



・cabac
・no-cabac
表記: &ex:cabac:○/&ex:no-cabac:○ (0~1に変更可能。初期値はcabac:1。)
条件: profile main以上が必要
内容: 算術符号化の事で、重み付け予測などを追加することで処理量は多くなるが効果が高い。
     画質はとても向上するが、演算などの処理量が多い為非常に重くなる
     スペックに自身が無い、再生負荷を下げたいという場合はここをまずオフ(無効)にすると良い。
     cabac:0かno-cabac:1で無効。cabac:1かno-cabac:0で有効。高画質なら「cabac:1」推奨。



・chroma-qp-offset
表記: &ex:chroma-qp-offset:○ (-12~12に変更可能。初期値は0。)
条件: psy-rd/psy-trellis によって値が変動される。
内容: 彩度情報 と輝度情報に異なる量子化値を使うというもので、色に関する設定。(白黒映像に効果有り?)
     アニメ映像なら見ても良い点だが、実質psy-rdとpsy-trellisの設定値により自動調整される
     基本0より低い値の方が良いようだが指定していじる必要はない
     低い値=明るい所の画質向上・暗い所の画質低下。 高い値=その逆。
     高画質なら記載しないのを推奨。



・colormatrix:smpte170m
表記: &ex:colormatrix:smpte170m (コード固定のため変動不可。)
条件: 特に無し。
内容: YUV-RGB変換のマトリクス(行列)強制コード。
     SD解像度(縦解像度が720未満)の場合はsmpte170mの記載が必須となる。(ニコ生では必須)
     HD解像度(縦解像度が720以上)の場合はBT.709の記載が必須となる。(他配信サイト等)
     ニコ生では必ずこのコードの表記を入れる事。



・cqm
表記: &ex:cqm:○ (flat/jvtに変更可能。初期値はflat。)
条件: jvtの場合 profile high以上 が必要
内容: AQと似たようなもので、カスタム量子化マトリクスのことである。
     量子化マトリクスの値に応じた破棄率を決めるものだが、デフォルトのflatから変える必要はない
     高画質なら「flat」、もしくは記載しないのを推奨。



・dct-decimate
・no-dct-decimate
表記: &ex:dct-decimate:○/&ex:no-dct-decimate:○ (0~1に変更可能。初期値はdct-decimate:1。)
条件: 特に無し。
内容: dct-decimateとは、「DCT係数の間引き処理」というもので「映像の非常に細やかな部分を除去」するもの
     dct-decimate:1かno-dct-decimate:0で有効になり、僅かに画質低下し負荷も下がる
     dct-decimate:0かno-dct-decimate:1で無効になり、細部が僅かに画質向上し負荷も上がる
     高画質(FPSゲーム前提)なら「dct-decimate:0」か「no-dct-decimate:1」推奨。



・deblock
表記: &ex:deblock:○:○ (-6:-6 ~ 6:6に変更可能。初期値は0:0。)
条件: 特に無し。
内容: ブロックノイズ低減に大きく貢献する項目。変動値は-1~1に収めたほうが良い。
     左の値が境界検出閾値(Threshold)で増やすと全体の様々なブロックノイズを低減する。
     右の値がディテール検出閾値(Strength)で増やすと細やかな部分のブロックノイズを低減する。
     値を+にするとぼやけた感じでブロックノイズ減値を-にするとシャープな感じでブロックノイズ増
     動きの激しい映像はプラス1に、静止画が多い映像はマイナス1に、といったところ。
     なおオフにする場合は-no-deblockと表記。高画質(FPSゲーム前提)なら「1:1」推奨。



・direct
表記: &ex:direct:○ (none/spatial/temporal/auto に変更可能。初期値はspacial。)
条件: 特に無し。
内容: ダイレクトマクロブロックで使う動き予測方式の事。フレームに関係する。
     spatialは動きが一定、動きの速さが変化する場合に用いると良い。(アニメ映像等)
     temporalは動きが変化し、動きの速さが一定な場合に用いると良い。(3D映像等)
     noneは最も遅く画質も最悪な為非推奨autoはspatialとtemporalを使い分けてくれるが重い
     高画質なら「auto」推奨。



・fast-pskip
・no-fast-pskip
表記: &ex:fast-pskip:○/&ex:no-fast-pskip:○ (0~1に変更可能。初期値はfast-pskip:1。)
条件: 特に無し。
内容: fast-pskipとはPフレーム(動きの変化部分のフレーム)の検索を省略するかどうか
     fast-pskip:1かno-fast-pskip:0で有効になり省略し、多少軽くなるがブロックノイズが増える。
     fast-pskip:0かno-fast-pskip:1で無効になり動き(Pフレーム)検索を省かず、ブロックノイズが減る。
     動きの激しい配信ではno-fast-pskipを入れた方が良い静止画の場合はfast-pskip:1で良い
     高画質(FPSゲーム前提)なら「fast-pskip:0」か「no-fast-pskip」推奨。



・ipratio
表記: &ex:ipratio:○.○○ (1.00~?に変更可能。初期値は1.40。)
条件: 特に無し。
内容: I・Pフレームの量子化値換算係数のことで、Iフレーム(1枚画)の品質を決定する。
     この値を上げるとIフレームの品質が上がり、それに伴いP・Bフレームの画質も上がるが
     I・P・Bフレームそれぞれの平均ビットが上がり結局画質が下がってしまう
     初期値のままで良い。変動させるとしても+0.1程度。高画質なら「1.40~1.41」推奨。



・keyint
表記: &ex:keyint:○ (1~?に変更可能。初期値は250。)
条件: 特に無し。
内容: IDRフレーム間隔の最大値で、「フレームレートの値x10倍」の数値を入れれば良い
     無料版XSplitはFPS指定が最大25なので250のままでも良い。
     XSplitの有料版、NLEの手動指定等で値を変えた場合は10倍になるように入れる事。
     高画質なら「フレームレート値x10倍」推奨。



・level
表記: &ex:level:○.○ (-1~5.1に変更可能。初期値は-1。)
条件: 各レベル値により画面解像度/FPS値上限/処理負荷や使用メモリ量等パラメータ上限がかかる
内容: levelに応じて「解像度」「FPS」「ref」「メモリ使用量」等に上限がかかるようになる
     level指定は1/1b/1.1/1.2/1.3/2.0/2.1/2.2/3.0/3.1/3.2/4.0/4.1/4.2/5.0/5.1の16段階と
     自動設定の-1がある。 実際の再生能力として5.0や5.1は厳しく、通常使えない。
     3.1で720x480 80.0fps、720x576 66.7fps、1280x720 30fps等対応するようになるので、
     基本ニコ生ならば3.1/3.2/4.0/4.1辺りで十分上げすぎると回線や視聴に影響が出るので非推奨
     高画質なら「3.1」か「3.2」か「4.0」推奨。



・mbtree
・no-mbtree
表記: &ex:mbtree:○/&ex:no-mbtree:○ (0~1に変更可能。初期値はmbtree:1。)
条件: mbtreeを有効にした場合 qcomp の値によって効きめ(強度)が変わるb-pyramid と併用不可
内容: AQと似ており、時間軸で映像を観察し、先読みしてビットレートの再配分を行う。
     動きの激しい時からビットを削り、動きの少ない時にビットを配分する事に注意
     静止画配信はmbtree:1かno-mbtree:0で有効推奨。ビットレートが大幅に節約できる。
     本来動きの激しい配信はmbtree:0かno-mbtree:1で無効推奨なのだが、qpmompの使用や、
     rc-lookaheadを使用する為にmbtreeが必須なため、FPSゲーム配信でも有効推奨
     高画質(FPSゲーム前提)なら「mbtree:1」か「no-mbtree:0」推奨。



・me
表記: &ex:me:○ (dia/hex/umh/esa/tesaに変更可能。初期値はhex。)
条件: 特に無し。
内容: 動き予測アルゴリズムの事で、画質に大きく関係し、処理の重さやmerangeにも関係する。
     dia<hex<umh<esa<tesaの順で高画質だが、esaやtesaは重たいだけで無駄なので非推奨
     基本初期のhexで構わないが、後のmerangeに影響するためスペックに余裕があればumhで良い。
     高画質なら「umh」推奨。



・merange
表記: &ex:merange:○ (4~64に変更可能。初期値は16。)
条件: dia/hexでは4~16まで指定可能。 umh以上では4~64まで指定可能。
内容: ベクトル探索範囲で、動きの範囲を予測するものである。17以上の指定にはumh以上が必要
     動きの激しい映像や、動きの範囲が大きい(高解像度)の映像には非常に重要になる
     hexの場合デフォルトの16で良い。umhにするなら24~32辺り。32以上は無駄なので非推奨
     高画質なら「(hexの場合)16」、「(umhの場合)24~32」推奨。



・min-keyint
表記: &ex:min-keyint:○ (0~?/autoに変更可能。初期値は0(auto)。)
条件: 特に無し。
内容: IDRフレーム間隔の最小値で、「初期値のauto(0)」か「フレームレートの値x1倍」の数値を入れれば良い
     動画の場合の話だが、映像の切り替わり部分を確実にシークポイントにしたい場合ここを1に指定する。
     基本はFPS値の等倍かautoにするのが良い。高画質なら「auto」推奨。



・mixed-refs
表記: &ex:mixed-refs:○ (0~1に変更可能。初期値は1。)
条件: mixed-refs:1で有効時 ref:2以上 が必要
内容: 動き予測をする際何枚の参照フレームを利用するかの指定を「ref」でするのだが、
     8x8 サブブロック単位で別々の参照フレームを見ることができるようになる機能がmixed-refs
     1の有効で圧縮率・画質が向上するがタイムラグが若干増える。動きの激しい映像では有効推奨。
     0の無効で低負荷・低遅延だが静止画配信以外では非推奨
     高画質(FPSゲーム前提)なら「1」推奨。



・nr
表記: &ex:nr (0~10000に変更可能。初期値は0。)
条件: psyとの併用は不可。 両方記載した場合両方無効になってしまう為注意
内容: ノイズリダクション(ノイズ低減機能)。これはエンコード(圧縮)時のノイズ低減ではなく、圧縮前に行う。
     その為放送時のブロックノイズが減るわけではないので注意単に軽量化するものと思えば良い
     通常は「psy-rd(psy)」を使うのが主流の為あまり使わないが、psyを使わない人は記載した方が良い
     注意点は「psy」と同時に記載すると「nr」も「psy」も両方無効化されてしまうというところ
     0で無効。1で有効。高画質なら「psy」を使用する為記載しないのを推奨。「psy」を使用しない場合「1」推奨。



・partitions
表記: &ex:partitions:○ (i8x8,p8x8,b8x8,i4x4/all/none に変更可能。初期値はi8x8,p8x8,b8x8,i4x4。)
条件: p4x4を有効にするには p8x8 が必要。 i8x8を有効にするには 8x8dct:1 が必要
内容: 16x16のマクロブロックを、場面やフレームタイプに応じて「さらに細かく分割できるようにする」というもの。
     8x8のPフレーム動き補償が「p8x8」8x8のBフレーム動き補償が「b8x8」
     8x8のイントラ動き補償が「i8x8」(要:8x8dct:1)4x4のイントラ動き補償が「i4x4」
     4x4のPフレーム動き補償が「p4x4」(要:p8x8)。「p4x4」は「level:3.0以上」の使用は向かないとの話や、
     「p4x4」を追加(partitions:all)してもあまり画質が向上せず、重くなるだけという意見もある。
     スペックと要相談だが、初期の(i8x8,p8x8,b8x8,i4x4)は入れた方がブロックノイズがかなり減る
     高画質なら「i8x8,p8x8,b8x8,i4x4」か「all」」推奨。



・pbratio
表記: &ex:pbratio:○.○○ (1.00~?に変更可能。初期値は1.30。)
条件: mbtree:1の場合 pbratioの数値は自動調整 なので注意
内容: B・Pフレームの量子化値換算係数のことで、Bフレームの品質を決定する。
     この値を上げるとBフレームの品質が上がり、それに伴いPフレームの画質も上がる
     bframesの値が低い場合は高く設定すると主観画質が上がる
     概ね1.25~1.50といったところが範囲内。高画質なら「1.31~1.50」推奨。



・profile
表記: &ex:profile:○ (baseline/main/highに変更可能。初期値は無し(追加必須)。)
条件: Baselineの場合 bframes、cabac、適応型DCT が無効になる
     また、 aq-modeを無効 にしないとBaselineは使えない
     Mainの場合 適応型DCT が無効になる
内容: 再生環境に対応する機能の範囲を指定(制限)するもので、視聴者側に影響する。
     Baselineは旧モバイル機器向けmainは一般端末向けhighはHD解像度設定向け
     Baselineは最も互換性があり軽い分、制限が強い。mainは制限がかなり解放される(スマートフォン向け)。
     highは機能制限も無い。再生環境に問題が無い限りmainかhighが望ましい高画質なら「high」推奨。



・psy
表記: &ex:psy:○ (0~1に変更可能。初期値は1。)
条件: nrとの併用は不可。 両方記載した場合両方無効になってしまう為注意
内容: psy-rd(後述)を有効にするかどうか。nrと同時に使用することは出来ない。psyの方を有効推奨。
     1で有効。0で無効。高画質なら「1」推奨。



・psy-rd
表記: &ex:psy-rd:○:○ (それぞれ0.0~10.0に変更可能。初期値は1.0:0.0。)
条件: 左側の値指定の場合 subme:6以上 が必要右側の値指定の場合 trellis1以上 が必要
内容: 左側の値は「Psy-RDOの強度」。「心理視覚的」に複雑な部分・色が激しく変化する部分の圧縮率を下げる
     (心理視覚的というのは、数字的に画質を見るのでは無く人間の心理的な特徴で「高画質だ」と判断する事)
     初期値1.0だとニコ生では高い為、2Dアニメなら0.0~0.33D実写なら0.3~0.6程度にすると良い。
     右側の値は「Psy-Trellisの強度」。rodと似て複雑な部分や粒子表現にビットを割り当てる。
     静止画配信の場合は0~0.4まで上げてもいいが、ここの数値を上げるとブロックノイスが増える為非推奨。 
     配信内容等に合わせて設定する必要があるが、低ビットレートのニコ生では0:0が良いとの話もある。
     高画質なら「左値0.4~0.6」、「右値0~0.2」推奨。



・qcomp
表記: &ex:qcomp:○.○○ (0.00~1.00に変更可能。初期値は0.60。)
条件: mbtree有効時、qcompがmbtreeの効き目(強度)調整となる
内容: 割り当てビットレートの変動許容量で、動きの多い部分と少ない部分でのビット再配分のバランスを決める。
     値を0.6~0.8等上げると静的部の画質が落ち、その分動的部の画質が向上。FPS配信向け。
     値を0.4~0.6等下げると動的部の画質が落ち、その分静的部の画質が向上。静止画配信向け。
     高画質(FPSゲーム前提)なら「0.6~0.8」推奨。



・qpmax
表記: &ex:qpmax:○ (0~69に変更可能。初期値は69。)
条件: 特に無し。
内容: 量子化(圧縮率)の上限値。値が大きい程高圧縮(低画質)にするのを許可する。
     x264は自動でqp(量子化・圧縮率)を調節しているため、初期値から変更するのは非推奨
     高画質なら「69」推奨。



・qpmin
表記: &ex:qpmin:○ (0~qpmaxの値まで変更可能。初期値は10。)
条件: 0に指定すると「可逆圧縮」になる。 上限値はqpmaxの値まで
内容: 量子化(圧縮率)の下限値。値が小さい程低圧縮(高画質)にするのを許可する。
     16~28等値を上げる事でビットの節約をする場合もあるが、静止画配信以外では非推奨
     10前後が推奨値であるが、低すぎる値はビットレートの超過になりあまり良くない。0は非推奨。
     高画質なら「9」推奨。



・qpstep
表記: &ex:qpstep:○ (1~69に変更可能。初期値は4。)
条件: 特に無し。
内容: 連続フレーム間における量子化(QP)値の最大変動幅。静止画配信者は変更しなくて良い。
     値を大きくすると短い間隔(連続フレーム間)での急激なビットレート変動を許可する。
     主に動きの激しい映像の場合は値を上げても良いが大差はない。(推奨8~20)
     高画質(FPSゲーム前提)なら「16~20」推奨。



・ratetol
表記: &ex:ratetol:○ (0.1~100に変更可能。初期値は1.0。)
条件: 特に無し。
内容: 時間軸に沿ってビットレートがどのように変動し得るかの指定。回線に影響する。
     下げるとビットレートの変動を抑え(平均ビットレートは安定)、画質の変動を許可する。静止画配信向き。
     上げるとビットレートの変動を許可(平均ビットレートは不安定)、画質の変動を抑える。ゲーム配信向き。
     推奨値は1~4らしいが、FPSゲーム配信等の場合は4~8あっても良いように思える。
     高画質(FPSゲーム前提)なら「4~8」推奨。



・rc-lookahead
表記: &ex:rc-lookahead:○ (1~250に変更可能。初期値は40。)
条件: mbtree:1 が必要mbtreeを無効化すると自動でrc-lookaheadも無効
内容: レート制御先行検査フレーム数。mb-treeレート制御で観察するフレームの範囲を指定する。
     値が大きいほうが画質が向上するが、フレームを先読みする為大きな遅延(タイムラグ)が生まれる
     FPS値の1倍で1秒の遅延、2倍で2秒の遅延…といった具合で、基本は1倍~2倍までに収める。
     Precetが「fast」で30「medium」で40「slow」で50「slower」と「placebo」で60の値となる。
     高画質なら「FPS値の1倍」か「40~60」推奨。



・ref
表記: &ex:ref:○ (1~16に変更可能。初期値は3。)
条件: 特に無し。
内容: 参照するフレームの最大距離数。bframesの倍数が良いとされる
     ここを上げると画質が向上するが、再生負荷上昇に加え遅延も生まれる7以上は非推奨
     特に9以上になると視聴者側で見れなくなる者も多い上、7以上はほとんど画質が向上しない。
     推奨値は3~6で、3でも十分効果は期待出来る。高画質なら「6」推奨。



・scenecut
表記: &ex:scenecut:○ (0~100に変更可能。初期値は40。)
条件: scenecut:0 にすると検出を行わなくなり、keyintの値(間隔)でIフレームが入る
内容: シーンチェンジを検出するしきい値で、Iフレームの挿入しやすさである。
     値を大きくすると(シーンチェンジの検出が増えると)Iフレームの検出が多くなるため容量が増えてしまう
     シーク間隔の調整や、場面切り替えの激しいアニメ映像以外では初期値推奨。アニメ映像でも60程度。
     元々動きの少ない映像でも直前のIフレームから離れるほど検出比が上がっていく仕組みになっているため、
     上げても無駄に容量が増えるだけの結果になってしまう。高画質(FPSゲーム前提)なら「60」推奨。



・subme
表記: &ex:subme:○ (0~11に変更可能。初期値は7。)
条件: subme:10以上を指定するには aq-mode1以上 と trellis2 が必要
     subme:7 とsubme:9を使う場合は bframes:1以上 が必要
内容: サブピクセルの動き予測方式で、画質向上にかなり貢献するがCPU処理に強く依存する
     CPUがあまり強くない場合、ここの値を3~6にすると良いハイスペックでも11は非推奨
     7~9辺りをスペックと相談で決めれば良いが、10~11は高負荷の割りに画質の上昇は微妙。
     高画質なら「8~9」推奨。


・threads
表記: &ex:threads:○ (?に変更可能。初期値は0。)
条件: 特に無し。
内容: x264のスレッド数の指定。0で各環境(CPU)のスレッド数を自動検索し論理CPU数の1.5倍にしてくれる
     エンコード(配信)時に同時作業で何かしたい場合ここの値を下げるより、優先度を下げた方がまだ良い。
     その為ここは下手にいじらないのを推奨。自動検索・自動設定の0が最善である。
     高画質なら「0」推奨。



・trellis
表記: &ex:trellis:○ (0~2に変更可能。初期値は1。)
条件: trellis:1以上で cabac:1 が必要
内容: レート歪み最適化。dct(離散コサイン変換)により失われた細部の情報を回復させ画質若干上げる
     処理(負荷低減)優先なら01で最終マクロブロックのみ適用2で常時適用(高負荷高画質)
     利点は失われた情報を回復しただけなのでビットの節約になる事(画質も向上)。欠点は処理が重い
     高画質なら「2」推奨。



・weightb
表記: &ex:weightb:○ (0~1に変更可能。初期値は1。)
条件: 特に無し。
内容: 重み補完予測(Bフレーム)。参照する前後のフレームからの距離に応じた補正をかける。
     フェードアウト等の「急に暗くなるような映像変化」がある時
     前後のフレームの内、フェードアウトした側の参照を控えて高効率化し、ビットの節約を図る
     b-adapt 2の指定があれば正確な重み付け予測ができる。b-adapt 1だと微妙らしい。
     高画質なら「1」推奨。


・weightp
表記: &ex:weightp:○ (0~2に変更可能。初期値は2。)
条件: 特に無し。
内容: 重み補完予測(Pフレーム)。参照する前方のフレームからの距離に応じた補正をかける。
     フェードアウト等の「急に暗くなるような映像変化」がある時
     前方のフレームの内、遠い距離のフレームの参照を控えて高効率化し、ビットの節約を図る
     高画質なら「2」推奨。








―――以上で主なプリセット編集知識は終了です。

ほとんど推奨設定値は主観であり、エンコード知識もあまり無い状態での記載だったので
中には間違ってるのも多いかもしれないです。


プリセット依頼でコンタクトを送ってくれる方が居ますが、僕の持っているプリセット自体も古く、
XSplit高画質設定の記事やNLE高画質設定の記事も古いものなのでいずれまた更新しようと思います。

この記事がお役に立てれば光栄です(-`ω´-)



普段はFPSゲーム等の生放送もしてますので気が向いたら是非覗いて見て下さい!





それではまた次回。 (・ω・)ノシ













-検索ワード
XSplit/SCFH DSF/ニコニコ生放送/USTREAM/CAVETube/Live/高画質/低画質/低スペ/高スペ/プリセット/高負荷/低負荷/遅延/ラグ/タイムラグ/配布/軽量化/x264/高画質配信/スペック/Windows7/Windos8/Aero/画面キャプチャー/MaxBitrate/VBV バッファ/VBV Buffer/ビットレート/Quality/品質/Extra Encoder Parameters/エンコード/高画質設定/XSplit導入/SCFH導入/XSplitの設定/SCFHの設定/生放送の仕方/生放送のやり方/生放送の設定/外部配信/配信ツール/x264/プリセット編集/高画質プリセット/&ex/&ex:/presets/ultrafast/superfast/veryfast/faster/fast/medium/slow/slower/veryslow/placebo/8x8dct/aq-mode/aq-metric/aq-strength/b-adapt/frames/cabac/colormatrixsmpte170m/dct-decimate/deblock/direct/fast-pskip/ipratio/keyint/level/mbtreeme/min-keyint/mixed-refs/partitions/pbratio/profile/psy/psy-rd/qcomp/qpmax/qpmin/qpstep/ratetol/rc-lookahead/ref/scenecut/subme/thread/trellis/weightb/weightp
スポンサーサイト

この記事へのコメント

- 夢幻 - 2013年12月11日 23:55:40

ブログ拝見させていただきました。
大変わかりやすく自分もおおいに助かりました。
もしよろしければ相互リンクしませんか?

http://mugen2013.blog.fc2.com/

Re: タイトルなし - ゼロっち@じきるん♪ - 2013年12月12日 03:19:21

> もしよろしければ相互リンクしませんか?

いいですよ~!そちらのは追加しておきますね

- 夢幻 - 2013年12月14日 00:21:54

ありがとうございます!^^

- 冒険者 - 2015年01月29日 01:24:11

ブログ拝見させて頂きました。
凄くわかりやすく大変助かりました!今までプリセット等難しくて手がだせなくて放送の画質が最悪でしたが、このブログに書いてある事を試させて頂いた所、画質がグンっとあがりました!

またPCを軽くする方法も助かりました。今後も楽しみにしています

- ちゃるP - 2015年04月20日 18:46:29

すごくわかりやすくて、参考になりました
ありがとうございます

- 名無しっち - 2015年06月15日 15:48:54

mbtree=ONの場合、pb-ratioは無効になるはずだが
pb-ratioが自動調整になるというのはどこのソースですか?

- 名無しっち - 2015年08月20日 10:51:10

説明の「高画質」の定義ってなんですか?
画質<処理速度なのですか?
矛盾した説明がいくつもあるのですが・・・

Re: タイトルなし - ゼロっち@じきるん♪ - 2015年09月27日 05:26:22

> mbtree=ONの場合、pb-ratioは無効になるはずだが
> pb-ratioが自動調整になるというのはどこのソースですか?

http://ch.nicovideo.jp/inabaotoko/blomaga/ar372914
こちらの記事を参考にさせて頂きました。
なおこの記事の初めにハッキリと、濃い赤で、目立つように注意書きで「博識ではなく、間違っているかもしれない。各種調べつつ大雑把に把握している」という点を書かせていただきました。ご了承下さい。
修正点があれば修正・加筆しますが、mbtree:1の場合はpb-ratio無効化ということでよろしいでしょうか。

Re: Re: タイトルなし - ゼロっち@じきるん♪ - 2015年09月27日 05:35:22

> > mbtree=ONの場合、pb-ratioは無効になるはずだが
> > pb-ratioが自動調整になるというのはどこのソースですか?

加えて一点、mbtree:1の場合pb-ratioは無効とのことですが、そのソースを出来れば教えていただきたいです。
私の調べた範囲([mbtree]や[mbtree pbratio]等での検索)では多くのプリセット構成者たちがmbtreeとpb-ratioの併用をしていたため、私自身「使用出来るもの」と認識していました。併用は意味がなく、無効化されるのでしょうか。

Re: タイトルなし - ゼロっち@じきるん♪ - 2015年09月27日 05:41:21

> 説明の「高画質」の定義ってなんですか?
> 画質<処理速度なのですか?
> 矛盾した説明がいくつもあるのですが・・・

「高画質」の定義は人それぞれなので各々がどこを重点的に置くか判断出来るよう内容を記載したのですが、
「説明」とはその「内容」のことでしょうか。「矛盾した説明がいくつもあるのですが・・・」という点がどこなのかご指摘していただけると幸いです。

また、「画質>処理速度なのですか?」の意味がよく分かりません。
処理速度を上げることが画質の向上につながるのでしょうか。
私自身の判断では、(大半はですが)画質をあげることは必然的に処理が増え、重くなる=処理速度が落ちると判断しています。
画質劣化に繋がるほどの処理速度低下はもちろん不適切かとは思いますが、そこは各々のスペックによって変わるのではないでしょうか。画質をあげつつ、処理速度を高く保ちつつ、スペックに見合った設定が正しいと思っております。

なおこの記事の初めにハッキリと、濃い赤で、目立つように注意書きで「博識ではなく、間違っているかもしれない。各種調べつつ大雑把に把握している」という点を書かせていただきました。ご了承下さい。

- しあ - 2015年12月12日 06:00:57

初めまして。プリセットについて調べていたらこのサイトにたどり着きました。
各コードがわかりやすくまとめられていて大変重宝しております。

疑問に思ったことがあるので教えて頂けたらありがたいです。
presetの項目に「各プリセットコード毎にx264コードの上限値が設定される」と書いてありますが、各コードの値を自分で指定した場合はこちらが優先され、デフォルトプリセットの上限値を超えて設定することができるという認識で良いでしょうか。
もしそうだとしたら、仮に全てのコードの値を指定した場合はデフォルトプリセットはどれを選択しても同じということになるのでしょうか。

Re: タイトルなし - ゼロっち@じきるん♪ - 2015年12月14日 03:36:17

> 初めまして。プリセットについて調べていたらこのサイトにたどり着きました。
> 各コードがわかりやすくまとめられていて大変重宝しております。
>
> 疑問に思ったことがあるので教えて頂けたらありがたいです。
> presetの項目に「各プリセットコード毎にx264コードの上限値が設定される」と書いてありますが、各コードの値を自分で指定した場合はこちらが優先され、デフォルトプリセットの上限値を超えて設定することができるという認識で良いでしょうか。
> もしそうだとしたら、仮に全てのコードの値を指定した場合はデフォルトプリセットはどれを選択しても同じということになるのでしょうか。


申し訳ありません、「各プリセットコード毎にx264コードの上限値が設定される」のではなく、
「各プリセットコード毎に基礎のx264プリセットにコードが追加・設定される」という内容でした。
修正しておきます。大変失礼致しました。

あくまでも「基礎のx264プリセット値に『追加』される」だけであり、
その後各コードで指定した場合は指定したコードが優先されます。
よって「恐らく」ですが、デフォルトプリセットの指定を変更しても各プリセット側で指定している場合は
指定したプリセット側が優先されるものと思います。

Get Access Count
検索フォーム
カテゴリ
最新記事一覧
最新コメント
【反射神経速度テスト】

反射神経テスト

スタートボタンを押し、色が変わったらストップボタンを押します。




Powered By ジャンプアタック

プロフィール

ゼロっち@じきるん♪

Author:ゼロっち@じきるん♪
【PC Spec】

OS:Windows 7 Home Premium (64Bit)
CPU:Intrl Core i7 3930K
HDD:1TB
MEMORY:16G(8G×2)
Mother board:Intel X79 Express チップセット
GPU:NVIDIA GeForce GTX 660
製品:NEXTGEAR-i830SA9
Power unit:700W 80PULS Gold
Monitor:BenQ「XL2420T」,1920×1080,120Hz


ニコ生放送してます!
【ニコニコミュニティ】
ゼロっちの気まま放送Live

月別アーカイブ
カレンダー
09 | 2017/10 | 11
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31 - - - -
リンク
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。