Commit Graph

1669 Commits

Author SHA1 Message Date
Derek Buitenhuis efab2e004a FATE: Add Canopus Lossless tests
Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2012-08-25 16:46:50 -04:00
Justin Ruggles e981215944 FATE: add ALAC encoding tests 2012-08-22 16:41:57 -04:00
Diego Biurrun efa4d6adf3 fate: flac: Only run tests requiring samples when samples are available 2012-08-22 00:58:44 +02:00
Jan Ekström 957521e7a4 fate: make Ut Video encoder tests use bitexact swscale flags
The failures on various architectures and compilers on the RGB(A)
tests seem to have been because of one-off YCbCr->RGB conversion
results. This should make the conversion results match on most if
not all code paths.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2012-08-21 09:45:01 +02:00
Mans Rullgard d71e2c1775 fate: fix utvideoenc tests
For some reason, the prerequisites have to be specified like this.
Make works in mysterious ways.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-08-20 15:07:41 +01:00
Jan Ekström b96509c93c fate: Add FATE tests for the Ut Video encoder
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2012-08-20 11:23:10 +02:00
Diego Biurrun e017c87552 fate: Only test enabled filters
This fixes running FATE without --enable-gpl.
2012-08-11 20:26:31 +02:00
Mans Rullgard 05c36e0e5f g723.1: fix addition overflow
This addition must be done as 64-bit to avoid overflow and for
the subsequent clipping to be meaningful.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-08-10 12:18:38 +01:00
Kostya Shishkov 84f9d78a96 fate: add G.723.1 decoder tests 2012-08-09 19:35:47 +02:00
Janne Grunau 69ac6400b8 fate: add test for RTjpeg in nuv with frameheader
Renames the old test to allow using fate-nuv as group for all
nuv tests.
2012-08-08 15:06:46 +02:00
Mans Rullgard add8f5eab7 fate: simplify variable setting filter.mak
This removes some needless indirection and duplication.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-08-06 10:19:27 +01:00
Mans Rullgard 73486e3b61 fate: force pix_fmt in lagarith-rgb32 test
This makes big and little endian systems use the same output
format.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-08-04 14:15:45 +01:00
Ronald S. Bultje c5d5d17880 fate: add tests for lagarith lossless video codec.
Based on patch by Oana Stratulat <oanaandreeastratulat@gmail.com>.
2012-08-03 20:48:34 -07:00
Mans Rullgard 70c8753d33 fate: amix: specify f32 sample format for comparison
Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-07-29 22:05:09 +01:00
Mans Rullgard 9f1280def4 tiny_psnr: support 32-bit float samples
Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-07-29 22:05:09 +01:00
Anton Khirnov aba232cfa9 lavf: deprecate r_frame_rate.
According to its description, it is supposed to be the LCM of all the
frame durations. The usability of such a thing is vanishingly small,
especially since we cannot determine it with any amount of reliability.
Therefore get rid of it after the next bump.

Replace it with the average framerate where it makes sense.

FATE results for the wtv and xmv demux tests change. In the wtv case
this is caused by the file being corrupted (or possibly badly cut) and
containing invalid timestamps. This results in lavf estimating the
framerate wrong and making up wrong frame durations.
In the xmv case the file contains pts jumps, so again the estimated
framerate is far from anything sane and lavf again makes up different
frame durations.

In some other tests lavf starts making up frame durations from different
frame.
2012-07-29 08:06:30 +02:00
Anton Khirnov fe1c1198e6 lavf: use dts difference instead of AVPacket.duration in find_stream_info()
AVPacket.duration is mostly made up and thus completely useless, this is
especially true for video streams.
Therefore use dts difference for framerate estimation and
the max_analyze_duration check.

The asyncts test now needs -analyzeduration, because the default is 5
seconds and the audio stream in the sample appears at ~10 seconds.
2012-07-29 08:04:42 +02:00
Mans Rullgard d905c64406 fate: make yadif tests consistent across systems
MMX-enabled systems by default use some dsputil functions differing
from the C versions.  Adding these flags ensures accurate ones are
used everywhere.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-07-28 22:23:52 +01:00
Anton Khirnov 8f9537f314 FATE: add tests for yadif. 2012-07-28 14:33:44 +02:00
Anton Khirnov 8112710f17 FATE: add a test for delogo video filter. 2012-07-28 14:33:32 +02:00
Anton Khirnov 7339340787 FATE: add a test for amix audio filter. 2012-07-28 14:32:53 +02:00
Anton Khirnov 67ef5f4eb5 audiogen: allow specifying random seed as a commandline parameter. 2012-07-28 14:32:48 +02:00
Mans Rullgard b9d3c37848 build: use COMPILE template for HOSTOBJS
Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-07-26 23:58:59 +01:00
Mashiat Sarker Shakkhar 8d2e3fee0b vc1: Add a test for interlaced field pictures
Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2012-07-22 22:28:30 -04:00
Anton Khirnov df53a4a7c1 FATE: fix the asyncts test
Nellymoser is float, so use oneoff comparison instead of md5.
2012-07-22 17:58:56 +02:00
Anton Khirnov 73cd131ebc FATE: add a test for the asyncts audio filter. 2012-07-22 10:14:16 +02:00
Anton Khirnov 5eb9c495af FATE: add a test for flac cover art. 2012-07-20 10:17:25 +02:00
Janne Grunau 2d497c141d eval: add gt(), gte(), lt() and lte() fate tests 2012-07-14 13:43:10 +02:00
Max Lazarov caac3ab6ef eval: fix swapping of lt() and lte()
CC: libav-stable@libav.org
2012-07-14 13:33:25 +02:00
Anton Khirnov 8d18bc550e fate-run: make avconv() properly deal with multiple inputs. 2012-07-09 08:22:38 +02:00
Mans Rullgard 7c29377b70 lavfi: reclassify showfiltfmts as a TESTPROG
This tool uses lavfi internal symbols not accessible in shared
libraries.  TESTPROGS are linked statically to allow them use of
library internals not normally exported.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-07-04 17:48:25 +01:00
Samuel Pitoiset 8c14f7a593 Add XTEA encryption support in libavutil
Signed-off-by: Martin Storsjö <martin@martin.st>
2012-07-04 15:10:57 +03:00
Samuel Pitoiset bc3dbcc8e5 Add Blowfish encryption support in libavutil
Signed-off-by: Martin Storsjö <martin@martin.st>
2012-07-04 15:10:57 +03:00
Martin Storsjö 143f1e9203 eval: Add the isinf() function and tests for it
Signed-off-by: Martin Storsjö <martin@martin.st>
2012-07-04 15:10:56 +03:00
Anton Khirnov 1c840fa227 FATE: add a test for WMA cover art. 2012-07-04 05:59:14 +02:00
Anton Khirnov 8059d3b7d4 FATE: add a test for apetag cover art 2012-07-04 05:59:05 +02:00
Anton Khirnov bf2a7f9161 FATE: add a test for itunes cover art. 2012-07-04 05:58:47 +02:00
Mans Rullgard 983fa8bc46 fate: add flac encode/decode tests with various options
Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-07-04 01:22:40 +01:00
Alex Converse a112822597 movenc: Add channel layouts for PCM. 2012-06-27 13:47:58 -07:00
Mans Rullgard 7457ebee3a fate: vorbis: add 5.1 surround test
Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-06-18 11:47:08 +01:00
Mans Rullgard 16b8525963 fate: add snow hpel tests
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
2012-06-15 19:10:58 +02:00
Diego Biurrun a488028362 build: Do not delete tests/vsynth2 directory, which is no longer created. 2012-06-13 12:27:49 +02:00
Mans Rullgard d0e9415d23 fate: avoid freopen(NULL) in videogen/rotozoom
A number of systems do not implement freopen() with a NULL filename
correctly.  This changes these programs to output individual images
if opening a named output argument as a file fails, in this case
assuming it is a directory.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-06-07 11:28:39 +01:00
Alex Converse 41e9682af2 movenc: Write chan atom for all audio tracks in mov mode movies. 2012-06-04 10:08:31 -07:00
Michael Niedermayer 0fcf3013c4 fate: Fix fate-ac3-fixed-encode for pre-ssse3 x86 machines
The default mmxext and sse implementations of apply_window_int16
aren't bitexact.

