Merge remote-tracking branch 'qatar/master'
authorMichael Niedermayer <michaelni@gmx.at>
Wed, 14 Dec 2011 22:58:10 +0000 (23:58 +0100)
committerMichael Niedermayer <michaelni@gmx.at>
Wed, 14 Dec 2011 22:58:10 +0000 (23:58 +0100)
* qatar/master: (23 commits)
  applehttp: Properly clean up if unable to probe a segment
  applehttp: Avoid reading uninitialized memory
  fate: Replace misleading "aac" in the name of an ADTS test with "adts".
  fate: Drop pointless "-an" from pictor test command.
  fate: split off image codec FATE tests into their own file
  fate: split off WMA codec FATE tests into their own file
  fate: split off lossless video and audio FATE tests into their own files
  fate: split off qtrle codec FATE tests into their own file
  fate: split off Ut Video codec FATE tests into their own file
  fate: split off screen codec FATE tests into their own file
  fate: split off Real Inc. codec FATE tests into their own file
  fate: split off AC-3 codec FATE tests into their own file
  mpegvideo: remove abort() in ff_find_unused_picture()
  rv40: NEON optimised loop filter strength selection
  rv40: rearrange loop filter functions
  configure: cosmetics: sort some lists where appropriate
  swscale_mmx: drop no longer required parameters from VSCALEX macros
  swscale: Mark yuv2planeX_8_mmx as MMX2; it contains MMX2 instructions.
  build: conditionally compile x86 H.264 chroma optimizations
  v410 encoder and decoder
  ...

Conflicts:
Changelog
configure
doc/developer.texi
doc/general.texi
libavcodec/arm/asm.S
libavcodec/avcodec.h
libavcodec/v410dec.c
libavcodec/v410enc.c
libavcodec/version.h
libavcodec/x86/Makefile
libavcodec/x86/dsputil_mmx.c
libswscale/x86/swscale_mmx.c
tests/Makefile
tests/fate2.mak

Merged-by: Michael Niedermayer <michaelni@gmx.at>
22 files changed:
1  2 
Makefile
configure
doc/general.texi
libavcodec/arm/asm.S
libavcodec/avcodec.h
libavcodec/h261dec.c
libavcodec/h263dec.c
libavcodec/mpegvideo.c
libavcodec/mpegvideo_enc.c
libavcodec/rv40.c
libavcodec/rv40dsp.c
libavcodec/vc1dec.c
libavcodec/version.h
libavcodec/x86/Makefile
libavcodec/x86/dsputil_mmx.c
libavformat/applehttp.c
library.mak
libswscale/x86/scale.asm
libswscale/x86/swscale_mmx.c
tests/Makefile
tests/fate.mak
tests/fate2.mak

diff --cc Makefile
Simple merge
diff --cc configure
+++ b/configure
@@@ -1191,7 -1105,7 +1191,8 @@@ HAVE_LIST=
      memalign
      mkstemp
      mmap
 +    PeekNamedPipe
+     poll_h
      posix_memalign
      round
      roundf
      sndio_h
      socklen_t
      soundcard_h
-     poll_h
-     setrlimit
      strerror_r
      strptime
 -    strtok_r
      struct_addrinfo
      struct_ipv6_mreq
+     struct_rusage_ru_maxrss
      struct_sockaddr_in6
      struct_sockaddr_sa_len
      struct_sockaddr_storage
@@@ -1387,8 -1293,7 +1388,8 @@@ 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 h264pred"
 +h264_crystalhd_decoder_select="crystalhd h264_mp4toannexb_bsf h264_parser"
+ h264_decoder_select="golomb h264chroma h264dsp h264pred"
  h264_dxva2_hwaccel_deps="dxva2api_h"
  h264_dxva2_hwaccel_select="dxva2 h264_decoder"
  h264_vaapi_hwaccel_select="vaapi h264_decoder"
@@@ -1403,33 -1307,28 +1404,33 @@@ loco_decoder_select="golomb
  mjpeg_encoder_select="aandct"
  mlp_decoder_select="mlp_parser"
  mp1_decoder_select="mpegaudiodsp"
