Commit Graph

3446 Commits

Author SHA1 Message Date
Michael Niedermayer
7c944b0a36 tests/checkasm/x86/Makefile: Use ASMSTRIPFLAGS for asm
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2015-07-13 03:15:44 +02:00
Paul B Mahol
c02ee69be9 fate: add tests for stereo3d anaglyph modes
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2015-07-12 20:05:56 +00:00
Michael Niedermayer
f14fc55969 Merge commit '8bc67ec2c0d2b5444d51a1bed1d50f0e10d92717'
* commit '8bc67ec2c0d2b5444d51a1bed1d50f0e10d92717':
  Checkasm: assembly testing and benchmarking tool

Merged-by: Michael Niedermayer <michael@niedermayer.cc>
2015-07-12 21:03:06 +02:00
Henrik Gramner
8bc67ec2c0 Checkasm: assembly testing and benchmarking tool
It provides the following features:
 * verify correctness by comparing output to the C version.
 * detect failure to save and restore clobbered callee-saved registers.
 * detect 32-bit parameters being used as if they were 64-bit in x86-64
   (the upper halves are not guaranteed to be zero - but in practice
   they very often are, which makes those bugs hard to spot otherwise).
 * easy benchmarking.

Compile by running 'make checkasm'.
Execute by running 'tests/checkasm/checkasm'.

Optional arguments are '--bench' to run benchmarks for all functions,
'--bench=<pattern>' to run benchmarks for all functions that starts with
<pattern>, and '<integer>' to seed the PRNG for reproducible results.

Contains unit tests for most h264pred functions to get started, more tests
can be added afterwards using those as a reference.

Loosely based on code from x264. Currently only supports x86 and x86-64,
but additional architectures shouldn't be too much of an obstacle to add.

Note that functions with floating point parameters or floating point
return values are not supported. Some compiler-specific features or
preprocessor hacks would likely be required to add support for that.

Signed-off-by: Janne Grunau <janne-libav@jannau.net>
2015-07-12 16:39:07 +02:00
Paul B Mahol
9ea81fe95e fate: add tests for w3fdif filter
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2015-07-11 19:34:04 +00:00
Ronald S. Bultje
733c5d889b yuv4mpeg: add rough duration estimate and seeking.
Reviewed-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2015-07-11 14:46:19 +02:00
Paul B Mahol
ae55fc82a8 avfilter/vf_removegrain: clip to uint16 instead to uint8
This is how original filter behaves.

Signed-off-by: Paul B Mahol <onemda@gmail.com>
2015-07-10 10:50:28 +00:00
Paul B Mahol
ba0b4e53a5 fate: add removegrain tests
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2015-07-09 18:28:29 +00:00
Michael Niedermayer
edfcbf7c83 Merge commit '02b7c630875c0bc63cee5ec597aa33baf9bf4e20'
* commit '02b7c630875c0bc63cee5ec597aa33baf9bf4e20':
  h261: Signal freeze picture release for intra frames

Conflicts:
	tests/ref/vsynth/vsynth1-h261
	tests/ref/vsynth/vsynth2-h261

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-07-09 00:49:20 +02:00
Michael Niedermayer
a137e50ee5 Merge commit 'dc1de0b958836545339611e9c050a1d4fdded263'
* commit 'dc1de0b958836545339611e9c050a1d4fdded263':
  h261: Set 'still image mode off' in picture header

Conflicts:
	tests/ref/vsynth/vsynth1-h261
	tests/ref/vsynth/vsynth2-h261

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-07-09 00:33:52 +02:00
Stian Selnes
02b7c63087 h261: Signal freeze picture release for intra frames
Freeze picture release should be set to 1 when we're responding to a
fast update request. For simplicity we set it for all intra frames,
including those that starts a GOP.

Fixes issue where Tandberg MXP1700 does not recover from packet loss
state since it's waiting for the freeze picture relase indication.

Bug-Id: 873
CC: libav-stable@libav.org

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2015-07-07 15:11:15 +02:00
Stian Selnes
dc1de0b958 h261: Set 'still image mode off' in picture header
Ref H.261 recommendation section 4.2.1.3, setting the still image flag
to 1 disables still image mode. Some decoders require this in order to
decode the bitstream as normal video.

Fixes H.261 calls to Cisco E20.

Also, reserved (aka spare) bits should be set to 1 unless specified
otherwise.

Bug-Id: 872
CC: libav-stable@libav.org

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2015-07-07 15:04:55 +02:00
George Boyle
4385a1ce8f fate/api-tests: Tests that need samples should only run if SAMPLES is set
This change fixes a bug where a test that required a sample was being included
in the suite when SAMPLES was not set. It also improves the consistency of
variable names relating to the API tests.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-07-04 02:15:16 +02:00
Paul B Mahol
b74ebd09c7 avfilter/vf_lut: >8 bit depth planar yuv support
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2015-07-03 09:29:06 +00:00
Paul B Mahol
2778fdbe54 swscale: implement YA8 output
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2015-07-02 17:36:05 +00:00
Michael Niedermayer
03b2b40fd7 Merge commit 'a31c4b2cbef9aee15910fc3df52519aef46760de'
* commit 'a31c4b2cbef9aee15910fc3df52519aef46760de':
  fate-g2m3: disable the audio stream

