diff options
author | Andreas Rheinhardt <andreas.rheinhardt@outlook.com> | 2024-05-13 00:25:20 +0200 |
---|---|---|
committer | Andreas Rheinhardt <andreas.rheinhardt@outlook.com> | 2024-06-20 18:58:38 +0200 |
commit | 3b67ab85eefd36af8fb369423f6f623b85977fe7 (patch) | |
tree | 988260112acb73bd223175abc7c274cc410c8f28 /libavcodec/mpegvideo.h | |
parent | eb3415912b187dcef9cfb3a076db579fdf82600d (diff) | |
download | ffmpeg-3b67ab85eefd36af8fb369423f6f623b85977fe7.tar.gz |
avcodec/mpegvideo_enc: Only keep what is used from MECmpContext
A MECmpContext is quite big (792B here) and given
how ff_update_duplicate_context() works, it is (unfortunately)
copied quite frequently when using slice threading.
Therefore keep only what is needed from MECmpContext
and remove MECmpContext from MpegEncContext.
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
Diffstat (limited to 'libavcodec/mpegvideo.h')
-rw-r--r-- | libavcodec/mpegvideo.h | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/libavcodec/mpegvideo.h b/libavcodec/mpegvideo.h index 79c5561793..844da6881f 100644 --- a/libavcodec/mpegvideo.h +++ b/libavcodec/mpegvideo.h @@ -220,7 +220,6 @@ typedef struct MpegEncContext { H264ChromaContext h264chroma; HpelDSPContext hdsp; IDCTDSPContext idsp; - MECmpContext mecc; MpegvideoEncDSPContext mpvencdsp; PixblockDSPContext pdsp; QpelDSPContext qdsp; @@ -508,6 +507,9 @@ typedef struct MpegEncContext { me_cmp_func ildct_cmp[2]; ///< 0 = intra, 1 = non-intra me_cmp_func n_sse_cmp[2]; ///< either SSE or NSSE cmp func + me_cmp_func sad_cmp[2]; + me_cmp_func sse_cmp[2]; + int (*sum_abs_dctelem)(const int16_t *block); /** * ratecontrol qmin qmax limiting method |