- mp2_decoder_select="mpegaudiodsp"
- mp3adu_decoder_select="mpegaudiodsp"
- mp3_decoder_select="mpegaudiodsp"
- mp3on4_decoder_select="mpegaudiodsp"
  mp1float_decoder_select="mpegaudiodsp"
+ mp2_decoder_select="mpegaudiodsp"
  mp2float_decoder_select="mpegaudiodsp"
+ mp3_decoder_select="mpegaudiodsp"
+ mp3adu_decoder_select="mpegaudiodsp"
  mp3adufloat_decoder_select="mpegaudiodsp"
  mp3float_decoder_select="mpegaudiodsp"
+ mp3on4_decoder_select="mpegaudiodsp"
  mp3on4float_decoder_select="mpegaudiodsp"
- mpeg1video_encoder_select="aandct"
- mpeg2video_encoder_select="aandct"
- mpeg4_decoder_select="h263_decoder mpeg4video_parser"
- mpeg4_encoder_select="h263_encoder"
  mpeg_vdpau_decoder_select="vdpau mpegvideo_decoder"
+ mpeg_xvmc_decoder_deps="X11_extensions_XvMClib_h"
+ mpeg_xvmc_decoder_select="mpegvideo_decoder"
  mpeg1_vdpau_decoder_select="vdpau mpeg1video_decoder"
 +mpeg1_vdpau_hwaccel_select="vdpau mpeg1video_decoder"
+ mpeg1video_encoder_select="aandct"
 +mpeg2_crystalhd_decoder_select="crystalhd"
  mpeg2_dxva2_hwaccel_deps="dxva2api_h"
  mpeg2_dxva2_hwaccel_select="dxva2 mpeg2video_decoder"
 +mpeg2_vdpau_hwaccel_select="vdpau mpeg2video_decoder"
  mpeg2_vaapi_hwaccel_select="vaapi mpeg2video_decoder"
+ mpeg2video_encoder_select="aandct"
 +mpeg4_crystalhd_decoder_select="crystalhd"
+ mpeg4_decoder_select="h263_decoder mpeg4video_parser"
+ mpeg4_encoder_select="h263_encoder"
  mpeg4_vaapi_hwaccel_select="vaapi mpeg4_decoder"
  mpeg4_vdpau_decoder_select="vdpau mpeg4_decoder"
- mpeg_xvmc_decoder_deps="X11_extensions_XvMClib_h"
- mpeg_xvmc_decoder_select="mpegvideo_decoder"
 +msmpeg4_crystalhd_decoder_select="crystalhd"
  msmpeg4v1_decoder_select="h263_decoder"
  msmpeg4v1_encoder_select="h263_encoder"
  msmpeg4v2_decoder_select="h263_decoder"
@@@ -1453,11 -1352,8 +1454,11 @@@ shorten_decoder_select="golomb
  sipr_decoder_select="lsp"
  snow_decoder_select="dwt"
  snow_encoder_select="aandct dwt"
 +sonic_decoder_select="golomb"
 +sonic_encoder_select="golomb"
 +sonic_ls_encoder_select="golomb"
  svq1_encoder_select="aandct"
- svq3_decoder_select="golomb h264dsp h264pred"
+ svq3_decoder_select="golomb h264chroma h264dsp h264pred"
  svq3_decoder_suggest="zlib"
  theora_decoder_select="vp3_decoder"
  tiff_decoder_suggest="zlib"
@@@ -1465,9 -1361,8 +1466,9 @@@ tiff_encoder_suggest="zlib
  truehd_decoder_select="mlp_decoder"
  tscc_decoder_select="zlib"
  twinvq_decoder_select="mdct lsp sinewin"
- vc1_decoder_select="h263_decoder"
 +vc1_crystalhd_decoder_select="crystalhd"
