Commit Graph

33094 Commits

Author SHA1 Message Date
Mans Rullgard a56fba502e fate: make compare() function compatible with POSIX bc
Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-03-18 18:40:59 +00:00
Diego Biurrun f36d5c1422 Update Janne's email address. 2012-03-18 16:07:33 +01:00
Diego Biurrun 343bfdd38a APIchanges: Replace Subversion revision numbers by Git hashes. 2012-03-18 16:07:33 +01:00
Diego Biurrun f03183d9a8 bytestream: Eliminate one level of pointless macro indirection. 2012-03-18 16:07:32 +01:00
Ronald S. Bultje abe3c697a3 xwd: convert to bytestream2. 2012-03-18 07:45:41 -07:00
Paul B Mahol 5a3a906ba2 vqavideo: port to bytestream2 API
Protects against overreads.

Signed-off-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2012-03-18 07:45:40 -07:00
Reinhard Tartler 050dc12778 Read preset files with suffix .avpreset
The preset files have been renamed some time ago.

CC: libav-stable@libav.org
2012-03-18 09:26:32 +01:00
Kostya Shishkov 6acac061ab prores: allow user to set fixed quantiser 2012-03-18 08:04:15 +01:00
Anton Khirnov 8bc5d90a7e lavf: remove some disabled code. 2012-03-17 22:37:55 +01:00
Anton Khirnov f35f8eeb0d lavf: only set average frame rate for video. 2012-03-17 22:36:56 +01:00
Anton Khirnov 9ade26ee91 lavf: remove a pointless check.
Timebase is already checked in avpriv_set_pts_info().
2012-03-17 22:36:48 +01:00
Paul B Mahol 0afd8f12e9 avcodec: add XBM encoder
Signed-off-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
2012-03-17 15:45:04 -04:00
Justin Ruggles 6ca3b248e2 resample: allocate a large enough output buffer
Fixes invalid writes and crashes when doing conversions such as stereo to 5.1
channels or sample rate conversion on 5.1 channels.
2012-03-17 13:37:44 -04:00
Mans Rullgard b1740cb00a fate: fix enc_dec_pcm tests with remote target
Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-03-17 17:28:33 +00:00
Justin Ruggles c3da9f5060 wmaenc: remove bit-exact hack
It may have improved cross-platform stability, but wasn't the only place in
the encoder with bitexact issues. It is no longer needed because we have FATE
tests for float encoders using fuzzy comparison.
2012-03-17 11:46:15 -04:00
Justin Ruggles 85cf49fab7 FATE: remove WMA acodec tests 2012-03-17 11:46:15 -04:00
Justin Ruggles 3a1e453e54 FATE: add WMAv1 and WMAv2 encode/decode tests with fuzzy comparison 2012-03-17 11:33:35 -04:00
Justin Ruggles a4cf4ef256 FATE: add AC-3 and E-AC-3 encode/decode tests with fuzzy comparison 2012-03-17 11:33:35 -04:00
Aneesh Dogra de64d8cf17 qtrle: Use bytestream2 functions to prevent buffer overreads.
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2012-03-16 17:50:39 -07:00
Paul B Mahol 341404f753 vqavideo: check malloc return values
Signed-off-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2012-03-16 16:57:12 -07:00
Antonio Ospite d3958ab4ed x11grab: fix a memory leak exposed by valgrind
When using "-f x11grab -i :0.0" valgrind reports a definitely lost
memory block with this message:

