mntone.hateblo.jpの2番煎じだけどオプションを弄りたかったので。
目次
StreamFXをインストールする
github.com ↑は安定版のリンク。
FFmpegを差し替える
-preset=p7を使いたいので。自前ビルドも一案だが環境構築が面倒なので避けたい。 github.com 最初理解できなかったけど「avcodec-58.dllが存在するフォルダ*1」へ「解凍先\ffmpeg-4.4-full_build-shared\bin*2」を上書きするっぽい。ffmpeg-5.0-full_build-sharedはavcodec-59.dllなので駄目っぽい。
設定する
Privacy Policy - XaymarがStreamFX公式の設定例だけど、I/P/B-フレームのQPが同じとかBフレーム0がもにょったので他の例を探した。でnyanshiba.comを見つけたけど、冷静に考えたら「-preset=p7を指定すれば全部良い感じのオプションになるんじゃね?*3」と思ってたら「preset、tune、rc、multipassを選べとNVIDIA公式にあった」と5chに載ってたので*4倣ってみる。
-rc=constqp -qp=34 -preset=p7 -tune=hq -multipass=fullres
GUIでRate Control Options -> ModeをConstant Bitrateにしてもビットレート変動幅大きかったのでCustom Settingsが優先されてるはず…
おまけの↓recordEncoder.json
{"FFmpeg.CustomSettings":"-rc=constqp -qp=34 -preset=p7 -tune=hq -multipass=fullres","H265.Profile":-1,"H265.Tier":-1,"KeyFrames.Interval.Seconds":2.0,"Preset":0,"RateControl.Limits.Bitrate.Target":0,"RateControl.Limits.BufferSize":0,"RateControl.Mode":0}
と↓streamEncoder.json
{"bf":4,"bitrate":6000,"cqp":30,"keyint_sec":2,"lookahead":true,"max_bitrate":8000,"preset":"mq","rate_control":"VBR"}
*1:既定はC:\Program Files\obs-studio\bin\64bit
*2:sharedが付いてるバイナリを選ぶ。full/GPLはessentials/LGPLを含むらしいのでfullにした。full/GPLは配布先に依る。
*3:x264は--preset placebo ⇔ --bframes 16 --b-adapt 2 --direct auto --no-fast-pskip --me tesa --merange 24 --partitions all --rc-lookahead 60 --ref 16 --subme 11 --trellis 2 --slow-firstpass(マルチパス時のみ)らしいので。
*4:for example, GOP structure, B frames, look-ahead encoding, and so on.とプリセット移行表