diff options
author | Andreas Rheinhardt <andreas.rheinhardt@outlook.com> | 2022-03-30 23:28:24 +0200 |
---|---|---|
committer | Andreas Rheinhardt <andreas.rheinhardt@outlook.com> | 2022-04-05 20:02:37 +0200 |
commit | 4243da4ff42e306b3622b181e12f5cd127d21414 (patch) | |
tree | a74a6b85a179795431a0ee2b259be8c35f0ed799 /libavcodec/pnmenc.c | |
parent | ce7dbd0481f990e249c2a05f179228489d3062cf (diff) |
avcodec/codec_internal: Use union for FFCodec decode/encode callbacks
This is possible, because every given FFCodec has to implement
exactly one of these. Doing so decreases sizeof(FFCodec) and
therefore decreases the size of the binary.
Notice that in case of position-independent code the decrease
is in .data.rel.ro, so that this translates to decreased
memory consumption.
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
Diffstat (limited to 'libavcodec/pnmenc.c')
-rw-r--r-- | libavcodec/pnmenc.c | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/libavcodec/pnmenc.c b/libavcodec/pnmenc.c index 020dbd218c..feb26b8bfa 100644 --- a/libavcodec/pnmenc.c +++ b/libavcodec/pnmenc.c @@ -157,7 +157,7 @@ const FFCodec ff_pgm_encoder = { .p.type = AVMEDIA_TYPE_VIDEO, .p.id = AV_CODEC_ID_PGM, .p.capabilities = AV_CODEC_CAP_DR1, - .encode2 = pnm_encode_frame, + FF_CODEC_ENCODE_CB(pnm_encode_frame), .p.pix_fmts = (const enum AVPixelFormat[]){ AV_PIX_FMT_GRAY8, AV_PIX_FMT_GRAY16BE, AV_PIX_FMT_NONE }, @@ -172,7 +172,7 @@ const FFCodec ff_pgmyuv_encoder = { .p.type = AVMEDIA_TYPE_VIDEO, .p.id = AV_CODEC_ID_PGMYUV, .p.capabilities = AV_CODEC_CAP_DR1, - .encode2 = pnm_encode_frame, + FF_CODEC_ENCODE_CB(pnm_encode_frame), .p.pix_fmts = (const enum AVPixelFormat[]){ AV_PIX_FMT_YUV420P, AV_PIX_FMT_YUV420P16BE, AV_PIX_FMT_NONE }, @@ -187,7 +187,7 @@ const FFCodec ff_ppm_encoder = { .p.type = AVMEDIA_TYPE_VIDEO, .p.id = AV_CODEC_ID_PPM, .p.capabilities = AV_CODEC_CAP_DR1, - .encode2 = pnm_encode_frame, + FF_CODEC_ENCODE_CB(pnm_encode_frame), .p.pix_fmts = (const enum AVPixelFormat[]){ AV_PIX_FMT_RGB24, AV_PIX_FMT_RGB48BE, AV_PIX_FMT_NONE }, @@ -202,7 +202,7 @@ const FFCodec ff_pbm_encoder = { .p.type = AVMEDIA_TYPE_VIDEO, .p.id = AV_CODEC_ID_PBM, .p.capabilities = AV_CODEC_CAP_DR1, - .encode2 = pnm_encode_frame, + FF_CODEC_ENCODE_CB(pnm_encode_frame), .p.pix_fmts = (const enum AVPixelFormat[]){ AV_PIX_FMT_MONOWHITE, AV_PIX_FMT_NONE }, .caps_internal = FF_CODEC_CAP_INIT_THREADSAFE, @@ -216,7 +216,7 @@ const FFCodec ff_pfm_encoder = { .p.type = AVMEDIA_TYPE_VIDEO, .p.id = AV_CODEC_ID_PFM, .p.capabilities = AV_CODEC_CAP_DR1, - .encode2 = pnm_encode_frame, + FF_CODEC_ENCODE_CB(pnm_encode_frame), .p.pix_fmts = (const enum AVPixelFormat[]){ AV_PIX_FMT_GBRPF32, AV_PIX_FMT_NONE }, .caps_internal = FF_CODEC_CAP_INIT_THREADSAFE, |