summaryrefslogtreecommitdiff
path: root/libavcodec
diff options
context:
space:
mode:
authorTimo Rothenpieler <timo@rothenpieler.org>2022-08-10 01:53:10 +0200
committerTimo Rothenpieler <timo@rothenpieler.org>2022-08-19 22:09:36 +0200
commit6dc79f1d04eb88ec97360c45be4cadc66b7e5780 (patch)
tree1d798db458f52f60adba3356d05308c06763c8c0 /libavcodec
parentf3fb528cd5bfecec6835a3951c75903a194ae1ad (diff)
avutil/half2float: move non-inline init code out of header
Diffstat (limited to 'libavcodec')
-rw-r--r--libavcodec/Makefile8
-rw-r--r--libavcodec/exr.c2
-rw-r--r--libavcodec/exrenc.c2
-rw-r--r--libavcodec/float2half.c19
-rw-r--r--libavcodec/half2float.c19
-rw-r--r--libavcodec/pnmdec.c2
-rw-r--r--libavcodec/pnmenc.c2
7 files changed, 46 insertions, 8 deletions
diff --git a/libavcodec/Makefile b/libavcodec/Makefile
index 029f1bad3d..cb80f73d99 100644
--- a/libavcodec/Makefile
+++ b/libavcodec/Makefile
@@ -337,8 +337,8 @@ OBJS-$(CONFIG_EIGHTSVX_FIB_DECODER) += 8svx.o
OBJS-$(CONFIG_ESCAPE124_DECODER) += escape124.o
OBJS-$(CONFIG_ESCAPE130_DECODER) += escape130.o
OBJS-$(CONFIG_EVRC_DECODER) += evrcdec.o acelp_vectors.o lsp.o
-OBJS-$(CONFIG_EXR_DECODER) += exr.o exrdsp.o
-OBJS-$(CONFIG_EXR_ENCODER) += exrenc.o
+OBJS-$(CONFIG_EXR_DECODER) += exr.o exrdsp.o half2float.o
+OBJS-$(CONFIG_EXR_ENCODER) += exrenc.o float2half.o
OBJS-$(CONFIG_FASTAUDIO_DECODER) += fastaudio.o
OBJS-$(CONFIG_FFV1_DECODER) += ffv1dec.o ffv1.o
OBJS-$(CONFIG_FFV1_ENCODER) += ffv1enc.o ffv1.o
@@ -570,8 +570,8 @@ OBJS-$(CONFIG_PGMYUV_DECODER) += pnmdec.o pnm.o
OBJS-$(CONFIG_PGMYUV_ENCODER) += pnmenc.o
OBJS-$(CONFIG_PGSSUB_DECODER) += pgssubdec.o
OBJS-$(CONFIG_PGX_DECODER) += pgxdec.o
-OBJS-$(CONFIG_PHM_DECODER) += pnmdec.o pnm.o
-OBJS-$(CONFIG_PHM_ENCODER) += pnmenc.o
+OBJS-$(CONFIG_PHM_DECODER) += pnmdec.o pnm.o half2float.o
+OBJS-$(CONFIG_PHM_ENCODER) += pnmenc.o float2half.o
OBJS-$(CONFIG_PHOTOCD_DECODER) += photocd.o
OBJS-$(CONFIG_PICTOR_DECODER) += pictordec.o cga_data.o
OBJS-$(CONFIG_PIXLET_DECODER) += pixlet.o
diff --git a/libavcodec/exr.c b/libavcodec/exr.c
index b0e2e85024..859dd6fedd 100644
--- a/libavcodec/exr.c
+++ b/libavcodec/exr.c
@@ -2208,7 +2208,7 @@ static av_cold int decode_init(AVCodecContext *avctx)
float one_gamma = 1.0f / s->gamma;
avpriv_trc_function trc_func = NULL;
- init_half2float_tables(&s->h2f_tables);
+ ff_init_half2float_tables(&s->h2f_tables);
s->avctx = avctx;
diff --git a/libavcodec/exrenc.c b/libavcodec/exrenc.c
index 356bd11543..3dad107d62 100644
--- a/libavcodec/exrenc.c
+++ b/libavcodec/exrenc.c
@@ -94,7 +94,7 @@ static av_cold int encode_init(AVCodecContext *avctx)
{
EXRContext *s = avctx->priv_data;
- init_float2half_tables(&s->f2h_tables);
+ ff_init_float2half_tables(&s->f2h_tables);
switch (avctx->pix_fmt) {
case AV_PIX_FMT_GBRPF32:
diff --git a/libavcodec/float2half.c b/libavcodec/float2half.c
new file mode 100644
index 0000000000..90a6f63fac
--- /dev/null
+++ b/libavcodec/float2half.c
@@ -0,0 +1,19 @@
+/*
+ * This file is part of FFmpeg.
+ *
+ * FFmpeg is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * FFmpeg is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with FFmpeg; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ */
+
+#include "libavutil/float2half.c"
diff --git a/libavcodec/half2float.c b/libavcodec/half2float.c
new file mode 100644
index 0000000000..1b023f96a5
--- /dev/null
+++ b/libavcodec/half2float.c
@@ -0,0 +1,19 @@
+/*
+ * This file is part of FFmpeg.
+ *
+ * FFmpeg is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * FFmpeg is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with FFmpeg; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ */
+
+#include "libavutil/half2float.c"
diff --git a/libavcodec/pnmdec.c b/libavcodec/pnmdec.c
index 6adc348ec8..fbed282e93 100644
--- a/libavcodec/pnmdec.c
+++ b/libavcodec/pnmdec.c
@@ -477,7 +477,7 @@ static av_cold int phm_dec_init(AVCodecContext *avctx)
{
PNMContext *s = avctx->priv_data;
- init_half2float_tables(&s->h2f_tables);
+ ff_init_half2float_tables(&s->h2f_tables);
return 0;
}
diff --git a/libavcodec/pnmenc.c b/libavcodec/pnmenc.c
index 38a5d8172d..b052c03b21 100644
--- a/libavcodec/pnmenc.c
+++ b/libavcodec/pnmenc.c
@@ -294,7 +294,7 @@ static av_cold int phm_enc_init(AVCodecContext *avctx)
{
PHMEncContext *s = avctx->priv_data;
- init_float2half_tables(&s->f2h_tables);
+ ff_init_float2half_tables(&s->f2h_tables);
return 0;
}