Signed-off-by: Martin Storsjö <martin@martin.st>
2012-05-31 00:01:04 +03:00
Mans Rullgard 0857e46dd5 fate: add missing $(TARGET_PATH) to ac3-fixed-encode
Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-05-30 07:55:13 +01:00
Mans Rullgard 00c78a0a15 fate: fix md5sum replacement on some systems
On systems where the 'md5' command is used, there is a conflict
with the md5() shell function in fate-run.sh.  Using the 'command'
keyword bypasses the shell function for correct behaviour.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-05-30 07:52:35 +01:00
Anton Khirnov 8daf21d567 avconv: merge configuration code for complex and simple filters
Some tests change because -s now inserts the scaler to the end instead
of beginning of the filtergraph.
2012-05-29 19:19:16 +02:00
Mans Rullgard f919cc7df6 fate: fix acodec/vsynth tests for make 3.81
GNU make 3.81 applies pattern rules in declaration order rather than
by stem length as in 3.82.  This moves the more generic patterns above
the more specific ones such that they work with either make version.
Some of the vsynth patterns are also simplified a little.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-05-29 17:49:44 +01:00
Mans Rullgard 7263cd5544 fate: convert codec-regression.sh to makefile rules
Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-05-29 08:35:41 +01:00
Mans Rullgard 47b5996bb0 fate: allow tests to specify unit size for psnr comparison
Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-05-29 08:27:19 +01:00
Mans Rullgard 7e5880e0cb fate: teach videogen/rotozoom to output a single raw video stream
This makes videogen/rotozoom output a raw video stream on stdout
if no output directory is specified.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-05-29 08:27:19 +01:00
Mans Rullgard 4852cb37ce fate: fix dependencies for non-SAMPLES avconv tests
The encode/decode tests should all depend on avconv.  Since
avconv requires libavfilter, there is no need to enable those
tests selectively.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-05-20 12:54:31 +01:00
Mans Rullgard 68aef0b481 lavf: change some (de)muxer names to lowercase
This is consistent with other format names.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-05-19 19:44:16 +01:00
Mans Rullgard 63dcd16d56 fate: fix dependencies on SAMPLES being set
This allows fate to run without errors with or without SAMPLES
being set.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-05-19 14:30:41 +01:00
Mans Rullgard 8ccc1c5975 fate: remove unnecessary libavfilter dependency
avconv now requires libavfilter so this dependency is redundant.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-05-19 14:25:00 +01:00
Anton Khirnov 74b961db77 avconv: replace -vsync cfr code with the fps filter.
Invented timestamps for the h264 tests return to something resembling
sanity.

In the idroq-video-encode test when converting 25 fps -> 30 fps the
fifth frame gets duplicated instead of the sixth.
2012-05-18 19:38:40 +02:00
Anton Khirnov 755cd4197d mov: enable parsing for VC-1.
This makes lavf discard broken timestamps for non-B frames in
samples/isom/vc1-wmapro.ism.
2012-05-18 19:38:21 +02:00
Diego Biurrun 1afc278994 fate: Set FUZZ factor of vorbis-13 test to 2.
This is necessary to account for different rounding done in the 3DNow!
Assembly optimizations.
2012-05-18 16:08:41 +02:00
Diego Biurrun 4cc8e15371 fate: Set FUZZ factor of (e)ac3-encode test to 3.
This is necessary to account for different rounding done in the 3DNow!
Assembly optimizations.
2012-05-18 16:08:40 +02:00
Mans Rullgard ab5c38ec45 fate: remove unused code from regressions-funcs.sh
The only uses of the do_avconv_nomd5() function were removed in
85cf49f.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-05-18 14:00:36 +01:00
Mans Rullgard 7d7b40f48a pcmenc: set correct bitrate value
This fixes a bogus bitrate value in the header of WAV files with
alaw/ulaw audio.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-05-17 02:34:57 +01:00
Anton Khirnov d894752387 avprobe: don't print format entry name when only one was requested
This is easier to parse with automated tools.
2012-05-16 18:35:05 +02:00
Martin Storsjö 6ce51a9b39 fate: Work around non-standard wc implementations at more places
This applies the same fix as in ed7409fe9d for lavf-regressions.sh.