+ vc1_decoder_select="h263_decoder h264chroma"
 -vc1_dxva2_hwaccel_deps="dxva2api_h DXVA_PictureParameters_wDecodedPictureIndex"
 +vc1_dxva2_hwaccel_deps="dxva2api_h"
  vc1_dxva2_hwaccel_select="dxva2 vc1_decoder"
  vc1_vaapi_hwaccel_select="vaapi vc1_decoder"
  vc1_vdpau_decoder_select="vdpau vc1_decoder"
@@@ -1505,11 -1398,9 +1506,11 @@@ vda_deps="VideoDecodeAcceleration_VDADe
  vdpau_deps="vdpau_vdpau_h vdpau_vdpau_x11_h"
  
  # parsers
- h264_parser_select="golomb h264dsp h264pred"
+ h264_parser_select="golomb h264chroma h264dsp h264pred"
  
  # external libraries
 +libaacplus_encoder_deps="libaacplus"
 +libcelt_decoder_deps="libcelt"
  libdirac_decoder_deps="libdirac !libschroedinger"
  libdirac_encoder_deps="libdirac"
  libfaac_encoder_deps="libfaac"
@@@ -1640,15 -1514,15 +1641,15 @@@ avformat_deps="avcodec
  postproc_deps="gpl"
  
  # programs
- ffmpeg_deps="avcodec avformat swscale swresample"
- ffmpeg_select="buffer_filter buffersink_filter"
  avconv_deps="avcodec avformat swscale"
  avconv_select="buffer_filter"
 -avplay_deps="avcodec avformat swscale sdl"
 -avplay_select="rdft"
 -avprobe_deps="avcodec avformat"
 -avserver_deps="avformat ffm_muxer fork rtp_protocol rtsp_demuxer"
 -avserver_extralibs='$ldl'
 -ffmpeg_deps="avcodec avformat swscale"
 -ffmpeg_select="buffer_filter"
 +ffplay_deps="avcodec avformat swscale sdl"
 +ffplay_select="buffersink_filter rdft"
 +ffprobe_deps="avcodec avformat"
 +ffserver_deps="avformat ffm_muxer fork rtp_protocol rtsp_demuxer"
 +ffserver_extralibs='$ldl'
++ffmpeg_deps="avcodec avformat swscale swresample"
++ffmpeg_select="buffer_filter buffersink_filter"
  
  doc_deps="texi2html"
  
@@@ -1773,11 -1645,10 +1774,11 @@@ nm_default="nm
  objformat="elf"
  pkg_config_default=pkg-config
  ranlib="ranlib"
 +strip_default="strip"
  yasmexe="yasm"
- nogas=":"
  
  nm_opts='-g'
+ nogas=":"
  
  # machine
  arch_default=$(uname -m)
@@@ -1793,22 -1664,22 +1794,23 @@@ enable avdevic
  enable avfilter
  enable avformat
  enable avutil
- enable asm
- enable debug
- enable doc
- enable fastdiv
+ enable postproc
++enable stripping
++enable swresample
+ enable swscale
 -enable avconv
 -enable avplay
 -enable avprobe
 -enable avserver
  enable ffmpeg
 +enable ffplay
 +enable ffprobe
 +enable ffserver
+ enable asm
+ enable debug
+ enable doc
+ enable fastdiv
  enable network
  enable optimizations
- enable postproc
- enable protocols
  enable static
- enable stripping
- enable swresample
- enable swscale
  enable swscale_alpha
  
  # build settings
@@@ -2031,15 -1899,14 +2033,15 @@@ tmpfile()
  
  trap 'rm -f -- $TMPFILES' EXIT
  
- tmpfile TMPC  .c
- tmpfile TMPCPP .cpp
- tmpfile TMPE  $EXESUF
- tmpfile TMPH  .h
- tmpfile TMPO  .o
- tmpfile TMPS  .S
- tmpfile TMPV  .ver
- tmpfile TMPSH .sh
  tmpfile TMPASM .asm
+ tmpfile TMPC   .c
++tmpfile TMPCPP .cpp
+ tmpfile TMPE   $EXESUF
+ tmpfile TMPH   .h
+ tmpfile TMPO   .o
+ tmpfile TMPS   .S
+ tmpfile TMPSH  .sh
+ tmpfile TMPV   .ver
  
  unset -f mktemp
  
