aboutsummaryrefslogtreecommitdiffstats
path: root/libavcodec/nvenc.h
diff options
context:
space:
mode:
authorTimo Rothenpieler <timo@rothenpieler.org>2022-11-05 21:17:37 +0100
committerTimo Rothenpieler <timo@rothenpieler.org>2022-11-05 21:17:37 +0100
commit5c288a44ad16087c3d3a7563490cb634790e751f (patch)
tree45fa050b35591de30e7144620fcb490d8e4aebae /libavcodec/nvenc.h
parent28680e2f41b93b75863720e42397441dfcc29f94 (diff)
downloadffmpeg-5c288a44ad16087c3d3a7563490cb634790e751f.tar.gz
avcodec/nvenc: add AV1 encoding support
The encoder seems to be trading blows with hevc_nvenc. In terms of quality at low bitrate cbr settings, it seems to outperform it even. It produces fewer artifacts and the ones it does produce are less jarring to my perception. At higher bitrates I had a hard time finding differences between the two encoders in terms of subjective visual quality. Using the 'slow' preset, av1_nvenc outperformed hevc_nvenc in terms of encoding speed by 75% to 100% while performing above tests. Needless to say, it always massively outperformed h264_nvenc in terms of quality for a given bitrate, while also being slightly faster.
Diffstat (limited to 'libavcodec/nvenc.h')
-rw-r--r--libavcodec/nvenc.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/libavcodec/nvenc.h b/libavcodec/nvenc.h
index 9eb129952e..05a7ac48b1 100644
--- a/libavcodec/nvenc.h
+++ b/libavcodec/nvenc.h
@@ -199,6 +199,8 @@ typedef struct NvencContext
int tier;
int rc;
int cbr;
+ int tile_rows;
+ int tile_cols;
int twopass;
int device;
int flags;
@@ -236,6 +238,8 @@ typedef struct NvencContext
int single_slice_intra_refresh;
int constrained_encoding;
int udu_sei;
+ int timing_info;
+ int highbitdepth;
} NvencContext;
int ff_nvenc_encode_init(AVCodecContext *avctx);