1
0
mirror of https://github.com/FFmpeg/FFmpeg.git synced 2024-11-26 19:01:44 +02:00
Commit Graph

635 Commits

Author SHA1 Message Date
Vittorio Giovara
abdc7e403e fate: Add hap-chunk ref file
Missing from the push of 3ee217853a.
2015-07-27 16:56:12 +01:00
Vittorio Giovara
a16854892c dds: Add a rgba fate test 2015-07-22 13:35:44 +01:00
Vittorio Giovara
57214b2f7f dds: Fix palette decoding
Red and blue channels were decoded in the wrong order.

Found-By: ami_stuff
2015-07-22 13:35:44 +01: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
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
Janne Grunau
f91fe24e9b g2meet: force simple idct for identical results over all fate configs 2015-07-01 15:33: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
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
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
Vittorio Giovara
5c018ee188 DirectDraw Surface image decoder
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2015-06-22 15:23:08 +01:00
Vittorio Giovara
7ca3e5203f Hap decoder and encoder
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2015-06-22 15:23:08 +01:00
Vittorio Giovara
c0b105756f txd: Use the TextureDSP module for decoding
Using the internal DXTC routines brings support for non multiple of 4
textures. A new test is added to cover this feature. Hashes differ
since the decoding algorithm is different, though no visual changes
have been spotted.

Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2015-06-22 15:23:08 +01:00
Martin Storsjö
063f7467e4 rtmpdh: Add fate test for the DH handshake routine
This helps if these functions need to be implemented using another
crypto API.

Signed-off-by: Martin Storsjö <martin@martin.st>
2015-05-29 09:42:35 +03:00
Luca Barbato
2fb02ecfd1 fate: Reduce the number of frames used to test video filters
Use 5 frames for video filter tests and a single one for the
pixelformat tests.