Signed-off-by: Martin Storsjö <martin@martin.st>
2012-05-16 14:48:58 +03:00
Mans Rullgard ed7409fe9d fate: work around non-standard wc implementations
On some systems, the wc command prints spaces before the first
number causing mismatches with the test references.  Using the
output of wc as arguments to echo removes any extra whitespace.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-05-16 03:04:53 +01:00
Mans Rullgard 11e33402ca fate: use standard diff options
diff -w is not a standard option.  This fixes the reference files
to match what the tests actually output and switches to using the
standard diff -b which is sufficient to handle different line ending
styles.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-05-15 19:47:18 +01:00
Mans Rullgard 6d042f7989 fate: rename psx-str-v3-mdec to mdec-v3
This name better reflects that it is v3 of mdec that is tested.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-05-15 15:49:56 +01:00
Mans Rullgard c68adc7b2f fate: convert psx-str to a demuxer test
While these codecs are covered elsewhere, the container is different
from the other psx-str file.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-05-15 15:49:56 +01:00
Mans Rullgard 0ff0af731c fate: use diff -b in oneline comparison
This is simpler and should take care of any problems with mixed
line ending styles.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-05-15 15:23:34 +01:00
Mans Rullgard 7abf789975 fate: make smjpeg a demux test
These codecs are covered elsewhere so make this a pure demux test.
Also rename it accordingly.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-05-15 00:03:40 +01:00
Mans Rullgard b1c1d7dae7 fate: separate sierra-vmd audio and video tests
Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-05-14 21:38:28 +01:00
Mans Rullgard 0b1c868508 fate: separate smacker audio and video tests
Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-05-14 21:38:28 +01:00
Anton Khirnov 369cb092ec avconv: add support for audio filters.
The FATE changes are all off-by-one due to different rounding being used
(lrintf vs av_rescale_q).
2012-05-14 21:36:11 +02:00
Mans Rullgard 7c6d240665 mtv: do not byteswap raw video in demuxer
Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-05-14 20:26:39 +01:00
Mans Rullgard 09a35f251a fate: westwood-aud: disable decoding
The codec (adpcm-ima-ws) is tested elsewhere.  Using framecrc output
provides more information than a single md5 if something goes wrong.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-05-14 13:06:05 +01:00
Mans Rullgard f70d91e268 fate: caf: disable decoding
This is intended as a demuxer test and the file contains pcm_s16be
audio which is tested elsewhere.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-05-14 13:05:30 +01:00
Mans Rullgard b809991a31 fate: film-cvid: drop pcm audio and rename test
Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-05-14 13:05:07 +01:00
Mans Rullgard 0bbb330ee3 fate: d-cinema-demux: drop unnecessary flags
Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-05-14 13:04:20 +01:00
Mans Rullgard cd7b82c5d1 fate: split off dpcm-interplay from interplay-mve tests
These two files use the same audio codec so only one test for
this is needed.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-05-14 13:02:02 +01:00
Mans Rullgard 838521e110 fate: rename funcom-iss to adpcm-ima-iss
This matches the name of the codec.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-05-14 13:01:01 +01:00
Mans Rullgard 9656b7f2ae fate: rename cryo-apc to adpcm-ima-apc
This matches the name of the tested codec.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-05-14 13:00:26 +01:00
Mans Rullgard 773459e757 fate: rename adpcm-psx-str-v3 to adpcm-xa
This matches the name of the codec tested.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-05-14 12:56:06 +01:00
Mans Rullgard 6a64ff74fe fate: split off adpcm-ms-mono test from dxa-feeble
Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-05-14 12:55:47 +01:00
Mans Rullgard 95939bf565 fate: split off adpcm-ima-ws test from vqa-cc
Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-05-14 12:55:33 +01:00
Mans Rullgard 88ae6178b1 fate: add adpcm-ima-smjpeg test
Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-05-14 12:54:34 +01:00
Mans Rullgard cb0713fca2 fate: split off adpcm-ima-amv from amv test
Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-05-14 12:53:46 +01:00
Mans Rullgard 35d88a86e3 fate: separate bmv audio and video tests
Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-05-14 12:51:59 +01:00
Mans Rullgard bd7ac952b1 fate: separate delphine-cin audio and video tests
Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-05-14 12:51:31 +01:00
Mans Rullgard f4d2b93be4 fate: truemotion1: disable audio
These tests include adpcm-ima-dk3 audio which is tested elsewhere.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-05-14 12:51:19 +01:00
Mans Rullgard 63322d8c89 fate: qtrle: disable audio in all tests
These files contain mace6 audio which is tested elsewhere.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-05-14 12:50:19 +01:00
Mans Rullgard 0c26380f4f fate: pcm-planar: disable video
This file has eamad video which is tested elsewhere.
Also rename the test to reflect this change.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-05-14 12:50:01 +01:00
Mans Rullgard 1c0e8b94ad fate: mtv: disable video decoding
This test contains raw rgb565le video.  Converting to rgb24 serves
no useful purpose here.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-05-14 12:49:42 +01:00
Diego Biurrun ec2dbec84d fate: employ better names and add a convenient shorthand for vp6 tests 2012-05-11 10:50:28 +02:00
Mans Rullgard 4f1500689d avconv: use lrint() for rounding double timestamps
Converting the double to float for lrintf() loses precision when
the value is not exactly representable as a single-precision float.
Apart from being inaccurate, this causes discrepancies in some
configurations due to differences in rounding.

