[FFmpeg-devel] [PATCH] Split h264pred and h264dsp in configure

Måns Rullgård mans
Thu Aug 5 09:16:27 CEST 2010


Jason Garrett-Glaser <darkshikari at gmail.com> writes:

> 2010/8/4 M?ns Rullg?rd <mans at mansr.com>:
>> Jason Garrett-Glaser <darkshikari at gmail.com> writes:
>>
>>> This patch splits dependencies for H.264-related stuff. ?RV30, RV40,
>>> and VP8 don't use regular H264dsp, but do use H264pred, so make them
>>> depend on the latter but not the former.
>>>
> Done, updated patch attached.
>
> Dark Shikari
>
> Index: configure
> ===================================================================
> --- configure	(revision 24700)
> +++ configure	(working copy)
> @@ -866,6 +866,7 @@
>      gpl
>      gray
>      h264dsp
> +    h264pred
>      hardcoded_tables
>      libdc1394
>      libdirac
> @@ -1197,7 +1198,7 @@
>  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"
> @@ -1244,8 +1245,8 @@
>  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"
> @@ -1254,7 +1255,7 @@
>  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"
> @@ -1271,7 +1272,7 @@
>  vorbis_encoder_select="mdct"
>  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"
> @@ -1295,7 +1296,7 @@
>  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"
> Index: libavcodec/x86/Makefile
> ===================================================================
> --- libavcodec/x86/Makefile	(revision 24700)
> +++ libavcodec/x86/Makefile	(working copy)
> @@ -8,8 +8,8 @@
>                                            $(YASM-OBJS-FFT-yes)
>  YASM-OBJS-$(CONFIG_GPL)                += x86/h264_idct_sse2.o          \
>  
> -YASM-OBJS-$(CONFIG_H264DSP)            += x86/h264_deblock_sse2.o       \
> -                                          x86/h264_intrapred.o          \
> +YASM-OBJS-$(CONFIG_H264DSP)            += x86/h264_deblock_sse2.o
> +YASM-OBJS-$(CONFIG_H264PRED)           += x86/h264_intrapred.o
>  
>  YASM-OBJS-$(CONFIG_VC1_DECODER)        += x86/vc1dsp_yasm.o

This no longer applies.

> Index: libavcodec/x86/h264dsp_mmx.c
> ===================================================================
> --- libavcodec/x86/h264dsp_mmx.c	(revision 24700)
> +++ libavcodec/x86/h264dsp_mmx.c	(working copy)
> @@ -2349,7 +2349,7 @@
>  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();
> Index: libavcodec/Makefile
> ===================================================================
> --- libavcodec/Makefile	(revision 24701)
> +++ libavcodec/Makefile	(working copy)
> @@ -32,7 +32,8 @@
>  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_LPC)                     += lpc.o
>  OBJS-$(CONFIG_LSP)                     += lsp.o
>  OBJS-$(CONFIG_MDCT)                    += mdct.o
> Index: libavcodec/arm/Makefile
> ===================================================================
> --- libavcodec/arm/Makefile	(revision 24700)
> +++ libavcodec/arm/Makefile	(working copy)
> @@ -3,8 +3,8 @@
>  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             \

You (and I) missed the NEON-OBJS-$(CONFIG_H264DSP) line further down.

-- 
M?ns Rullg?rd
mans at mansr.com



More information about the ffmpeg-devel mailing list