Greatly reduces the test duration without reducing coverage.
2015-05-10 13:49:30 +02:00
Vittorio Giovara
d81fb63d87 fate: Add a PICT test
This stimulates the direct pixel mode in Quickdraw decoder.
2015-05-06 14:36:01 +01:00
Vittorio Giovara
22526c1f55 Canopus HQ/HQA decoder
Based on work by Kostya Shishkov <kostya.shishkov@gmail.com>.

Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2015-04-19 22:37:23 +01:00
Vittorio Giovara
fcda30f2dc fate: Prefix cllc tests with canopus
They belong to the same family of codecs.
2015-04-19 22:36:50 +01:00
Ferdinand Oeinck
0266988ccd hqx: Fix clipping error in idct put function
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2015-04-09 13:52:04 +02:00
Anton Khirnov
b2965ec776 FATE: add a test for parameter changes in HEVC 2015-04-03 13:10:03 +02:00
Vittorio Giovara
7419b34825 fate: Add test for tscc2 in mov
Rename the existing tscc2 test.
2015-03-23 20:53:28 +00:00
Vittorio Giovara
247e370e2a TDSC decoder
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2015-03-13 19:48:14 +00:00
Vittorio Giovara
994d8f3095 fate: Add AIC test with odd sizes 2015-03-03 15:08:45 +00:00
Vittorio Giovara
35c6ce76b1 Canopus HQX decoder
Based on work by Kostya Shishkov <kostya.shishkov@gmail.com>.
2015-02-22 22:42:27 +00:00
Vittorio Giovara
b727b0eeb7 fate: Add tests for DSS
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
Signed-off-by: Oleksij Rempel <linux@rempel-privat.de>
2015-02-19 12:05:19 -05:00
Anton Khirnov
e21d853099 FATE: add a test for the SVQ1 header byte swapping 2015-02-15 15:30:29 +01:00
Anton Khirnov
80a11de7dc nutenc: do not use has_b_frames
It is unreliable, especially when the stream codec context is not the
encoding context. Use the codec descriptor properties instead.
2015-01-27 09:15:07 +01:00
Vittorio Giovara
2df7277711 swscale: fix gbrap to gbrap alpha scaling 2015-01-16 02:47:15 +01:00
Paul B Mahol
928061670e libswscale: GBRAP input & output and GBRAP16 input support
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2015-01-14 17:17:24 +01:00
Vittorio Giovara
effa7d2a6a fate: add test for offset theora 2014-12-18 23:22:59 +01:00
Vittorio Giovara
a381e0cec8 fate: add a DPX parser test 2014-12-18 23:22:59 +01:00
Janne Grunau
d2f1d42b18 fate: add dolby true hd tests
The existing meridian audio test does not test
ff_mlp_rematrix_channel_arm. This sample (first 640k of
https://samples.libav.org/A-codecs/TrueHD/TrueHD.raw) uses
ff_mlp_rematrix_channel_arm. Since this sample has 5.1 channels it also
allows testing the integrated downmixing.
2014-12-09 22:00:08 +01:00
Joakim Plate
90411b333d Allow reading of growing avi files (currently being written)
This uses the RIFF header stored size to figure out the expected AVI
file size, instead of the actual file. To work fully it requires handling
failed avio_seek() instead of assuming they always succeed.

Some fate file has been cut off and contains half a frame at the end which
previously was not output during demuxing. This frame is now output to
encoder, thus the fate diff update.

Bug-Id: 261
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2014-12-08 13:29:33 +00:00
Zoltan Kovacs
4843a9c74f dpx: always write the image offset
According to the DPX file format description found at
http://www.fileformat.info/format/dpx/egff.htm the ImageElement part of
the GenericImageHeader also contains an an offset to the real image data
beside the same member that can be found in the GenericFileHeader.

Libav keeps this member empty (=0) while some applications expects it to
be filled properly. FATE test updated accordingly.

Bug-Id: 742
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2014-12-08 13:29:18 +00:00
Kieran Kunhya
9a738c27dc v210enc: Add SIMD optimised 8-bit and 10-bit encoders
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2014-12-05 13:03:49 +00:00
Derek Buitenhuis
33c827f632 swscale: Properly scale YUV
Only shift limited range luma, and always only shift chroma
for upconversion.

Based off a patch by Michael Niedermayer.

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2014-12-05 13:03:49 +00:00
Reinhard Tartler
8895bf7b78 Replace lena.pnm
The new reference.pnm is a freely licensed replacement. The photo has
been taken by Reinhard Tartler on August 28 2014, and is licensed under
the expat license as stated at http://www.jclark.com/xml/copying.txt
2014-11-28 17:55:27 -05:00
Vittorio Giovara
28d82b7675 vc1dec: refactor check with missing parenthesis
FATE tests updated accordingly, no visual difference.

CC: libav-stable@libav.org
Bug-Id: CID 1087087
2014-11-13 01:41:25 +01:00
Janne Grunau
f29c226af0 fate: add mpeg4 tests for frame size changes 2014-10-17 09:58:31 +02:00
Michael Niedermayer
bd239c9a2e lavf: Don't drop both pts and dts if timestamps are invalid
In these cases, only drop dts. Because if we drop both we have no
timestamps at all for some files.

This improves playback of HLS streams from GoPro cameras.

Signed-off-by: Martin Storsjö <martin@martin.st>
2014-10-12 01:32:52 +03:00
Janne Grunau
36f3aec363 fate-vc1_ilaced_twomv: use -flags +bitexact
Also updates the reference since it was generated by the non-bitexact
x86 specific code.
2014-10-04 11:21:32 +02:00
Tim Walker
b39ebcddd4 fate: Add VC-1 interlaced twomv test
CC: libav-stable@libav.org
2014-09-26 16:55:59 +02:00
Katerina Barone-Adesi
28f5cd312c fate: Switch ra4-288 test from framecrc() to pcm()
The decoder is float-based and the test needs to allow for some fuzz.

Signed-off-by: Diego Biurrun <diego@biurrun.de>
2014-09-25 01:44:31 -07:00
Katerina Barone-Adesi
44caf99eca fate: Add tests for RealAudio 1.0 (14.4) and RealAudio 2.0 (with 28.8)
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2014-09-17 05:16:08 -07:00
Pascal Massimino
7a1d6ddd2c xvid: Add C IDCT
Thanks to Pascal Massimino and Michael Militzer for relicensing as LGPL.

Signed-off-by: Diego Biurrun <diego@biurrun.de>
2014-09-02 14:41:13 -07:00
Anton Khirnov
cb7b1a2dfb electronicarts: set the framerate for TGQ/TQI
It is hardcoded to 15fps.
2014-08-22 11:15:20 +00:00
Anton Khirnov
7b6aae23e1 electronicarts: read the framerate for MAD 2014-08-22 11:15:20 +00:00
Vittorio Giovara
086a541857 fate: png-suite
Every supported format is converted to RGB.
2014-08-04 12:57:39 +01:00
Diego Biurrun
706208ef47 fate: Split fate-pixdesc tests and dispatch them through Make
This allows running all the tests individually and/or in parallel.
2014-08-01 01:18:30 -07:00
Vittorio Giovara
819bb3e81c fate: add h264-direct-bff test 2014-07-20 23:32:13 +01:00
Anton Khirnov
194be1f43e lavf: switch to AVStream.time_base as the hint for the muxer timebase
Previously, AVStream.codec.time_base was used for that purpose, which
was quite confusing for the callers. This change also opens the path for
removing AVStream.codec.

The change in the lavf-mkv test is due to the native timebase (1/1000)
being used instead of the default one (1/90000), so the packets are now
sent to the crc muxer in the same order in which they are demuxed
(previously some of them got reordered because of inexact timestamp
conversion).
2014-06-18 15:12:34 +02:00
Anton Khirnov
894682a973 Remove avserver.
It has not been properly maintained for years and there is little hope
of that changing in the future.
It appears simpler to write a new replacement from scratch than
unbreaking it.
2014-06-18 14:55:28 +02:00
Josh Allmann
74bc945805 flvenc: Don't over-count metadata.
Over-counting occurs if framerate is not set.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2014-06-17 21:38:21 +02:00
Vittorio Giovara
641e57230b fate: add on2avc audio test 2014-06-10 19:41:59 -04:00
Marc-Antoine Arnaud
8a06794112 mpeg2: add sequence display extension information
Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2014-06-06 15:38:10 +01:00
Anton Khirnov
962d631573 matroskaenc: set the stream timebase earlier
Fixes calculating the ts offset for audio codecs with delay.
2014-05-29 08:01:58 +02:00
Anton Khirnov
43e7f0797f flvenc: only write the framerate tag based on avg_frame_rate
Do not fall back on the codec timebase, since that can be anything for
VFR video.
2014-05-29 08:01:30 +02:00
Anton Khirnov
81eec081af matroskaenc: base DefaultDuration on the framerate, not the codec timebase
This results in DefaultDuration not being written when the framerate is
not known, but as this field is purely informative, this should not
break any sane demuxers.
2014-05-29 08:00:57 +02:00
Michael Niedermayer
7dba055bb0 oggenc: Fix the EOS flag
This corrects the bug that caused the checksums to change in
9767d7c092.

It caused the EOS flag to be set incorrectly; the ogg spec does not
allow it to be set in the middle of a logical bitstream.

Signed-off-by: Andrew Kelley <superjoe30@gmail.com>
Signed-off-by: Martin Storsjö <martin@martin.st>
2014-05-28 21:51:38 +03:00
Andrew Kelley
9767d7c092 oggenc: Flush after writing headers
Before, header information for ogg format files was sent with the
first encoded packet.

This patch makes it so that it is possible for API users to
differentiate between headers and encoded audio. This is useful, for
example, when creating an audio stream where you want to send one set
of headers for every client that connects and then the encoded stream
of audio.

Signed-off-by: Martin Storsjö <martin@martin.st>
2014-05-27 20:16:59 +03:00
Anton Khirnov
6656370b85 avconv: set the "encoder" tag when transcoding 2014-05-18 20:33:46 +02:00
Anton Khirnov
6072184e70 asfenc: use codec descriptors instead of AVCodecs to write codec info
Also, stop using AVCodecContext.codec_name as fallback, since it will be
deprecated.

Changes the result of the lavf-asf test (and its associated seektest),
since 'msmpeg4v3' gets written instead of just 'msmpeg4'.
2014-05-01 09:26:20 +02:00
Anton Khirnov
a1aa37dd0b matroskaenc: write CodecDelay 2014-05-01 08:03:51 +02:00
Derek Buitenhuis
8de77b665d fate: Add fic-in-avi test
Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2014-04-24 22:00:50 +01:00
Anton Khirnov
a4ed995cab txd: do not set the codec timebase.
It is not supposed to be changed from outside of lavc.
Set the stream timebase and average framerate instead.
2014-04-22 07:44:16 +02:00
Vittorio Giovara
6dfd99c938 fate: add tests for SGI RLE and MVC1&2 decoders 2014-04-19 16:24:27 +02:00
Alessandro Ghedini
0983d48111 crc: add ANSI CRC16 LE
This adds the reversed byte-order version of the ANSI CRC16.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2014-04-17 20:08:19 +02:00
Justin Ruggles
d9a542ace1 swscale: Set alpha to opaque for internal palettes.
Fixes conversion of pal8 to rgb formats with alpha.

Updated references for 2 FATE tests which previously encoded fully
transparent images.

Based on a patch by Baptiste Coudurier <baptiste.coudurier@gmail.com>
2014-04-12 14:07:19 -04:00
Vittorio Giovara
59388dac69 fate: update tests for YVYU422 pixel format 2014-04-08 23:24:41 +02:00
Paul B Mahol
a027d2a873 fate: add tests for SANM and VIMA
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2014-04-06 16:42:15 +02:00
Vittorio Giovara
287432430c fate: add a VP7 test 2014-04-04 04:00:11 +02:00
Vittorio Giovara
55c6e59906 fate: add SGI tests 2014-04-01 01:19:04 +02:00
Paul B Mahol
06688e96fb fate: add exr tests
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2014-04-01 01:13:17 +02:00
Martin Storsjö
3e4e2142d2 fate: Convert the paletted output in the brenderpix tests to rgb24
This makes the output consistent on big-endian systems.
2014-03-31 01:04:05 +02:00
Vittorio Giovara
e8e560f2a2 fate: add a bmpparser test 2014-03-28 00:08:24 +01:00
Vittorio Giovara
991362fab4 fate: add XBM tests 2014-03-27 23:59:13 +01:00
Paul B Mahol
a7a5e3850e fate: add PAF audio and video tests
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2014-03-27 23:34:47 +01:00
Vittorio Giovara
bb36b9aa7e fate: add BRender PIX tests 2014-03-27 18:27:23 +01:00
Vittorio Giovara
9718c31ef6 fate: add Alias PIX tests 2014-03-26 23:25:02 +01:00
Matthieu Bouron
5b930092c3 mxf: Set audio packets pts
Extrapolate audio timestamps based on the number of samples demuxed.

Deal with some MXF nastiness involving fractional number of
samples per EditUnit when seeking (the specs handwave this away).

Further fixes from Tomas Härdin.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2014-03-06 19:28:20 +01:00
Anton Khirnov
e1f2987b10 FATE: add tests for the shuffleplanes filter 2014-03-05 21:52:03 +01:00
Ronald S. Bultje
dff1c19140 vp9: add a new segmentation sample.
The old one didn't use segmentation. One uses segmentation in all frame
types (--aq-mode=1), and the other uses all segmentation features, but
only in inter frames (mbgraph).

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2014-02-12 15:18:21 +01:00
Ronald S. Bultje
91be8df20b vp9: add fate sample for parallelmode.
This disables backward probability updates, which makes the codec more
friendly for frame-level multi-threading.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2014-02-12 15:17:40 +01:00
Guillaume Martres
f548f9f9e7 hevc: update conformance streams
New streams: LTRPSPS_A_Qualcomm_1, SLPPLP_A_VIDYO_1, VPSID_A_VIDYO_1
Updated streams: EXT_A_ericsson_4, NUT_A_ericsson_5, RPS_C_ericsson_5,
  RPS_D_ericsson_6

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2014-02-10 07:48:41 +01:00
Janne Grunau
5a0bccd281 fate: force the simple idct for xvid custom matrix test
The original test without a forced idct is still useful since it tests
the switching of the idct algorithm/permutation on x86 with MMX. MMXext
or SSE2. Make sure the test runs only if MMX inline asm is available and
force -cpuflags to all.
Add the required bitexact flag for both tests.
2014-02-05 21:02:39 +01:00
Janne Grunau
04ffd22030 fate: add xvid test for custom matrices
Test sample is made from the sample in Bug-Id: videolan/7411
2014-01-31 11:12:31 +01:00
Vittorio Giovara
11d704dc94 fate: add framepack filter test 2014-01-09 23:13:05 +01:00
Anton Khirnov
a246af86e4 FATE: add MSS2 tests 2014-01-09 09:44:48 +01:00
Guillaume Martres
060667195e hevc: rename some HEVC conformance streams
Some HEVC conformance streams zip on
http://wftp3.itu.int/av-arch/jctvc-site/bitstream_exchange/draft_conformance/
were updated without changing the actual stream. Rename them in FATE
accordingly to make it easier to track future stream updates.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2014-01-06 08:05:17 +01:00
Guillaume Martres
98c0cd0b99 hevc: add new conformance streams
Also remove superseded conformance streams. The conformance streams all
come from http://wftp3.itu.int/av-arch/jctvc-site/bitstream_exchange/draft_conformance/

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2014-01-06 08:03:35 +01:00
Vittorio Giovara
cfb4ee3097 fate: add a pngparser test 2013-12-17 09:34:08 +01:00
Anton Khirnov
24abd806ea ljpegenc: deMpegEncContextize
The encoder uses almost none of the mpegvideo infrastructure, only some
fields from MpegEncContext.

The FATE results change because now an all-zero quant matrix is written
into the file. Since it is not used for anything for ljpeg, this should
not be a problem.
2013-12-05 13:35:55 +01:00
Anton Khirnov
58a868968d FATE: drop the last partial frame in the wmv8-drm test
This has already been done in eb066a4ce9,
but the number of frames produced from that file changed due to
timestamps changes since then.
2013-12-05 13:27:52 +01:00
Vittorio Giovara
874838dc65 fate: add one select filter test
This test selects alternate frames from input.
2013-11-21 13:01:00 +01:00
Anton Khirnov
952f943d40 FATE: add a jv test 2013-11-16 13:20:06 +01:00
Ronald S. Bultje
72ca830f51 lavc: VP9 decoder
Originally written by Ronald S. Bultje <rsbultje@gmail.com> and
Clément Bœsch <u@pkh.me>

Further contributions by:
Anton Khirnov <anton@khirnov.net>
Diego Biurrun <diego@biurrun.de>
Luca Barbato <lu_zero@gentoo.org>
Martin Storsjö <martin@martin.st>

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2013-11-15 10:16:28 +01:00
Guillaume Martres
e1c058dba9 FATE: Add HEVC tests
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2013-10-31 20:20:16 +01:00
Paul B Mahol
79ef4b19bf FATE: add bitexact sws flags to the fieldorder test
swscale is called for the 420 to 422 conversion

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2013-10-27 21:34:28 +01:00