Note that the changed timestamp in the vc1-ism test is a bogus,
made-up value.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-05-10 22:54:27 +01:00
Diego Biurrun 454b1f9b58 fate: cosmetics: lowercase some comments 2012-05-09 18:12:28 +02:00
Diego Biurrun 7ac4bde22a fate: Give more consistent names to some RealVideo/RealAudio tests. 2012-05-09 18:12:27 +02:00
Mans Rullgard b1f9be5436 fate: split idroq audio and video into separate tests
Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-05-09 14:13:34 +01:00
Mans Rullgard f7c2dca0d9 fate: improve dependencies
This makes only tests actually using avconv depend on it.
The remaining tests already depend on what they need.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-05-09 14:13:34 +01:00
Diego Biurrun 63e01c2f19 fate: add convenient shorthands for ea-vp6, libavcodec, libavutil tests
Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-05-09 14:13:34 +01:00
Diego Biurrun f2a5586c64 fate: split some combined tests into separate audio and video tests
Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-05-09 14:13:34 +01:00
Mans Rullgard d57b43df2e fate: fix dependencies for probe tests
Only the probe tests should depend on avprobe and these should
be enabled only if avprobe is configured.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-05-09 13:48:58 +01:00
Alex Converse fa8fc3b73a fate: Change the probe-format refs to match the final text format committed. 2012-05-07 11:01:38 -07:00
Alex Converse 6345209a7d fate: Add avprobe as a make dependency 2012-05-07 11:00:54 -07:00
Ronald S. Bultje 4bfa67bdad Add probe fate tests to test for regressions in detecting media types.
Signed-off-by: Alex Converse <alex.converse@gmail.com>
2012-05-07 10:14:51 -07:00
Mans Rullgard 40fa14f775 fate: Add oneline comparison method
Signed-off-by: Alex Converse <alex.converse@gmail.com>
2012-05-07 10:14:50 -07:00
Sean McGovern be6009d32c tests/utils: don't ignore the return value of fwrite()
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2012-05-06 17:44:59 +02:00
Diego Biurrun f0ccd53a3b tests: Refactor rotozoom/videogen common code into a separate file. 2012-05-05 17:11:06 +02:00
Diego Biurrun 814208a7a6 tests: Mark some file-internal symbols as static. 2012-05-05 16:32:57 +02:00
Mans Rullgard b6a6e90a7c fft-test: add option to set cpuflag mask
This can be useful for testing.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-04-25 23:19:40 +01:00
Justin Ruggles 394dbde548 FATE: use updated reference for aac-latm_stereo_to_51
This uses correct stereo to 5.1 upmixing via libavresample.
2012-04-24 23:38:54 -04:00
Justin Ruggles c5671aeb77 FATE: avoid channel mixing in lavf-dv_fmt
This partially reverts acb1730218
which would only have needed to change the checksums if channel mixing had
been properly avoided. This changes the output file size reference and the
seek test reference back to the previous values.
2012-04-24 15:55:45 -04:00
Dale Curtis 8336eb6f85 matroska: Add incremental parsing of clusters.
Reduces the amount of upfront data required for cluster parsing
thus decreasing latency on seek and startup.

The change in the seek-lavf_mkv FATE test is due to incremental
parsing no longer reading as much data as the old parser and
thus not having that additional data to generate index entries
based on keyframes.  Index entries are added correctly as the
file is parsed.

All FATE tests pass and Chrome has been using this patch for ~6
months without issue.

Currently incremental parsing is not supported for files with
SSA tracks since they require merging packets between clusters.
In this case the code falls back to non-incremental parsing.

Signed-off-by: Aaron Colwell <acolwell@chromium.org>
Signed-off-by: Dale Curtis <dalecurtis@chromium.org>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2012-04-22 17:23:50 -07:00
Justin Ruggles acb1730218 FATE: allow lavf tests to alter input parameters
Change some lavf tests to avoid resampling and channel mixing.
2012-04-20 10:23:57 -04:00
Justin Ruggles 5052980400 FATE: replace the acodec-pcm_s24daud test with an enc_dec_pcm checksum test
This avoids resampling and channel mixing by using a source with
the correct channel layout and sample rate.
2012-04-20 10:23:57 -04:00
Justin Ruggles 03caef1bed FATE: replace the acodec-g726 test with 4 new encode/decode tests
Avoids resampling and channel mixing. This only tests the behavior
with respect to input and output audio rather than also testing changes
to the encoder or muxer that do not affect the resulting decoded output.
2012-04-20 10:23:57 -04:00
Justin Ruggles a6c8cca2a8 FATE: replace current g722 encoding tests with an encode/decode test
Avoids resampling and channel mixing. This only tests the behavior
with respect to input and output audio rather than also testing changes
to the encoder or muxer that do not affect the resulting decoded output.
2012-04-20 10:23:57 -04:00
Justin Ruggles 870165e217 FATE: add a pattern rule for generating asynth wav files 2012-04-20 10:23:57 -04:00
Justin Ruggles 010943c6ce FATE: optionally write a WAVE header in audiogen 2012-04-20 10:23:57 -04:00
Justin Ruggles 9cc338b1de FATE: pass the decoded output format and audio source file to enc_dec_pcm
This will allow decoding to md5 and doing a diff comparison to a reference
checksum instead of a fuzzy stddev or oneoff comparison.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-04-18 22:26:56 -04:00
Justin Ruggles c755b1fbbc FATE: specify the input format when decoding in enc_dec_pcm()
The output format is not always the same as the file extension,
which is sometimes required for correct probing. We can avoid
probing by specifying the format since it is already known.
2012-04-18 22:26:49 -04:00
Anton Khirnov b7327887ea avconv: get output pixel format from lavfi.
This way we don't require a clearly defined corresponding input stream.

The result for the xwd test changes because rgb24 is now chosen instead
of bgra.
2012-04-15 20:22:36 +02:00
Justin Ruggles d3c59d5003 avconv: use default channel layouts when they are unknown
If either input or output layout is known and the channel counts match,
use the known layout for both. Otherwise choose the default layout based on
av_get_default_channel_layout().

