31.12.2022, 09:50
So, neue (gebrauchte) RTX A2000 70W Stromsparwunder Karte ist da
Hab mich gleich nochmal über NVEncC gebückt, und drei Dinge sind mir aufgefallen, "clear all cached tool infos" habe ich zuvor durchgeführt:
1.) --ref ist bei mir bei h265 auf 7 begrenzt (im Gegensatz zu h264, da sind max 16 möglich), ich kann aber keine Einschränkung bei --check-features feststellen. "Max LTR Frames" (laut --check-features auf 7 begrenz) ist jedenfalls ein anderer Wert. Long Term Reference Frames sind wohl nur für Streaming relevant und stellen Referenzen dar, wenn im Stream Frames ausfallen.
Ausgabe --check-features:
2.) In der Nvidia Video codec SDK documentation wird im letzten Punkt erwähnt, dass beim use case Recording/Archiving empfohlen wird --vbv-bufsize auf einen sehr hohen Wert von 4 Sekunden einzustellen (ich verstehe das so, dass das dann bei einem ~10Mbit/s encode ein Wert von 40000 wäre). Hybrid verwendet aber immer "auto" bzw. definiert den Wert nicht, wodurch laut report file auto gesetzt wird. Wäre also gut, wenn man diesen Wert individuell einstellen könnte. Ein Tooltip Hinweis wäre ebenfalls eine gute Sache, damit der user begreift, dass das anscheinend ein relevanter Wert ist, und wie man diesen einstellen sollte.
https://docs.nvidia.com/video-technologi...c-settings
3.) Kein Fehler, aber wäre vielleicht eine gute Ergänzung: --nonrefp ist anscheinend ebenfalls nur ein Streaming "low latency" feature, was möglicherweise bei normaler Verwendung nur sinnlos die Bitrate erhöht bzw. die Qualität mindert, da bestimmte P-Frames nicht als Referenzen dienen. Da wäre ein entsprechender Tooltip Hinweis ebenfalls eine gute Sache. Denke es gibt bis jetzt nur wenige User die großartig Ahnung von NVEncC haben und dankbar für entsprechende Hinweise sind. Ein Hauptverwendungszweck davon ist nunmal auch Streaming, aber für normale Zwecke scheinen bestimmte Features besser nicht verwendet zu werden. Oft verfährt man ja nach dem Motto "alles an, kost ja nix", wenn man sich nicht groß auskennt
cu, mogobime
Hab mich gleich nochmal über NVEncC gebückt, und drei Dinge sind mir aufgefallen, "clear all cached tool infos" habe ich zuvor durchgeführt:
1.) --ref ist bei mir bei h265 auf 7 begrenzt (im Gegensatz zu h264, da sind max 16 möglich), ich kann aber keine Einschränkung bei --check-features feststellen. "Max LTR Frames" (laut --check-features auf 7 begrenz) ist jedenfalls ein anderer Wert. Long Term Reference Frames sind wohl nur für Streaming relevant und stellen Referenzen dar, wenn im Stream Frames ausfallen.
Ausgabe --check-features:
#0: NVIDIA RTX A2000 (3328 cores, 1200 MHz)[PCIe2x16][527.27]
NVEnc features
Codec: H.264/AVC
Encoder Engines 1
Max Bframes 4
B Ref Mode 3 (each + only middle)
RC Modes 63 (CQP, CBR, CBRHQ, VBR, VBRHQ)
Field Encoding 0 (no)
MonoChrome no
FMO no
Quater-Pel MV yes
B Direct Mode yes
CABAC yes
Adaptive Transform yes
Max Temporal Layers 4
Hierarchial P Frames yes
Hierarchial B Frames yes
Max Level 62 (6.2)
Min Level 10 (1)
4:4:4 yes
Min Width 145
Max Width 4096
Min Height 49
Max Height 4096
Multiple Refs yes
Max LTR Frames 8
Dynamic Resolution Change yes
Dynamic Bitrate Change yes
Forced constant QP yes
Dynamic RC Mode Change no
Subframe Readback yes
Constrained Encoding yes
Intra Refresh yes
Custom VBV Bufsize yes
Dynamic Slice Mode yes
Ref Pic Invalidiation yes
PreProcess no
Async Encoding yes
Max MBs 65536
Lossless yes
SAO no
Me Only Mode 1 (I,P frames)
Lookahead yes
AQ (temporal) yes
Weighted Prediction yes
10bit depth no
Codec: H.265/HEVC
Encoder Engines 1
Max Bframes 5
B Ref Mode 3 (each + only middle)
RC Modes 63 (CQP, CBR, CBRHQ, VBR, VBRHQ)
Field Encoding 0 (no)
MonoChrome no
Quater-Pel MV yes
B Direct Mode no
Max Temporal Layers 0
Hierarchial P Frames no
Hierarchial B Frames no
Max Level 186 (6.2)
Min Level 30 (1)
4:4:4 yes
Min Width 129
Max Width 8192
Min Height 33
Max Height 8192
Multiple Refs yes
Max LTR Frames 7
Dynamic Resolution Change yes
Dynamic Bitrate Change yes
Forced constant QP yes
Dynamic RC Mode Change no
Subframe Readback yes
Constrained Encoding yes
Intra Refresh yes
Custom VBV Bufsize yes
Dynamic Slice Mode yes
Ref Pic Invalidiation yes
PreProcess no
Async Encoding yes
Max MBs 262144
Lossless yes
SAO yes
Me Only Mode 1 (I,P frames)
Lookahead yes
AQ (temporal) yes
Weighted Prediction yes
10bit depth yes
NVDec features
H.264/AVC: nv12, yv12
H.265/HEVC: nv12, yv12, yv12(10bit), yv12(12bit), yuv444, yuv444(10bit), yuv444(12bit)
MPEG1: nv12, yv12
MPEG2: nv12, yv12
MPEG4: nv12, yv12
VP8: nv12, yv12
VP9: nv12, yv12, yv12(10bit), yv12(12bit)
VC-1: nv12, yv12
AV1: nv12, yv12, yv12(10bit)
2.) In der Nvidia Video codec SDK documentation wird im letzten Punkt erwähnt, dass beim use case Recording/Archiving empfohlen wird --vbv-bufsize auf einen sehr hohen Wert von 4 Sekunden einzustellen (ich verstehe das so, dass das dann bei einem ~10Mbit/s encode ein Wert von 40000 wäre). Hybrid verwendet aber immer "auto" bzw. definiert den Wert nicht, wodurch laut report file auto gesetzt wird. Wäre also gut, wenn man diesen Wert individuell einstellen könnte. Ein Tooltip Hinweis wäre ebenfalls eine gute Sache, damit der user begreift, dass das anscheinend ein relevanter Wert ist, und wie man diesen einstellen sollte.
https://docs.nvidia.com/video-technologi...c-settings
3.) Kein Fehler, aber wäre vielleicht eine gute Ergänzung: --nonrefp ist anscheinend ebenfalls nur ein Streaming "low latency" feature, was möglicherweise bei normaler Verwendung nur sinnlos die Bitrate erhöht bzw. die Qualität mindert, da bestimmte P-Frames nicht als Referenzen dienen. Da wäre ein entsprechender Tooltip Hinweis ebenfalls eine gute Sache. Denke es gibt bis jetzt nur wenige User die großartig Ahnung von NVEncC haben und dankbar für entsprechende Hinweise sind. Ein Hauptverwendungszweck davon ist nunmal auch Streaming, aber für normale Zwecke scheinen bestimmte Features besser nicht verwendet zu werden. Oft verfährt man ja nach dem Motto "alles an, kost ja nix", wenn man sich nicht groß auskennt
cu, mogobime