Conflicts:
	tests/ref/fate/g2m3

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-07-02 00:34:24 +02:00
Janne Grunau
a31c4b2cbe fate-g2m3: disable the audio stream
The audio decoder is not in fate-g2m3 dependencies and the wma2 decoder
is probably not bit-exact since it it float based.
2015-07-01 21:42:48 +02:00
Michael Niedermayer
5142963b7d Merge commit 'f91fe24e9bd6912c29bbb03d8afe878e045f9721'
* commit 'f91fe24e9bd6912c29bbb03d8afe878e045f9721':
  g2meet: force simple idct for identical results over all fate configs

Conflicts:
	tests/ref/fate/g2m3
	tests/ref/fate/g2m4

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-07-01 19:31:34 +02:00
Janne Grunau
f91fe24e9b g2meet: force simple idct for identical results over all fate configs 2015-07-01 15:33:20 +02:00
Michael Niedermayer
9e93e544dc Merge commit '4d1229dabf7a7e3b6a7b326afd79102256c3b008'
* commit '4d1229dabf7a7e3b6a7b326afd79102256c3b008':
  g2meet: Add FATE tests for all three G2M variants

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-07-01 03:26:10 +02:00
Michael Niedermayer
3974889614 Merge commit 'e2bd03a14a4e3366df0b1ee8e284a97165be1f3c'
* commit 'e2bd03a14a4e3366df0b1ee8e284a97165be1f3c':
  fate: Avoid unnecessary pixel format conversions

Conflicts:
	tests/fate/image.mak
	tests/ref/fate/dds-ya

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-07-01 03:03:20 +02:00
Diego Biurrun
4d1229dabf g2meet: Add FATE tests for all three G2M variants
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2015-07-01 01:08:15 +02:00
Martin Storsjö
e2bd03a14a fate: Avoid unnecessary pixel format conversions
Most of the fate-dds-* and fate-txd-* tests already
output into the same pixel format regardless of
platform endianness, so there's no need to force
conversion to another format.

This fixes the tests fate-txd-16bpp, fate-txd-odd,
fate-dds-rgb16, fate-dds-rgb24 and fate-dds-xrgb on
big endian, where the tests seem to fail due to issues
with certain conversion codepaths in swscale.

Those conversion codepaths should of course be fixed, but
the individual decoder tests should use as little extra
conversion steps as possible.

Signed-off-by: Martin Storsjö <martin@martin.st>
2015-06-30 23:10:29 +03:00
Luca Barbato
e95c7a6185 mov: Preserve the metadata even when bit-exactness is requested
Make sure to not write the custom `encoder` string in that case.

Bug-Id: 845
CC: libav-stable@libav.org
2015-06-30 15:34:38 +02:00
Vittorio Giovara
3ad678a85b fate: Update ac3 test to the new request_channel_layout option 2015-06-30 15:34:37 +02:00
Michael Niedermayer
a9aed08fa4 Merge commit '3ad678a85b96fc5fecd60e3d3a31ca5ffc89d67f'
* commit '3ad678a85b96fc5fecd60e3d3a31ca5ffc89d67f':
  fate: Update ac3 test to the new request_channel_layout option

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-30 20:55:38 +02:00
Carl Eugen Hoyos
0f5b996531 lavc/j2kenc: Make jp2 output compatible with Kakadu.
Fixes ticket #4689.
2015-06-30 15:00:38 +02:00
Michael Niedermayer
f6ab967eae swscale/swscale_unscaled: Fix rounding difference with RGBA output between little and big endian
Fixes fate/dds-rgb16 on big endian

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-29 13:54:35 +02:00
Ludmila Glinskih
ca3b274552 api-h264-test: build with another api test
Location of api-h264-test changed to special directory for api tests.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-29 02:49:32 +02:00
George Boyle
02bd4d93c9 fate/api-tests: Added dependency on $(FF_DEP_LIBS)
This ensures they are built before the tests are run.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-29 01:01:44 +02:00
George Boyle
c78b82f4da tests/Makefile: Fix missing trailing slash for API tests dir target
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-28 23:29:59 +02:00
Michael Niedermayer
96e73fa649 avcodec/jpeg2000dec: Merge i_stepsize/2 decoder special case into dequant
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-28 15:26:31 +02:00
Michael Niedermayer
0940169743 tests/fate/wma: use the existing reference files for wmapro tests
Theres no need to upload or use new files just because they are
shorter.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-28 11:58:57 +02:00
Michael Niedermayer
3d2267019c Merge commit '441e8ae5efd681055e5af6f4317fb60110de9dd0'
* commit '441e8ae5efd681055e5af6f4317fb60110de9dd0':
  FATE: drop the last truncated frame from the wmapro tests

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-28 11:48:49 +02:00
Michael Niedermayer
fb2eeebf66 Merge commit 'd3ea79e8a65ddad4da11813bb43c46701295f68c'
* commit 'd3ea79e8a65ddad4da11813bb43c46701295f68c':
  FATE: drop the last truncated frame from the wma lossless test

