diff options
author | Michael Niedermayer <michaelni@gmx.at> | 2013-01-21 16:28:04 +0100 |
---|---|---|
committer | Michael Niedermayer <michaelni@gmx.at> | 2013-01-21 16:28:04 +0100 |
commit | cf4515ecd985aab899f24a6b7d18432001e670fa (patch) | |
tree | 044e03a1909155a1f27871371b0043c2baa758ed | |
parent | 6ea8a830e8f1eee465174c479840b18b4963d43d (diff) | |
parent | ce378f0dd0c4e5350b3280e6b3e8d6b46fe4b0a3 (diff) | |
download | ffmpeg-cf4515ecd985aab899f24a6b7d18432001e670fa.tar.gz |
Merge commit 'ce378f0dd0c4e5350b3280e6b3e8d6b46fe4b0a3'
* commit 'ce378f0dd0c4e5350b3280e6b3e8d6b46fe4b0a3':
fate: Use wmv2 IDCT for wmv2 tests
vorbisdsp: change block_size type from int to intptr_t.
Conflicts:
tests/fate-run.sh
tests/fate/vcodec.mak
Merged-by: Michael Niedermayer <michaelni@gmx.at>
-rw-r--r-- | libavcodec/arm/vorbisdsp_init_arm.c | 3 | ||||
-rw-r--r-- | libavcodec/ppc/vorbisdsp_altivec.c | 2 | ||||
-rw-r--r-- | libavcodec/vorbis.h | 2 | ||||
-rw-r--r-- | libavcodec/vorbisdec.c | 2 | ||||
-rw-r--r-- | libavcodec/vorbisdsp.h | 5 | ||||
-rw-r--r-- | libavcodec/wmv2enc.c | 4 | ||||
-rw-r--r-- | libavcodec/x86/vorbisdsp_init.c | 6 | ||||
-rwxr-xr-x | tests/fate-run.sh | 3 | ||||
-rw-r--r-- | tests/fate/vcodec.mak | 7 |
9 files changed, 23 insertions, 11 deletions
diff --git a/libavcodec/arm/vorbisdsp_init_arm.c b/libavcodec/arm/vorbisdsp_init_arm.c index 8744638bb1..1aeffad27e 100644 --- a/libavcodec/arm/vorbisdsp_init_arm.c +++ b/libavcodec/arm/vorbisdsp_init_arm.c @@ -24,7 +24,8 @@ #include "libavutil/arm/cpu.h" #include "libavcodec/vorbisdsp.h" -void ff_vorbis_inverse_coupling_neon(float *mag, float *ang, int blocksize); +void ff_vorbis_inverse_coupling_neon(float *mag, float *ang, + intptr_t blocksize); void ff_vorbisdsp_init_arm(VorbisDSPContext *c) { diff --git a/libavcodec/ppc/vorbisdsp_altivec.c b/libavcodec/ppc/vorbisdsp_altivec.c index 40434033d5..cff881f14b 100644 --- a/libavcodec/ppc/vorbisdsp_altivec.c +++ b/libavcodec/ppc/vorbisdsp_altivec.c @@ -27,7 +27,7 @@ #if HAVE_ALTIVEC static void vorbis_inverse_coupling_altivec(float *mag, float *ang, - int blocksize) + intptr_t blocksize) { int i; vector float m, a; diff --git a/libavcodec/vorbis.h b/libavcodec/vorbis.h index 0bab0b9c0f..a8309241c2 100644 --- a/libavcodec/vorbis.h +++ b/libavcodec/vorbis.h @@ -43,7 +43,7 @@ int ff_vorbis_len2vlc(uint8_t *bits, uint32_t *codes, unsigned num); void ff_vorbis_floor1_render_list(vorbis_floor1_entry * list, int values, uint16_t *y_list, int *flag, int multiplier, float * out, int samples); -void ff_vorbis_inverse_coupling(float *mag, float *ang, int blocksize); +void ff_vorbis_inverse_coupling(float *mag, float *ang, intptr_t blocksize); #define ilog(i) av_log2(2*(i)) diff --git a/libavcodec/vorbisdec.c b/libavcodec/vorbisdec.c index b05f8f54be..deaf4fd7dc 100644 --- a/libavcodec/vorbisdec.c +++ b/libavcodec/vorbisdec.c @@ -1460,7 +1460,7 @@ static inline int vorbis_residue_decode(vorbis_context *vc, vorbis_residue *vr, } } -void ff_vorbis_inverse_coupling(float *mag, float *ang, int blocksize) +void ff_vorbis_inverse_coupling(float *mag, float *ang, intptr_t blocksize) { int i; for (i = 0; i < blocksize; i++) { diff --git a/libavcodec/vorbisdsp.h b/libavcodec/vorbisdsp.h index e813a39865..ed14049c8c 100644 --- a/libavcodec/vorbisdsp.h +++ b/libavcodec/vorbisdsp.h @@ -19,9 +19,12 @@ #ifndef AVCODEC_VORBISDSP_H #define AVCODEC_VORBISDSP_H +#include <stdint.h> + typedef struct VorbisDSPContext { /* assume len is a multiple of 4, and arrays are 16-byte aligned */ - void (*vorbis_inverse_coupling)(float *mag, float *ang, int blocksize); + void (*vorbis_inverse_coupling)(float *mag, float *ang, + intptr_t blocksize); } VorbisDSPContext; void ff_vorbisdsp_init(VorbisDSPContext *dsp); diff --git a/libavcodec/wmv2enc.c b/libavcodec/wmv2enc.c index e6e1e678c1..e5f3752145 100644 --- a/libavcodec/wmv2enc.c +++ b/libavcodec/wmv2enc.c @@ -55,6 +55,10 @@ static int encode_ext_header(Wmv2Context *w){ static av_cold int wmv2_encode_init(AVCodecContext *avctx){ Wmv2Context * const w= avctx->priv_data; + if(avctx->idct_algo==FF_IDCT_AUTO){ + avctx->idct_algo=FF_IDCT_WMV2; + } + if(ff_MPV_encode_init(avctx) < 0) return -1; diff --git a/libavcodec/x86/vorbisdsp_init.c b/libavcodec/x86/vorbisdsp_init.c index 49ddf7cac8..1ba04b55b3 100644 --- a/libavcodec/x86/vorbisdsp_init.c +++ b/libavcodec/x86/vorbisdsp_init.c @@ -25,7 +25,8 @@ #if HAVE_INLINE_ASM #if ARCH_X86_32 -static void vorbis_inverse_coupling_3dnow(float *mag, float *ang, int blocksize) +static void vorbis_inverse_coupling_3dnow(float *mag, float *ang, + intptr_t blocksize) { int i; __asm__ volatile ("pxor %%mm7, %%mm7":); @@ -54,7 +55,8 @@ static void vorbis_inverse_coupling_3dnow(float *mag, float *ang, int blocksize) } #endif -static void vorbis_inverse_coupling_sse(float *mag, float *ang, int blocksize) +static void vorbis_inverse_coupling_sse(float *mag, float *ang, + intptr_t blocksize) { int i; diff --git a/tests/fate-run.sh b/tests/fate-run.sh index 0520d62f7d..95bc9703ca 100755 --- a/tests/fate-run.sh +++ b/tests/fate-run.sh @@ -128,6 +128,7 @@ enc_dec(){ enc_opt=$4 dec_fmt=$5 dec_opt=$6 + ddc_opt=$8 encfile="${outdir}/${test}.${enc_fmt}" decfile="${outdir}/${test}.out.${dec_fmt}" cleanfiles="$cleanfiles $decfile" @@ -139,7 +140,7 @@ enc_dec(){ -f $enc_fmt -y $tencfile || return do_md5sum $encfile echo $(wc -c $encfile) - ffmpeg $8 $DEC_OPTS -i $tencfile $ENC_OPTS $dec_opt $FLAGS \ + ffmpeg $DEC_OPTS $ddc_opt -i $tencfile $ENC_OPTS $dec_opt $FLAGS \ -f $dec_fmt -y $tdecfile || return do_md5sum $decfile tests/tiny_psnr $srcfile $decfile $cmp_unit $cmp_shift diff --git a/tests/fate/vcodec.mak b/tests/fate/vcodec.mak index f10e80c3e7..b12c112e8d 100644 --- a/tests/fate/vcodec.mak +++ b/tests/fate/vcodec.mak @@ -2,7 +2,7 @@ fate-vsynth1-%: SRC = tests/data/vsynth1.yuv fate-vsynth2-%: SRC = tests/data/vsynth2.yuv fate-vsynth%: CODEC = $(word 3, $(subst -, ,$(@))) fate-vsynth%: FMT = avi -fate-vsynth%: CMD = enc_dec "rawvideo -s 352x288 -pix_fmt yuv420p $(RAWDECOPTS)" $(SRC) $(FMT) "-c $(CODEC) $(ENCOPTS)" rawvideo "-s 352x288 -pix_fmt yuv420p -vsync 0 $(DECOPTS)" -keep "$(DECINOPTS)" +fate-vsynth%: CMD = enc_dec "rawvideo -s 352x288 -pix_fmt yuv420p $(RAWDECOPTS)" $(SRC) $(FMT) "-c $(CODEC) $(ENCOPTS)" rawvideo "-s 352x288 -pix_fmt yuv420p -vsync 0 $(DECOPTS)" -keep "$(DDCOPTS)" fate-vsynth%: CMP_UNIT = 1 fate-vsynth%: REF = $(SRC_PATH)/tests/ref/vsynth/$(@:fate-%=%) @@ -91,7 +91,7 @@ fate-vsynth%-jpegls: DECOPTS = -sws_flags area FATE_VCODEC-$(call ENCDEC, JPEG2000, AVI) += j2k fate-vsynth%-j2k: ENCOPTS = -qscale 7 -strict experimental -pix_fmt rgb24 -fate-vsynth%-j2k: DECINOPTS = -vcodec j2k -strict experimental +fate-vsynth%-j2k: DDCOPTS = -vcodec j2k -strict experimental FATE_VCODEC-$(call ENCDEC, LJPEG MJPEG, AVI) += ljpeg fate-vsynth%-ljpeg: ENCOPTS = -strict -1 @@ -268,7 +268,8 @@ FATE_VCODEC-$(call ENCDEC, WMV1, AVI) += wmv1 fate-vsynth%-wmv1: ENCOPTS = -qscale 10 FATE_VCODEC-$(call ENCDEC, WMV2, AVI) += wmv2 -fate-vsynth%-wmv2: ENCOPTS = -qscale 10 +fate-vsynth%-wmv2: DDCOPTS = -idct auto +fate-vsynth%-wmv2: ENCOPTS = -qscale 10 -idct auto FATE_VCODEC-$(call ENCDEC, RAWVIDEO, AVI) += yuv fate-vsynth%-yuv: CODEC = rawvideo |