Changed some FATE references due to some WAVE files now having a non-zero
channel mask.
2012-04-10 11:30:01 -04:00
Ronald S. Bultje 7756859a31 fate: add BMP tests. 2012-04-04 11:16:23 -07:00
Derek Buitenhuis 0aaa45ef69 FATE: Add RALF decoding test
Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2012-04-01 15:56:08 -04:00
Anton Khirnov e2e165c00f FATE: add a test for vp8 with changing frame size. 2012-03-28 09:28:29 +02:00
Ronald S. Bultje e74d6daa29 fate: add kgv1 fate test.
Tested to be bit-exact across x86-64, x86-32 and ppc.
2012-03-27 17:54:04 -07:00
Ronald S. Bultje 7beec7e29d fate: add wmalossless test. 2012-03-23 14:03:03 -07:00
Derek Buitenhuis e9c0b12c2e FATE: Add ZeroCodec test
Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2012-03-22 19:52:56 +01:00
Justin Ruggles b0f75ba272 mpegaudioenc: use AVCodec.encode2()
Update FATE references due to encoder delay.
2012-03-20 18:56:22 -04:00
Justin Ruggles bb03b6f7b1 g722enc: use AVCodec.encode2()
FATE reference updated due timestamp rounding because of resampling from
44100 Hz to 16000 Hz in avconv.
2012-03-20 18:47:23 -04:00
Justin Ruggles aa872af5e3 ac3enc: update to AVCodec.encode2()
Update FATE references due to encoder delay.
2012-03-20 18:46:56 -04:00
Justin Ruggles e056f8d37d FATE: use +/- flag option syntax for vp8 emu-edge tests 2012-03-20 15:51:58 -04:00
Justin Ruggles 9b9fc9ba32 avconv: pass input stream timestamps to audio encoders
5 FATE test references updated due to using demuxer-generated timestamps that
are either not sample-accurate or are slightly off in the input file.
2012-03-20 14:12:54 -04:00
Justin Ruggles cd2ffb67ad xa: fix timestamp calculation
The packet duration is always 28 samples.
2012-03-20 14:12:53 -04:00
Paul B Mahol 791d6df4ae FATE: change fate-maxis-xa to a normal demuxing test
Signed-off-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
2012-03-19 17:17:54 -04:00
Paul B Mahol b36872bdb6 FATE: add test for adpcm-ea-maxis-xa
Signed-off-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
2012-03-19 17:15:54 -04:00
Ronald S. Bultje c346f6304c adpcm: fix nb_samples rounding for adpcm_ima_dk3, and update reference. 2012-03-18 15:25:25 -07:00
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
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 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
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 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 05e0061ef6 fate: add pam image regression test
Signed-off-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
2012-03-14 15:34:50 +01:00
Paul B Mahol 6efe180782 FATE: add shorthand to wavpack test
Signed-off-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2012-03-12 21:47:47 -07:00
Paul B Mahol 5a877d9530 FATE: add test for cdxl demuxer
Signed-off-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Martin Storsjö <martin@martin.st>
2012-03-12 17:01:58 +02:00
Anton Khirnov 018f39ef49 FATE: add CPUFLAGS variable, mapping to -cpuflags avconv option. 2012-03-06 15:03:36 +01:00
Justin Ruggles 6c65cf58fd lavf: Use av_get_audio_frame_duration() in get_audio_frame_size()
Also, do not give AVCodecContext.frame_size priority for muxing.

Updated 2 FATE references:
dxa-feeble - adds 1 audio frame that is still within 2 seconds as specified
             by -t 2 in the FATE test
wmv8-drm-nodec - durations are not needed. previously they were estimated
                 using the packet size and average bit rate.
2012-03-05 13:08:18 -05:00
Justin Ruggles 8d1a20aa7c aiffdec: do not set AVCodecContext.frame_size
It is unnecessary. Also, for some codecs we're reading more than 1 frame per
packet. Instead we use a private context variable to calculate the bit rate,
stream duration, and packet durations.

Updated FATE seek test, which has slightly different timestamps due to a
more accurate bit rate calculation.
2012-03-05 13:08:17 -05:00
Anton Khirnov 27c7ca9c12 lavf: deobfuscate read_frame_internal().
Split off packet parsing into a separate function. Parse full packets at
once and store them in a queue, eliminating the need for tracking
parsing state in AVStream.

The horrible unreadable loop in read_frame_internal() now isn't weirdly
ordered and doesn't contain evil gotos, so it should be much easier to
understand.

compute_pkt_fields() now invents slightly different timestamps for two
raw vc1 tests, due to has_b_frames being set a bit later. They shouldn't
be more wrong (or right) than previous ones.
2012-03-05 18:47:05 +01:00
Derek Buitenhuis 6aa6e3e814 fate: Add sunrast regression test
Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
2012-03-03 20:57:03 -05:00
Justin Ruggles 51ddf35c90 wmaenc: fix m/s stereo encoding for the first frame
We need to set ms_stereo in encode_init() in order to avoid incorrectly
encoding the first frame as non-m/s while flagging it as m/s. Fixes an
uncomfortable pop in the left channel at the start of playback.

CC:libav-stable@libav.org
2012-03-03 18:20:10 -05:00
Justin Ruggles f9cf91d822 tiertexseq: set audio stream start time to 0
Update FATE test to reflect delayed video due to the file having audio-only
frames prior to the first frame with video.
2012-03-03 17:03:27 -05:00
Justin Ruggles 0883109b27 voc/avs: Do not change the sample rate mid-stream.
Also, set the time base based on the sample rate.
lavf-voc seek test updated to reflect slightly different seek points.
2012-03-03 17:03:27 -05:00
Justin Ruggles d0ab585074 vqf: set packet duration
Fixes timestamp calculation.
The FATE reference is updated because timestamp calculations are now more
accurate. Previous timestamps were based on average bit rate.
2012-03-03 17:03:26 -05:00
Justin Ruggles 0b8b7db01b mpegaudio_parser: do not ignore information from the first parsed frame
Update some demuxing and seeking fate tests.
2012-03-03 17:03:26 -05:00
Martin Storsjö b087ce2bee g722: Fix the QMF scaling
This fixes clipping if the encoder input used the full 16 bit
input range (samples with a magnitude below 16383 worked fine).
The filtered subband samples should be 15 bit maximum, while
the code earlier produced them scaled to 16 bit.

This makes the decoder output have double the magnitude
compared to before.

The spec reference samples doesn't test the QMF at all, which
was why this part slipped past initially.

Signed-off-by: Martin Storsjö <martin@martin.st>
2012-03-02 18:58:19 +02:00
Anton Khirnov efec3bc65a electronicarts: set timebase for tgv video.
The container has no timestamps and the framerate isn't stored in the
data either.
The decoder sets codec timebase to experimentally found value 1/15. Do
the same for the demuxer too, it should at least be better than the
default 1/90000.
2012-03-02 11:11:38 +01:00
Anton Khirnov e39400c3a8 electronicarts: parse the framerate for cmv video. 2012-03-02 11:11:38 +01:00
Anton Khirnov 1d3144c318 electronicarts: don't set codec timebase
Demuxers are not supposed to set it.
Set stream timebase and framerates instead (this is a cfr container with
no timestamps).
2012-03-02 11:11:38 +01:00
Justin Ruggles f240df6a74 FATE: do not decode audio in the nuv test.
We already have sufficient coverage for 16-bit pcm.
2012-02-29 15:45:50 -05:00
Justin Ruggles 841c17177b FATE: add mp3 test for sample that exhibited false overreads
related to b716542691
Error messages and audible artifacts were fixed in that commit.
2012-02-29 15:12:18 -05:00
Paul B Mahol 31b132c094 fate: add cdxl test for bit line plane arrangement
Signed-off-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
2012-02-29 15:11:05 -05:00
Martin Storsjö 85b221e4d3 dpxenc: Don't include the libavcodec ident if bitexact mode is enabled
This avoids breaking fate every time the lavc version is bumped.