Conflicts:
	tests/fate/lossless-audio.mak

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-28 11:41:23 +02:00
Alexandra Hájková
b08569a239 lavf: Replace the ASF demuxer
The old one is the result of the reverse engineering and guesswork.
The new one has been written following the now-available specification.

This work is part of Outreach Program for Women Summer 2014 activities
for the Libav project.

The fate references had to be changed because the old demuxer truncates
the last frame in some cases, the new one handles it properly.
The seek-test reference is changed because seeking works differently
in the new demuxer. When seeking, the packet is not read from the stream
directly, but it is rather constructed by the demuxer. That is why
position is -1 now in the reference.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2015-06-28 10:16:40 +02:00
Anton Khirnov
441e8ae5ef FATE: drop the last truncated frame from the wmapro tests
Since it's truncated, the result depends on how specifically the demuxer
and the decoder handle errors.
2015-06-28 10:10:36 +02:00
Anton Khirnov
d3ea79e8a6 FATE: drop the last truncated frame from the wma lossless test
Since it's truncated, the result depends on how specifically the demuxer
and the decoder handle errors.
2015-06-28 10:10:07 +02:00
Ludmila Glinskih
86fb203246 api-flac-test: Fix the bug of comparing zero bytes
Add check for linesize.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-28 01:05:59 +02:00
George Boyle
7728d231a6 fate/api-tests: Move api-flac-test to API tests directory.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-27 03:43:23 +02:00
George Boyle
3f18cb97e5 fate/api-tests: Add directory and Makefile for API tests
The intention of this change is to allow separation of API tests from the
existing tests, and also to have a place for the API test source/executable
files so they're not mixed in with the actual library code.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-27 03:42:47 +02:00
Peter Ross
ea8fec2057 fate: test ea vp6 with alpha stream
Signed-off-by: Peter Ross <pross@xvid.org>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-26 14:39:11 +02:00
Ludmila Glinskih
b04c630a3d libavformat: Add H264 API test
Result differs in pkt_duration and time_base.den for some reason.
Right now it tests only one example (adjusted to match the output).

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-25 04:09:51 +02:00
Michael Niedermayer
89a420b71b avcodec/mpegaudio_parser: Discard ID3v1 tag at the end
Ideally this should be discarded by the demuxer but this is not
possible without fully parsing which would be then very similar
to this. The current ID3v1 discard code in the demuxer does not work
and will be removed in a subsequent commit

The discard code could be adjusted if needed to also discard tags at
other locations than the end or to limit this possibly to input
from the mp3 demuxer or even to move the discarding to the
decoder.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-24 02:48:37 +02:00
Rodger Combs
94a43dcff1 lavf/brstm: add FATE tests for BFSTM and BCSTM files
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-23 19:44:19 +02:00
Michael Niedermayer
8575d960fe tests/fate/image: also run fate-sgi for the fate-image target
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-23 01:46:13 +02:00
Michael Niedermayer
ff68b83968 Merge commit '5c018ee18895f88e9e1d2174059dcdd48bf872d2'
* commit '5c018ee18895f88e9e1d2174059dcdd48bf872d2':
  DirectDraw Surface image decoder

Conflicts:
	Changelog
	configure
	doc/general.texi
	libavcodec/Makefile
	libavcodec/version.h
	tests/fate/image.mak

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-22 23:34:56 +02:00
Michael Niedermayer
8428e2c5f3 avcodec/jpeg2000dwt: Print 1 digit less in the 9/7f DWT test
This avoids test failure due to differing rounding between 32 and 64bit x86

Found-by: jamrial
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-22 23:18:38 +02:00
Michael Niedermayer
55219a78c7 Merge commit '7ca3e5203f133eb41a0b5c3a1d753a7427ba72e7'
* commit '7ca3e5203f133eb41a0b5c3a1d753a7427ba72e7':
  Hap decoder and encoder

Conflicts:
	Changelog
	configure
	doc/general.texi
	libavcodec/allcodecs.c
	libavcodec/version.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-22 22:47:32 +02:00
Michael Niedermayer
a5b2b22d9a Merge commit 'c0b105756f61d253bdabcc2bb49453a2557e7c3b'
* commit 'c0b105756f61d253bdabcc2bb49453a2557e7c3b':
  txd: Use the TextureDSP module for decoding

Conflicts:
	configure
	libavcodec/s3tc.c
	libavcodec/s3tc.h
	libavcodec/txd.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-22 21:15:50 +02:00