English version of changelog>>いろいろいただいた要望やコメントをもとに修正と機能追加を実施。
これで年内最後の更新?
・x86版をCUDA11ベースに更新し、VC2019に移行。これにより、x86版については、NVIDIA グラフィックドライバ 456.81 以降が必要。
CUDA9~10にかけて、なぜかx86ビルドがサポートされなかったため、x86版のためにCUDA8と、これに対応するVC2015を使う必要があり、これまではx64版をVC2019+CUDA10、x86版をVC2015+CUDA8で作成してきた。
これがCUDA11で再びx86ビルドが可能になったのと、いい加減VC2015の環境でコンパイルできるコードを維持するのが辛くなってきたので、x86版をVC2019+CUDA11、x64版はVC2019+CUDA10で作成するようにした。
x64版をCUDA10のままにするのは、特にCUDA11で使いたい機能がないのと、なるべく古いドライバでも動くようにするため。
正直、x86版はもういらないじゃないかという気もするけど、一応今後もしばらくはビルドだけしていく予定。
・timecodeの出力を追加。(--timecode)
Amatzukazeで、vpp-afsとvpp-mpdecimateを併用すると音ずれするという問題への対処。
Amatzukazeを実際に動かしてみてログをみて勉強してみたのだけど、どうもNVEncC64.exeからraw出力+timecode読み込みでvfrを実現しているみたいでmp4/mkvのコンテナは活用していないみたい。このとき、vpp-afsのtimecode出力だと、vpp-afsの後で処理されるvpp-mpdecimateの処理結果が反映されないtimecodeが出てしまい音ずれが生じてしまっていた。
そこで、これらをひっくるめた最終的なtimecode出力オプションを用意すればよさそうということで、今回このオプションを追加してみた。
・--check-featureでLevelの値を表示するように。要望のあった表示の改善。
・--vpp-colorspace hdr2sdr=bt2390の実装見直し。 前回実装した
hdr2sdr=bt2390の処理が誤っているのではないかという指摘があったので、再検証してみた。どうも処理時の規格化の有無について誤解していたようだったので、これを改善した。
・--vpp-colorspace hdr2sdrにdesaturation curveの実装。hdr2sdr=bt2390の修正を行う中で、mpvのdesaturation curveという機能があったほうがよさそうということで機能追加。desat_base, desat_strength, desat_expを追加。
・libvmaf v2.0.0+ に更新。最近更新された
vmaf 2.0.0への対応。従来(v1.3.15)と比べわりと高速化。どうも計算処理をこれまでの浮動小数点演算から固定小数点演算に変更し、AVX2/AVX512の整数SIMDを活用することで高速化しているらしい。それでもCPU処理なのでまだNVEncのエンコードには追いつかない模様で、かなりエンコードが遅くなるので、依然として評価用。
・YUV444でnppを使用したリサイズを行うとエラーで落ちてしまうのを修正。指摘のあった問題の修正。
ダウンロード>>ダウンロード (ミラー) >>NVEncCのオプションについてはこちら。
NVEncCオプション一覧>ソースはこちら>>
スポンサーサイト