Signed-off-by: Martin Storsjö <martin@martin.st>
2012-02-29 20:08:09 +02:00
Kostya Shishkov 12b812d2e5 prores: store and retrieve extended colourspace information
Based on the patch by Phil Barrett.
2012-02-29 09:29:02 +01:00
Kostya Shishkov 235d693286 prores: handle 444 chroma in right order
ProRes codes chroma blocks in 444 mode in different order than luma blocks,
so make both decoder and encoder read/write chroma blocks in right order.

Reported by Phil Barrett
2012-02-29 09:28:34 +01:00
Anton Khirnov 63efd83ae1 mpegvideo_enc: add chroma/luma_elim_threshold private options.
Deprecate corresponding AVCodecContext fields.
2012-02-29 07:23:31 +01:00
Anton Khirnov ff71a383ac mpegvideo_enc: add qp_rd flag to mpv_flags.
Deprecate CODEC_FLAG_QP_RD.
2012-02-29 07:12:10 +01:00
Derek Buitenhuis 273f4b39fc fate: Overhaul WavPack coverage
WavPack has a comprehensive test suite, and a bunch
of corner cases.

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2012-02-27 09:40:36 -08:00
Anton Khirnov 7929e22bde lavf: don't guess r_frame_rate from either stream or codec timebase.
Neither of those is guaranteed to be connected to framerate in any way
(if it even exists).

Fixes bug 56.
2012-02-26 19:32:33 +01:00
Anton Khirnov 832ba44d8d avconv: saner output video timebase.
r_frame_rate should in theory have something to do with input framerate,
but in practice it is often made up from thin air by lavf. So unless we
are targeting a constant output framerate, it's better to just use input
stream timebase.

Brings back dropped frames in nuv and cscd tests introduced in
cd1ad18a65
2012-02-26 07:48:45 +01:00
Anton Khirnov 87d7a92b62 rawdec: set timebase to 1/fps. 2012-02-26 07:30:21 +01:00
Anton Khirnov 493a86e25b FATE: remove a bunch of useless -vsync 0
No changes in the test results.
2012-02-26 07:28:04 +01:00
Paul B Mahol 159a2436b0 fate: add tests for cdxl video
Signed-off-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
2012-02-25 00:18:24 -05:00
Anton Khirnov 0584e3ca97 lavf: don't set AVCodecContext.has_b_frames in compute_pkt_fields().
It is not supposed to be done outside lavc.

This is basically a revert of 818062f2f3.

It is unclear what issue this was supposed to fix, if it reappears again
it will have to be fixed in a more proper place.

The wtv-demux test change is because the sample starts with a B-frame.
2012-02-22 19:31:06 +01:00
Reimar Döffinger 2c87c7a952 Add prores regression test.
Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
2012-02-21 14:42:30 -05:00
Reimar Döffinger a86ca94615 Enable already existing rso regression test.
Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
2012-02-21 14:42:30 -05:00
Reimar Döffinger ecdb31caf2 Add regression test for "sox" format muxer/demuxer.
Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
2012-02-21 14:42:30 -05:00
Carl Eugen Hoyos 8ee2ddcb2a Add dpx encoding regression test.
Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
2012-02-21 14:42:30 -05:00
Justin Ruggles 770a5c6d02 adpcmenc: Use correct frame_size for Yamaha ADPCM.
Output packet size should match avctx->block_align. The target output packet
size is 1024 bytes.
Before:
mono   - 1024 samples -> 512 bytes
stereo - 2048 samples -> 2048 bytes
After:
mono   - 2048 samples -> 1024 bytes
stereo - 1024 samples -> 1024 bytes
2012-02-20 15:52:32 -05:00
Justin Ruggles c9fdf3241a bethsoftvid: synchronize video timestamps with audio sample rate
According to unofficial documentation, the video rate is locked to the audio
sample rate. This results in proper synchronization of audio and video
timestamps from the demuxer. This only works if the first audio packet occurs
before the first video packet or the audio sample rate is the default rate of
11111 Hz, both of which are true for all samples in our archive.
2012-02-16 10:47:11 -05:00
Justin Ruggles 9546f331c6 bethsoftvid: Set video packet duration instead of accumulating pts. 2012-02-16 10:47:11 -05:00
Justin Ruggles f320fb894c bethsoftvid: pass palette in side data instead of in a separate packet.
Update FATE reference to account for now non-existent palette packet.
This also fixes the FATE test if frame data is not initialized in
get_buffer(), so update comment in avconv accordingly.
2012-02-16 10:47:11 -05:00
Aneesh Dogra 186dcbcb50 sunrast: Add fate test for gray8.
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
2012-02-13 22:29:22 +01:00
Anton Khirnov 177bb4bf50 cljr: set the properties of the coded_frame, not input frame. 2012-02-12 08:05:38 +01:00
Justin Ruggles b498867d66 FATE: update reference for seek-alac_mp4
This should have been updated in b590f3a7bf.
2012-02-11 16:41:01 -05:00
Justin Ruggles b590f3a7bf alacenc: only encode frame size in header for a final smaller frame
Otherwise it is not needed because it matches the frame size as encoded in
the extradata.
2012-02-11 12:49:22 -05:00
Alex Converse 37bed6ff3f aacdec: Try to sniff a reasonable channel layout for PCE based configurations.
This changes the output order of multichannel PCE based streams.
2012-02-09 13:33:06 -08:00
Diego Biurrun 0bba26466f cosmetics: Delete empty lines at end of file. 2012-02-09 12:26:45 +01:00
Anton Khirnov cd1ad18a65 rawenc: switch to encode2().
This changes a number of FATE results, since before this commit, the
timestamps in all tests using rawenc were made up by lavf.

