Commit 4a384de5 authored by Jason Garrett-Glaser's avatar Jason Garrett-Glaser

Split h264dsp and h264pred in configure.

Many H.264 derivatives, like RV40 and VP8, use the H.264 prediction functions
but not the weight/loopfilter functions.
This should reduce the size of builds with one of these derivatives but without
H.264 decoding itself.

Originally committed as revision 24741 to svn://svn.ffmpeg.org/ffmpeg/trunk
parent 73c44cb2
......@@ -867,6 +867,7 @@ CONFIG_LIST="
gpl
gray
h264dsp
h264pred
hardcoded_tables
huffman
libdc1394
......@@ -1200,7 +1201,7 @@ h263_encoder_select="aandct"
h263_vaapi_hwaccel_select="vaapi h263_decoder"
h263i_decoder_select="h263_decoder"
h263p_encoder_select="h263_encoder"
h264_decoder_select="golomb h264dsp"
h264_decoder_select="golomb h264dsp h264pred"
h264_dxva2_hwaccel_deps="dxva2api_h"
h264_dxva2_hwaccel_select="dxva2 h264_decoder"
h264_vaapi_hwaccel_select="vaapi"
......@@ -1247,8 +1248,8 @@ rv10_decoder_select="h263_decoder"
rv10_encoder_select="h263_encoder"
rv20_decoder_select="h263_decoder"
rv20_encoder_select="h263_encoder"
rv30_decoder_select="golomb h264dsp"
rv40_decoder_select="golomb h264dsp"
rv30_decoder_select="golomb h264pred"
rv40_decoder_select="golomb h264pred"
shorten_decoder_select="golomb"
sipr_decoder_select="lsp"
snow_decoder_select="dwt"
......@@ -1257,7 +1258,7 @@ sonic_decoder_select="golomb"
sonic_encoder_select="golomb"
sonic_ls_encoder_select="golomb"
svq1_encoder_select="aandct"
svq3_decoder_select="golomb h264dsp"
svq3_decoder_select="golomb h264dsp h264pred"
svq3_decoder_suggest="zlib"
theora_decoder_select="vp3_decoder"
tiff_decoder_suggest="zlib"
......@@ -1275,7 +1276,7 @@ vorbis_encoder_select="mdct"
vp6_decoder_select="huffman"
vp6a_decoder_select="vp6_decoder"
vp6f_decoder_select="vp6_decoder"
vp8_decoder_select="h264dsp"
vp8_decoder_select="h264pred"
wmapro_decoder_select="mdct"
wmav1_decoder_select="mdct"
wmav1_encoder_select="mdct"
......@@ -1299,7 +1300,7 @@ vaapi_deps="va_va_h"
vdpau_deps="vdpau_vdpau_h vdpau_vdpau_x11_h"
# parsers
h264_parser_select="golomb h264dsp"
h264_parser_select="golomb h264dsp h264pred"
# external libraries
libdirac_decoder_deps="libdirac !libschroedinger"
......
......@@ -32,7 +32,8 @@ OBJS-$(CONFIG_DXVA2) += dxva2.o
FFT-OBJS-$(CONFIG_HARDCODED_TABLES) += cos_tables.o
OBJS-$(CONFIG_FFT) += avfft.o fft.o $(FFT-OBJS-yes)
OBJS-$(CONFIG_GOLOMB) += golomb.o
OBJS-$(CONFIG_H264DSP) += h264dsp.o h264idct.o h264pred.o
OBJS-$(CONFIG_H264DSP) += h264dsp.o h264idct.o
OBJS-$(CONFIG_H264PRED) += h264pred.o
OBJS-$(CONFIG_HUFFMAN) += huffman.o
OBJS-$(CONFIG_LPC) += lpc.o
OBJS-$(CONFIG_LSP) += lsp.o
......
......@@ -3,8 +3,8 @@ OBJS-$(CONFIG_DCA_DECODER) += arm/dcadsp_init_arm.o \
OBJS-$(CONFIG_VP5_DECODER) += arm/vp56dsp_init_arm.o
OBJS-$(CONFIG_VP6_DECODER) += arm/vp56dsp_init_arm.o
OBJS-$(CONFIG_H264DSP) += arm/h264dsp_init_arm.o \
arm/h264pred_init_arm.o \
OBJS-$(CONFIG_H264DSP) += arm/h264dsp_init_arm.o
OBJS-$(CONFIG_H264PRED) += arm/h264pred_init_arm.o
OBJS += arm/dsputil_init_arm.o \
arm/dsputil_arm.o \
......@@ -36,7 +36,8 @@ NEON-OBJS-$(CONFIG_RDFT) += arm/rdft_neon.o \
NEON-OBJS-$(CONFIG_H264DSP) += arm/h264dsp_neon.o \
arm/h264idct_neon.o \
arm/h264pred_neon.o \
NEON-OBJS-$(CONFIG_H264PRED) += arm/h264pred_neon.o \
NEON-OBJS-$(CONFIG_DCA_DECODER) += arm/dcadsp_neon.o \
arm/synth_filter_neon.o \
......
......@@ -9,9 +9,10 @@ YASM-OBJS-$(CONFIG_FFT) += x86/fft_mmx.o \
YASM-OBJS-$(CONFIG_GPL) += x86/h264_idct_sse2.o \
YASM-OBJS-$(CONFIG_H264DSP) += x86/h264_deblock_sse2.o \
x86/h264_intrapred.o \
x86/h264_weight_sse2.o \
YASM-OBJS-$(CONFIG_H264PRED) += x86/h264_intrapred.o
YASM-OBJS-$(CONFIG_VC1_DECODER) += x86/vc1dsp_yasm.o
MMX-OBJS-$(CONFIG_CAVS_DECODER) += x86/cavsdsp_mmx.o
......
......@@ -2365,7 +2365,7 @@ void ff_pred4x4_tm_vp8_mmxext (uint8_t *src, const uint8_t *topright, int s
void ff_pred4x4_tm_vp8_ssse3 (uint8_t *src, const uint8_t *topright, int stride);
void ff_pred4x4_vertical_vp8_mmxext(uint8_t *src, const uint8_t *topright, int stride);
#if CONFIG_H264DSP
#if CONFIG_H264PRED
void ff_h264_pred_init_x86(H264PredContext *h, int codec_id)
{
mm_flags = mm_support();
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment