[FFmpeg-devel] [PATCH 01/10] lavc: fix flac encoder and decoder dependencies

James Darnley james.darnley at gmail.com
Sat Feb 8 18:38:39 CET 2014


---
 libavcodec/arm/Makefile           |    1 +
 libavcodec/arm/flacdsp_init_arm.c |    2 +-
 libavcodec/flacdsp.c              |    2 +-
 libavcodec/x86/Makefile           |    1 +
 libavcodec/x86/flacdsp_init.c     |    2 +-
 5 files changed, 5 insertions(+), 3 deletions(-)

diff --git a/libavcodec/arm/Makefile b/libavcodec/arm/Makefile
index 8bdccbd..a8446b2 100644
--- a/libavcodec/arm/Makefile
+++ b/libavcodec/arm/Makefile
@@ -15,6 +15,7 @@ OBJS-$(CONFIG_FFT)                     += arm/fft_init_arm.o            \
                                           arm/fft_fixed_init_arm.o
 OBJS-$(CONFIG_FLAC_DECODER)            += arm/flacdsp_init_arm.o        \
                                           arm/flacdsp_arm.o
+OBJS-$(CONFIG_FLAC_ENCODER)            += arm/flacdsp_init_arm.o
 OBJS-$(CONFIG_H264CHROMA)              += arm/h264chroma_init_arm.o
 OBJS-$(CONFIG_H264DSP)                 += arm/h264dsp_init_arm.o
 OBJS-$(CONFIG_H264PRED)                += arm/h264pred_init_arm.o
diff --git a/libavcodec/arm/flacdsp_init_arm.c b/libavcodec/arm/flacdsp_init_arm.c
index 9b93942..9ddb268 100644
--- a/libavcodec/arm/flacdsp_init_arm.c
+++ b/libavcodec/arm/flacdsp_init_arm.c
@@ -27,6 +27,6 @@ void ff_flac_lpc_16_arm(int32_t *samples, const int coeffs[32], int order,
 av_cold void ff_flacdsp_init_arm(FLACDSPContext *c, enum AVSampleFormat fmt,
                                  int bps)
 {
-    if (bps <= 16)
+    if (bps <= 16 && CONFIG_FLAC_DECODER)
         c->lpc = ff_flac_lpc_16_arm;
 }
diff --git a/libavcodec/flacdsp.c b/libavcodec/flacdsp.c
index 89cf09a..b15bc74 100644
--- a/libavcodec/flacdsp.c
+++ b/libavcodec/flacdsp.c
@@ -128,6 +128,6 @@ av_cold void ff_flacdsp_init(FLACDSPContext *c, enum AVSampleFormat fmt,
 
     if (ARCH_ARM)
         ff_flacdsp_init_arm(c, fmt, bps);
-    if (ARCH_X86 && CONFIG_FLAC_DECODER)
+    if (ARCH_X86)
         ff_flacdsp_init_x86(c, fmt, bps);
 }
diff --git a/libavcodec/x86/Makefile b/libavcodec/x86/Makefile
index 52ee2a8..7b56178 100644
--- a/libavcodec/x86/Makefile
+++ b/libavcodec/x86/Makefile
@@ -14,6 +14,7 @@ OBJS-$(CONFIG_ENCODERS)                += x86/dsputilenc_mmx.o          \
                                           x86/motion_est.o
 OBJS-$(CONFIG_FFT)                     += x86/fft_init.o
 OBJS-$(CONFIG_FLAC_DECODER)            += x86/flacdsp_init.o
+OBJS-$(CONFIG_FLAC_ENCODER)            += x86/flacdsp_init.o
 OBJS-$(CONFIG_H263DSP)                 += x86/h263dsp_init.o
 OBJS-$(CONFIG_H264CHROMA)              += x86/h264chroma_init.o
 OBJS-$(CONFIG_H264DSP)                 += x86/h264dsp_init.o
diff --git a/libavcodec/x86/flacdsp_init.c b/libavcodec/x86/flacdsp_init.c
index d30a41e..1a02522 100644
--- a/libavcodec/x86/flacdsp_init.c
+++ b/libavcodec/x86/flacdsp_init.c
@@ -32,7 +32,7 @@ av_cold void ff_flacdsp_init_x86(FLACDSPContext *c, enum AVSampleFormat fmt,
     int cpu_flags = av_get_cpu_flags();
 
     if (EXTERNAL_SSE4(cpu_flags)) {
-        if (bps > 16)
+        if (bps > 16 && CONFIG_FLAC_DECODER)
             c->lpc = ff_flac_lpc_32_sse4;
     }
 #endif
-- 
1.7.9



More information about the ffmpeg-devel mailing list