$(RM) config.* .version version.h libavutil/avconfig.h
config:
- $(SRC_PATH)/configure $(value LIBAV_CONFIGURATION)
+ $(SRC_PATH)/configure $(value FFMPEG_CONFIGURATION)
+
+# Without the sed genthml thinks "libavutil" and "./libavutil" are two different things
+coverage.info: $(wildcard *.gcda *.gcno */*.gcda */*.gcno */*/*.gcda */*/*.gcno)
+ $(Q)lcov -c -d . -b . | sed -e 's#/./#/#g' > $@
+
+coverage-html: coverage.info
+ $(Q)mkdir -p $@
+ $(Q)genhtml -o $@ $<
+ $(Q)touch $@
+ check: all alltools checkheaders examples testprogs fate
+
include $(SRC_PATH)/doc/Makefile
include $(SRC_PATH)/tests/Makefile
av_dlog(avctx, "Frame dimensions changed!\n");
-
- ctx->width = width;
- ctx->height = height;
-
+ if (width < 16 || width > 640 ||
+ height < 16 || height > 480 ||
+ width & 3 || height & 3) {
+ av_log(avctx, AV_LOG_ERROR,
+ "Invalid picture dimensions: %d x %d!\n", width, height);
+ return AVERROR_INVALIDDATA;
+ }
free_frame_buffers(ctx);
- if ((res = allocate_frame_buffers(ctx, avctx)) < 0)
+ if ((res = allocate_frame_buffers(ctx, avctx, width, height)) < 0)
return res;
avcodec_set_dimensions(avctx, width, height);
}
case CODEC_ID_VCR1:
case CODEC_ID_DNXHD:
case CODEC_ID_JPEG2000:
+ case CODEC_ID_MDEC:
+ case CODEC_ID_UTVIDEO:
return 1;
default: break;
}
-FATE_AVCONV += fate-adts-demux
+FATE_DEMUX += fate-avio-direct
+fate-avio-direct: CMD = framecrc -avioflags direct -i $(SAMPLES)/fraps/fraps-v5-bouncing-balls-partial.avi -avioflags direct
+
+FATE_DEMUX += fate-adts-demux
fate-adts-demux: CMD = crc -i $(SAMPLES)/aac/ct_faac-adts.aac -acodec copy
-FATE_AVCONV += fate-aea-demux
+FATE_DEMUX += fate-aea-demux
fate-aea-demux: CMD = crc -i $(SAMPLES)/aea/chirp.aea -acodec copy
-FATE_AVCONV += fate-bink-demux
+FATE_DEMUX += fate-bink-demux
fate-bink-demux: CMD = crc -i $(SAMPLES)/bink/Snd0a7d9b58.dee -vn -acodec copy
-FATE_AVCONV += fate-caf
+FATE_DEMUX += fate-caf
fate-caf: CMD = crc -i $(SAMPLES)/caf/caf-pcm16.caf -c copy
-FATE_AVCONV += fate-cdxl-demux
+FATE_DEMUX += fate-cdxl-demux
fate-cdxl-demux: CMD = framecrc -i $(SAMPLES)/cdxl/mirage.cdxl -vcodec copy -acodec copy
-FATE_AVCONV += fate-d-cinema-demux
+FATE_DEMUX += fate-d-cinema-demux
fate-d-cinema-demux: CMD = framecrc -i $(SAMPLES)/d-cinema/THX_Science_FLT_1920-partial.302 -acodec copy
-FATE_AVCONV += fate-iv8-demux
+FATE_DEMUX += fate-iv8-demux
fate-iv8-demux: CMD = framecrc -i $(SAMPLES)/iv8/zzz-partial.mpg -vcodec copy
-FATE_AVCONV += fate-lmlm4-demux
+FATE_DEMUX += fate-lmlm4-demux
fate-lmlm4-demux: CMD = framecrc -i $(SAMPLES)/lmlm4/LMLM4_CIFat30fps.divx -t 3 -acodec copy -vcodec copy
-FATE_AVCONV += fate-maxis-xa
+FATE_DEMUX += fate-maxis-xa
fate-maxis-xa: CMD = framecrc -i $(SAMPLES)/maxis-xa/SC2KBUG.XA -frames:a 30 -c:a copy
-FATE_AVCONV += fate-mtv
+FATE_DEMUX += fate-mtv
fate-mtv: CMD = framecrc -i $(SAMPLES)/mtv/comedian_auto-partial.mtv -c copy
-FATE_AVCONV += fate-mxf-demux
+FATE_DEMUX += fate-mxf-demux
fate-mxf-demux: CMD = framecrc -i $(SAMPLES)/mxf/C0023S01.mxf -acodec copy -vcodec copy
-FATE_AVCONV += fate-nc-demux
+FATE_DEMUX += fate-nc-demux
fate-nc-demux: CMD = framecrc -i $(SAMPLES)/nc-camera/nc-sample-partial -vcodec copy
-FATE_AVCONV += fate-nsv-demux
+FATE_DEMUX += fate-nsv-demux
fate-nsv-demux: CMD = framecrc -i $(SAMPLES)/nsv/witchblade-51kbps.nsv -t 6 -vcodec copy -acodec copy
-FATE_AVCONV += fate-oma-demux
+FATE_DEMUX += fate-oma-demux
fate-oma-demux: CMD = crc -i $(SAMPLES)/oma/01-Untitled-partial.oma -acodec copy
- FATE_DEMUX += fate-psx-str
- fate-psx-str: CMD = framecrc -i $(SAMPLES)/psx-str/descent-partial.str
-
- FATE_DEMUX += fate-psx-str-v3-mdec
- fate-psx-str-v3-mdec: CMD = framecrc -i $(SAMPLES)/psx-str/abc000_cut.str -an
-FATE_AVCONV += fate-psx-str-demux
++FATE_DEMUX += fate-psx-str-demux
+ fate-psx-str-demux: CMD = framecrc -i $(SAMPLES)/psx-str/descent-partial.str -c copy
-FATE_AVCONV += fate-pva-demux
-fate-pva-demux: CMD = framecrc -idct simple -i $(SAMPLES)/pva/PVA_test-partial.pva -t 0.6 -acodec copy -vn
+FATE_DEMUX += fate-pva-demux
+fate-pva-demux: CMD = framecrc -idct simple -i $(SAMPLES)/pva/PVA_test-partial.pva -t 0.6 -acodec copy
-FATE_AVCONV += fate-qcp-demux
+FATE_DEMUX += fate-qcp-demux
fate-qcp-demux: CMD = crc -i $(SAMPLES)/qcp/0036580847.QCP -acodec copy
-FATE_AVCONV += fate-redcode-demux
+FATE_DEMUX += fate-redcode-demux
fate-redcode-demux: CMD = framecrc -i $(SAMPLES)/r3d/4MB-sample.r3d -vcodec copy -acodec copy
-FATE_AVCONV += fate-siff
+FATE_DEMUX += fate-siff
fate-siff: CMD = framecrc -i $(SAMPLES)/SIFF/INTRO_B.VB -t 3 -pix_fmt rgb24
-FATE_AVCONV += fate-smjpeg-demux
+FATE_DEMUX += fate-smjpeg-demux
fate-smjpeg-demux: CMD = framecrc -i $(SAMPLES)/smjpeg/scenwin.mjpg -c copy
-FATE_AVCONV += fate-westwood-aud
+FATE_DEMUX += fate-westwood-aud
fate-westwood-aud: CMD = framecrc -i $(SAMPLES)/westwood-aud/excellent.aud -c copy
-FATE_AVCONV += fate-wtv-demux
+FATE_DEMUX += fate-wtv-demux
fate-wtv-demux: CMD = framecrc -i $(SAMPLES)/wtv/law-and-order-partial.wtv -vcodec copy -acodec copy
-FATE_AVCONV += fate-xmv-demux
+FATE_DEMUX += fate-xmv-demux
fate-xmv-demux: CMD = framecrc -i $(SAMPLES)/xmv/logos1p.fmv -vcodec copy -acodec copy
-FATE_AVCONV += fate-xwma-demux
+FATE_DEMUX += fate-xwma-demux
fate-xwma-demux: CMD = crc -i $(SAMPLES)/xwma/ergon.xwma -acodec copy
+
+FATE_FFMPEG += $(FATE_DEMUX)
+fate-demux: $(FATE_DEMUX)
FATE_IFF += fate-iff-ilbm
fate-iff-ilbm: CMD = framecrc -i $(SAMPLES)/iff/lms-matriks.ilbm -pix_fmt rgb24
-FATE_AVCONV += $(FATE_IFF)
+FATE_VIDEO += $(FATE_IFF)
fate-iff: $(FATE_IFF)
-FATE_AVCONV += fate-interplay-mve-8bit
+FATE_VIDEO += fate-interplay-mve-8bit
fate-interplay-mve-8bit: CMD = framecrc -i $(SAMPLES)/interplay-mve/interplay-logo-2MB.mve -pix_fmt rgb24 -an
-FATE_AVCONV += fate-interplay-mve-16bit
+FATE_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_AVCONV += fate-kgv1
+FATE_VIDEO += fate-kgv1
fate-kgv1: CMD = framecrc -i $(SAMPLES)/kega/kgv1.avi -pix_fmt rgb555le -an
-FATE_AVCONV += fate-kmvc
+FATE_VIDEO += fate-kmvc
fate-kmvc: CMD = framecrc -i $(SAMPLES)/KMVC/LOGO1.AVI -an -t 3 -pix_fmt rgb24
-FATE_AVCONV += fate-mdec
+FATE_VIDEO += fate-mdec
fate-mdec: CMD = framecrc -idct simple -i $(SAMPLES)/ea-dct/NFS2Esprit-partial.dct -an
-FATE_AVCONV += fate-mdec-v3
++FATE_VIDEO += fate-mdec-v3
+ fate-mdec-v3: CMD = framecrc -idct simple -i $(SAMPLES)/psx-str/abc000_cut.str -an
+
-FATE_AVCONV += fate-mimic
+FATE_VIDEO += fate-mimic
fate-mimic: CMD = framecrc -idct simple -i $(SAMPLES)/mimic/mimic2-womanloveffmpeg.cam
-FATE_AVCONV += fate-mjpegb
+FATE_VIDEO += fate-mjpegb
fate-mjpegb: CMD = framecrc -idct simple -flags +bitexact -i $(SAMPLES)/mjpegb/mjpegb_part.mov -an
-FATE_AVCONV += fate-motionpixels
+FATE_VIDEO += fate-motionpixels
fate-motionpixels: CMD = framecrc -i $(SAMPLES)/motion-pixels/INTRO-partial.MVI -an -pix_fmt rgb24 -vframes 111
-FATE_AVCONV += fate-mpeg2-field-enc
+FATE_VIDEO += 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
outfile="$datadir/images/$1/"
mkdir -p "$outfile"
file=${outfile}%02d.$1
- run_avconv $DEC_OPTS -f image2 -vcodec pgmyuv -i $raw_src $2 $ENC_OPTS $3 -t 0.5 -y -qscale 10 $target_path/$file
+ run_avconv $DEC_OPTS -f image2 -vcodec pgmyuv -i $raw_src $2 $ENC_OPTS -t 0.5 -y -qscale 10 $target_path/$file
do_md5sum ${outfile}02.$1
- do_avconv_crc $file $DEC_OPTS $3 -i $target_path/$file
+ do_avconv_crc $file $DEC_OPTS -i $target_path/$file $3
- wc -c ${outfile}02.$1
+ echo $(wc -c ${outfile}02.$1)
}
do_audio_only()
-ec8df9c78de8f7f20a3eb1ce8f863c02 *./tests/data/lavf/lavf.ts
-406456 ./tests/data/lavf/lavf.ts
-./tests/data/lavf/lavf.ts CRC=0x0fdeb4df
+258a64dbc1724438e90560294be4be5c *./tests/data/lavf/lavf.ts
- 406644 ./tests/data/lavf/lavf.ts
++406644 ./tests/data/lavf/lavf.ts
+./tests/data/lavf/lavf.ts CRC=0x133216c1
-b4d3d31da0b4b6873ad8239d113c91d2 *./tests/data/vsynth1/cljr.avi
+041982e4fa83428c621a127647d47b3f *./tests/data/vsynth1/cljr.avi
- 5075660 ./tests/data/vsynth1/cljr.avi
+ 5075660 ./tests/data/vsynth1/cljr.avi
-4debaab994c2c7273bebaa0c5733017b *./tests/data/cljr.vsynth1.out.yuv
-stddev: 30.75 PSNR: 18.37 MAXDIFF: 225 bytes: 7603200/ 7603200
+e1c4c96c74de3435d0f9f6118c5ed9b5 *./tests/data/cljr.vsynth1.out.yuv
+stddev: 30.53 PSNR: 18.43 MAXDIFF: 225 bytes: 7603200/ 7603200
-da0c0bd12ac141c976ffa6a71832ab4b *./tests/data/vsynth1/ffvhuff.avi
+0632ffae6f1e06dd299bf41a845b9099 *./tests/data/vsynth1/ffvhuff.avi
- 5987208 ./tests/data/vsynth1/ffvhuff.avi
+ 5987208 ./tests/data/vsynth1/ffvhuff.avi
c5ccac874dbf808e9088bc3107860042 *./tests/data/ffvhuff.vsynth1.out.yuv
stddev: 0.00 PSNR:999.99 MAXDIFF: 0 bytes: 7603200/ 7603200
--- /dev/null
- 22125260 ./tests/data/vsynth1/r210.avi
+604a34c9f9151891c2d63d2652b75329 *./tests/data/vsynth1/r210.avi
++22125260 ./tests/data/vsynth1/r210.avi
+ecaafa9eec11b5e1453a63ed6d194eed *./tests/data/r210.vsynth1.out.yuv
+stddev: 3.23 PSNR: 37.94 MAXDIFF: 48 bytes: 7603200/ 7603200
--- /dev/null
- 15213260 ./tests/data/vsynth1/v308.avi
+8d5f2065ce6547acc51041a679b7d6c4 *./tests/data/vsynth1/v308.avi
++15213260 ./tests/data/vsynth1/v308.avi
+10fb42f1abf40a289c3edafc0390482c *./tests/data/v308.vsynth1.out.yuv
+stddev: 2.67 PSNR: 39.60 MAXDIFF: 43 bytes: 7603200/ 7603200
--- /dev/null
- 7610060 ./tests/data/vsynth1/y41p.avi
+70bbcb52acac0a3cb3217719669a8242 *./tests/data/vsynth1/y41p.avi
++7610060 ./tests/data/vsynth1/y41p.avi
+665f6045e3b3031f719fa4a44f63daba *./tests/data/y41p.vsynth1.out.yuv
+stddev: 30.54 PSNR: 18.43 MAXDIFF: 222 bytes: 7603200/ 7603200
--- /dev/null
- 7610060 ./tests/data/vsynth1/yuv4.avi
+e0d593eb635432f421b93224e425ee03 *./tests/data/vsynth1/yuv4.avi
++7610060 ./tests/data/vsynth1/yuv4.avi
+c5ccac874dbf808e9088bc3107860042 *./tests/data/yuv4.vsynth1.out.yuv
+stddev: 0.00 PSNR:999.99 MAXDIFF: 0 bytes: 7603200/ 7603200
-416ddcf73d2d993456f3c49f3eed4f1a *./tests/data/vsynth2/cljr.avi
+fdc1926e0a599de94513f0a3472b598f *./tests/data/vsynth2/cljr.avi
- 5075660 ./tests/data/vsynth2/cljr.avi
+ 5075660 ./tests/data/vsynth2/cljr.avi
-3a70ba2a535ef9c7fc6478b27a2cb58a *./tests/data/cljr.vsynth2.out.yuv
-stddev: 10.48 PSNR: 27.72 MAXDIFF: 64 bytes: 7603200/ 7603200
+7df03229ee6361ea11a0d83d4926cb10 *./tests/data/cljr.vsynth2.out.yuv
+stddev: 10.30 PSNR: 27.87 MAXDIFF: 65 bytes: 7603200/ 7603200
-d31aab445b24f738df45fdd7479d6dd7 *./tests/data/vsynth2/ffvhuff.avi
+63926d8835dd5779dca0a4bc081ca8ae *./tests/data/vsynth2/ffvhuff.avi
- 4988056 ./tests/data/vsynth2/ffvhuff.avi
+ 4988056 ./tests/data/vsynth2/ffvhuff.avi
dde5895817ad9d219f79a52d0bdfb001 *./tests/data/ffvhuff.vsynth2.out.yuv
stddev: 0.00 PSNR:999.99 MAXDIFF: 0 bytes: 7603200/ 7603200
--- /dev/null
- 22125260 ./tests/data/vsynth2/r210.avi
+d7a6f298e6869a74c0988fc3b30d0351 *./tests/data/vsynth2/r210.avi
++22125260 ./tests/data/vsynth2/r210.avi
+6ea4fcd93fc83defc8770e85b64b60bb *./tests/data/r210.vsynth2.out.yuv
+stddev: 0.70 PSNR: 51.12 MAXDIFF: 12 bytes: 7603200/ 7603200
--- /dev/null
- 15213260 ./tests/data/vsynth2/v308.avi
+214671673e6c82bad8190d0329f01fdc *./tests/data/vsynth2/v308.avi
++15213260 ./tests/data/vsynth2/v308.avi
+d43cb310c130c69214332d74f6ee5f9a *./tests/data/v308.vsynth2.out.yuv
+stddev: 0.41 PSNR: 55.80 MAXDIFF: 7 bytes: 7603200/ 7603200
--- /dev/null
- 7610060 ./tests/data/vsynth2/y41p.avi
+8e0139963e79180a0fc1c154e36cebe5 *./tests/data/vsynth2/y41p.avi
++7610060 ./tests/data/vsynth2/y41p.avi
+0e0996e1d8b62f02af91fabb3c0a6f76 *./tests/data/y41p.vsynth2.out.yuv
+stddev: 9.87 PSNR: 28.24 MAXDIFF: 61 bytes: 7603200/ 7603200
--- /dev/null
- 7610060 ./tests/data/vsynth2/yuv4.avi
+3d24f1d320c4ead1efbf3c952a902379 *./tests/data/vsynth2/yuv4.avi
++7610060 ./tests/data/vsynth2/yuv4.avi
+dde5895817ad9d219f79a52d0bdfb001 *./tests/data/yuv4.vsynth2.out.yuv
+stddev: 0.00 PSNR:999.99 MAXDIFF: 0 bytes: 7603200/ 7603200