@@@ -3555,14 -3338,13 +3557,14 @@@ get_version()
      eval echo "${lcname}_VERSION_MAJOR=\$${name}_VERSION_MAJOR" >> config.mak
  }
  
- get_version LIBSWSCALE  libswscale/swscale.h
- get_version LIBSWRESAMPLE libswresample/swresample.h
- get_version LIBPOSTPROC libpostproc/postprocess.h
  get_version LIBAVCODEC  libavcodec/version.h
  get_version LIBAVDEVICE libavdevice/avdevice.h
+ get_version LIBAVFILTER libavfilter/avfilter.h
  get_version LIBAVFORMAT libavformat/version.h
  get_version LIBAVUTIL   libavutil/avutil.h
- get_version LIBAVFILTER libavfilter/avfilter.h
+ get_version LIBPOSTPROC libpostproc/postprocess.h
++get_version LIBSWRESAMPLE libswresample/swresample.h
+ get_version LIBSWSCALE  libswscale/swscale.h
  
  cat > $TMPH <<EOF
  /* Automatically generated by configure - do not modify! */
Simple merge
Simple merge
@@@ -4629,16 -4487,8 +4629,8 @@@ int av_picture_pad(AVPicture *dst, cons
  unsigned int av_xiphlacing(unsigned char *s, unsigned int v);
  
  /**
- <<<<<<< HEAD
-  * Logs a generic warning message about a missing feature. This function is
-  * intended to be used internally by FFmpeg (libavcodec, libavformat, etc.)
- ||||||| merged common ancestors
-  * Logs a generic warning message about a missing feature. This function is
-  * intended to be used internally by Libav (libavcodec, libavformat, etc.)
- =======
   * Log a generic warning message about a missing feature. This function is
-- * intended to be used internally by Libav (libavcodec, libavformat, etc.)
- >>>>>>> qatar/master
++ * intended to be used internally by FFmpeg (libavcodec, libavformat, etc.)
   * only, and would normally not be used by applications.
   * @param[in] avc a pointer to an arbitrary struct of which the first field is
   * a pointer to an AVClass struct
Simple merge
Simple merge
@@@ -1222,24 -1259,20 +1210,28 @@@ int MPV_frame_start(MpegEncContext *s, 
  
              /* Allocate a dummy frame */
              i= ff_find_unused_picture(s, 0);
+             if (i < 0)
+                 return i;
              s->last_picture_ptr= &s->picture[i];
 +            s->last_picture_ptr->f.key_frame = 0;
              if(ff_alloc_picture(s, s->last_picture_ptr, 0) < 0)
                  return -1;
 +
 +            if(s->codec_id == CODEC_ID_FLV1 || s->codec_id == CODEC_ID_H263){
 +                for(i=0; i<s->height; i++)
 +                    memset(s->last_picture_ptr->f.data[0] + s->last_picture_ptr->f.linesize[0]*i, 16, s->width);
 +            }
 +
              ff_thread_report_progress((AVFrame*)s->last_picture_ptr, INT_MAX, 0);
              ff_thread_report_progress((AVFrame*)s->last_picture_ptr, INT_MAX, 1);
          }
          if ((s->next_picture_ptr == NULL || s->next_picture_ptr->f.data[0] == NULL) && s->pict_type == AV_PICTURE_TYPE_B) {
              /* Allocate a dummy frame */
              i= ff_find_unused_picture(s, 0);
+             if (i < 0)
+                 return i;
              s->next_picture_ptr= &s->picture[i];
 +            s->next_picture_ptr->f.key_frame = 0;
              if(ff_alloc_picture(s, s->next_picture_ptr, 0) < 0)
                  return -1;
              ff_thread_report_progress((AVFrame*)s->next_picture_ptr, INT_MAX, 0);
Simple merge
Simple merge
Simple merge
Simple merge
@@@ -21,7 -21,7 +21,7 @@@
  #define AVCODEC_VERSION_H
  
  #define LIBAVCODEC_VERSION_MAJOR 53
- #define LIBAVCODEC_VERSION_MINOR 44
 -#define LIBAVCODEC_VERSION_MINOR 28
++#define LIBAVCODEC_VERSION_MINOR 45
  #define LIBAVCODEC_VERSION_MICRO  0
  
  #define LIBAVCODEC_VERSION_INT  AV_VERSION_INT(LIBAVCODEC_VERSION_MAJOR, \
@@@ -9,8 -9,9 +9,11 @@@ YASM-OBJS-FFT-$(HAVE_SSE)              
  YASM-OBJS-$(CONFIG_FFT)                += x86/fft_mmx.o                 \
                                            $(YASM-OBJS-FFT-yes)
  
 +YASM-OBJS-$(CONFIG_DWT)                += x86/dwt_yasm.o
 +
+ YASM-OBJS-$(CONFIG_H264CHROMA)         += x86/h264_chromamc.o           \
+                                           x86/h264_chromamc_10bit.o
  MMX-OBJS-$(CONFIG_H264DSP)             += x86/h264dsp_mmx.o
  YASM-OBJS-$(CONFIG_H264DSP)            += x86/h264_deblock.o            \
                                            x86/h264_deblock_10bit.o      \
@@@ -2808,7 -2826,10 +2810,7 @@@ void dsputil_init_mmx(DSPContext* c, AV
                  H264_QPEL_FUNCS_10(2, 0, ssse3_cache64)
                  H264_QPEL_FUNCS_10(3, 0, ssse3_cache64)
              }
-             if (!high_bit_depth) {
 -#endif
 -            c->add_png_paeth_prediction= add_png_paeth_prediction_ssse3;
 -#if HAVE_YASM
+             if (!high_bit_depth && CONFIG_H264CHROMA) {
              c->put_h264_chroma_pixels_tab[0]= ff_put_h264_chroma_mc8_ssse3_rnd;
              c->avg_h264_chroma_pixels_tab[0]= ff_avg_h264_chroma_mc8_ssse3_rnd;
              c->put_h264_chroma_pixels_tab[1]= ff_put_h264_chroma_mc4_ssse3;
Simple merge
diff --cc library.mak
index 0000000,e269b50..3589dfb
mode 000000,100644..100644
--- /dev/null
@@@ -1,0 -1,97 +1,102 @@@
 -$(OBJS) $(SUBDIR)%.ho $(TESTOBJS): CPPFLAGS += -DHAVE_AV_CONFIG_H
+ SRC_DIR := $(SRC_PATH)/lib$(NAME)
+ include $(SRC_PATH)/common.mak
+ LIBVERSION := $(lib$(NAME)_VERSION)
+ LIBMAJOR   := $(lib$(NAME)_VERSION_MAJOR)
+ INCINSTDIR := $(INCDIR)/lib$(NAME)
+ THIS_LIB   := $(SUBDIR)$($(CONFIG_SHARED:yes=S)LIBNAME)
+ all-$(CONFIG_STATIC): $(SUBDIR)$(LIBNAME)
+ all-$(CONFIG_SHARED): $(SUBDIR)$(SLIBNAME)
+ $(SUBDIR)%-test.o: $(SUBDIR)%-test.c
+       $(COMPILE_C)
+ $(SUBDIR)%-test.o: $(SUBDIR)%.c
+       $(COMPILE_C)
+ $(SUBDIR)x86/%.o: $(SUBDIR)x86/%.asm
+       $(YASMDEP) $(YASMFLAGS) -I $(<D)/ -M -o $@ $< > $(@:.o=.d)
+       $(YASM) $(YASMFLAGS) -I $(<D)/ -o $@ $<
 -$(SUBDIR)$(SLIBNAME_WITH_MAJOR): $(OBJS) $(SUBDIR)lib$(NAME).ver $(DEP_LIBS)
++$(OBJS) $(OBJS:.o=.s) $(SUBDIR)%.ho $(TESTOBJS): CPPFLAGS += -DHAVE_AV_CONFIG_H
+ $(TESTOBJS): CPPFLAGS += -DTEST
+ $(SUBDIR)$(LIBNAME): $(OBJS)
+       $(RM) $@
+       $(AR) rc $@ $^ $(EXTRAOBJS)
+       $(RANLIB) $@
+ install-headers: install-lib$(NAME)-headers install-lib$(NAME)-pkgconfig
+ install-libs-$(CONFIG_STATIC): install-lib$(NAME)-static
+ install-libs-$(CONFIG_SHARED): install-lib$(NAME)-shared
+ define RULES
+ $(EXAMPLES) $(TESTPROGS) $(TOOLS): %$(EXESUF): %.o
+       $$(LD) $(LDFLAGS) -o $$@ $$^ -l$(FULLNAME) $(FFEXTRALIBS) $$(ELIBS)
+ $(SUBDIR)$(SLIBNAME): $(SUBDIR)$(SLIBNAME_WITH_MAJOR)
+       $(Q)cd ./$(SUBDIR) && $(LN_S) $(SLIBNAME_WITH_MAJOR) $(SLIBNAME)
 -      $(RM) $(addprefix "$(INCINSTDIR)/",$(HEADERS))
++$(SUBDIR)$(SLIBNAME_WITH_MAJOR): $(OBJS) $(SUBDIR)lib$(NAME).ver
+       $(SLIB_CREATE_DEF_CMD)
+       $$(LD) $(SHFLAGS) $(LDFLAGS) -o $$@ $$(filter %.o,$$^) $(FFEXTRALIBS) $(EXTRAOBJS)
+       $(SLIB_EXTRA_CMD)
++ifdef SUBDIR
++$(SUBDIR)$(SLIBNAME_WITH_MAJOR): $(DEP_LIBS)
++endif
++
+ clean::
+       $(RM) $(addprefix $(SUBDIR),*-example$(EXESUF) *-test$(EXESUF) $(CLEANFILES) $(CLEANSUFFIXES) $(LIBSUFFIXES)) \
+           $(foreach dir,$(DIRS),$(CLEANSUFFIXES:%=$(SUBDIR)$(dir)/%)) \
+           $(HOSTOBJS) $(HOSTPROGS)
+ distclean:: clean
+       $(RM) $(DISTCLEANSUFFIXES:%=$(SUBDIR)%) \
+           $(foreach dir,$(DIRS),$(DISTCLEANSUFFIXES:%=$(SUBDIR)$(dir)/%))
+ install-lib$(NAME)-shared: $(SUBDIR)$(SLIBNAME)
+       $(Q)mkdir -p "$(SHLIBDIR)"
+       $$(INSTALL) -m 755 $$< "$(SHLIBDIR)/$(SLIB_INSTALL_NAME)"
++      $$(STRIP) "$(SHLIBDIR)/$(SLIB_INSTALL_NAME)"
+       $(Q)$(foreach F,$(SLIB_INSTALL_LINKS),cd "$(SHLIBDIR)" && $(LN_S) $(SLIB_INSTALL_NAME) $(F);)
+       $(if $(SLIB_INSTALL_EXTRA_SHLIB),$$(INSTALL) -m 644 $(SLIB_INSTALL_EXTRA_SHLIB:%=$(SUBDIR)%) "$(SHLIBDIR)")
+       $(if $(SLIB_INSTALL_EXTRA_LIB),$(Q)mkdir -p "$(LIBDIR)")
+       $(if $(SLIB_INSTALL_EXTRA_LIB),$$(INSTALL) -m 644 $(SLIB_INSTALL_EXTRA_LIB:%=$(SUBDIR)%) "$(LIBDIR)")
+ install-lib$(NAME)-static: $(SUBDIR)$(LIBNAME)
+       $(Q)mkdir -p "$(LIBDIR)"
+       $$(INSTALL) -m 644 $$< "$(LIBDIR)"
+       $(LIB_INSTALL_EXTRA_CMD)
+ install-lib$(NAME)-headers: $(addprefix $(SUBDIR),$(HEADERS) $(BUILT_HEADERS))
+       $(Q)mkdir -p "$(INCINSTDIR)"
+       $$(INSTALL) -m 644 $$^ "$(INCINSTDIR)"
+ install-lib$(NAME)-pkgconfig: $(SUBDIR)lib$(NAME).pc
+       $(Q)mkdir -p "$(LIBDIR)/pkgconfig"
+       $$(INSTALL) -m 644 $$^ "$(LIBDIR)/pkgconfig"
+ uninstall-libs::
+       -$(RM) "$(SHLIBDIR)/$(SLIBNAME_WITH_MAJOR)" \
+              "$(SHLIBDIR)/$(SLIBNAME)"            \
+              "$(SHLIBDIR)/$(SLIBNAME_WITH_VERSION)"
+       -$(RM) $(SLIB_INSTALL_EXTRA_SHLIB:%="$(SHLIBDIR)"%)
+       -$(RM) $(SLIB_INSTALL_EXTRA_LIB:%="$(LIBDIR)"%)
+       -$(RM) "$(LIBDIR)/$(LIBNAME)"
+ uninstall-headers::
 -      -rmdir "$(INCDIR)"
++      $(RM) $(addprefix "$(INCINSTDIR)/",$(HEADERS)) $(addprefix "$(INCINSTDIR)/",$(BUILT_HEADERS))
+       $(RM) "$(LIBDIR)/pkgconfig/lib$(NAME).pc"
++      -rmdir "$(INCINSTDIR)"
+ endef
+ $(eval $(RULES))
+ $(EXAMPLES) $(TESTPROGS) $(TOOLS): $(THIS_LIB) $(DEP_LIBS)
+ examples: $(EXAMPLES)
+ testprogs: $(TESTPROGS)
Simple merge
@@@ -347,12 -277,12 +347,12 @@@ void ff_sws_init_swScale_mmx(SwsContex
      case 8:  ASSIGN_SCALE_FUNC2(hscalefn, 8, opt1, opt2); break; \
      default: ASSIGN_SCALE_FUNC2(hscalefn, X, opt1, opt2); break; \
      }
- #define ASSIGN_VSCALEX_FUNC(vscalefn, opt1, opt2, opt2chk, do_16_case) \
+ #define ASSIGN_VSCALEX_FUNC(vscalefn, opt, do_16_case) \
  switch(c->dstBpc){ \
-     case 16:                                     /*do_16_case;*/                           break; \
-     case 10: if (!isBE(c->dstFormat) && opt2chk) /*vscalefn = ff_yuv2planeX_10_ ## opt2;*/ break; \
-     case 9:  if (!isBE(c->dstFormat) && opt2chk) /*vscalefn = ff_yuv2planeX_9_  ## opt2;*/ break; \
-     default:                                     /*vscalefn = ff_yuv2planeX_8_  ## opt1;*/ break; \
 -    case 16:                          do_16_case;                          break; \
 -    case 10: if (!isBE(c->dstFormat)) vscalefn = ff_yuv2planeX_10_ ## opt; break; \
 -    case 9:  if (!isBE(c->dstFormat)) vscalefn = ff_yuv2planeX_9_  ## opt; break; \
 -    default:                          vscalefn = ff_yuv2planeX_8_  ## opt; break; \
++    case 16:                          /*do_16_case;*/                          break; \
++    case 10: if (!isBE(c->dstFormat)) /*vscalefn = ff_yuv2planeX_10_ ## opt;*/ break; \
++    case 9:  if (!isBE(c->dstFormat)) /*vscalefn = ff_yuv2planeX_9_  ## opt;*/ break; \
++    default:                          /*vscalefn = ff_yuv2planeX_8_  ## opt;*/ break; \
      }
  #define ASSIGN_VSCALE_FUNC(vscalefn, opt1, opt2, opt2chk) \
      switch(c->dstBpc){ \
diff --cc tests/Makefile
@@@ -50,12 -34,19 +51,20 @@@ include $(SRC_PATH)/tests/fate/amrwb.ma
  include $(SRC_PATH)/tests/fate/dct.mak
  include $(SRC_PATH)/tests/fate/fft.mak
  include $(SRC_PATH)/tests/fate/h264.mak
+ include $(SRC_PATH)/tests/fate/image.mak
  include $(SRC_PATH)/tests/fate/libavutil.mak
 +include $(SRC_PATH)/tests/fate/mapchan.mak
+ include $(SRC_PATH)/tests/fate/lossless-audio.mak
+ include $(SRC_PATH)/tests/fate/lossless-video.mak
  include $(SRC_PATH)/tests/fate/mp3.mak
  include $(SRC_PATH)/tests/fate/prores.mak
+ include $(SRC_PATH)/tests/fate/qtrle.mak
+ include $(SRC_PATH)/tests/fate/real.mak
+ include $(SRC_PATH)/tests/fate/screen.mak
+ include $(SRC_PATH)/tests/fate/utvideo.mak
  include $(SRC_PATH)/tests/fate/vorbis.mak
  include $(SRC_PATH)/tests/fate/vp8.mak
+ include $(SRC_PATH)/tests/fate/wma.mak
  
  FATE_ACODEC  = $(ACODEC_TESTS:%=fate-acodec-%)
  FATE_VSYNTH1 = $(VCODEC_TESTS:%=fate-vsynth1-%)
diff --cc tests/fate.mak
Simple merge
diff --cc tests/fate2.mak
@@@ -226,37 -125,3 +125,10 @@@ fate-musepack7: FUZZ = 
  FATE_TESTS += fate-iirfilter
  fate-iirfilter: libavcodec/iirfilter-test$(EXESUF)
  fate-iirfilter: CMD = run libavcodec/iirfilter-test
- FATE_TESTS += fate-vble
- fate-vble: CMD = framecrc -i $(SAMPLES)/vble/flowers-partial-2MB.avi
- FATE_TESTS += fate-utvideo_rgba_left
- fate-utvideo_rgba_left: CMD = framecrc -i $(SAMPLES)/utvideo/utvideo_rgba_left.avi
- FATE_TESTS += fate-utvideo_rgba_median
- fate-utvideo_rgba_median: CMD = framecrc -i $(SAMPLES)/utvideo/utvideo_rgba_median.avi
- FATE_TESTS += fate-utvideo_rgb_left
- fate-utvideo_rgb_left: CMD = framecrc -i $(SAMPLES)/utvideo/utvideo_rgb_left.avi
- FATE_TESTS += fate-utvideo_rgb_median
- fate-utvideo_rgb_median: CMD = framecrc -i $(SAMPLES)/utvideo/utvideo_rgb_median.avi
- FATE_TESTS += fate-utvideo_yuv420_left
- fate-utvideo_yuv420_left: CMD = framecrc -i $(SAMPLES)/utvideo/utvideo_yuv420_left.avi
- FATE_TESTS += fate-utvideo_yuv420_median
- fate-utvideo_yuv420_median: CMD = framecrc -i $(SAMPLES)/utvideo/utvideo_yuv420_median.avi
- FATE_TESTS += fate-utvideo_yuv422_left
- fate-utvideo_yuv422_left: CMD = framecrc -i $(SAMPLES)/utvideo/utvideo_yuv422_left.avi
- FATE_TESTS += fate-utvideo_yuv422_median
- fate-utvideo_yuv422_median: CMD = framecrc -i $(SAMPLES)/utvideo/utvideo_yuv422_median.avi
 +
 +FATE_TESTS += fate-v410dec
 +fate-v410dec: CMD = framecrc -i $(SAMPLES)/v410/lenav410.mov -pix_fmt yuv444p10le
 +
 +FATE_TESTS += fate-v410enc
 +fate-v410enc: tests/vsynth1/00.pgm
 +fate-v410enc: CMD = md5 -f image2 -vcodec pgmyuv -i $(TARGET_PATH)/tests/vsynth1/%02d.pgm -flags +bitexact -vcodec v410 -f avi