==31544== 5 bytes in 1 blocks are definitely lost in loss record 1 of 2
==31544==    at 0x4026E68: memalign (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==31544==    by 0x4026F17: posix_memalign (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==31544==    by 0x60D399A: av_malloc (in /usr/lib/x86_64-linux-gnu/libavutil.so.51.22.1)
==31544==    by 0x60D3A70: av_strdup (in /usr/lib/x86_64-linux-gnu/libavutil.so.51.22.1)
==31544==    by 0x4A2BE58: ??? (in /usr/lib/x86_64-linux-gnu/libavdevice.so.53.2.0)
==31544==    by 0x506D29E: avformat_open_input (in /usr/lib/x86_64-linux-gnu/libavformat.so.53.21.0)
==31544==    by 0x400A80: main (in /home/ao2/WIP/am7xxx-play/tests/a.out)

The 5 bytes lost are the ones from param = av_strdup(":0.0"), so let's
free param in the exit path.

Also check the av_strdup() return value.

Note: calling av_free(param) even when av_strdup() fails and param is
NULL is OK and keeps the code simpler without adding another label to
skip av_free().

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2012-03-16 15:39:33 -07:00
Uoti Urpala 05b9a89ed7 threads: fix old frames returned after avcodec_flush_buffers()
Calling avcodec_flush_buffers() and then avcodec_decode_video2() with
a 0-sized packet (to get remaining buffered frames) could incorrectly
return an old frame from before the avcodec_flush_buffers() call. Add
a loop in ff_thread_flush() to zero the got_frame field of each thread
to ensure the old frames will not be returned.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2012-03-16 15:38:18 -07:00
Janne Grunau 7b60799aa8 MPV: always mark dummy frames as reference
If the dummy frame are not created from a reference frame they could
be deleted untimely resulting in multithreaded decoder waiting on
the current frame to finish.
Noticed by Ronald S. Bultje in the RV34 decoder with a broken file.
2012-03-16 23:35:32 +01:00
Ronald S. Bultje 1e26a48fa2 h264: fix deadlocks on incomplete reference frame decoding.
If decoding a second complementary field, and the first was
decoded in our thread, mark decoding of that field as complete.
If decoding fails, mark the decoded field/frame as complete.
Do not allow switching between field modes or field/frame mode
between slices within the same field/frame. Ensure that two
subsequent fields cover top/bottom (rather than top/frame,
bottom/frame or such nonsense situations).

Fixes various deadlocks when decoding samples with errors in
reference frames.

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2012-03-16 15:31:00 -07:00
Ronald S. Bultje c6ccb96bc9 mpeg4: report frame decoding completion at ff_MPV_frame_end().
Prevents hangs on corrupt input.

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2012-03-16 15:30:53 -07:00
Ronald S. Bultje 80387f0e25 mimic: don't use self as reference, and report completion at end of decode().
Fixes hangs on corrupt samples that reference self-frames.

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2012-03-16 15:30:52 -07:00
Diego Biurrun e5d403720e h264: K&R formatting cosmetics
Also remove some disabled code and fix a few comment typos.
2012-03-16 20:35:37 +01:00
Diego Biurrun ad4cec6b80 s3tc.h: Add missing #include to fix standalone header compilation. 2012-03-16 18:51:57 +01:00
Justin Ruggles 90e5b58a53 FATE: add capability for audio encode/decode tests with fuzzy psnr comparison
This allows for testing floating-point audio encoders across different
platforms where exact comparisons are unreliable due to float rounding
differences.
2012-03-15 17:06:17 -04:00
Justin Ruggles cffd7580bb FATE: allow a tolerance in the size comparison in do_tiny_psnr()
This will allow for comparing decoded output to the original source when the
decoded size is not exactly the same as the original size.
2012-03-15 14:40:31 -04:00
Justin Ruggles bb6842966e FATE: use absolute difference from a target value in do_tiny_psnr()
This will allow comparison to original pre-encoded content instead of
comparing to expected decoded output.
2012-03-15 14:40:31 -04:00
Justin Ruggles 5ecadc6620 FATE: allow tests to set CMP_SHIFT to pass to tiny_psnr
This will allow adjusting for any encoder or decoder delay when doing
comparisons.
2012-03-15 14:40:24 -04:00
Justin Ruggles 0720d263ea FATE: use $fuzz directly in do_tiny_psnr() instead of passing it around 2012-03-15 12:06:56 -04:00
Paul B Mahol 702985b8b7 dxa: remove useless code
Signed-off-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2012-03-15 14:01:23 +01:00
Anton Khirnov cd9a3c3512 lavf: don't select an attached picture as default stream for seeking. 2012-03-15 14:01:05 +01:00
Anton Khirnov 251422982b avconv: remove pointless checks.
OutputStream.picref is guaranteed to be non-NULL if
get_filtered_video_frame() succeeds.
2012-03-15 09:01:18 +01:00
Anton Khirnov ce326c1130 avconv: check for get_filtered_frame() failure. 2012-03-15 09:00:55 +01:00
Anton Khirnov 2636e691ce avconv: remove a pointless check.
output_video_filter is always guaranteed to be set and is in fact
dereferenced right above the check.
2012-03-15 09:00:49 +01:00
Ronald S. Bultje 45fdcc8e2d swscale: convert hscale() to use named arguments. 2012-03-14 20:09:53 -07:00
Ronald S. Bultje 98b9da2ac7 x86inc: add *mp named argument support to DEFINE_ARGS. 2012-03-14 20:09:53 -07:00
Ronald S. Bultje aba7a827aa swscale: convert hscale to cpuflags(). 2012-03-14 20:09:53 -07:00
Ronald S. Bultje e0febda22d h264: stricter reference limit enforcement.
Progressive images can have only 16 references, error out if there are
more, since the data is almost certainly corrupt, and the invalid value
will lead to random crashes or invalid writes later on.

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2012-03-14 13:24:49 -07:00
Ronald S. Bultje 48cbe4b092 h264: increase reference poc list from 16 to 32.
Interlaced images can have 32 references (16 per field), so limiting the
array size to 16 leads to invalid writes.

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2012-03-14 13:24:45 -07:00
Ronald S. Bultje 86020073db xa_adpcm: limit filter to prevent xa_adpcm_table[] array bounds overruns.
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2012-03-14 13:24:40 -07:00
Michael Niedermayer 1f8ff2b13c snow: check reference frame indices.
Fixes NULL ptr dereference

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2012-03-14 13:24:35 -07:00
Michael Niedermayer c9837954e7 snow: reject unsupported chroma shifts.
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2012-03-14 13:24:31 -07:00
Paul B Mahol 92a02d935b Add ffvhuff encoding and decoding regression test
Signed-off-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2012-03-14 13:24:17 -07:00
Paul B Mahol 5b4d026a03 anm: convert to bytestream2 API
Protects from overreads.

Signed-off-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2012-03-14 13:23:07 -07:00
Paul B Mahol f1ce053cd0 bytestream: add more unchecked variants for bytestream2 API
Signed-off-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2012-03-14 13:23:07 -07:00
Paul B Mahol a1c036e961 jvdec: unbreak video decoding
The safe bitstream reader broke it since the buffer size was specified
in bytes instead of bits.

Signed-off-by: Janne Grunau <janne-libav@jannau.net>
CC: libav-stable@libav.org
2012-03-14 15:34:50 +01:00