In most cases, the previous timestamps were completely bogus.

In some other cases -- raw formats, mostly h264 -- the new timestamps
are bogus as well. The only difference is that timestamps invented by
the muxer are replaced by timestamps invented by the demuxer.

cscd     -- avconv sets output codec timebase from r_frame_rate
and r_frame_rate is in this case some guessed number 31.42 (377/12),
which is not accurate enough to represent all timestamps. This results
in some frames having duplicate pts. Therefore, vsync 0 needs to be
changed to vsync 2 and avconv drops two frames. A proper fix in the
future would be to set output timebase to something saner in avconv.

nuv      -- previous timestamps for video were wrong AND the cscd
comment applies, one frame is dropped.

vp8-signbias -- the file contains two frames with identical timestamps,
so -vsync 0 needs to be removed/changed to -vsync 2 and avconv drops one
frame.

vc1-ism -- apparrently either the demuxer lies about timestamps or the
file is broken, since dts == pts on all packets, but reordering clearly
takes place.
2012-02-08 21:51:24 +01:00
Anton Khirnov 1270e12e49 avconv: rework -t handling for encoding.
Current code compares the desired recording time with InputStream.pts,
which has a very unclear meaning. Change the code to use actual
timestamps of the frames passed to the encoder.

In several tests, one less frame is encoded, which is more correct.

In the idroq test one more frame is encoded, which is again more
correct.

Behavior with stream copy should be unchanged.
2012-02-07 20:11:11 +01:00
Anton Khirnov 4be1d7dc20 pva-demux test: add -vn
The output is obviously not supposed to contain video (since only
-acodec copy is specified), but that only happens because of the way -t
handling is implemented currently.
2012-02-07 20:06:57 +01:00
Anton Khirnov d2afbd9a56 frame{crc/md5}: set the stream timebase from codec timebase.
Right now those muxers use the default timebase in all cases(1/90000).

This patch avoid unnecessary rescaling and makes the printed timestamps
more readable.

Also, extend the printed information to include the timebases and packet
pts/duration and align the columns.

Obviously changes the results of all fate tests which use those two
muxers.
2012-02-03 09:29:02 +01:00
Mans Rullgard 2c98f407c8 fate: make acodec-ac3_fixed test output raw AC3
There is no point in this test using the RM format.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-02-02 14:31:54 +00:00
Justin Ruggles c3a06615bd bethsoftvideo: fix palette reading.
Return the correct number of consumed bytes and set *data_size = 0.
Returned size is 1 too small, leading to that 1 byte being read as the next
frame, which results in an extra blank frame at the beginning of the stream.
2012-02-01 19:41:39 -05:00
Janne Grunau e67e3a3f4a fate-golomb: extend golomb-test to get_ue_golomb_long()
get_ue_golomb_long() is only tested for values up to 2^15 - 2 since
we can not write larger values.
Silence the test on success and return a non-zero value on error.
Use an heap scratch buffer instead of large stack buffer.
Remove unneeded includes.
2012-02-01 01:18:55 +01:00
Diego Biurrun 52afc97168 fate: add golomb-test 2012-01-31 19:56:13 +01:00
Diego Biurrun e9ba6b3704 build: Use order-only prerequisites for creating FATE reference file dirs. 2012-01-30 13:00:35 +01:00
Anton Khirnov 7773161b8f codec-regression: use private options instead of deprecated codec flags. 2012-01-27 10:38:33 +01:00
Anton Khirnov 7063b6eaee lavc: increase major version to 54.
The lavf-ffm test results change because ffmenc writes
AVCodecContext.flags/flags2 and the defaults for those change.
2012-01-27 10:38:30 +01:00
Alex Converse 08628b6afb Revert "sws/pixfmt/pixdesc: add support for yuva444p"
This reverts commit fc115c80b7.

Tests are broken.
2012-01-26 18:06:57 -08:00
Paul B Mahol fc115c80b7 sws/pixfmt/pixdesc: add support for yuva444p
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2012-01-27 09:24:08 +08:00
Paul B Mahol 7de9af65c7 fate: add XWD image regression test
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2012-01-26 01:51:26 +01:00
Janne Grunau f028d4d1c3 mxfdec: hybrid demuxing/seeking solution
This uses the old demuxing code for OP1a and separate demuxing code for OPAtom.
Timestamp output is added to the old demuxing code.

The seeking code is made to seek to the start of the desired EditUnit only,
from which the normal demuxing code takes over (if OP1a). This means we
do not use delta entries or slices, only StreamOffsets. OPAtom seeking
basically works like before.

This also makes D-10 seeking behave the same way as OP1a and OPAtom. In other
words, we allow seeking before the start or past the end for D-10 too.

Based on several patches by Tomas Härdin <tomas.hardin@codemill.se> and
Reimar Döffinger <Reimar.Doeffinger@gmx.de>.

Changed av_calloc to av_mallocz, added overflow checks.
2012-01-22 14:40:53 +01:00
Diego Biurrun e5903e2972 fate: add some shorthands to run groups of tests 2012-01-19 00:45:21 +01:00
Diego Biurrun 395e6402fe fate: Give some tests more sensible names. 2012-01-19 00:45:06 +01:00
Gaurav Narula b481bbc32a tests: K&R formatting cosmetics for test programs 2012-01-18 21:07:17 +01:00
Diego Biurrun 2df5f59ad0 fate: split ADPCM and DPCM test references into separate files. 2012-01-15 22:00:12 +01:00
Justin Ruggles 4c82c6d993 FATE: convert output to rgba for the targa tests which currently output pal8
fixes the tests on big-endian systems
2012-01-13 18:40:12 -05:00
Janne Grunau 502bf3b462 fate: add missing reference files for targa tests in 9c2f9b0e2
Fixes fate-targa-conformance-CCM8 and fate-targa-conformance-UCM8.
2012-01-13 23:52:59 +01:00
Justin Ruggles 9c2f9b0e2d FATE: enable the 2 remaining targa conformance suite tests 2012-01-13 17:13:12 -05:00
Justin Ruggles e1a7af6f29 FATE: fix targa tests on big-endian systems 2012-01-13 16:14:48 -05:00
Justin Ruggles 68d6012c72 FATE: add tests for targa
Based on a patch by Oana Stratulat <oanaandreeastratulat@gmail.com>
2012-01-13 15:45:30 -05:00
Martin Storsjö 5c7c9a9f33 fate: Update file checksums after the mov muxer change in a78dbada55
Signed-off-by: Martin Storsjö <martin@martin.st>
2012-01-10 16:54:23 +02:00
Gaurav Narula a67b8c86d0 fate: Add tests for more AAC features.
al15_44 uses independent coupling.
al18_44 uses PNS (perceptual noise substitution).
am05_44 uses main prediction and independent coupling.

