From 6bcdfe48d0d0a4fbe012f5b983d5c8ee53af1883 Mon Sep 17 00:00:00 2001 From: Michael Niedermayer Date: Fri, 12 Oct 2012 22:38:54 +0200 Subject: [PATCH 1/9] mpeg4videodec: Disable frame multithreading for GMC, its not implemented at all MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Martin Storsjö --- libavcodec/mpegvideo.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/libavcodec/mpegvideo.c b/libavcodec/mpegvideo.c index d6f7af2f4a..af9e0403de 100644 --- a/libavcodec/mpegvideo.c +++ b/libavcodec/mpegvideo.c @@ -1985,7 +1985,8 @@ int ff_MPV_lowest_referenced_row(MpegEncContext *s, int dir) int my_max = INT_MIN, my_min = INT_MAX, qpel_shift = !s->quarter_sample; int my, off, i, mvs; - if (s->picture_structure != PICT_FRAME) goto unhandled; + if (s->picture_structure != PICT_FRAME || s->mcsel) + goto unhandled; switch (s->mv_type) { case MV_TYPE_16X16: From c896aa984e88dc9158fd6d142e61872a021e9bdd Mon Sep 17 00:00:00 2001 From: Diego Biurrun Date: Fri, 19 Oct 2012 16:16:06 +0200 Subject: [PATCH 2/9] build: Drop OBJS declaration for non-existing PCM_DVD encoder --- libavcodec/Makefile | 1 - 1 file changed, 1 deletion(-) diff --git a/libavcodec/Makefile b/libavcodec/Makefile index a63e2baf46..e1787dd9e7 100644 --- a/libavcodec/Makefile +++ b/libavcodec/Makefile @@ -433,7 +433,6 @@ OBJS-$(CONFIG_PCM_ALAW_DECODER) += pcm.o OBJS-$(CONFIG_PCM_ALAW_ENCODER) += pcm.o OBJS-$(CONFIG_PCM_BLURAY_DECODER) += pcm-mpeg.o OBJS-$(CONFIG_PCM_DVD_DECODER) += pcm.o -OBJS-$(CONFIG_PCM_DVD_ENCODER) += pcm.o OBJS-$(CONFIG_PCM_F32BE_DECODER) += pcm.o OBJS-$(CONFIG_PCM_F32BE_ENCODER) += pcm.o OBJS-$(CONFIG_PCM_F32LE_DECODER) += pcm.o From 8fb1e2640505d8815bbe2f0bcdf7140be37acd87 Mon Sep 17 00:00:00 2001 From: Diego Biurrun Date: Thu, 18 Oct 2012 16:53:42 +0200 Subject: [PATCH 3/9] lzo: Drop obsolete fast_memcpy reference --- libavutil/lzo.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/libavutil/lzo.c b/libavutil/lzo.c index fec3edb9c0..dba0ac9ab1 100644 --- a/libavutil/lzo.c +++ b/libavutil/lzo.c @@ -19,11 +19,10 @@ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA */ +#include + #include "avutil.h" #include "common.h" -/// Avoid e.g. MPlayers fast_memcpy, it slows things down here. -#undef memcpy -#include #include "lzo.h" /// Define if we may write up to 12 bytes beyond the output buffer. From 4b587848ce038f128e02dd6b739643eed1194c56 Mon Sep 17 00:00:00 2001 From: Diego Biurrun Date: Mon, 15 Oct 2012 23:56:38 +0200 Subject: [PATCH 4/9] configure: Disable Snow decoder and encoder by default Snow has serious unfixed bugs and no real-world use. --- configure | 2 ++ 1 file changed, 2 insertions(+) diff --git a/configure b/configure index 2bdc4b09f3..f892bfe9cb 100755 --- a/configure +++ b/configure @@ -1878,6 +1878,8 @@ for n in $COMPONENT_LIST; do eval ${n}_if_any="\$$v" done +disable snow_decoder snow_encoder + enable $ARCH_EXT_LIST die_unknown(){ From 12549db6535cc0f28e47d4f2a73c42231916b3a3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Martin=20Storsj=C3=B6?= Date: Fri, 19 Oct 2012 01:40:47 +0300 Subject: [PATCH 5/9] fate: Add proper dependencies for the tests in video.mak MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Martin Storsjö --- tests/fate/video.mak | 146 +++++++++++++++++++++---------------------- 1 file changed, 73 insertions(+), 73 deletions(-) diff --git a/tests/fate/video.mak b/tests/fate/video.mak index b36554f3b1..82bac1b697 100644 --- a/tests/fate/video.mak +++ b/tests/fate/video.mak @@ -4,76 +4,76 @@ fate-4xm-1: CMD = framecrc -i $(SAMPLES)/4xm/version1.4xm -pix_fmt rgb24 -an FATE_4XM += fate-4xm-2 fate-4xm-2: CMD = framecrc -i $(SAMPLES)/4xm/version2.4xm -pix_fmt rgb24 -an -FATE_SAMPLES_AVCONV += $(FATE_4XM) +FATE_SAMPLES_AVCONV-$(call DEMDEC, FOURXM, FOURXM) += $(FATE_4XM) fate-4xm: $(FATE_4XM) -FATE_SAMPLES_AVCONV += fate-aasc +FATE_SAMPLES_AVCONV-$(call DEMDEC, AVI, AASC) += fate-aasc fate-aasc: CMD = framecrc -i $(SAMPLES)/aasc/AASC-1.5MB.AVI -pix_fmt rgb24 -FATE_SAMPLES_AVCONV += fate-alg-mm +FATE_SAMPLES_AVCONV-$(call DEMDEC, MM, MMVIDEO) += fate-alg-mm fate-alg-mm: CMD = framecrc -i $(SAMPLES)/alg-mm/ibmlogo.mm -an -pix_fmt rgb24 -FATE_SAMPLES_AVCONV += fate-amv +FATE_SAMPLES_AVCONV-$(call DEMDEC, AVI, AMV) += fate-amv fate-amv: CMD = framecrc -idct simple -i $(SAMPLES)/amv/MTV_high_res_320x240_sample_Penguin_Joke_MTV_from_WMV.amv -t 10 -an -FATE_SAMPLES_AVCONV += fate-ansi +FATE_SAMPLES_AVCONV-$(call DEMDEC, TTY, ANSI) += fate-ansi fate-ansi: CMD = framecrc -chars_per_frame 44100 -i $(SAMPLES)/ansi/TRE-IOM5.ANS -pix_fmt rgb24 -FATE_SAMPLES_AVCONV += fate-armovie-escape124 +FATE_SAMPLES_AVCONV-$(call DEMDEC, RPL, ESCAPE124) += fate-armovie-escape124 fate-armovie-escape124: CMD = framecrc -i $(SAMPLES)/rpl/ESCAPE.RPL -pix_fmt rgb24 -FATE_SAMPLES_AVCONV += fate-auravision-v1 +FATE_SAMPLES_AVCONV-$(call DEMDEC, AVI, AURA) += fate-auravision-v1 fate-auravision-v1: CMD = framecrc -i $(SAMPLES)/auravision/SOUVIDEO.AVI -an -FATE_SAMPLES_AVCONV += fate-auravision-v2 +FATE_SAMPLES_AVCONV-$(call DEMDEC, AVI, AURA2) += fate-auravision-v2 fate-auravision-v2: CMD = framecrc -i $(SAMPLES)/auravision/salma-hayek-in-ugly-betty-partial-avi -an -FATE_SAMPLES_AVCONV += fate-bethsoft-vid +FATE_SAMPLES_AVCONV-$(call DEMDEC, BETHSOFTVID, BETHSOFTVID) += fate-bethsoft-vid fate-bethsoft-vid: CMD = framecrc -i $(SAMPLES)/bethsoft-vid/ANIM0001.VID -t 5 -pix_fmt rgb24 -FATE_SAMPLES_AVCONV += fate-bfi +FATE_SAMPLES_AVCONV-$(call DEMDEC, BFI, BFI) += fate-bfi fate-bfi: CMD = framecrc -i $(SAMPLES)/bfi/2287.bfi -pix_fmt rgb24 -FATE_SAMPLES_AVCONV += fate-bink-video +FATE_SAMPLES_AVCONV-$(call DEMDEC, BINK, BINK) += fate-bink-video fate-bink-video: CMD = framecrc -i $(SAMPLES)/bink/hol2br.bik -FATE_SAMPLES_AVCONV += fate-bmv-video +FATE_SAMPLES_AVCONV-$(call DEMDEC, BMV, BMV_VIDEO) += fate-bmv-video fate-bmv-video: CMD = framecrc -i $(SAMPLES)/bmv/SURFING-partial.BMV -pix_fmt rgb24 -an -FATE_SAMPLES_AVCONV += fate-cdgraphics +FATE_SAMPLES_AVCONV-$(call DEMDEC, CDG, CDGRAPHICS) += fate-cdgraphics fate-cdgraphics: CMD = framecrc -i $(SAMPLES)/cdgraphics/BrotherJohn.cdg -pix_fmt rgb24 -t 1 -FATE_SAMPLES_AVCONV += fate-cljr +FATE_SAMPLES_AVCONV-$(call DEMDEC, AVI, CLJR) += fate-cljr fate-cljr: CMD = framecrc -i $(SAMPLES)/cljr/testcljr-partial.avi -FATE_SAMPLES_AVCONV += fate-corepng +FATE_SAMPLES_AVCONV-$(call DEMDEC, AVI, PNG) += fate-corepng fate-corepng: CMD = framecrc -i $(SAMPLES)/png1/corepng-partial.avi -FATE_SAMPLES_AVCONV += fate-creatureshock-avs +FATE_SAMPLES_AVCONV-$(call DEMDEC, AVS, AVS) += fate-creatureshock-avs fate-creatureshock-avs: CMD = framecrc -i $(SAMPLES)/creatureshock-avs/OUTATIME.AVS -pix_fmt rgb24 -FATE_CVID += fate-cvid-partial +FATE_CVID-$(CONFIG_AVI_DEMUXER) += fate-cvid-partial fate-cvid-partial: CMD = framecrc -i $(SAMPLES)/cvid/laracroft-cinepak-partial.avi -an -FATE_CVID += fate-cvid-palette +FATE_CVID-$(CONFIG_MOV_DEMUXER) += fate-cvid-palette fate-cvid-palette: CMD = framecrc -i $(SAMPLES)/cvid/catfight-cvid-pal8-partial.mov -pix_fmt rgb24 -an -FATE_CVID += fate-cvid-grayscale +FATE_CVID-$(CONFIG_AVI_DEMUXER) += fate-cvid-grayscale fate-cvid-grayscale: CMD = framecrc -i $(SAMPLES)/cvid/pcitva15.avi -an -FATE_SAMPLES_AVCONV += $(FATE_CVID) -fate-cvid: $(FATE_CVID) +FATE_SAMPLES_AVCONV-$(CONFIG_CINEPAK_DECODER) += $(FATE_CVID-yes) +fate-cvid: $(FATE_CVID-yes) -FATE_SAMPLES_AVCONV += fate-cyberia-c93 +FATE_SAMPLES_AVCONV-$(call DEMDEC, C93, C93) += fate-cyberia-c93 fate-cyberia-c93: CMD = framecrc -i $(SAMPLES)/cyberia-c93/intro1.c93 -t 3 -pix_fmt rgb24 -FATE_SAMPLES_AVCONV += fate-cyuv +FATE_SAMPLES_AVCONV-$(call DEMDEC, AVI, CYUV) += fate-cyuv fate-cyuv: CMD = framecrc -i $(SAMPLES)/cyuv/cyuv.avi -FATE_SAMPLES_AVCONV += fate-delphine-cin-video +FATE_SAMPLES_AVCONV-$(call DEMDEC, DSICIN, DSICINVIDEO) += fate-delphine-cin-video fate-delphine-cin-video: CMD = framecrc -i $(SAMPLES)/delphine-cin/LOGO-partial.CIN -pix_fmt rgb24 -an -FATE_SAMPLES_AVCONV += fate-deluxepaint-anm +FATE_SAMPLES_AVCONV-$(call DEMDEC, ANM, ANM) += fate-deluxepaint-anm fate-deluxepaint-anm: CMD = framecrc -i $(SAMPLES)/deluxepaint-anm/INTRO1.ANM -pix_fmt rgb24 FATE_TRUEMOTION1 += fate-truemotion1-15 @@ -82,10 +82,10 @@ fate-truemotion1-15: CMD = framecrc -i $(SAMPLES)/duck/phant2-940.duk -pix_fmt r FATE_TRUEMOTION1 += fate-truemotion1-24 fate-truemotion1-24: CMD = framecrc -i $(SAMPLES)/duck/sonic3dblast_intro-partial.avi -pix_fmt rgb24 -an -FATE_SAMPLES_AVCONV += $(FATE_TRUEMOTION1) +FATE_SAMPLES_AVCONV-$(call DEMDEC, AVI, TRUEMOTION1) += $(FATE_TRUEMOTION1) fate-truemotion1: $(FATE_TRUEMOTION1) -FATE_SAMPLES_AVCONV += fate-truemotion2 +FATE_SAMPLES_AVCONV-$(call DEMDEC, AVI, TRUEMOTION2) += fate-truemotion2 fate-truemotion2: CMD = framecrc -i $(SAMPLES)/duck/tm20.avi FATE_DXA += fate-dxa-feeble @@ -94,10 +94,10 @@ fate-dxa-feeble: CMD = framecrc -i $(SAMPLES)/dxa/meetsquid.dxa -t 2 -pix_fmt rg FATE_DXA += fate-dxa-scummvm fate-dxa-scummvm: CMD = framecrc -i $(SAMPLES)/dxa/scummvm.dxa -pix_fmt rgb24 -FATE_SAMPLES_AVCONV += $(FATE_DXA) +FATE_SAMPLES_AVCONV-$(call DEMDEC, DXA, DXA) += $(FATE_DXA) fate-dxa: $(FATE_DXA) -FATE_SAMPLES_AVCONV += fate-film-cvid +FATE_SAMPLES_AVCONV-$(call DEMDEC, SEGAFILM, CINEPAK) += fate-film-cvid fate-film-cvid: CMD = framecrc -i $(SAMPLES)/film/logo-capcom.cpk -an FATE_FLIC += fate-flic-af11-palette-change @@ -109,58 +109,58 @@ fate-flic-af12: CMD = framecrc -i $(SAMPLES)/fli/jj00c2.fli -pix_fmt rgb24 FATE_FLIC += fate-flic-magiccarpet fate-flic-magiccarpet: CMD = framecrc -i $(SAMPLES)/fli/intel.dat -pix_fmt rgb24 -FATE_SAMPLES_AVCONV += $(FATE_FLIC) +FATE_SAMPLES_AVCONV-$(call DEMDEC, FLIC, FLIC) += $(FATE_FLIC) fate-flic: $(FATE_FLIC) -FATE_SAMPLES_AVCONV += fate-frwu +FATE_SAMPLES_AVCONV-$(call DEMDEC, AVI, FRWU) += fate-frwu fate-frwu: CMD = framecrc -i $(SAMPLES)/frwu/frwu.avi -FATE_SAMPLES_AVCONV += fate-id-cin-video +FATE_SAMPLES_AVCONV-$(call DEMDEC, IDCIN, IDCIN) += fate-id-cin-video fate-id-cin-video: CMD = framecrc -i $(SAMPLES)/idcin/idlog-2MB.cin -pix_fmt rgb24 -FATE_SAMPLES_AVCONV += fate-idroq-video-encode +FATE_SAMPLES_AVCONV-$(call ENCDEC, ROQ PGMYUV, ROQ IMAGE2) += fate-idroq-video-encode fate-idroq-video-encode: CMD = md5 -f image2 -vcodec pgmyuv -i $(SAMPLES)/ffmpeg-synthetic/vsynth1/%02d.pgm -sws_flags +bitexact -vf pad=512:512:80:112 -f roq -t 0.2 -FATE_IFF += fate-iff-byterun1 +FATE_IFF-$(CONFIG_IFF_BYTERUN1_DECODER) += fate-iff-byterun1 fate-iff-byterun1: CMD = framecrc -i $(SAMPLES)/iff/ASH.LBM -pix_fmt rgb24 -FATE_IFF += fate-iff-fibonacci +FATE_IFF-$(CONFIG_EIGHTSVX_FIB_DECODER) += fate-iff-fibonacci fate-iff-fibonacci: CMD = md5 -i $(SAMPLES)/iff/dasboot-in-compressed -f s16le -FATE_IFF += fate-iff-ilbm +FATE_IFF-$(CONFIG_IFF_ILBM_DECODER) += fate-iff-ilbm fate-iff-ilbm: CMD = framecrc -i $(SAMPLES)/iff/lms-matriks.ilbm -pix_fmt rgb24 -FATE_SAMPLES_AVCONV += $(FATE_IFF) -fate-iff: $(FATE_IFF) +FATE_SAMPLES_AVCONV-$(CONFIG_IFF_DEMUXER) += $(FATE_IFF-yes) +fate-iff: $(FATE_IFF-yes) -FATE_SAMPLES_AVCONV += fate-interplay-mve-8bit +FATE_SAMPLES_AVCONV-$(call DEMDEC, IPMOVIE, INTERPLAY_VIDEO) += fate-interplay-mve-8bit fate-interplay-mve-8bit: CMD = framecrc -i $(SAMPLES)/interplay-mve/interplay-logo-2MB.mve -pix_fmt rgb24 -an -FATE_SAMPLES_AVCONV += fate-interplay-mve-16bit +FATE_SAMPLES_AVCONV-$(call DEMDEC, IPMOVIE, INTERPLAY_VIDEO) += fate-interplay-mve-16bit fate-interplay-mve-16bit: CMD = framecrc -i $(SAMPLES)/interplay-mve/descent3-level5-16bit-partial.mve -pix_fmt rgb24 -an -FATE_SAMPLES_AVCONV += fate-kgv1 +FATE_SAMPLES_AVCONV-$(call DEMDEC, AVI, KGV1) += fate-kgv1 fate-kgv1: CMD = framecrc -i $(SAMPLES)/kega/kgv1.avi -pix_fmt rgb555le -an -FATE_SAMPLES_AVCONV += fate-kmvc +FATE_SAMPLES_AVCONV-$(call DEMDEC, AVI, KMVC) += fate-kmvc fate-kmvc: CMD = framecrc -i $(SAMPLES)/KMVC/LOGO1.AVI -an -t 3 -pix_fmt rgb24 -FATE_SAMPLES_AVCONV += fate-mdec +FATE_SAMPLES_AVCONV-$(call DEMDEC, EA, MDEC) += fate-mdec fate-mdec: CMD = framecrc -idct simple -i $(SAMPLES)/ea-dct/NFS2Esprit-partial.dct -an -FATE_SAMPLES_AVCONV += fate-mdec-v3 +FATE_SAMPLES_AVCONV-$(call DEMDEC, STR, MDEC) += fate-mdec-v3 fate-mdec-v3: CMD = framecrc -idct simple -i $(SAMPLES)/psx-str/abc000_cut.str -an -FATE_SAMPLES_AVCONV += fate-mimic +FATE_SAMPLES_AVCONV-$(call DEMDEC, MSNWC_TCP, MIMIC) += fate-mimic fate-mimic: CMD = framecrc -idct simple -i $(SAMPLES)/mimic/mimic2-womanloveffmpeg.cam -FATE_SAMPLES_AVCONV += fate-mjpegb +FATE_SAMPLES_AVCONV-$(call DEMDEC, MOV, MJPEGB) += fate-mjpegb fate-mjpegb: CMD = framecrc -idct simple -flags +bitexact -i $(SAMPLES)/mjpegb/mjpegb_part.mov -an -FATE_SAMPLES_AVCONV += fate-motionpixels +FATE_SAMPLES_AVCONV-$(call DEMDEC, MVI, MOTIONPIXELS) += fate-motionpixels fate-motionpixels: CMD = framecrc -i $(SAMPLES)/motion-pixels/INTRO-partial.MVI -an -pix_fmt rgb24 -vframes 111 -FATE_SAMPLES_AVCONV += fate-mpeg2-field-enc +FATE_SAMPLES_AVCONV-$(call DEMDEC, MPEGTS, MPEG2VIDEO) += fate-mpeg2-field-enc fate-mpeg2-field-enc: CMD = framecrc -flags +bitexact -dct fastint -idct simple -i $(SAMPLES)/mpeg2/mpeg2_field_encoding.ts -an # FIXME dropped frames in this test because of coarse timebase @@ -170,43 +170,43 @@ fate-nuv-rtjpeg: CMD = framecrc -idct simple -i $(SAMPLES)/nuv/Today.nuv -an FATE_NUV += fate-nuv-rtjpeg-fh fate-nuv-rtjpeg-fh: CMD = framecrc -idct simple -i $(SAMPLES)/nuv/rtjpeg_frameheader.nuv -an -FATE_SAMPLES_AVCONV += $(FATE_NUV) +FATE_SAMPLES_AVCONV-$(call DEMDEC, NUV, NUV) += $(FATE_NUV) fate-nuv: $(FATE_NUV) -FATE_SAMPLES_AVCONV += fate-qpeg +FATE_SAMPLES_AVCONV-$(call DEMDEC, AVI, QPEG) += fate-qpeg fate-qpeg: CMD = framecrc -i $(SAMPLES)/qpeg/Clock.avi -an -pix_fmt rgb24 -FATE_SAMPLES_AVCONV += fate-r210 +FATE_SAMPLES_AVCONV-$(call DEMDEC, AVI, R210) += fate-r210 fate-r210: CMD = framecrc -i $(SAMPLES)/r210/r210.avi -pix_fmt rgb48le -FATE_SAMPLES_AVCONV += fate-rl2 +FATE_SAMPLES_AVCONV-$(call DEMDEC, RL2, RL2) += fate-rl2 fate-rl2: CMD = framecrc -i $(SAMPLES)/rl2/Z4915300.RL2 -pix_fmt rgb24 -an -FATE_SAMPLES_AVCONV += fate-roqvideo +FATE_SAMPLES_AVCONV-$(call DEMDEC, ROQ, ROQ) += fate-roqvideo fate-roqvideo: CMD = framecrc -i $(SAMPLES)/idroq/idlogo.roq -an -FATE_SAMPLES_AVCONV += fate-sierra-vmd-video +FATE_SAMPLES_AVCONV-$(call DEMDEC, VMD, VMDVIDEO) += fate-sierra-vmd-video fate-sierra-vmd-video: CMD = framecrc -i $(SAMPLES)/vmd/12.vmd -pix_fmt rgb24 -an -FATE_SAMPLES_AVCONV += fate-smacker-video +FATE_SAMPLES_AVCONV-$(call DEMDEC, SMACKER, SMACKER) += fate-smacker-video fate-smacker-video: CMD = framecrc -i $(SAMPLES)/smacker/wetlogo.smk -pix_fmt rgb24 -an -FATE_SAMPLES_AVCONV += fate-smc +FATE_SAMPLES_AVCONV-$(call DEMDEC, MOV, SMC) += fate-smc fate-smc: CMD = framecrc -i $(SAMPLES)/smc/cass_schi.qt -pix_fmt rgb24 -FATE_SAMPLES_AVCONV += fate-sp5x +FATE_SAMPLES_AVCONV-$(call DEMDEC, AVI, SP5X) += fate-sp5x fate-sp5x: CMD = framecrc -idct simple -i $(SAMPLES)/sp5x/sp5x_problem.avi -FATE_SAMPLES_AVCONV += fate-sub-srt +FATE_SAMPLES_AVCONV-$(call DEMDEC, SRT, SRT) += fate-sub-srt fate-sub-srt: CMD = md5 -i $(SAMPLES)/sub/SubRip_capability_tester.srt -f ass -FATE_SAMPLES_AVCONV += fate-thp +FATE_SAMPLES_AVCONV-$(call DEMDEC, THP, THP) += fate-thp fate-thp: CMD = framecrc -idct simple -i $(SAMPLES)/thp/pikmin2-opening1-partial.thp -an -FATE_SAMPLES_AVCONV += fate-tiertex-seq +FATE_SAMPLES_AVCONV-$(call DEMDEC, TIERTEXSEQ, TIERTEXSEQVIDEO) += fate-tiertex-seq fate-tiertex-seq: CMD = framecrc -i $(SAMPLES)/tiertex-seq/Gameover.seq -pix_fmt rgb24 -FATE_SAMPLES_AVCONV += fate-tmv +FATE_SAMPLES_AVCONV-$(call DEMDEC, TMV, TMV) += fate-tmv fate-tmv: CMD = framecrc -i $(SAMPLES)/tmv/pop-partial.tmv -pix_fmt rgb24 FATE_TXD += fate-txd-16bpp @@ -215,39 +215,39 @@ fate-txd-16bpp: CMD = framecrc -i $(SAMPLES)/txd/misc.txd -pix_fmt bgra -an FATE_TXD += fate-txd-pal8 fate-txd-pal8: CMD = framecrc -i $(SAMPLES)/txd/outro.txd -pix_fmt rgb24 -an -FATE_SAMPLES_AVCONV += $(FATE_TXD) +FATE_SAMPLES_AVCONV-$(call DEMDEC, TXD, TXD) += $(FATE_TXD) fate-txd: $(FATE_TXD) -FATE_SAMPLES_AVCONV += fate-ulti +FATE_SAMPLES_AVCONV-$(call DEMDEC, AVI, ULTI) += fate-ulti fate-ulti: CMD = framecrc -i $(SAMPLES)/ulti/hit12w.avi -an -FATE_SAMPLES_AVCONV += fate-v210 +FATE_SAMPLES_AVCONV-$(call DEMDEC, AVI, V210) += fate-v210 fate-v210: CMD = framecrc -i $(SAMPLES)/v210/v210_720p-partial.avi -pix_fmt yuv422p16be -an -FATE_SAMPLES_AVCONV += fate-v410dec +FATE_SAMPLES_AVCONV-$(call DEMDEC, MOV, V410) += fate-v410dec fate-v410dec: CMD = framecrc -i $(SAMPLES)/v410/lenav410.mov -pix_fmt yuv444p10le -FATE_SAMPLES_AVCONV += fate-v410enc +FATE_SAMPLES_AVCONV-$(call ENCDEC, V410 PGMYUV, AVI IMAGE2) += 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 -FATE_SAMPLES_AVCONV += fate-vcr1 +FATE_SAMPLES_AVCONV-$(call DEMDEC, AVI, VCR1) += fate-vcr1 fate-vcr1: CMD = framecrc -i $(SAMPLES)/vcr1/VCR1test.avi -an -FATE_SAMPLES_AVCONV += fate-videoxl +FATE_SAMPLES_AVCONV-$(call DEMDEC, AVI, XL) += fate-videoxl fate-videoxl: CMD = framecrc -i $(SAMPLES)/vixl/pig-vixl.avi -FATE_SAMPLES_AVCONV += fate-vqa-cc +FATE_SAMPLES_AVCONV-$(call DEMDEC, WSVQA, VQA) += fate-vqa-cc fate-vqa-cc: CMD = framecrc -i $(SAMPLES)/vqa/cc-demo1-partial.vqa -pix_fmt rgb24 -an -FATE_SAMPLES_AVCONV += fate-wc3movie-xan +FATE_SAMPLES_AVCONV-$(call DEMDEC, WC3, XAN_WC3) += fate-wc3movie-xan fate-wc3movie-xan: CMD = framecrc -i $(SAMPLES)/wc3movie/SC_32-part.MVE -pix_fmt rgb24 -FATE_SAMPLES_AVCONV += fate-wnv1 +FATE_SAMPLES_AVCONV-$(call DEMDEC, AVI, WNV1) += fate-wnv1 fate-wnv1: CMD = framecrc -i $(SAMPLES)/wnv1/wnv1-codec.avi -an -FATE_SAMPLES_AVCONV += fate-yop +FATE_SAMPLES_AVCONV-$(call DEMDEC, YOP, YOP) += fate-yop fate-yop: CMD = framecrc -i $(SAMPLES)/yop/test1.yop -pix_fmt rgb24 -an -FATE_SAMPLES_AVCONV += fate-xxan-wc4 +FATE_SAMPLES_AVCONV-$(call DEMDEC, AVI, XAN_WC4) += fate-xxan-wc4 fate-xxan-wc4: CMD = framecrc -i $(SAMPLES)/wc4-xan/wc4trailer-partial.avi -an From d2d08d706b8f4fa0043f0f9ee001e7de2588d486 Mon Sep 17 00:00:00 2001 From: Hendrik Leppkes Date: Fri, 19 Oct 2012 22:07:10 +0200 Subject: [PATCH 6/9] gitignore: ignore files created by msvc exp files are created in every build and contain export information of the libraries. Both pdb and ilk are created during debug builds, and contain linking and debug information used by MSVC. Signed-off-by: Luca Barbato --- .gitignore | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.gitignore b/.gitignore index 19dbe88ff6..8589127fb9 100644 --- a/.gitignore +++ b/.gitignore @@ -4,9 +4,12 @@ *.def *.dll *.exe +*.exp *.h.c +*.ilk *.lib *.pc +*.pdb *.so *.so.* *.ver From 2f41eaa9c6b5699ed7c3c09b1a39b3322d8e7175 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Martin=20Storsj=C3=B6?= Date: Wed, 17 Oct 2012 16:46:29 +0300 Subject: [PATCH 7/9] rtsp: Make sure the ret variable is initialized in ff_rtsp_fetch_packet MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Martin Storsjö --- libavformat/rtsp.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/libavformat/rtsp.c b/libavformat/rtsp.c index 160c0f7bbc..bbe08e686e 100644 --- a/libavformat/rtsp.c +++ b/libavformat/rtsp.c @@ -1808,7 +1808,8 @@ int ff_rtsp_fetch_packet(AVFormatContext *s, AVPacket *pkt) rt->recvbuf_pos += ret; ret = rt->recvbuf_pos < rt->recvbuf_len; } - } + } else + ret = -1; if (ret == 0) { rt->cur_transport_priv = NULL; return 0; From 1846ddf0a7870e6862905121d4e9da1c283d6ff6 Mon Sep 17 00:00:00 2001 From: Mans Rullgard Date: Fri, 19 Oct 2012 13:39:11 +0100 Subject: [PATCH 8/9] ARM: fix overreads in neon h264 chroma mc The loops were reading ahead one line, which could end up outside the buffer for reference blocks at the edge of the picture. Removing this readahead has no measurable performance impact. Signed-off-by: Mans Rullgard --- libavcodec/arm/h264cmc_neon.S | 86 ++++++++++++----------------------- 1 file changed, 28 insertions(+), 58 deletions(-) diff --git a/libavcodec/arm/h264cmc_neon.S b/libavcodec/arm/h264cmc_neon.S index c7e54605bb..3427e36011 100644 --- a/libavcodec/arm/h264cmc_neon.S +++ b/libavcodec/arm/h264cmc_neon.S @@ -51,24 +51,20 @@ T cmp r7, #0 beq 2f - add r5, r1, r2 - vdup.8 d0, r4 - lsl r4, r2, #1 vdup.8 d1, r12 - vld1.8 {d4, d5}, [r1], r4 + vld1.8 {d4, d5}, [r1], r2 vdup.8 d2, r6 - vld1.8 {d6, d7}, [r5], r4 vdup.8 d3, r7 - vext.8 d5, d4, d5, #1 - vext.8 d7, d6, d7, #1 -1: pld [r5] +1: vld1.8 {d6, d7}, [r1], r2 vmull.u8 q8, d4, d0 vmlal.u8 q8, d5, d1 - vld1.8 {d4, d5}, [r1], r4 + vext.8 d7, d6, d7, #1 + vld1.8 {d4, d5}, [r1], r2 vmlal.u8 q8, d6, d2 + pld [r1] vext.8 d5, d4, d5, #1 vmlal.u8 q8, d7, d3 vmull.u8 q9, d6, d0 @@ -76,8 +72,7 @@ T cmp r7, #0 vmlal.u8 q9, d7, d1 vmlal.u8 q9, d4, d2 vmlal.u8 q9, d5, d3 - vld1.8 {d6, d7}, [r5], r4 - pld [r1] + pld [r1, r2] .ifc \codec,h264 vrshrn.u16 d16, q8, #6 vrshrn.u16 d17, q9, #6 @@ -92,7 +87,6 @@ T cmp r7, #0 vld1.8 {d21}, [lr,:64], r2 vrhadd.u8 q8, q8, q10 .endif - vext.8 d7, d6, d7, #1 vst1.8 {d16}, [r0,:64], r2 vst1.8 {d17}, [r0,:64], r2 bgt 1b @@ -106,18 +100,15 @@ T cmp r7, #0 beq 4f - add r5, r1, r2 - lsl r4, r2, #1 - vld1.8 {d4}, [r1], r4 - vld1.8 {d6}, [r5], r4 + vld1.8 {d4}, [r1], r2 -3: pld [r5] +3: vld1.8 {d6}, [r1], r2 vmull.u8 q8, d4, d0 vmlal.u8 q8, d6, d1 - vld1.8 {d4}, [r1], r4 + vld1.8 {d4}, [r1], r2 vmull.u8 q9, d6, d0 vmlal.u8 q9, d4, d1 - vld1.8 {d6}, [r5], r4 + pld [r1] .ifc \codec,h264 vrshrn.u16 d16, q8, #6 vrshrn.u16 d17, q9, #6 @@ -127,13 +118,13 @@ T cmp r7, #0 vshrn.u16 d16, q8, #6 vshrn.u16 d17, q9, #6 .endif + pld [r1, r2] .ifc \type,avg vld1.8 {d20}, [lr,:64], r2 vld1.8 {d21}, [lr,:64], r2 vrhadd.u8 q8, q8, q10 .endif subs r3, r3, #2 - pld [r1] vst1.8 {d16}, [r0,:64], r2 vst1.8 {d17}, [r0,:64], r2 bgt 3b @@ -144,16 +135,13 @@ T cmp r7, #0 vld1.8 {d6, d7}, [r1], r2 vext.8 d5, d4, d5, #1 vext.8 d7, d6, d7, #1 - -5: pld [r1] + pld [r1] subs r3, r3, #2 vmull.u8 q8, d4, d0 vmlal.u8 q8, d5, d1 - vld1.8 {d4, d5}, [r1], r2 vmull.u8 q9, d6, d0 vmlal.u8 q9, d7, d1 - pld [r1] - vext.8 d5, d4, d5, #1 + pld [r1, r2] .ifc \codec,h264 vrshrn.u16 d16, q8, #6 vrshrn.u16 d17, q9, #6 @@ -168,11 +156,9 @@ T cmp r7, #0 vld1.8 {d21}, [lr,:64], r2 vrhadd.u8 q8, q8, q10 .endif - vld1.8 {d6, d7}, [r1], r2 - vext.8 d7, d6, d7, #1 vst1.8 {d16}, [r0,:64], r2 vst1.8 {d17}, [r0,:64], r2 - bgt 5b + bgt 4b pop {r4-r7, pc} endfunc @@ -209,33 +195,29 @@ T cmp r7, #0 beq 2f - add r5, r1, r2 - vdup.8 d0, r4 - lsl r4, r2, #1 vdup.8 d1, r12 - vld1.8 {d4}, [r1], r4 + vld1.8 {d4}, [r1], r2 vdup.8 d2, r6 - vld1.8 {d6}, [r5], r4 vdup.8 d3, r7 vext.8 d5, d4, d5, #1 - vext.8 d7, d6, d7, #1 vtrn.32 d4, d5 - vtrn.32 d6, d7 vtrn.32 d0, d1 vtrn.32 d2, d3 -1: pld [r5] +1: vld1.8 {d6}, [r1], r2 + vext.8 d7, d6, d7, #1 + vtrn.32 d6, d7 vmull.u8 q8, d4, d0 vmlal.u8 q8, d6, d2 - vld1.8 {d4}, [r1], r4 + vld1.8 {d4}, [r1], r2 vext.8 d5, d4, d5, #1 vtrn.32 d4, d5 + pld [r1] vmull.u8 q9, d6, d0 vmlal.u8 q9, d4, d2 - vld1.8 {d6}, [r5], r4 vadd.i16 d16, d16, d17 vadd.i16 d17, d18, d19 .ifc \codec,h264 @@ -245,14 +227,12 @@ T cmp r7, #0 vshrn.u16 d16, q8, #6 .endif subs r3, r3, #2 - pld [r1] + pld [r1, r2] .ifc \type,avg vld1.32 {d20[0]}, [lr,:32], r2 vld1.32 {d20[1]}, [lr,:32], r2 vrhadd.u8 d16, d16, d20 .endif - vext.8 d7, d6, d7, #1 - vtrn.32 d6, d7 vst1.32 {d16[0]}, [r0,:32], r2 vst1.32 {d16[1]}, [r0,:32], r2 bgt 1b @@ -268,18 +248,15 @@ T cmp r7, #0 beq 4f vext.32 d1, d0, d1, #1 - add r5, r1, r2 - lsl r4, r2, #1 - vld1.32 {d4[0]}, [r1], r4 - vld1.32 {d4[1]}, [r5], r4 + vld1.32 {d4[0]}, [r1], r2 -3: pld [r5] +3: vld1.32 {d4[1]}, [r1], r2 vmull.u8 q8, d4, d0 - vld1.32 {d4[0]}, [r1], r4 + vld1.32 {d4[0]}, [r1], r2 vmull.u8 q9, d4, d1 - vld1.32 {d4[1]}, [r5], r4 vadd.i16 d16, d16, d17 vadd.i16 d17, d18, d19 + pld [r1] .ifc \codec,h264 vrshrn.u16 d16, q8, #6 .else @@ -292,7 +269,7 @@ T cmp r7, #0 vrhadd.u8 d16, d16, d20 .endif subs r3, r3, #2 - pld [r1] + pld [r1, r2] vst1.32 {d16[0]}, [r0,:32], r2 vst1.32 {d16[1]}, [r0,:32], r2 bgt 3b @@ -305,13 +282,9 @@ T cmp r7, #0 vext.8 d7, d6, d7, #1 vtrn.32 d4, d5 vtrn.32 d6, d7 - -5: vmull.u8 q8, d4, d0 + vmull.u8 q8, d4, d0 vmull.u8 q9, d6, d0 subs r3, r3, #2 - vld1.8 {d4}, [r1], r2 - vext.8 d5, d4, d5, #1 - vtrn.32 d4, d5 vadd.i16 d16, d16, d17 vadd.i16 d17, d18, d19 pld [r1] @@ -326,13 +299,10 @@ T cmp r7, #0 vld1.32 {d20[1]}, [lr,:32], r2 vrhadd.u8 d16, d16, d20 .endif - vld1.8 {d6}, [r1], r2 - vext.8 d7, d6, d7, #1 - vtrn.32 d6, d7 pld [r1] vst1.32 {d16[0]}, [r0,:32], r2 vst1.32 {d16[1]}, [r0,:32], r2 - bgt 5b + bgt 4b pop {r4-r7, pc} endfunc From c9ef43215c7d68c2cdcdbe02287aa114f27a32ed Mon Sep 17 00:00:00 2001 From: Mans Rullgard Date: Thu, 18 Oct 2012 03:18:39 +0100 Subject: [PATCH 9/9] fate-vc1: add dependencies Signed-off-by: Mans Rullgard --- tests/fate/microsoft.mak | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/tests/fate/microsoft.mak b/tests/fate/microsoft.mak index ed361ed31a..a3ca3ed5e6 100644 --- a/tests/fate/microsoft.mak +++ b/tests/fate/microsoft.mak @@ -20,23 +20,23 @@ fate-wmv8-drm-nodec: CMD = framecrc -cryptokey 137381538c84c068111902a59c5cf6c34 FATE_SAMPLES_AVCONV-$(call DEMDEC, ASF, WMV3) += $(FATE_WMV8_DRM) fate-wmv8_drm: $(FATE_WMV8_DRM) -FATE_VC1 += fate-vc1_sa00040 +FATE_VC1-$(CONFIG_VC1_DEMUXER) += fate-vc1_sa00040 fate-vc1_sa00040: CMD = framecrc -i $(SAMPLES)/vc1/SA00040.vc1 -FATE_VC1 += fate-vc1_sa00050 +FATE_VC1-$(CONFIG_VC1_DEMUXER) += fate-vc1_sa00050 fate-vc1_sa00050: CMD = framecrc -i $(SAMPLES)/vc1/SA00050.vc1 -FATE_VC1 += fate-vc1_sa10091 +FATE_VC1-$(CONFIG_VC1_DEMUXER) += fate-vc1_sa10091 fate-vc1_sa10091: CMD = framecrc -i $(SAMPLES)/vc1/SA10091.vc1 -FATE_VC1 += fate-vc1_sa20021 +FATE_VC1-$(CONFIG_VC1_DEMUXER) += fate-vc1_sa20021 fate-vc1_sa20021: CMD = framecrc -i $(SAMPLES)/vc1/SA20021.vc1 -FATE_VC1 += fate-vc1_sa10143 +FATE_VC1-$(CONFIG_VC1_DEMUXER) += fate-vc1_sa10143 fate-vc1_sa10143: CMD = framecrc -i $(SAMPLES)/vc1/SA10143.vc1 -FATE_VC1 += fate-vc1-ism +FATE_VC1-$(CONFIG_MOV_DEMUXER) += fate-vc1-ism fate-vc1-ism: CMD = framecrc -i $(SAMPLES)/isom/vc1-wmapro.ism -an -FATE_SAMPLES_AVCONV += $(FATE_VC1) -fate-vc1: $(FATE_VC1) +FATE_SAMPLES_AVCONV-$(CONFIG_VC1_DECODER) += $(FATE_VC1-yes) +fate-vc1: $(FATE_VC1-yes)