diff --git a/libavcodec/libmp3lame.c b/libavcodec/libmp3lame.c index ce17e06ef8c22fbfb1c78f7c21997f249b4542b9..b2669c837bcd46b6c5633329aeee28ecdd379018 100644 --- a/libavcodec/libmp3lame.c +++ b/libavcodec/libmp3lame.c @@ -44,8 +44,9 @@ typedef struct LAMEContext { AVClass *class; AVCodecContext *avctx; lame_global_flags *gfp; - uint8_t buffer[BUFFER_SIZE]; + uint8_t *buffer; int buffer_index; + int buffer_size; int reservoir; float *samples_flt[2]; AudioFrameQueue afq; @@ -53,6 +54,26 @@ typedef struct LAMEContext { } LAMEContext; +static int realloc_buffer(LAMEContext *s) +{ + if (!s->buffer || s->buffer_size - s->buffer_index < BUFFER_SIZE) { + uint8_t *tmp; + int new_size = s->buffer_index + 2 * BUFFER_SIZE; + + av_dlog(s->avctx, "resizing output buffer: %d -> %d\n", s->buffer_size, + new_size); + tmp = av_realloc(s->buffer, new_size); + if (!tmp) { + av_freep(&s->buffer); + s->buffer_size = s->buffer_index = 0; + return AVERROR(ENOMEM); + } + s->buffer = tmp; + s->buffer_size = new_size; + } + return 0; +} + static av_cold int mp3lame_encode_close(AVCodecContext *avctx) { LAMEContext *s = avctx->priv_data; @@ -62,6 +83,7 @@ static av_cold int mp3lame_encode_close(AVCodecContext *avctx) #endif av_freep(&s->samples_flt[0]); av_freep(&s->samples_flt[1]); + av_freep(&s->buffer); ff_af_queue_close(&s->afq); @@ -142,6 +164,10 @@ static av_cold int mp3lame_encode_init(AVCodecContext *avctx) } } + ret = realloc_buffer(s); + if (ret < 0) + goto error; + ff_dsputil_init(&s->dsp, avctx); return 0; @@ -155,7 +181,7 @@ error: (const buf_type *)buf_name[0], \ (const buf_type *)buf_name[1], frame->nb_samples, \ s->buffer + s->buffer_index, \ - BUFFER_SIZE - s->buffer_index); \ + s->buffer_size - s->buffer_index); \ } while (0) static int mp3lame_encode_frame(AVCodecContext *avctx, AVPacket *avpkt, @@ -198,11 +224,16 @@ static int mp3lame_encode_frame(AVCodecContext *avctx, AVPacket *avpkt, if (lame_result == -1) { av_log(avctx, AV_LOG_ERROR, "lame: output buffer too small (buffer index: %d, free bytes: %d)\n", - s->buffer_index, BUFFER_SIZE - s->buffer_index); + s->buffer_index, s->buffer_size - s->buffer_index); } return -1; } s->buffer_index += lame_result; + ret = realloc_buffer(s); + if (ret < 0) { + av_log(avctx, AV_LOG_ERROR, "error reallocating output buffer\n"); + return ret; + } /* add current frame to the queue */ if (frame) { diff --git a/tests/Makefile b/tests/Makefile index ac74b44b83c09738fe518c07ecba0fc8d1c1c717..21a54e2b1eda556c88a17314566a31575baede31 100644 --- a/tests/Makefile +++ b/tests/Makefile @@ -41,6 +41,19 @@ tests/data/ffprobe-test.nut: ffmpeg$(EXESUF) | tests/data tests/data/%.sw tests/data/asynth% tests/data/vsynth%.yuv tests/vsynth%/00.pgm tests/data/%.nut: TAG = GEN +ALLYES = $(strip $(call XYES, $(1))) +XYES = $(if $(strip $(1)), \ + $(if $(CONFIG_$(firstword $(1))), \ + $(call XYES, $(wordlist 2, $(words $(1)), $(1)))), \ + yes) + +ENCDEC = $(call ALLYES, $(firstword $(1))_ENCODER $(lastword $(1))_DECODER \ + $(firstword $(2))_MUXER $(lastword $(2))_DEMUXER) + +ENCDEC2 = $(call ALLYES, $(firstword $(1))_ENCODER $(lastword $(1))_DECODER \ + $(firstword $(2))_ENCODER $(lastword $(2))_DECODER \ + $(firstword $(3))_MUXER $(lastword $(3))_DEMUXER) + include $(SRC_PATH)/tests/fate/acodec.mak include $(SRC_PATH)/tests/fate/vcodec.mak diff --git a/tests/fate/acodec.mak b/tests/fate/acodec.mak index 31f34418f31e2dbf0067e3e925324978a3507514..c52c1d2ee322943f9c013c48b8258513ce882c36 100644 --- a/tests/fate/acodec.mak +++ b/tests/fate/acodec.mak @@ -3,15 +3,22 @@ fate-acodec-%: SRC = tests/data/asynth-44100-2.wav fate-acodec-%: CMD = enc_dec wav $(SRC) $(FMT) "-b 128k -c $(CODEC) $(ENCOPTS)" wav "-c pcm_s16le $(DECOPTS)" -keep fate-acodec-%: CMP_UNIT = 2 -FATE_ACODEC_PCM = alaw mulaw \ - s8 u8 \ - s16be s16le \ - s24be s24le \ - s32be s32le \ - f32be f32le \ - f64be f64le - -FATE_ACODEC += $(FATE_ACODEC_PCM:%=fate-acodec-pcm-%) +FATE_ACODEC_PCM-$(call ENCDEC, PCM_ALAW, WAV) += alaw +FATE_ACODEC_PCM-$(call ENCDEC, PCM_MULAW, WAV) += mulaw +FATE_ACODEC_PCM-$(call ENCDEC, PCM_S8, MOV) += s8 +FATE_ACODEC_PCM-$(call ENCDEC, PCM_U8, WAV) += u8 +FATE_ACODEC_PCM-$(call ENCDEC, PCM_S16BE, MOV) += s16be +FATE_ACODEC_PCM-$(call ENCDEC, PCM_S16LE, WAV) += s16le +FATE_ACODEC_PCM-$(call ENCDEC, PCM_S24BE, MOV) += s24be +FATE_ACODEC_PCM-$(call ENCDEC, PCM_S24LE, WAV) += s24le +FATE_ACODEC_PCM-$(call ENCDEC, PCM_S32BE, MOV) += s32be +FATE_ACODEC_PCM-$(call ENCDEC, PCM_S32LE, WAV) += s32le +FATE_ACODEC_PCM-$(call ENCDEC, PCM_F32BE, AU) += f32be +FATE_ACODEC_PCM-$(call ENCDEC, PCM_F32LE, WAV) += f32le +FATE_ACODEC_PCM-$(call ENCDEC, PCM_F64BE, AU) += f64be +FATE_ACODEC_PCM-$(call ENCDEC, PCM_F64LE, WAV) += f64le + +FATE_ACODEC += $(FATE_ACODEC_PCM-yes:%=fate-acodec-pcm-%) fate-acodec-pcm-%: FMT = wav fate-acodec-pcm-%: CODEC = pcm_$(@:fate-acodec-pcm-%=%) @@ -20,8 +27,14 @@ fate-acodec-pcm-s8: FMT = mov fate-acodec-pcm-s%be: FMT = mov fate-acodec-pcm-f%be: FMT = au -FATE_ACODEC_ADPCM = adx ima_qt ima_wav ms swf yamaha -FATE_ACODEC += $(FATE_ACODEC_ADPCM:%=fate-acodec-adpcm-%) +FATE_ACODEC_ADPCM-$(call ENCDEC, ADPCM_ADX, ADX) += adx +FATE_ACODEC_ADPCM-$(call ENCDEC, ADPCM_IMA_QT, AIFF) += ima_qt +FATE_ACODEC_ADPCM-$(call ENCDEC, ADPCM_IMA_WAV, WAV) += ima_wav +FATE_ACODEC_ADPCM-$(call ENCDEC, ADPCM_MS, WAV) += ms +FATE_ACODEC_ADPCM-$(call ENCDEC, ADPCM_SWF, FLV) += swf +FATE_ACODEC_ADPCM-$(call ENCDEC, ADPCM_YAMAHA, WAV) += yamaha + +FATE_ACODEC += $(FATE_ACODEC_ADPCM-yes:%=fate-acodec-adpcm-%) fate-acodec-adpcm-%: CODEC = adpcm_$(@:fate-acodec-adpcm-%=%) @@ -32,11 +45,11 @@ fate-acodec-adpcm-ms: FMT = wav fate-acodec-adpcm-swf: FMT = flv fate-acodec-adpcm-yamaha: FMT = wav -FATE_ACODEC += fate-acodec-mp2 +FATE_ACODEC-$(call ENCDEC, MP2, MP2 MP3) += fate-acodec-mp2 fate-acodec-mp2: FMT = mp2 fate-acodec-mp2: CMP_SHIFT = -1924 -FATE_ACODEC += fate-acodec-alac +FATE_ACODEC-$(call ENCDEC, ALAC, MOV) += fate-acodec-alac fate-acodec-alac: FMT = mov fate-acodec-alac: CODEC = alac -compression_level 1 @@ -55,7 +68,7 @@ fate-acodec-dca2: CMP_SHIFT = -1920 fate-acodec-dca2: CMP_TARGET = 2424 fate-acodec-dca2: SIZE_TOLERANCE = 544 -FATE_ACODEC += fate-acodec-flac +FATE_ACODEC-$(call ENCDEC, FLAC, FLAC) += fate-acodec-flac fate-acodec-flac: FMT = flac fate-acodec-flac: CODEC = flac -compression_level 2 @@ -82,6 +95,8 @@ fate-acodec-roqaudio: CODEC = roq_dpcm fate-acodec-roqaudio: ENCOPTS = -ar 22050 fate-acodec-roqaudio: DECOPTS = -ar 44100 +FATE_ACODEC += $(FATE_ACODEC-yes) + $(FATE_ACODEC): tests/data/asynth-44100-2.wav FATE_AVCONV += $(FATE_ACODEC) diff --git a/tests/fate/vcodec.mak b/tests/fate/vcodec.mak index e895499c62d000af9cf4cef621ba082fb3d42d58..042bdb00881d69827a7840630a8beef8027dc343 100644 --- a/tests/fate/vcodec.mak +++ b/tests/fate/vcodec.mak @@ -7,89 +7,84 @@ fate-vsynth%: CMP_UNIT = 1 FATE_VCODEC += amv -FATE_VCODEC += asv1 +FATE_VCODEC-$(call ENCDEC, ASV1, AVI) += asv1 fate-vsynth%-asv1: ENCOPTS = -qscale 10 -FATE_VCODEC += asv2 +FATE_VCODEC-$(call ENCDEC, ASV2, AVI) += asv2 fate-vsynth%-asv2: ENCOPTS = -qscale 10 -FATE_VCODEC += cljr +FATE_VCODEC-$(call ENCDEC, CLJR, AVI) += cljr + +FATE_VCODEC-$(call ENCDEC, DNXHD, DNXHD) += dnxhd-720p \ + dnxhd-720p-rd \ + dnxhd-720p-10bit -FATE_VCODEC += dnxhd-720p fate-vsynth%-dnxhd-720p: ENCOPTS = -s hd720 -b 90M \ -pix_fmt yuv422p -frames 5 -qmax 8 fate-vsynth%-dnxhd-720p: FMT = dnxhd -FATE_VCODEC += dnxhd-720p-rd fate-vsynth%-dnxhd-720p-rd: ENCOPTS = -s hd720 -b 90M -threads 4 -mbd rd \ -pix_fmt yuv422p -frames 5 -qmax 8 fate-vsynth%-dnxhd-720p-rd: FMT = dnxhd -FATE_VCODEC += dnxhd-720p-10bit fate-vsynth%-dnxhd-720p-10bit: ENCOPTS = -s hd720 -b 90M \ -pix_fmt yuv422p10 -frames 5 -qmax 8 fate-vsynth%-dnxhd-720p-10bit: FMT = dnxhd -FATE_VCODEC += dnxhd-1080i +FATE_VCODEC-$(call ENCDEC, DNXHD, MOV) += dnxhd-1080i fate-vsynth%-dnxhd-1080i: ENCOPTS = -s hd1080 -b 120M -flags +ildct \ -pix_fmt yuv422p -frames 5 -qmax 8 fate-vsynth%-dnxhd-1080i: FMT = mov -FATE_VCODEC += dv +FATE_VCODEC-$(call ENCDEC, DVVIDEO, DV) += dv dv-411 dv-50 fate-vsynth%-dv: CODEC = dvvideo fate-vsynth%-dv: ENCOPTS = -dct int -s pal fate-vsynth%-dv: FMT = dv -FATE_VCODEC += dv-411 fate-vsynth%-dv-411: CODEC = dvvideo fate-vsynth%-dv-411: ENCOPTS = -dct int -s pal -pix_fmt yuv411p \ -sws_flags area fate-vsynth%-dv-411: DECOPTS = -sws_flags area fate-vsynth%-dv-411: FMT = dv -FATE_VCODEC += dv-50 fate-vsynth%-dv-50: CODEC = dvvideo fate-vsynth%-dv-50: ENCOPTS = -dct int -s pal -pix_fmt yuv422p \ -sws_flags neighbor fate-vsynth%-dv-50: DECOPTS = -sws_flags neighbor fate-vsynth%-dv-50: FMT = dv -FATE_VCODEC += ffv1 +FATE_VCODEC-$(call ENCDEC, FFV1, AVI) += ffv1 fate-vsynth%-ffv1: ENCOPTS = -strict -2 -FATE_VCODEC += ffvhuff +FATE_VCODEC-$(call ENCDEC, FFVHUFF, AVI) += ffvhuff -FATE_VCODEC-$(CONFIG_ZLIB) += flashsv +FATE_VCODEC-$(call ENCDEC, FLASHSV, FLV) += flashsv fate-vsynth%-flashsv: ENCOPTS = -sws_flags neighbor+full_chroma_int fate-vsynth%-flashsv: DECOPTS = -sws_flags area fate-vsynth%-flashsv: FMT = flv -FATE_VCODEC-$(CONFIG_ZLIB) += flashsv2 +FATE_VCODEC-$(call ENCDEC, FLASHSV2, FLV) += flashsv2 fate-vsynth%-flashsv2: ENCOPTS = -sws_flags neighbor+full_chroma_int -strict experimental -compression_level 0 fate-vsynth%-flashsv2: DECOPTS = -sws_flags area fate-vsynth%-flashsv2: FMT = flv -FATE_VCODEC += flv +FATE_VCODEC-$(call ENCDEC, FLV, FLV) += flv fate-vsynth%-flv: ENCOPTS = -qscale 10 fate-vsynth%-flv: FMT = flv -FATE_VCODEC += h261 +FATE_VCODEC-$(call ENCDEC, H261, AVI) += h261 fate-vsynth%-h261: ENCOPTS = -qscale 11 -FATE_VCODEC += h263 +FATE_VCODEC-$(call ENCDEC, H263, AVI) += h263 h263-obmc h263p fate-vsynth%-h263: ENCOPTS = -qscale 10 - -FATE_VCODEC += h263-obmc fate-vsynth%-h263-obmc: ENCOPTS = -qscale 10 -obmc 1 - -FATE_VCODEC += h263p fate-vsynth%-h263p: ENCOPTS = -qscale 2 -flags +aic -umv 1 -aiv 1 -ps 300 -FATE_VCODEC += huffyuv +FATE_VCODEC-$(call ENCDEC, HUFFYUV, AVI) += huffyuv fate-vsynth%-huffyuv: ENCOPTS = -pix_fmt yuv422p -sws_flags neighbor fate-vsynth%-huffyuv: DECOPTS = -strict -2 -sws_flags neighbor -FATE_VCODEC += jpegls +FATE_VCODEC-$(call ENCDEC, JPEGLS, AVI) += jpegls fate-vsynth%-jpegls: ENCOPTS = -sws_flags neighbor+full_chroma_int fate-vsynth%-jpegls: DECOPTS = -sws_flags area @@ -97,18 +92,17 @@ FATE_VCODEC += j2k fate-vsynth%-j2k: ENCOPTS = -qscale 7 -strict experimental -pix_fmt rgb24 fate-vsynth%-j2k: DECINOPTS = -vcodec j2k -strict experimental -FATE_VCODEC += ljpeg +FATE_VCODEC-$(call ENCDEC, LJPEG MJPEG, AVI) += ljpeg fate-vsynth%-ljpeg: ENCOPTS = -strict -1 -FATE_VCODEC += mjpeg +FATE_VCODEC-$(call ENCDEC, MJPEG, AVI) += mjpeg fate-vsynth%-mjpeg: ENCOPTS = -qscale 9 -pix_fmt yuvj420p -FATE_VCODEC += mpeg1 +FATE_VCODEC-$(call ENCDEC, MPEG1VIDEO, MPEG1VIDEO MPEGVIDEO) += mpeg1 mpeg1b fate-vsynth%-mpeg1: FMT = mpeg1video fate-vsynth%-mpeg1: CODEC = mpeg1video fate-vsynth%-mpeg1: ENCOPTS = -qscale 10 -FATE_VCODEC += mpeg1b fate-vsynth%-mpeg1b: CODEC = mpeg1video fate-vsynth%-mpeg1b: ENCOPTS = -qscale 8 -bf 3 -ps 200 fate-vsynth%-mpeg1b: FMT = mpeg1video @@ -121,7 +115,7 @@ FATE_MPEG2 = mpeg2 \ mpeg2-thread \ mpeg2-thread-ivlc -FATE_VCODEC += $(FATE_MPEG2) +FATE_VCODEC-$(call ENCDEC, MPEG2VIDEO, MPEG2VIDEO MPEGVIDEO) += $(FATE_MPEG2) $(FATE_MPEG2:%=fate-vsynth\%-%): FMT = mpeg2video $(FATE_MPEG2:%=fate-vsynth\%-%): CODEC = mpeg2video @@ -150,50 +144,54 @@ fate-vsynth%-mpeg2-thread: ENCOPTS = -qscale 10 -bf 2 -flags +ildct+ilme \ fate-vsynth%-mpeg2-thread-ivlc: ENCOPTS = -qscale 10 -bf 2 -flags +ildct+ilme \ -intra_vlc 1 -threads 2 -slices 2 -FATE_VCODEC += mpeg4 +FATE_MPEG4_MP4 = mpeg4 +FATE_MPEG4_AVI = mpeg4-rc \ + mpeg4-adv \ + mpeg4-qprd \ + mpeg4-adap \ + mpeg4-qpel \ + mpeg4-thread \ + mpeg4-error \ + mpeg4-nr + +FATE_VCODEC-$(call ENCDEC, MPEG4, MP4 MOV) += $(FATE_MPEG4_MP4) +FATE_VCODEC-$(call ENCDEC, MPEG4, AVI) += $(FATE_MPEG4_AVI) + fate-vsynth%-mpeg4: ENCOPTS = -qscale 10 -flags +mv4 -mbd bits fate-vsynth%-mpeg4: FMT = mp4 -FATE_VCODEC += mpeg4-rc fate-vsynth%-mpeg4-rc: ENCOPTS = -b 400k -bf 2 -FATE_VCODEC += mpeg4-adv fate-vsynth%-mpeg4-adv: ENCOPTS = -qscale 9 -flags +mv4+aic \ -data_partitioning 1 -trellis 1 \ -mbd bits -ps 200 -FATE_VCODEC += mpeg4-qprd fate-vsynth%-mpeg4-qprd: ENCOPTS = -b 450k -bf 2 -trellis 1 \ -flags +mv4+mv0 -mpv_flags +qp_rd \ -cmp 2 -subcmp 2 -mbd rd -FATE_VCODEC += mpeg4-adap fate-vsynth%-mpeg4-adap: ENCOPTS = -b 550k -bf 2 -flags +mv4+mv0 \ -trellis 1 -cmp 1 -subcmp 2 \ -mbd rd -scplx_mask 0.3 -FATE_VCODEC += mpeg4-qpel fate-vsynth%-mpeg4-qpel: ENCOPTS = -qscale 7 -flags +mv4+qpel -mbd 2 \ -bf 2 -cmp 1 -subcmp 2 -FATE_VCODEC += mpeg4-thread fate-vsynth%-mpeg4-thread: ENCOPTS = -b 500k -flags +mv4+aic \ -data_partitioning 1 -trellis 1 \ -mbd bits -ps 200 -bf 2 \ -threads 2 -slices 2 -FATE_VCODEC += mpeg4-error fate-vsynth%-mpeg4-error: ENCOPTS = -qscale 7 -flags +mv4+aic \ -data_partitioning 1 -mbd rd \ -ps 250 -error 10 -FATE_VCODEC += mpeg4-nr fate-vsynth%-mpeg4-nr: ENCOPTS = -qscale 8 -flags +mv4 -mbd rd -nr 200 -FATE_VCODEC += msmpeg4 +FATE_VCODEC-$(call ENCDEC, MSMPEG4V3, AVI) += msmpeg4 fate-vsynth%-msmpeg4: ENCOPTS = -qscale 10 -FATE_VCODEC += msmpeg4v2 +FATE_VCODEC-$(call ENCDEC, MSMPEG4V2, AVI) += msmpeg4v2 fate-vsynth%-msmpeg4v2: ENCOPTS = -qscale 10 FATE_VCODEC-$(CONFIG_ZLIB) += mpng @@ -201,14 +199,13 @@ fate-vsynth%-mpng: CODEC = png FATE_VCODEC += msvideo1 -FATE_VCODEC += prores +FATE_VCODEC-$(call ENCDEC, PRORES, MOV) += prores prores_kostya fate-vsynth%-prores: FMT = mov -FATE_VCODEC += prores_kostya -fate-vsynth%-prores_kostya: ENCOPTS = -profile hq -fate-vsynth%-prores_kostya: FMT = mov +fate-vsynth%-prores_kostya: ENCOPTS = -profile hq +fate-vsynth%-prores_kostya: FMT = mov -FATE_VCODEC += qtrle +FATE_VCODEC-$(call ENCDEC, QTRLE, MOV) += qtrle fate-vsynth%-qtrle: FMT = mov FATE_VCODEC += qtrlegray @@ -216,45 +213,43 @@ fate-vsynth%-qtrlegray: CODEC = qtrle fate-vsynth%-qtrlegray: ENCOPTS = -pix_fmt gray fate-vsynth%-qtrlegray: FMT = mov -FATE_VCODEC += rgb +FATE_VCODEC-$(call ENCDEC, RAWVIDEO, AVI) += rgb fate-vsynth%-rgb: CODEC = rawvideo fate-vsynth%-rgb: ENCOPTS = -pix_fmt bgr24 -FATE_VCODEC += roqvideo +FATE_VCODEC-$(call ENCDEC, ROQ, ROQ) += roqvideo fate-vsynth%-roqvideo: CODEC = roqvideo fate-vsynth%-roqvideo: ENCOPTS = -frames 5 fate-vsynth%-roqvideo: RAWDECOPTS = -r 30 fate-vsynth%-roqvideo: FMT = roq -FATE_VCODEC += rv10 +FATE_VCODEC-$(call ENCDEC, RV10, RM) += rv10 fate-vsynth%-rv10: ENCOPTS = -qscale 10 fate-vsynth%-rv10: FMT = rm -FATE_VCODEC += rv20 +FATE_VCODEC-$(call ENCDEC, RV20, RM) += rv20 fate-vsynth%-rv20: ENCOPTS = -qscale 10 fate-vsynth%-rv20: FMT = rm -FATE_VCODEC += snow +FATE_VCODEC-$(call ENCDEC, SNOW, AVI) += snow snow-hpel snow-ll fate-vsynth%-snow: ENCOPTS = -strict -2 -qscale 2 -flags +qpel \ -me_method iter -dia_size 2 \ -cmp 12 -subcmp 12 -s 128x64 -FATE_VCODEC += snow-hpel fate-vsynth%-snow-hpel: ENCOPTS = -strict -2 -qscale 2 \ -me_method iter -dia_size 2 \ -cmp 12 -subcmp 12 -s 128x64 -FATE_VCODEC += snow-ll fate-vsynth%-snow-ll: ENCOPTS = -strict -2 -qscale .001 -pred 1 \ -flags +mv4+qpel -FATE_VCODEC += svq1 +FATE_VCODEC-$(call ENCDEC, SVQ1, MOV) += svq1 fate-vsynth%-svq1: ENCOPTS = -qscale 3 -pix_fmt yuv410p fate-vsynth%-svq1: FMT = mov -FATE_VCODEC += r210 +FATE_VCODEC-$(call ENCDEC, R210, AVI) += r210 -FATE_VCODEC += v210 +FATE_VCODEC-$(call ENCDEC, V210, AVI) += v210 FATE_VCODEC += v308 @@ -267,13 +262,13 @@ fate-vsynth%-avui: ENCOPTS = -s pal -strict experimental -sws_flag fate-vsynth%-avui: DECOPTS = -sws_flags neighbor+bitexact fate-vsynth%-avui: FMT = mov -FATE_VCODEC += wmv1 +FATE_VCODEC-$(call ENCDEC, WMV1, AVI) += wmv1 fate-vsynth%-wmv1: ENCOPTS = -qscale 10 -FATE_VCODEC += wmv2 +FATE_VCODEC-$(call ENCDEC, WMV2, AVI) += wmv2 fate-vsynth%-wmv2: ENCOPTS = -qscale 10 -FATE_VCODEC += yuv +FATE_VCODEC-$(call ENCDEC, RAWVIDEO, AVI) += yuv fate-vsynth%-yuv: CODEC = rawvideo FATE_VCODEC += yuv4 @@ -283,7 +278,6 @@ FATE_VCODEC += y41p FATE_VCODEC-$(CONFIG_ZLIB) += zlib FATE_VCODEC += $(FATE_VCODEC-yes) - FATE_VSYNTH1 = $(FATE_VCODEC:%=fate-vsynth1-%) FATE_VSYNTH2 = $(FATE_VCODEC:%=fate-vsynth2-%)