Signed-off-by: Alex Converse <alex.converse@gmail.com>
2012-01-09 11:21:40 -08:00
Alex Converse cd6e34d369 fate: Add tests for vc1/wmapro in ism. 2012-01-09 11:04:17 -08:00
Alex Converse 46ef355c65 aacdec: Add a fate test for 5.1 channel SBR. 2012-01-09 11:04:05 -08:00
Paul B Mahol 5cad970971 swscale: RGB4444 and BGR444 input
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2012-01-08 20:19:41 -08:00
Mike Melanson d41d7773bc FATE: add test for xWMA demuxer.
(Does not attempt to decode percetual audio data inside.)
Code coverage: libavformat/xwma.c: 3% -> 75%

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2012-01-08 18:33:59 -08:00
Mike Melanson 2dee0cdb8e FATE: add test for SMJPEG demuxer and associated IMA ADPCM audio decoder.
(Don't attempt to decode JPEG data.)
Code coverage: libavformat/smjpeg.c: 0% -> 69%
libavcodec/adpcm.c: 0% -> 10% (fresh run); 92.4% -> 93% following a FATE run

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2012-01-08 18:31:50 -08:00
Mike Melanson 599855748a FATE: test to exercise WTV demuxer.
Does not attempt to decode perceptual codecs inside.
Code coverage: libavformat/wtv.c: 0% -> 71%

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2012-01-08 14:53:35 -08:00
Mike Melanson a83f5b8a96 FATE test: cvid-grayscale; ensures that the grayscale Cinepak variant is exercised.
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2012-01-08 14:20:04 -08:00
Mike Melanson 15f073ee6d FATE: xmv-demux test; exercise the XMV demuxer without decoding the perceptual codecs inside.
Code coverage:
libavformat/xmv.c: 3% -> 91%

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2012-01-07 11:21:27 -08:00
Mike Melanson 2907f88aee FATE test: BMV demuxer and associated video and audio decoders.
Code coverage:
libavcodec/bmv.c: 0% -> 75%
libavformat/bmv.c: 0% -> 85%

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2012-01-07 11:10:58 -08:00
Mike Melanson 9689a1af6d FATE: indeo4 video decoder test.
Code coverage:
libavcodec/indeo4.c: 0% -> 78%

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2012-01-07 11:09:04 -08:00
Mike Melanson f93843e9a0 FATE: update xxan-wc4 test to a sample with more code coverage.
The previous sample used for this test only contained type 0 frames.
Replace it with a sample that also features type 1 frames.
Code coverage:
libavcodec/xxan.c: 72% -> 89%

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2012-01-07 11:06:53 -08:00
Mike Melanson c262404d98 Change the recent h264_mp4toannexb bitstream filter test to output to an elementary stream rather than a program stream.
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2012-01-07 11:04:46 -08:00
Justin Ruggles 77c5b66cbe g722enc: set frame_size, and also handle an odd number of input samples
The fate reference is updated because the previous test skipped a sample in
each encode() call due each input frame having an odd number of samples.
2012-01-07 13:38:23 -05:00
Alex Converse ce23b2af18 fate: Add missing reference file from 9b4767e4. 2012-01-05 11:14:23 -08:00
Janne Grunau 5e5cde2745 vp3: add fate test for non-zero last coefficient 2012-01-05 18:18:08 +01:00
Justin Ruggles 3e57573fce fate: add ADX encoding/decoding test 2012-01-03 18:47:42 -05:00
Oana Stratulat fd16f56798 fate: add dxtory test
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
2012-01-03 23:16:29 +01:00
Janne Grunau 881a5e047d mpegenc: use avctx->slices as number of slices
Adds a new member to MpegEncContext to hold the number of used slice
contexts. Fixes segfaults with '-threads 17 -thread_type slice' and
fate-vsynth{1,2}-mpeg{2,4}thread{,_ilace} with --disable-pthreads.
2012-01-02 19:20:23 +01:00
Janne Grunau 60d626650a fate: use rgb24 as output format for dfa tests
Palette is as supposed in native endianness. Converting the pal8 output
to rgb24 is thus necessary for identical CRCs on big and little endian
systems.
2012-01-01 17:11:27 +01:00
Oana Stratulat febd022228 FATE: add tests for dfa
Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
2011-12-31 15:06:31 -05:00
Diego Biurrun 9afc025bff fate: whitespace cosmetics 2011-12-30 22:18:17 +01:00
Diego Biurrun 628637f67b fate: split off video codec FATE tests into their own file 2011-12-30 22:18:14 +01:00
Diego Biurrun ab2d11f75b fate: split off audio codec FATE tests into their own file 2011-12-30 22:18:13 +01:00
Diego Biurrun 394f0b18bf fate: split off Electronic Arts codec FATE tests into their own file 2011-12-30 22:18:12 +01:00
Diego Biurrun f6ba1f2641 fate: split off QuickTime codec FATE tests into their own file 2011-12-30 22:18:11 +01:00
Diego Biurrun 51150cf070 fate: split off voice codec FATE tests into their own file 2011-12-30 22:18:10 +01:00
Diego Biurrun c7cb1730da fate: split off demuxer FATE tests into their own file 2011-12-30 22:18:09 +01:00
Diego Biurrun f486fb338e fate: drop pointless _audio and _video suffixes from xan tests 2011-12-30 21:14:07 +01:00
Mike Melanson ae51b1a9ba FATE: Add test for H.264 MP4->annex.B bitstream filter.
This test uses an existing FATE sample (h264/interlaced_crop.mp4).

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-12-30 11:20:20 -08:00
Diego Biurrun 209c445267 fate: split off DPCM codec FATE tests into their own file 2011-12-30 01:01:20 +01:00