English version of changelog>> ボックスガチャ470箱空け切ったので更新。
NVEnc 4.51 ・NVENC SDKを9.1に更新。 ドライバの更新が必要になるかもしれません。(436.15以降)
・Multiple refsの指定機能を追加。 ・可能なら進捗表示に沿うフレーム数も表示するように。 NVEnc 4.52 ・Multiple refsの指定方法を変更。 (--multiref-l0/--multiref-l1)
・--multiref-**をhelpに追加。
SHA256 ハッシュ (対象 NVEnc_4.52_7zip.7z):
fc9c51ec574b010c1cde2de02ebfb574c0aea8cd7ccb48f351ae4d86ee41aab4
SHA256 ハッシュ (対象 NVEnc_4.52.zip):
87b92446a689f0697e7b9cf113eae49068a7a54eff0bcd6d6bd30aec9d5da3a0
※ここでダウンロードできるものでは、--dhdr10-infoが使用できないのでご注意ください。(各種セキュリティソフトにしつこくウイルス判定されるので、hdr10plus_genを同梱するのはあきらめました。)別途
こちら からダウンロードしてください。
ダウンロード>> ダウンロード (ミラー) >> OneDriveの調子がいまいちの時はミラー(GDrive)からどうぞ。同じものです。 NVEncCのオプションについてはこちら。
NVEncCオプション一覧> ソースはこちら>>
スポンサーサイト
rigayaさんいつも便利に使わせて頂いております。 --interlace tff --vpp-afs こちらHEVCでないと使えない認識ですが、あっていますでしょうか。GTX1660なのですが、x264時は動かないようなのですが、RTXだったら動いてしまうなどあったりしますでしょうか?もしおわかりになりましたらご教示いただけますと幸いです!
--interlace tff --vpp-afsですが、特にHEVCである必要はなく、H.264でも問題なく使用できます。実際に試してみましたが、こちらの環境では問題なく動作しています。GTX1660はインタレ保持エンコードができないので、そのあたりのチェックがあやしいですが、コードを確認すると、H.264でインタレ保持を選択した場合でも、afsが有効になっていれば、インタレ保持のチェックは行わないようになっています。
https://github.com/rigaya/NVEnc/blob/master/NVEncCore/NVEncCore.cpp#L3187 具体的にどのようなオプションで、どういったメッセージが出ますでしょうか。
なお、RTXとGTX1660で動作が異なるということはないはずです。
rigayaさんご回答ありがとうございました。rigayaさんの環境で問題がないとの事で、当方の環境の可能性がでてきましたので環境をチェックいたします。 --dar 16:9 -u quality --vbrhq 3000 --max-bitrate 20000 --aq --aq-temporal --bref-mode each --interlace tff --vpp-afs preset=24fps --audio-codec aac --audio-bitrate 320K このようなオプションだったのですが、動画によって24fps化がうまくいかない事があったのですが、恐らく自分の環境のようなので確認しなおしてみます。お騒がせしました。
いつも便利に使わせていただいております。バージョン4.36から4.52に上げ、NVEncC64を使おうとしたところ以下のようなエラーが出ます。 Error on nvEncOpenEncodeSessionEx: 15 (NVENC indicates that an invalid struct version was used by the client) Failed to create instance of NvEncOpenEncodeSessionEx(device_type=NV_ENC_DEVICE_TYPE_CUDA), please consider updating your GPU driver. GPU #0 (GeForce GTX 1070) does not support H.264/AVC encoding. Unknown erro occurred during checking GPU. 4.36に戻すと全く同じ入力ファイル、パラメータで動くのですが、何が悪いか見当がつきますか?環境としてはWindows10 1809 x64、GTX1070(ドライバ431.86、デバイスマネージャー上では日付2019/08/27、バージョン26.21.14.3186)です。
4.52では記事中になりますようにドライバ436.15以降が必要です。試したことはありませんが、431.86では動作しないものと思われますので、ドライバ更新をご検討ください。
rigayaさん、お返事ありがとうございます。ご指摘通りドライバでした。436.48で動きました。 今まで何となくSTUDIOドライバを使っていましたが、GameReadyドライバとバージョンが違うということに気が付きました。私と同じような間抜けはいないかもしれませんが一応書いておきます。
>空け切ったので 開けたのでなく、すべて「から」だったという 自虐だったのでしょうか? 今ごろ気づいてごめんなさい。
いえ、特に深い意味はないのです…。
Rigaya様 消費税UP前の駆け込みでGTX 1660(無印)を購入しNVEncを使い始めたのですが、以下の条件で例外0x00000005が発生しエンコードできませんでした。 1.aviutlの自動フィールドシフトが有効 2.縦のpixel数が4の倍数ではない(例えば1078pixelにトリミング) (環境) OS Windows10 Home(x64) build 1903 aviutl 1.00 NVEnc 4.52 afs.auf 7.5a+19 geforce driver 440.97 自動フィールドシフトを無効にするとエンコードを開始します。 また、縦のpixel数を4の倍数にすれば、自動フィールドシフトを有効にしてもエンコードを開始します。 ちなみに横のpixel数は関係ないようです。2の倍数、4の倍数で実行してみましたが結果は同じでした。 エンコードが始まったとたんに例外が発生し、継続実行させると「出力に失敗しました」となってlogも残らないので状況のみのご報告ですみませんが、上記の動作は正規のものなのでしょうか。 NVEncCのオプション説明のドキュメントで、vpp-afsではパラメータ指定で"4の倍数"の制限事項があったために、このケースでも何か制限事項があるのかと思い、ご報告がてらに質問をさせていただきます。 私が報告するときはいつも変なpixel構成絡みなので恐縮ですが、調べていただけないでしょうか。 それと別件で、これは要望なのですが、x264GuiExでエンコードした動画と同様に、NVEnc,QSVEncでエンコードしたものをMediaInfoで見たときに、以下の項目が表示されるように出来ないでしょうか。 ・使用したライブラリ(エンコーダの名称およびバージョン) ・エンコードライブラリの設定(エンコーダへ受け渡すパラメータ) 単に ・連続物が歯抜けになった場合、将来再放送や別の局での放送があった時に欠落話をエンコードする際の参考にしたい ・aviutlでGUIを使ってパラメータをざっくり決めて仮でエンコードしてみて、xxEncC.exe単体でエンコードする時のベースにしたい という程度の思惑で、切迫した理由があるわけはありません。 ですので、何かのついでで気が向いた時にちょろっとソースをコピペすればいい、程度の軽い負荷で済むのでしたら、対応していだだけると幸いです。 …いや、そういうケースなら1つだけでもlogファイル残しときゃいいのでは?と言われれば、全くもってその通りで何も反論できないのですが…… 以上、調査及びご検討のほど、よろしくお願いします。
> 縦pixelが4の倍数「でない」時に例外発生
正直に申し上げて、私自身はいわゆる「よく使う解像度」でしか動かしていないので、いろいろ不具合を踏ませてしまってすみません。
今回の問題は、自動フィールドシフト側の問題のようで、7.5a+19では問題が発生するようです。ただ7.5a+20では発生しないようです。作ったのはだいぶ前なのであまり詳しくは覚えてないのですが…。
今回、最新版となる7.5a+21をあげてみたので、そちらを試していただけないでしょうか。
https://rigaya34589.blog.fc2.com/blog-entry-1170.html > MediaInfoで見たときの表示
「使用したライブラリ」のほうはやり方が思いつくのですが、エンコードライブラリの設定はどうやればいいのかよくわからないので、そちらは難しそうです。まずは「使用したライブラリ」のほうができないか調べてみたいと思います。
rigaya様 私の場合、古い映画とかを録画した時に額縁様の部分を切り取ったりしているので変なpixel構成になっている、というのがあるので、運用で逃げられるといえば逃げられるというのもあります。今回のことも2lineのトリミング調整で回避できてしまうので、あまりお気になさらないで下さい。 で、afs.aufを7.5a+21にして試してみましたが、やはり同じように例外が発生しました。 そこで、NVEncの設定を初期プリセットされているものにして、いろいろと変更を加えて試したところ、以下の条件で発生することがわかりました。 1.自動フィールドシフトを有効 2.縦pixelが4の倍数でない 3.HEVCエンコードで、出力ビット深度とプロファイルが以下の組み合わせの場合 出力ビット深度 プロファイル 10bit main or main10 HEVCエンコードの初期プリセットに対し「afsを使用する」にチェックを入れ、出力ビット深度とプロファイルを上記のように設定すると、どの初期プリセットでも発生します。 ちなみに、プロファイルがmain444の時は発生しませんでした。 正直言って、出力ビット深度とプロファイルはどの組み合わせが妥当なのか全然理解していないのですが、少なくとも縦pixelが4の倍数でない場合は、10bitでmain10の組み合わせでは例外が発生します。 以上、ご参考までに。 追記 要望の方ですが、言われてみてxxEncC.exe側の対応が必要なことに今更ながら気づきました。なんとも間抜けな話です。 logに書き出すのとは全く別の次元の話で、x264.exeがどうやって情報を格納しているのか、MediaInfoがどこから情報ひっぱってきてるのか解析しなきゃわからん、とかなったらとんでもない手間になりますよね。コピペでポンッなどと全く見当違いのことを書いて大変失礼しました。 ということで、頭のほんの片隅にでもおいてやっていただければそれで結構です。
縦pixelが4の倍数「でない」時の例外ですが、いただいた情報のおかげもあり、NVEnc 4.53で修正できた気がします。どうやら自動フィールドシフトよりはNVEncのプラグイン側の問題だったようです。
https://rigaya34589.blog.fc2.com/blog-entry-1172.html お手数をおかけしますがお時間あるときに再度お試しいただけないでしょうか?