aboutsummaryrefslogtreecommitdiffstats
path: root/libavcodec/sonic.c
diff options
context:
space:
mode:
authorAndreas Rheinhardt <andreas.rheinhardt@outlook.com>2022-03-30 23:28:24 +0200
committerAndreas Rheinhardt <andreas.rheinhardt@outlook.com>2022-04-05 20:02:37 +0200
commit4243da4ff42e306b3622b181e12f5cd127d21414 (patch)
treea74a6b85a179795431a0ee2b259be8c35f0ed799 /libavcodec/sonic.c
parentce7dbd0481f990e249c2a05f179228489d3062cf (diff)
downloadffmpeg-4243da4ff42e306b3622b181e12f5cd127d21414.tar.gz
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/sonic.c')
-rw-r--r--libavcodec/sonic.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/libavcodec/sonic.c b/libavcodec/sonic.c
index f20365485d..dfb055d80e 100644
--- a/libavcodec/sonic.c
+++ b/libavcodec/sonic.c
@@ -1084,7 +1084,7 @@ const FFCodec ff_sonic_decoder = {
.priv_data_size = sizeof(SonicContext),
.init = sonic_decode_init,
.close = sonic_decode_close,
- .decode = sonic_decode_frame,
+ FF_CODEC_DECODE_CB(sonic_decode_frame),
.p.capabilities = AV_CODEC_CAP_DR1 | AV_CODEC_CAP_EXPERIMENTAL | AV_CODEC_CAP_CHANNEL_CONF,
.caps_internal = FF_CODEC_CAP_INIT_THREADSAFE | FF_CODEC_CAP_INIT_CLEANUP,
};
@@ -1098,7 +1098,7 @@ const FFCodec ff_sonic_encoder = {
.p.id = AV_CODEC_ID_SONIC,
.priv_data_size = sizeof(SonicContext),
.init = sonic_encode_init,
- .encode2 = sonic_encode_frame,
+ FF_CODEC_ENCODE_CB(sonic_encode_frame),
.p.sample_fmts = (const enum AVSampleFormat[]){ AV_SAMPLE_FMT_S16, AV_SAMPLE_FMT_NONE },
.p.capabilities = AV_CODEC_CAP_EXPERIMENTAL,
.caps_internal = FF_CODEC_CAP_INIT_THREADSAFE | FF_CODEC_CAP_INIT_CLEANUP,
@@ -1114,7 +1114,7 @@ const FFCodec ff_sonic_ls_encoder = {
.p.id = AV_CODEC_ID_SONIC_LS,
.priv_data_size = sizeof(SonicContext),
.init = sonic_encode_init,
- .encode2 = sonic_encode_frame,
+ FF_CODEC_ENCODE_CB(sonic_encode_frame),
.p.sample_fmts = (const enum AVSampleFormat[]){ AV_SAMPLE_FMT_S16, AV_SAMPLE_FMT_NONE },
.p.capabilities = AV_CODEC_CAP_EXPERIMENTAL,
.caps_internal = FF_CODEC_CAP_INIT_THREADSAFE | FF_CODEC_CAP_INIT_CLEANUP,