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

1681 Commits

Author SHA1 Message Date
Tobias Rapp
d47159a42d fate: add test for asetnsamples filter with padding disabled
Adds another test for asetnsamples filter where padding of the last
frame is switched off. Renames the existing test to make the difference
obvious.

Tested-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: Tobias Rapp <t.rapp@noa-archive.com>
2017-09-08 08:54:20 +02:00
Tobias Rapp
912b6af26e ffprobe: use consistent string for unspecified color_range value
Makes the handling of unspecified/unknown color_range values on stream
level consistent to the value used on frame level.

Signed-off-by: Tobias Rapp <t.rapp@noa-archive.com>
2017-09-07 13:26:44 +02:00
Tobias Rapp
b7101151b3 fate: add tests for some video source filters
Adds FATE tests for the previously untested allrgb, allyuv, rgbtestsrc,
smptebars, smptehdbars and yuvtestsrc filters.

Also adds a test for testsrc2 filter with rgb+alpha.

Tested-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: Tobias Rapp <t.rapp@noa-archive.com>
2017-08-31 11:48:15 +02:00
Martin Vignali
2fcf47e2d1 fate/pixlet : add test for rgb
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-08-31 02:53:11 +02:00
Paras Chadha
9d99f0afbe FATE: Add FITS tests
Signed-off-by: Paras Chadha <paraschadha18@gmail.com>
2017-08-30 12:13:02 +02:00
pkviet
e0436ddaa4 ffmpeg options: Enable trailing ? for map_channel
The -map option allows for a trailing ? so that an error is not thrown if
the input stream does not exist.
This capability is extended to the map_channel option.
This allows a ffmpeg command not to break if an input channel does not
exist, which can be of use (for instance, scripts processing audio
channels with sources having unset number of audio channels).

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-08-25 23:41:11 +02:00
Marton Balint
366e6bfc51 fate: add overlay filter tests with alpha
Signed-off-by: Marton Balint <cus@passwd.hu>
2017-08-16 22:00:35 +02:00
Vittorio Giovara
1460408703 Add single precision planar RGB pixel formats
Add a pixel format flag to identify this family.

Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2017-08-15 15:26:20 +02:00
Sasi Inguva
e7e1fbc49b lavf/movenc.c: Set sgpd and sbgp atoms to represent decoder delay for AAC.
According to https://developer.apple.com/library/content/documentation/QuickTime/QTFF/QTFFAppenG/QTFFAppenG.html and ISO-IEC-14496-12 Section 10.1.1.1 and 10.1.1.3

Signed-off-by: Sasi Inguva <isasi@google.com>
Reviewed-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-08-10 02:43:53 +02:00
James Almer
45759540a5 fate: update ref files for gray pixel formats changes 2017-08-08 01:34:18 -03:00
Paul B Mahol
bac508fec1 avfilter: add support for GRAY9 and GBRAP10 2017-08-07 13:11:09 +02:00
Paul B Mahol
de48710c11 libswscale: add gray9 support 2017-08-07 13:09:41 +02:00
Paul B Mahol
5621a99e27 avfilter/drawutils: support gbrap10 too 2017-08-07 13:06:34 +02:00
James Cowgill
013ec23cbe swscale: fix gbrap16 alpha channel issues
Fixes filter-pixfmts-scale test failing on big-endian systems due to
alpSrc not being cast to (const int32_t**).

Also fixes distortions in the output alpha channel values by copying the
alpha channel code from the rgba64 case found elsewhere in output.c.

Fixes ticket 6555.

Signed-off-by: James Cowgill <James.Cowgill@imgtec.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-08-05 23:24:02 +02:00
Steinar H. Gunderson
45ffe4645e speedhq: add FATE tests
Also add simple FATE tests, based on output produced by the NDI SDK.

Signed-off-by: James Almer <jamrial@gmail.com>
2017-08-03 16:36:02 -03:00
Clément Bœsch
479ab8c3f8 lavc/htmlsubtitles: handle colors starting with many '#' 2017-08-01 15:50:00 +02:00
Clément Bœsch
e800371863 lavc/htmlsubtitles: improve line breaks handling 2017-08-01 15:50:00 +02:00
Clément Bœsch
55949e3e51 lavc/tests: add htmlsubtitles 2017-08-01 15:50:00 +02:00
Clément Bœsch
f0f8da545d lavc/htmlsubtitles: improve handling broken garbage
This commit switches off forced correct nesting of tags and only keeps
it for font tags. See long explanations in the code for the rationale.

This results in various FATE changes which I'll explain here:

- various swapping in font attributes, this is mostly noise due to the
  old reverse stack way of printing them. The new one is more correct as
  the last attribute takes over the previous ones.

- unrecognized tags disappears

- invalid tags that were previously displayed aren't anymore (instead,
  we have a warning). This is better for the end user

The main benefit of this commit is to be more tolerant to error, leading
to a better handling of badly nested tags or random wrong formatting for
the end user.
2017-08-01 15:50:00 +02:00
Clément Bœsch
4158fba3cd sws/tests/pixdesc_query: replace rgb based pix fmts with endianess agnostic names
Fixes ticket #6554
2017-07-30 16:05:32 +02:00
Clément Bœsch
d2c70fc887 sws/tests/pixdesc_query: sort pixel formats 2017-07-30 16:04:36 +02:00
Tobias Rapp
60008c0fe9 fate: update pixfmt_best test to check for endianness
Signed-off-by: Tobias Rapp <t.rapp@noa-archive.com>
2017-07-27 08:53:37 +02:00
Vittorio Giovara
d24a82d2e2 ffprobe: Print color properties from show_frames
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2017-07-21 20:19:07 +02:00
James Almer
0a813ca091 fate: add libavdevice/reverse.c to fate-source 2017-07-20 01:59:43 -03:00
Mark Thompson
3192821237 pixdesc: Add a test for av_find_best_pix_fmt_of_2() 2017-07-18 22:56:30 +01:00
Michael Niedermayer
d0ba0be355 fate: add sub-srt-badsyntax test
Based-on: srt sample by ubitux

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-07-15 04:16:44 +02:00
Kevin Mark
d32a6c36e4 libavfilter/scale2ref: Maintain main input's DAR
The scale2ref filter will now maintain the DAR of the main input and
not the DAR of the reference input. This previous behavior was deemed
counterintuitive for most (all?) use-cases.

Before:
scale2ref=iw/4:ow/mdar
in  w:320 h:240 fmt:rgb24 sar:1/1
ref w:640 h:360 fmt:rgb24 sar:1/1
out w:160 h:120 fmt:rgb24 sar:4/3 flags:0x2
SAR: ((120 * 640) / (160 * 360)) * (1 / 1) = 4 / 3
DAR: (160 / 120) * (4 / 3) = 16 / 9
(main out now same DAR as ref)

Now:
scale2ref=iw/4:ow/mdar
in  w:320 h:240 fmt:rgb24 sar:1/1
ref w:640 h:360 fmt:rgb24 sar:1/1
out w:160 h:120 fmt:rgb24 sar:1/1 flags:0x2
SAR: ((120 * 320) / (160 * 240)) * (1 / 1) = 1 / 1
DAR: (160 / 120) * (1 / 1) = 4 / 3
(main out same DAR as main in)

The scale2ref FATE test has also been updated.

Signed-off-by: Kevin Mark <kmark937@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-07-04 15:09:10 +02:00
Michael Niedermayer
0b180d2066 fate: Add fate-copy-trac3074
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-06-30 03:03:08 +02:00
Paul B Mahol
3594788b71 avcodec/utvideodec: decode to GBR(A)P
This is actually internal utvideo format.
Allows to make use of SIMD for median prediction for rgb(a) formats,
thus speeding up decoding.
Simplifies code, eases further developement and maintenance.

Update FATE because of pixel format switch.

Signed-off-by: Paul B Mahol <onemda@gmail.com>
2017-06-26 20:11:58 +02:00
Marton Balint
7ed6f9168b fate: use do_md5sum instead of the md5 protocol for most md5 fate tests
The md5 protocol has no seek support, but some tests use seeks. This changes
the fate tests to actually create the output files and calculate the md5 on the
written files, which also makes the tests independent of the size of the output
buffers and output buffering in general.

A new md5pipe fate test method is also introduced to keep the old functionality
for tests where using a non-seekable output was intentional, and matroska md5
tests are changed to use that.

Signed-off-by: Marton Balint <cus@passwd.hu>
2017-06-18 23:19:48 +02:00
Michael Bradshaw
50be8f2142 fate: add test for -time_base option
Signed-off-by: Michael Bradshaw <mjbshaw@google.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-06-10 11:11:48 +02:00
Sasi Inguva
93db5e3fc4 lavf/mov.c: offset index timestamps by the minimum pts to make first pts zero
If the videos starts with B frame, then the minimum composition time
as computed by stts + ctts will be non-zero. Hence we need to shift
the DTS, so that the first pts is zero. This was the intention of that
code-block. However it was subtracting by the wrong amount.

For example, for one of the videos in the bug nonFormatted.mp4 we have

stts:
sample_count  duration
960           1001

ctts:
sample_count  duration
1             3003
2             0
1             3003
....

The resulting composition times are :  3003, 1001, 2002, 6006, ...

The minimum composition time or PTS is 1001, which should be used to
offset DTS. However the code block was wrongly using ctts[0] which is
3003. Hence the PTS was negative. This change computes the minimum pts
encountered while fixing the index, and then subtracts it from all the
timestamps after the edit list fixes are applied.

Samples files available from:

https://bugs.chromium.org/p/chromium/issues/detail?id=721451
https://bugs.chromium.org/p/chromium/issues/detail?id=723537

fate-suite/h264/twofields_packet.mp4 is a similar file starting with 2
B frames. Before this change the PTS of first two B-frames was -6006
and -3003, and I am guessing one of them got dropped when being decoded
and remuxed  to the framecrc before, and now it is not being dropped.

Signed-off-by: Sasi Inguva <isasi@google.com>
2017-06-09 18:13:33 +02:00
James Almer
c1503cd95e fate: add fate-adts-id3v1-demux
This test the demuxer discarding non ADTS frames at the beginning and
end of the input.

As a side effect, this commit also enables fate-adts-demux, which was
accidentally disabled in 324f0fbff1.

Tested-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: James Almer <jamrial@gmail.com>
2017-06-05 20:22:29 -03:00
Rostislav Pehlivanov
10b7adf79d fate: add test for the Dirac low delay profile
Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
2017-06-05 06:10:40 +01:00
Kevin Mark
4af496473a FATE: Add test for libavfilter/scale2ref
This new FATE test for the scale2ref filter makes use of the recently
added scale2ref-specific variables to maintain the aspect ratio of a
test input.

Filtergraph explanation:
[main] has an AR of 4:3. [ref] has an AR of 16:9.
640 / 4 = 160. So the new width for [main] is 160.
160 / ((320 / 240) * (1 / 1)) = 160 / (4 / 3) = 120. So the new
height for [main] is 120.
160 / 120 = 4 / 3 so [main]'s aspect ratio has been maintained while
using [ref]'s width as a reference point.

[ref] is nullsink'd since it is left unchanged by scale2ref (and so
shouldn't need to be tested).

If we were to use "iw/4:-1" in place of "iw/4:ow/mdar":
640 / 4 = 160. So the new width for [main] would be 160.
360 / 4 = 90. So the new height for [main] would be 90.
160 / 90 = 16 / 9 so [main] now has the same aspect ratio as [ref]
which is probably what you do not want.

This is currently the only test for scale2ref.

Signed-off-by: Kevin Mark <kmark937@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-06-05 01:50:25 +02:00
Michael Niedermayer
4dc3714c48 avcodec/tscc2: Skip duplicate frames
This turns CFR duplicated frames into skiped frames

Fixes: Timeout
Fixes: 1719/clusterfuzz-testcase-minimized-6375090079924224

Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-05-25 14:30:04 +02:00
James Almer
f63c351657 avcodec/aac_adtstoasc: propagate new extradata using packet side data
This removes the current API violating behavior of overwritting the stream's
extradata during packet filtering, something that should not happen after the
av_bsf_init() call.

The bitstream filter generated extradata is no longer available during
write_header(), and as such not usable with non seekable output. The FATE
tests are updated to reflect this.

Signed-off-by: James Almer <jamrial@gmail.com>
2017-05-24 20:28:00 -03:00
Martin Storsjö
7c35bee025 movenc-test: Add tests for negative cts offsets
Signed-off-by: Martin Storsjö <martin@martin.st>
2017-05-15 14:08:53 +03:00
Martin Vignali
6ce57fb3c2 fate/exr : add test for Y, b44A negative half, and datawindow != displaywindow
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-05-10 14:00:20 +02:00
James Almer
f089e02fa2 Merge commit '019ab88a95cb31b698506d90e8ce56695a7f1cc5'
* commit '019ab88a95cb31b698506d90e8ce56695a7f1cc5':
  lavc: add an option for exporting cropping information to the caller

Merged-by: James Almer <jamrial@gmail.com>
2017-05-08 14:22:43 -03:00
Clément Bœsch
b010843594 Merge commit '122de16dd8108a59a55d30543c9f28b5f61b02d1'
* commit '122de16dd8108a59a55d30543c9f28b5f61b02d1':
  Replace cmdutils_common_opts.h by a macro

Merged-by: Clément Bœsch <cboesch@gopro.com>
2017-05-05 14:04:30 +02:00
Thomas Mundt
2da5bf4c2f avfilter/interlace: add complex vertical low-pass filter
This complex (-1 2 6 2 -1) filter slightly less reduces interlace 'twitter' but better retain detail and subjective sharpness impression compared to the linear (1 2 1) filter.

Signed-off-by: Thomas Mundt <tmundt75@gmail.com>
Signed-off-by: James Almer <jamrial@gmail.com>
2017-05-02 14:09:50 -03:00
Martin Vignali
89812e423d fate/exr : add test for negative float value
the tested sample contain negative value in the red channel
need to be clip to zero, and not set to MAX_RED

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-05-01 11:40:57 +02:00
Martin Vignali
5ad18f279a fate/exr : add tests for piz uncompress
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-05-01 11:40:57 +02:00
Martin Vignali
59d219b91e fate/exr : fix pix_fmt
rgb_scanline_pxr24_half_uint32_13x9.exr doesn't have alpha

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-04-25 12:12:57 +02:00
Michael Niedermayer
177608aa74 fate: Add test for pkt_size of ffprobe
Suggested-by: James Almer
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-04-24 23:17:58 +02:00
Sasi Inguva
87071478b4 tests/fate-run.sh: Show packet flags for fate gapless tests.
Signed-off-by: Sasi Inguva <isasi@google.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-04-19 14:06:32 +02:00
Vignesh Venkatasubramanian
62c27fdba4 webm_dash_manifest: Add option to specify bandwidth
Add an option to webm_dash_manifest demuxer to specify a value for
"bandwidth" field in the DASH manifest. The value is then used by
the muxer. Fixes an existing FIXME in the code.

Signed-off-by: Vignesh Venkatasubramanian <vigneshv@google.com>
Signed-off-by: James Zern <jzern@google.com>
2017-04-17 10:46:51 -07:00
Michael Niedermayer
ac29b82ec5 swscale: Add gbrap10 output
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2017-04-15 15:37:10 +02:00
Diego Biurrun
4d4d7cf9d5 fmvc: Add FATE tests 2017-04-13 12:35:47 +02:00
Carl Eugen Hoyos
a45951c0a4 tests: Fix gray10 and gray12 references after c1616b45. 2017-04-13 08:19:48 +02:00
James Almer
b8f26779d6 lavf: use the new bitstream filter for extracting extradata
This merges commits 8e2ea69135 and
096a8effa3 by Anton Khirnov, with the
following change:

- extract_extradata_check() is added to know if the codec is supported
by the bsf before trying to initialize it. This behaviour is similar to
the old AVCodecParser.split checks.

The FATE reference changes are due to the filtered out NAL units that
the old AVCodecParser.split implementation left alone.
Decoding is unchanged as the functions that parse extradata simply
ignored said unnecessary NAL units.

Signed-off-by: James Almer <jamrial@gmail.com>
2017-04-07 17:16:17 -03:00
Martin Vignali
4db2bfa63c fate : add test for exr with offset table set to 0
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-04-03 03:02:50 +02:00
James Almer
5f23d8b405 fate: add bitexact sws_flags to hevc-extradata-reload
Makes the test output consistent across all targets.

Reviewed-by: nevcairiel
Signed-off-by: James Almer <jamrial@gmail.com>
2017-04-01 13:39:49 -03:00
Clément Bœsch
e83a1c5b7c Merge commit '481ff3cf018811ba3235f1c236e970f32a6300b9'
* commit '481ff3cf018811ba3235f1c236e970f32a6300b9':
  fate: Add h264 and hevc extradata reload tests

Only the HEVC part is merged, see 00c8079816

Merged-by: Clément Bœsch <u@pkh.me>
2017-04-01 12:07:50 +02:00
Martin Vignali
6426f74272 fate/exr : add test for uint32 data
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-03-31 23:09:55 +02:00
Michael Niedermayer
afebf470ca avutil/tests/dict: Check return of av_dict_parse_string()
Fixes: CID1396402

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-03-30 23:35:18 +02:00
James Almer
c14b3ea93c ffprobe: fix printing packet side data information
Signed-off-by: James Almer <jamrial@gmail.com>
2017-03-29 21:20:06 -03:00
James Almer
ba4d0a37b9 Merge commit 'b90c8a3d08e3f9ad4de1253376d2d1d93abb8b8c'
* commit 'b90c8a3d08e3f9ad4de1253376d2d1d93abb8b8c':
  fate: Add tests for mov display matrix

Adapted to use ffprobe -show_entries

Merged-by: James Almer <jamrial@gmail.com>
2017-03-27 18:19:02 -03:00
Clément Bœsch
dffa4ec1ed Merge commit 'dc3fe45fca9c10c4af6bfcf48eb7b81968892ef9'
* commit 'dc3fe45fca9c10c4af6bfcf48eb7b81968892ef9':
  fate: Add test for rscc palette

Merged-by: Clément Bœsch <u@pkh.me>
2017-03-23 11:40:09 +01:00
James Almer
0dbfed08d0 fate: update ref file for apng-clock test 2017-03-22 10:27:46 -03:00
Clément Bœsch
d6635daded swscale: remove unused is{RGB,BGR}inBytes 2017-03-20 08:02:30 +01:00
Clément Bœsch
ff6bc16c5a swscale: use a (more correct) function for isPacked 2017-03-20 08:02:30 +01:00
Clément Bœsch
08e1376d81 fate: add fate-sws-pixdesc-query
Test the pixel format querying within libswscale.
2017-03-20 08:02:30 +01:00
Vittorio Giovara
21a8e751ad fate: Do not report side data size
This field is of little value, and interferes with testing side data,
since sizes can be different on multiple architectures.

Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2017-03-17 13:12:25 -04:00
Tobias Rapp
205b8fd078 avcodec: estimate output bitrate for uncompressed video codecs
Allows to get a more realistic total bitrate (and estimated file size)
in avi_write_header. Previously a static default value of 200k was
assumed.

Adds an internal helper function for bitrate guessing.

Signed-off-by: Tobias Rapp <t.rapp@noa-archive.com>
Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
2017-03-17 11:55:16 +01:00
Alexis Ballier
21bed3c981 fate: Add vf_framerate test.
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-03-16 16:16:05 +01:00
wm4
55eab1733b ffmpeg, ffprobe: don't "merge" side data into packet data by default
Preparation for potentially disabling merged side data by default in the
libs. Do this in particular because it affects fate tests.

The changed tests either reflect added packet side data, or the changed
packet size due to merged side data removal reducing the packet size.
2017-03-14 23:37:28 +01:00
Diego Biurrun
b57a95d014 cfhd: Add FATE tests 2017-03-09 18:37:29 +01:00
wm4
f5da453b06 concatdec: pass AVFormatContext flags to sub demuxer 2017-03-09 16:24:00 +01:00
Thomas Turner
a50ccbd240 avutil/tests/lfg.c: added proper normality test
The Chen-Shapiro(CS) test was used to test normality for
Lagged Fibonacci PRNG.

Normality Hypothesis Test:

The null hypothesis formally tests if the population
the sample represents is normally-distributed. For
CS, when the normality hypothesis is True, the
distribution of QH will have a mean close to 1.

Information on CS can be found here:

http://www.stata-journal.com/sjpdf.html?articlenum=st0264
http://www.originlab.com/doc/Origin-Help/NormalityTest-Algorithm

Signed-off-by: Thomas Turner <thomastdt@googlemail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-03-08 14:32:00 +01:00
Vittorio Giovara
bde9642268 mkv: Export bounds and padding from spherical metadata
Update the fate test as needed.
2017-03-07 11:28:02 -05:00
Vittorio Giovara
022b4ea583 mov: Export bounds and padding from spherical metadata
Update the fate test as needed.
2017-03-07 11:25:37 -05:00
Vittorio Giovara
1b7ffddb3a spherical: Add tiled equirectangular type and projection-specific properties
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2017-03-07 11:19:37 -05:00
Vittorio Giovara
a825980f9f mov: Export bounds and padding from spherical metadata
Update the fate test as needed.

Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2017-03-07 11:07:02 -05:00
Vittorio Giovara
b44bd7ee7f pixlet: Fix architecture-dependent code and values
The constants used in the decoder used floating point precision,
and this caused different values to be generated on different
architectures. Additionally on big endian machines, the fate test
would output bytes in native order, which is different from the one
hardcoded in the test.

So, eradicate floating point numbers and use fixed point (32.32)
arithmetics everywhere, replacing constants with precomputed integer
values, and force the pixel format output to be the same in the fate
test.

Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2017-03-06 18:15:02 -05:00
Anton Khirnov
af1761f7b5 ffmpeg: init filtergraphs only after we have a frame on each input
This makes sure the actual stream parameters are used, which is
important mainly for hardware decoding+filtering cases, which would
previously require various weird workarounds to handle the fact that a
fake software graph has to be constructed, but never used.
This should also improve behaviour in rare cases where
avformat_find_stream_info() does not provide accurate information.

This merges Libav commit a3a0230. It was previously skipped.

The code in flush_encoders() which sets up a "fake" format wasn't in
Libav. I'm not sure if it's a good idea, but it tends to give
behavior closer to the old one in certain corner cases.

The vp8-size-change gives different result, because now the size of
the first frame is used. libavformat reported the size of the largest
frame for some reason.

The exr tests now use the sample aspect ratio of the first frame. For
some reason libavformat determines 0/1 as aspect ratio, while the
decoder returns the correct one.

The ffm and mxf tests change the field_order values. I'm assuming
another libavformat/decoding mismatch.

Signed-off-by: wm4 <nfxjfg@googlemail.com>
2017-03-03 08:45:43 +01:00
Anton Khirnov
4ee5aed122 ffmpeg: do packet ts rescaling in write_packet()
This will be useful in the following commit, after which the muxer
timebase is not always available when encoding.

This merges Libav commit 3e265ca. It was previously skipped.

There are some changes with how/when the mux_timebase field is set,
because the Libav approach often causes a too imprecise time base
to be set. This is hard, because the muxer's write_header function
can readjust the timebase, at which point we might already have
encoded packets buffered. (It might be better to buffer them after
the encoder, instead of after all the timestamp handling logic
before muxing.)

The two FATE tests change because the output time base is raised
for subtitles. (Needed to avoid certain rounding issues in other
cases.)

Includes a minor merge fix by Mark Thompson, and

    avconv: Move rescale to stream timebase before monotonisation

also by Mark Thompson <sw@jkqxz.net>.

Signed-off-by: wm4 <nfxjfg@googlemail.com>
2017-03-03 08:45:43 +01:00
Paul B Mahol
aba5b94859 Add Apple Pixlet decoder
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2017-03-01 11:52:29 -05:00
Diego Biurrun
e1a6d63c7e fate: Rename WMV8_DRM decoder tests to WMV3_DRM
The codec used in those files is WMV3/WMV9, not WMV2/WMV8.
2017-02-28 13:00:20 +01:00
Diego Biurrun
da8093f712 fate: Use bitexact optimizations in the svq3-2 test
This fixes the test with mmxext disabled because the current reference
frame hashes correspond to the non-bitexact mmxext optimizations.
2017-02-27 10:36:44 +01:00
Micah Galizia
489c09ad4b add locale month names to av_small_strptime
Signed-off-by: Micah Galizia <micahgalizia@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-02-26 17:16:22 +01:00
Paul B Mahol
3a003cc381 fate: update ffprobe stuff after dbc7f02a72
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2017-02-26 17:05:43 +01:00
Paul B Mahol
dbc7f02a72 avfilter/aeval: trim last frame's number of samples to match requested duration
Fixes #6181.

Signed-off-by: Paul B Mahol <onemda@gmail.com>
2017-02-25 19:53:14 +01:00
Michael Niedermayer
d34bf886e9 avcodec/vp56: Implement very basic error concealment
This should fix the fate failure due to a truncated last frame.
Alternatively the frame could be dropped.

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-02-25 13:09:50 +01:00
Michael Niedermayer
513a349439 avcodec/vp56: Fix sign typo
Fixes: 664/clusterfuzz-testcase-4917047475568640

The change to fate is due to a truncated last frames which is now detected as damaged.

Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/targets/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-02-24 22:23:53 +01:00
Diego Biurrun
8e4d4efc67 fate: Add another SVQ3 test to increase coverage 2017-02-24 10:59:42 +01:00
Mark Thompson
156bc0193b fate: Add webp alpha test 2017-02-21 23:19:08 +00:00
Michael Niedermayer
ed69cb83f8 fate/source: Check for cases that could use av_clip_uintp2() and av_clip_intp2()
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-02-21 00:40:20 +01:00
Paul B Mahol
72864547f9 avfilter/vf_lut: do not always explicitly clip pixels
Old behaviour was not useful at all. New behaviour only emulate
old behaviour with default options.

Signed-off-by: Paul B Mahol <onemda@gmail.com>
2017-02-13 22:54:20 +01:00
erankor
37557b28b9 mov: add fate test for decryption with edit list
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-02-01 15:09:38 +01:00
Paul B Mahol
d1df72a702 fate: add SCC test
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2017-01-27 17:06:42 +01:00
Marton Balint
977fd88419 avfilter/formats: do not allow unknown layouts in ff_parse_channel_layout if nret is not set
Current code returned the number of channels as channel layout in that case,
and if nret is not set then unknown layouts are typically not supported.

Also use the common parsing code. Use a temporary workaround to parse an
unknown channel layout such as '13c', after a 1 year grace period only '13C'
will work.

Signed-off-by: Marton Balint <cus@passwd.hu>
2017-01-24 23:51:36 +01:00
Clément Bœsch
7448019890 Merge commit '38efff92f1ef81f3de20ff0460ec7b70c253d714'
* commit '38efff92f1ef81f3de20ff0460ec7b70c253d714':
  FATE: add a test for H.264 with two fields per packet
  h264: fix decoding multiple fields per packet with slice threads

This merge includes two commits because the FATE test was useful in
order to make proper testing.

The merge gets rid of the now unused:
- SLICE_SINGLETHREAD and SLICE_SKIPED macros
- max_contexts
- "again" label in decode_nal_units()

This commit also includes the fix from d3e4d406b.

Thanks to wm4 and Michael Niedermayer for their testing.

Merged-by: Clément Bœsch <u@pkh.me>
Merged-by: Matthieu Bouron <matthieu.bouron@gmail.com>
2017-01-24 16:13:03 +01:00
Carl Eugen Hoyos
c723108e25 lavf/matroskaenc: Do not write two CodecID elements for rawvideo.
Fixes ticket #6068.
2017-01-14 06:06:05 +01:00
Martin Vignali
1412e5a004 fate/psd : add test for bitmap and duotone
The duotone file is interpreted as gray

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-01-14 04:52:43 +01:00
Martin Vignali
682769d3d3 fate/psd : add test for 256 color
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-01-11 22:25:21 +01:00
Paul B Mahol
49abd5dbb8 avfilter/avf_aphasemeter: make video output optional
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2016-12-28 17:03:57 +01:00
Thomas Turner
8dcb28cf6d avutil/tests: Improved code coverage for random_seed
Signed-off-by: Thomas Turner <thomastdt@googlemail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-12-23 02:57:20 +01:00
Pavel Koshevoy
47cd8effea fate: Add test for ticket 6024, truncated decoding mode
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-12-22 20:35:27 +01:00
Thomas Turner
9f76ad2a46 avutil: Added selftest for libavutil/audio_fifo.c
Signed-off-by: Thomas Turner <thomastdt@googlemail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-12-21 03:37:54 +01:00
Martin Vignali
6672a49e5a fate/psd: add tests for uncompress and rle samples
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-12-16 02:07:20 +01:00
Derek Buitenhuis
e94b9313b2 fate: Add h264 test for frame num gaps
Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2016-12-14 11:01:50 +01:00
Derek Buitenhuis
b7e4ea0c80 fate: Add h264 test for frame num gaps
Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-12-12 13:33:52 +00:00
Michael Niedermayer
2f07830e69 avcodec: Add max_pixels options
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-12-10 22:24:10 +01:00
Michael Niedermayer
1b39a30247 fate: add av_image_check_size() test
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-12-10 22:24:10 +01:00
James Almer
06c62ce09c fate: add a monoscopic spherical matroska test
Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: James Almer <jamrial@gmail.com>
2016-12-09 11:19:38 -03:00
Vittorio Giovara
0c0da45f0f fate: Add a monoscopic spherical mov test 2016-12-07 14:41:02 -05:00
Vittorio Giovara
cf1cae58b0 fate: Add spherical and stereo3d mov tests 2016-12-07 14:35:08 -05:00
James Almer
b5a0b85721 fate: rename fate-mov-init-nonkeyframe ref file
Fixes the test. Regression since 059a786c20

Signed-off-by: James Almer <jamrial@gmail.com>
2016-12-02 20:06:17 -03:00
Paul B Mahol
6427c9ffee swscale: add gbr(a)p16 output support 2016-12-01 21:37:25 +01:00
Vittorio Giovara
115b834dcf fate: Add test for mov displaymatrix 2016-11-30 12:19:30 -05:00
Paul B Mahol
94d3d98246 fate: update after addition of gray10 to lavc/raw
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2016-11-30 00:08:05 +01:00
Martin Vignali
c9d1f4883d fate/exr: add test for pxr24 with half and uint32 channel
Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
2016-11-25 00:58:07 +01:00
James Almer
42ae9c6654 fate: update fate-source ref file
Signed-off-by: James Almer <jamrial@gmail.com>
2016-11-23 00:55:01 -03:00
Hendrik Leppkes
127cc6dd3d Merge commit '8d07e941b04d63fc4443dd986e3dc7b69cdcca43'
* commit '8d07e941b04d63fc4443dd986e3dc7b69cdcca43':
  FATE: add a test of H.264 SEI recovery in an intra refresh stream

Our H264 decoder drops 3 frames from the beginning of the stream, but
all frames after those match, hence the difference in the fate test.

Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
2016-11-18 11:32:10 +01:00
Hendrik Leppkes
9e1ddc0820 Merge commit '390b95b88b2b896b63f257f69e434dfc0111e076'
* commit '390b95b88b2b896b63f257f69e434dfc0111e076':
  fate: Add a mixed NAL coding sample

Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
2016-11-18 10:16:54 +01:00
Vittorio Giovara
481ff3cf01 fate: Add h264 and hevc extradata reload tests
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2016-11-16 11:17:27 -05:00
Vittorio Giovara
00c8079816 fate: Add h264 extradata reload tests
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-11-16 02:43:19 +01:00
Carl Eugen Hoyos
b5177c7051 lsws: Add GRAY10 conversion.
Based on 19be5fb7 by Luca Barbato.
2016-11-14 10:35:06 +01:00
Nicolas George
22aa649c13 fate/colorkey: disable audio stream.
The test is not supposed to cover audio.
Also, using -vframes along with an audio stream depends on
the exact order the frames are processed by filters, it is
too much constraint to guarantee.
2016-11-13 10:41:16 +01:00
Sasi Inguva
c8dc11bb9e lavf/mov.c: Fallback to finding non-keyframe in fix_index, if keyframe search fails.
Signed-off-by: Sasi Inguva <isasi@google.com>
Reviewed-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-11-10 17:44:47 +01:00
Steven Liu
863ebe6f83 avformat/flvenc: add add_keyframe_index option
Add keyframe index metadata
Used to facilitate seeking; particularly for HTTP pseudo streaming.
 1. read live streaming or file by sequence
 2. if use add_keyframe_index option, add a mark flag at the position,
    use to insert new context at the last step.
 3. add the keyframes *offset* and *timestamp* into a list
 4. if use add_keyframe_index option, shift the metadata data from
    mark flag offset
 5. insert the keyframes *offset* and *timestamp* from the list by
    sequence
 6. free the list
 7. end.

Add FATE test case;

Reviewed-by: Lou Logan <lou@lrcd.com>
Signed-off-by: Steven Liu <liuqi@gosun.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-11-10 10:30:48 +08:00
Michael Niedermayer
2bc66d9e43 nut: add gray12 support
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-11-10 01:18:43 +01:00
Luca Barbato
19be5fb728 swscale: Add GRAY12
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-11-10 00:49:29 +01:00
Michael Niedermayer
b828788d58 swscale: Add GBRAP10 output
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-11-10 00:33:12 +01:00
Luca Barbato
2c7d8cbd66 swscale: Add the GBRAP12 output
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-11-10 00:33:12 +01:00
Luca Barbato
ab839054e6 swscale: Add GRAY12 2016-11-07 22:42:00 +01:00
James Almer
e8a39f584a avformat/framehash: also print channel layout as a string
This should be more useful for users since numerical values for channel
layout can be confusing and unintuitive.

Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: James Almer <jamrial@gmail.com>
2016-11-05 22:42:22 -03:00
Michael Niedermayer
26e9efab1e fate: Remove show_formats for fate-mov-zombie test
This includes the absolute path

Found-by: jamrial
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-11-05 15:26:31 +01:00
Michael Niedermayer
5dc237aaaa fate: add zombie test
This test tests some odd sample with odd aspect ratio

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-11-05 10:24:48 +01:00
James Almer
7e603fb322 fate: add bsf tests for ticket 5927
Tested-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: James Almer <jamrial@gmail.com>
2016-11-04 22:13:44 -03:00
Rodger Combs
d401c37ef5
tests/fate/avformat: add segment.c tests 2016-11-02 01:16:26 -05:00
Vittorio Giovara
ecd2ec69ce mov: Evaluate the movie display matrix
This matrix needs to be applied after all others have (currently only
display matrix from trak), but cannot be handled in movie box, since
streams are not allocated yet. So store it in main context, and apply
it when appropriate, that is after parsing the tkhd one.

Fate tests are updated accordingly.

Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2016-11-01 12:19:00 -04:00
Martin Vignali
584f509a4b fate filter metadata : add test for aphasemeter - Test a mono file (in phase) -> 1. as result - Test a out of phase 1000 Hz -> -1. as result
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-11-01 17:13:02 +01:00
Vittorio Giovara
b90c8a3d08 fate: Add tests for mov display matrix
Rotation, sample/display aspect ratio and pure matrix export.

Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2016-11-01 11:55:54 -04:00
Sasi Inguva
5e965582d5 lavf/mov.c: Use the correct timescale when seeking for audio.
Signed-off-by: Sasi Inguva <isasi@google.com>
Reviewed-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-10-31 13:43:43 +00:00
James Almer
eabbc64728 avformat/matroskaenc: fix cue relative position values when CRC32 is enabled
The dynamic buffer does not contain the CRC32 element so calls to avio_tell()
don't take it into account. This resulted in CueRelativePosition values being
six bytes short.
This is a regression since 6724525a15

Instead of adding yet another custom check for CRC32 to fix a size or an offset,
remove the existing ones and reserve the six bytes in the dynamic buffer.

Signed-off-by: James Almer <jamrial@gmail.com>
2016-10-26 16:28:59 -03:00
Tobias Rapp
03a6feb213 fate: Add MXF D10/DNXHD/DV25 probe tests
Signed-off-by: Tobias Rapp <t.rapp@noa-archive.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-10-26 02:08:52 +02:00
Rodger Combs
73ead477dd
lavf: add AV_DISPOSITION_TIMED_THUMBNAILS
Reviewed-By: Michael Niedermayer <michael@niedermayer.cc>
2016-10-24 05:47:05 -05:00
Rodger Combs
54350f06e1
ffprobe: report field order for video streams 2016-10-24 01:24:23 -05:00
Mark Reid
0cfd6ccede tests/fate: add mxf metadata streams test
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-10-21 02:04:21 +02:00
Derek Buitenhuis
dfe7e5501d FATE: Add test for muxing discontinuous MP4 fragments with large timestamps
Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-10-19 13:25:21 +02:00
Luca Barbato
da4f8c8e35 fate: Update filter-pixfmts-scale gbrap12le hash missing from be9dba5c8a
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2016-10-18 20:34:55 +02:00
Michael Niedermayer
be9dba5c8a swscale: Properly load alpha for planar rgb
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2016-10-18 12:58:14 +02:00
Anton Khirnov
8e2ea69135 lavf: use the new bitstream filter for extracting extradata
This also fixes a minor bug introduced in the codecpar conversion, where
the termination condition for extracting the extradata does not match
the actual extradata setting code. As a result, the packet durations
made up by lavf go back to their values before the codecpar conversion.
That is of little consequence since that code should eventually be
dropped completely.
2016-10-16 20:27:30 +02:00
James Almer
90826031a2 avformat/matroskaenc: write a DisplayUnit element when aspect ratio is unknown
We don't currently support values 1 (centimeters), 2 (inches) or 3 (DAR),
only the default value 0 (pixels) which doesn't need to be written.

The fate refs are updated as unknown SAR is now signaled in the output
files with the addition of the new element.

Reviewed-by: Carl Eugen Hoyos <ceffmpeg@gmail.com>
Signed-off-by: James Almer <jamrial@gmail.com>
2016-10-15 20:48:03 -03:00
Thomas Turner
09d39177dc avutil: Improved selftest coverage for libavutil/fifo.c
Tested functions: av_fifo_generic_peek(), av_fifo_grow()

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-10-14 23:14:33 +02:00
Luca Barbato
881477c77b swscale: Add the GBRAP12 output 2016-10-12 21:33:34 +02:00
Luca Barbato
ef3740c3a0 swscale: Enable GBRP12 output 2016-10-12 18:00:24 +02:00
Vittorio Giovara
eb54210602 swscale: Add missing yuv444p12 swapping
Missing from 9bd6ea5695.

Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2016-10-12 10:42:38 +02:00
Michael Niedermayer
21bffa93a6 avformat/movenc: Switch mov_write_uuidprof_tag() to avg_frame_rate
Using the stream timebase simply overflows
Fix integer overflow in psp framerate computation

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-10-10 00:58:16 +02:00
James Almer
3bcadf8227 avformat/matroskaenc: write a CRC32 element on Info
Finishes implementing ticket #4347

Tested-by: Dave Rice <dave@dericed.com>
Tested-by: Jerome Martinez <jerome@mediaarea.net>
Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: James Almer <jamrial@gmail.com>
2016-10-06 17:16:12 -03:00
James Almer
650e17d88b avformat/matroskaenc: write a CRC32 element on Tags
Implements part of ticket #4347

Tested-by: Dave Rice <dave@dericed.com>
Tested-by: Jerome Martinez <jerome@mediaarea.net>
Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: James Almer <jamrial@gmail.com>
2016-10-06 17:13:59 -03:00
James Almer
87ce2595de avformat/matroskaenc: write a CRC32 element on Tracks
Implements part of ticket #4347

Tested-by: Dave Rice <dave@dericed.com>
Tested-by: Jerome Martinez <jerome@mediaarea.net>
Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: James Almer <jamrial@gmail.com>
2016-10-06 17:05:03 -03:00
James Almer
79248795d4 avformat/matroskaenc: write a CRC32 element on Cues
Implements part of ticket #4347

Tested-by: Dave Rice <dave@dericed.com>
Tested-by: Jerome Martinez <jerome@mediaarea.net>
Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: James Almer <jamrial@gmail.com>
2016-10-06 17:01:20 -03:00
James Almer
3b189fae73 avformat/matroskaenc: write a CRC32 element on SeekHead
Implements part of ticket #4347

Tested-by: Dave Rice <dave@dericed.com>
Tested-by: Jerome Martinez <jerome@mediaarea.net>
Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: James Almer <jamrial@gmail.com>
2016-10-06 16:59:09 -03:00
James Almer
6724525a15 avformat/matroskaenc: write a CRC32 element on each Cluster
Implements part of ticket #4347

Tested-by: Dave Rice <dave@dericed.com>
Tested-by: Jerome Martinez <jerome@mediaarea.net>
Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: James Almer <jamrial@gmail.com>
2016-10-06 16:54:07 -03:00
James Almer
b33369b612 avformat/matroskaenc: don't reserve space for stream duration tags if the output is not seekable
The durations are never written in that situation.

Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: James Almer <jamrial@gmail.com>
2016-10-04 21:19:58 -03:00
Michael Niedermayer
cced8394b6 fate: Add PSP copy test
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-10-03 01:44:16 +02:00
Vittorio Giovara
dc3fe45fca fate: Add test for rscc palette 2016-10-02 15:42:03 -04:00
wm4
8f6f232228 ffmpeg: use new decode API
This is a bit messy, mainly due to timestamp handling.

decode_video() relied on the fact that it could set dts on a flush/drain
packet. This is not possible with the old API, and won't be. (I think
doing this was very questionable with the old API. Flush packets should
not contain any information; they just cause a FIFO to be emptied.) This
is replaced with checking the best_effort_timestamp for AV_NOPTS_VALUE,
and using the suggested DTS in the drain case.

The modified tests (fate-cavs and others) still fails due to dropping
the last frame. This happens because the timestamp of the last frame
goes backwards (ffprobe -show_frames shows the same thing). I suspect
that this "worked" due to the best effort timestamp logic picking the
DTS over the decreasing PTS. Since this logic is in libavcodec (where
it probably shouldn't be), this can't be easily fixed. The timestamps
of the cavs samples are weird anyway, so I chose not to fix it.

Another strange thing is the timestamp handling in the video path of
process_input_packet (after the decode_video() call). It looks like
the code to increase next_dts and next_pts should be run every time
a frame is decoded - but it's needed even if output is skipped.
2016-10-01 17:22:22 +02:00
Michael Niedermayer
68d619a31c fate: Add regression test for Ticket 186
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-10-01 03:43:02 +02:00
Michael Niedermayer
588c2355a6 fate: Add fate-svq3-watermark
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-10-01 03:43:02 +02:00
Carl Eugen Hoyos
fcce25ee5d lavf/mov: Read display aspect ratio from ares atom also for dnxhd.
Fixes aspect ratio of sample in ticket #2125.
Fixes aspect ratio of sample in ticket #5325.
2016-09-29 15:29:03 +02:00
Sasi Inguva
dba2db6c0e lavf/mov.c: Make audio timestamps strictly monotonically increasing inside an edit list.
Fixes gapless decoding. Adjust skip_samples field correctly in case of DISCARDed audio frames.

Signed-off-by: Sasi Inguva <isasi@google.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-09-29 02:25:41 +02:00
Luca Barbato
9bd6ea5695 pixfmt: Add yuv444p12 pixel format 2016-09-27 18:48:30 +02:00
Luca Barbato
0aebbbd024 pixfmt: Add yuv422p12 pixel format 2016-09-27 18:48:30 +02:00
Luca Barbato
85406e7a8d pixfmt: Add yuv420p12 pixel format 2016-09-27 18:48:30 +02:00
Clément Bœsch
5ef1959080 ffmpeg: switch to the new BSF API
This commit is initially largely based on commit 4426540 from Anton
Khirnov <anton@khirnov.net> and two following fixes (80fb19b and
fe7b21c) which were previously skipped respectively in 98e3153, c9ee36e,
and 7fe7cdc.

mpeg4-bsf-unpack-bframes FATE reference is updated because the bsf
filter now actually fixes the extradata (mpeg4_unpack_bframes_init()
changing one byte is now honored on the output extradata).

The FATE references for remove_extra change because the packet flags
were wrong and the keyframes weren't marked, causing the bsf relying on
these proprieties to not actually work as intended.

The following was fixed by James Almer:

The filter option arguments are now also parsed correctly.

A hack to propagate extradata changed by bitstream filters after the
first av_bsf_receive_packet() call is added to maintain the current
behavior. This was previously done by av_bitstream_filter_filter() and
is needed for the aac_adtstoasc bsf.

The exit_on_error was not being checked anymore, and led to an exit
error in the last frame of h264_mp4toannexb test. Restoring this
behaviour prevents erroring out. The test is still changed as a result
due to the badly filtered frame now not being written after the failure.

Signed-off-by: Clément Bœsch <u@pkh.me>
Signed-off-by: James Almer <jamrial@gmail.com>
2016-09-24 14:25:53 -03:00
Sasi Inguva
6a2cbf9014 ffprobe.c: Indicate decode-but-discard packets when doing -show_packets.
Signed-off-by: Sasi Inguva <isasi@google.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-09-23 23:09:23 +02:00
Michael Niedermayer
4a3b41bed0 fate: add Test for h264_mp4toannexb (ticket2991) 2016-09-23 21:36:58 +02:00
James Almer
d41c9b1c27 avcodec/remove_extradata_bsf: Fix AVoption parameter max value 2016-09-23 17:15:49 +02:00
Michael Niedermayer
1bd9b960ba tests/fate/ffmpeg: Remove dead automatic remove extradata test update the keyframe test
Found-by: jamrial
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-09-23 17:15:49 +02:00
Michael Niedermayer
a5fafabc84 tests/fate: Add fate-ffmpeg-bsf-remove-* tests
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-09-23 13:34:13 +02:00
James Almer
7d17d31db4 fate: update fate-source reference file
Signed-off-by: James Almer <jamrial@gmail.com>
2016-09-22 23:55:31 -03:00
Clément Bœsch
955b818cf9 ffmpeg: switch to codecpar
This commit is largely based on commit 15e84ed3 from Anton Khirnov
<anton@khirnov.net> which was previously skipped in bbf5ef9d.

There are still a bunch of things raising codecpar related warnings that
need fixing, such as:
- the use of codec->debug in the interactive debug mode
- read_ffserver_streams(): it's probably broken now but there is no test
- lowres stuff
- codec copy apparently required by bitstream filters

The matroska references are updated because they now properly forward
the field_order (previously unknown, now progressive).

Thanks to James Almer for fixing a bunch of FATE issues in this commit.

Signed-off-by: Clément Bœsch <clement@stupeflix.com>
Signed-off-by: James Almer <jamrial@gmail.com>
2016-09-21 15:39:28 +02:00
Mark Reid
6419b4c0cb test/fate: add multi component mxf test
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-09-21 01:29:47 +02:00
Michael Niedermayer
492259ccda fate: add aac_adtstoasc test (Ticket 3715) 2016-09-20 15:52:08 +02:00
Michael Niedermayer
e048b46f14 fate: Add rgb24-mkv test 2016-09-20 13:37:25 +02:00
Sasi Inguva
ca6cae73db lavf/mov: Add support for edit list parsing.
Signed-off-by: Sasi Inguva <isasi@google.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-09-19 19:52:05 +02:00
Michael Niedermayer
ae7d4e17eb fate: Add copy-trac2211-avi test
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-09-10 00:50:36 +02:00
Michael Niedermayer
24b3918901 tests/fate-run.sh: Analyze file generated in transcode()
This should be much more informative than a plain md5 difference

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-09-10 00:50:36 +02:00
Paul B Mahol
5556392b3b fate: add hstack and vstack
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2016-09-09 12:49:15 +02:00
Paul B Mahol
ac3f9be330 fate: add weave
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2016-09-09 11:55:45 +02:00
Paul B Mahol
21de33dd83 fate: add swaprect
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2016-09-09 00:57:01 +02:00
Paul B Mahol
26a19f8e92 fate: add shuffleframes test
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2016-09-08 11:14:42 +02:00
Steven Liu
30a09eae98 tests/fate:Add FATE for hls_flags append option
add tests/ref/fate/filter-hls-append for FATE
add hls-list-append fate use filter make audio data and test hls_flags
append options

Signed-off-by: Steven Liu <lingjiujianke@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-09-07 18:39:08 +02:00
Michael Niedermayer
207d78176f avformat: Export ticks_per_frame in st->codec
Fixes regressions with stream copy and output timebase/fps being twice as fine as needed
Makes the timebase and ticks per frame handled identical which should make the
code easier to understand and work with. It does not solve the problem without
st->codec access

Suggested-by: Hendrik Leppkes
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-09-07 11:11:56 +02:00
Michael Niedermayer
eed7e08646 tests/fate/ffmpeg: add simple ts->avi copy test
Approved-by: ubitux
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-09-06 18:04:49 +02:00
Michael Niedermayer
cf9500a4dc tests/fate/ffmpeg: add test for mpegts->mxf steram copy (Ticket 4914)
Approved-by: ubitux
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-09-06 18:04:49 +02:00
Michael Niedermayer
ba96a2ac85 test/fate: Add Ticket 236 / mov stream copy test
Approved-by: ubitux
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-09-06 18:04:49 +02:00
Timo Rothenpieler
e3fd1857fb swscale: add unscaled conversion from yuv420p to p010 2016-09-06 12:41:28 +02:00
Carl Eugen Hoyos
445522c01b fate: Add test for ticket #5805. 2016-09-04 20:28:29 +02:00
Christophe Gisquet
b6e8efb082 fate: add 12bpp sample
Allows testing simple_idct12 correctness/bitexactness, as the sample
was generated using faani as idct.

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-09-04 12:05:06 +02:00
Timo Rothenpieler
99882d05a6 swscale: add support for P010LE/BE output 2016-08-31 13:19:46 +02:00
Timo Rothenpieler
325e56479f avcodec/nvenc: include nvEncodeAPI v7 SDK header
As Nvidia has put the most recent Video Codec SDK behind a double
registration wall, of which one needs manual approval of a lenghty
application, bundling this header saves everyone trying to use NVENC
from that headache.

The header is still MIT licensed and thus fine to bundle with ffmpeg.

Not bundling this header would get ffmpeg stuck at SDK v6, which is
still freely available, holding back future development of the NVENC
encoder.
2016-08-28 16:47:54 +02:00
Paul B Mahol
0edfd8e6f4 avfilter/vf_lut: add planar RGB support 2016-08-24 08:30:22 +02:00
Paul B Mahol
35a0bc0d94 fate: update for gbrap after 61980dc479 2016-08-24 08:08:39 +02:00
Michael Niedermayer
76d377d0a0 swscale/output: Fix rounding offset in yuv2gbrp_full_X_c()
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-08-23 02:46:02 +02:00
Jan Sebechlebsky
b84c83144d avformat/fifo: Add fate test
Tested-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: Jan Sebechlebsky <sebechlebskyjan@gmail.com>
Signed-off-by: Marton Balint <cus@passwd.hu>
2016-08-22 22:07:48 +02:00
Steven Robertson
cf7b0b5050 fate: add DNxHR 12-bit example.
Signed-off-by: Steven Robertson <steven@strobe.cc>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-08-21 02:58:13 +02:00
Petru Rares Sincraian
777697a62c fate: add test for compand filter
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-08-12 23:54:04 +02:00
Petru Rares Sincraian
7be021d949 fate: add test for tremolo filter
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-08-02 12:50:04 +02:00
Petru Rares Sincraian
286368099a fate: add test for stereotools filter
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-07-29 00:30:22 +02:00
Petru Rares Sincraian
08c1b6bb72 fate: add test for silenceremove filter
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-07-29 00:30:22 +02:00
Michael Niedermayer
783a2568b2 tests/fate/filter-audio: fate-filter-chorus: Randomly change parameters to some values which pass on arm/mips/x86-32/64
If this still doesnt give the same results on all platforms then this should be
disabled

Found-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-07-24 03:52:55 +02:00
Mark Reid
c2cd1a5ea7 tests/fate/dnxhd: add dnxhr prefix tests
The data offset value in the prefix increases as the heights increases.
This test adds a tests for some common dnxhr heights.

can somebody add the following test footage to fate/dnxhd?
https://dl.dropboxusercontent.com/u/170952/fate/dnxhd/prefix-256x1536.dnxhr
https://dl.dropboxusercontent.com/u/170952/fate/dnxhd/prefix-256x1716.dnxhr
https://dl.dropboxusercontent.com/u/170952/fate/dnxhd/prefix-256x2048.dnxhr
https://dl.dropboxusercontent.com/u/170952/fate/dnxhd/prefix-256x2160.dnxhr
https://dl.dropboxusercontent.com/u/170952/fate/dnxhd/prefix-256x3212.dnxhr

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-07-23 13:54:13 +02:00
Petru Rares Sincraian
fa393e3061 fate: add test for extrastereo filter
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-07-22 13:13:24 +02:00
Petru Rares Sincraian
3fd2ef922e fate: add test for earwax filter
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-07-20 23:09:04 +02:00
Petru Rares Sincraian
7403dcc34e fate: add test for dcshift filter
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-07-20 23:09:04 +02:00
Petru Rares Sincraian
2383618a40 fate: add test for chorus filter
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-07-20 02:53:42 +02:00
Aman Gupta
9ca9671458 avcodec/ccaption_dec: implement positioning for closed captions
Positioning math is based on the guidelines in https://dvcs.w3.org/hg/text-tracks/raw-file/default/608toVTT/608toVTT.html#positioning-in-cea-608

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-07-18 01:31:25 +02:00
Anton Khirnov
38efff92f1 FATE: add a test for H.264 with two fields per packet 2016-07-15 15:34:29 +02:00
Anton Khirnov
8d07e941b0 FATE: add a test of H.264 SEI recovery in an intra refresh stream 2016-07-15 15:33:13 +02:00
Clément Bœsch
def8506766 Merge commit '523c4c5b70994f5cd1f192b68d07cf24b292ca05'
* commit '523c4c5b70994f5cd1f192b68d07cf24b292ca05':
  fate: Add TrueMotion 2 RT tests

Merged-by: Clément Bœsch <u@pkh.me>
2016-07-14 19:37:14 +02:00
Clément Bœsch
cd02df5256 Merge commit 'cc58656aca95b5ab517989a9524b9a2b1c5653cf'
* commit 'cc58656aca95b5ab517989a9524b9a2b1c5653cf':
  fate: Add tests for MagicYUV

Merged-by: Clément Bœsch <u@pkh.me>
2016-07-14 18:57:37 +02:00
Vittorio Giovara
390b95b88b fate: Add a mixed NAL coding sample
See 17c99b6158.

Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2016-07-13 18:18:46 -04:00
Petru Rares Sincraian
3f5b7a2d73 fate: add test for asetrate
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-07-06 01:20:21 +02:00
Martin Vignali
ce466d0a15 fate/apng : add test for apng decoding
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-07-05 01:48:00 +02:00
Martin Vignali
9cc114fa54 fate/png : add test for rgba64 and interleaved rgb
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-07-05 01:48:00 +02:00
Paul B Mahol
de30863fff avfilter/vf_rotate: add >8 bit depth support
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2016-07-04 20:39:16 +02:00
Michael Niedermayer
07f5e75a47 tests/fate: Add test for ticket 3386 ([H264] [Regression] illegal short term buffer state detected)
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-07-02 21:37:48 +02:00
Martin Vignali
92bf87db29 fate/webp : add test for lossless picture to improve cover
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-07-01 20:58:51 +02:00
Petru Rares Sincraian
2b1995e3ee fate: add test for asetnsamples
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-06-29 19:32:37 +02:00
Michael Niedermayer
89cccfc905 fate/h264: add test for skip-nointra and skip-nokey 2016-06-29 16:22:37 +02:00
Martin Vignali
2bdb26b4ee fate/webp : add test for lossy compression.
the result of ffmpeg decoding is binary exact with the yuv output of
official decoder (dwebp)

Signed-off-by: James Almer <jamrial@gmail.com>
2016-06-28 18:21:12 -03:00
Diego Biurrun
7c55fac7df fate: Add test for webp 2016-06-28 17:42:53 +02:00
Martin Vignali
bd2cec7021 fate/webp : add test for webp lossless decoding (rgb and rgba)
output have been compared with official decoding tool output (dwebp)

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-06-26 21:12:33 +02:00
Martin Vignali
971ee09d32 fate/exr : add tests for file with half and float channels
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-06-26 21:12:32 +02:00
Hendrik Leppkes
cd52ec2337 Merge commit 'f5c43884190be094749acfba104e3eab98d8ff1e'
* commit 'f5c43884190be094749acfba104e3eab98d8ff1e':
  FATE: drop the audio stream from the dxtory test

Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
2016-06-26 15:41:49 +02:00
Petru Rares Sincraian
84b252ba2a fate: add anequalizer test
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-06-24 14:54:06 +02:00
Matthieu Bouron
c60d328e67 Merge commit 'a79aafd0b4d37eda6f15dc68e6509d4e815290c9'
* commit 'a79aafd0b4d37eda6f15dc68e6509d4e815290c9':
  movenc: Add a test for VFR with b-frames, with a duration change at a fragment end

Merged-by: Matthieu Bouron <matthieu.bouron@stupeflix.com>
2016-06-23 22:20:10 +02:00
Matthieu Bouron
d671652f6e Merge commit 'fd4957d9c67996e7d218fd36b4168c9cb85f9ea7'
* commit 'fd4957d9c67996e7d218fd36b4168c9cb85f9ea7':
  movenc-test: Test write_data_type

Merged-by: Matthieu Bouron <matthieu.bouron@stupeflix.com>
2016-06-23 18:03:49 +02:00
Petru Rares Sincraian
f6c48a7316 fate: add apad test
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-06-23 00:47:13 +02:00
Petru Rares Sincraian
610c0770e3 fate: add test for amerge
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-06-22 23:05:33 +02:00
Michael Niedermayer
e0faad837c avformat/flvdec: Do not check last size if it could not be read due to EOF
Fixes part of Ticket5648
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-06-22 03:02:47 +02:00
Clément Bœsch
72ed8d8bd2 Merge commit '1982d0cc561912d685a0c2dbe58bc19f50bae231'
* commit '1982d0cc561912d685a0c2dbe58bc19f50bae231':
  fate: Add test for MTS2/MSS4

The timestamps differ because we use a more appropriate timebase.

Merged-by: Clément Bœsch <clement@stupeflix.com>
2016-06-21 14:14:21 +02:00
Clément Bœsch
7cf4b442ce Merge commit '5b1409c75563b4a3aca113c34d09e3b5442de47f'
* commit '5b1409c75563b4a3aca113c34d09e3b5442de47f':
  fate: Add test for MSS1

Test was already present, see 849e55e58e.

The merge removes the audio decoding present in our version and
simplifies the rules.

Merged-by: Clément Bœsch <clement@stupeflix.com>
2016-06-21 12:50:03 +02:00
Clément Bœsch
f36fcf7b6c Merge commit '4b2e69397b84d1c1a29ffae6e9f106f2c32b1869'
* commit '4b2e69397b84d1c1a29ffae6e9f106f2c32b1869':
  dds: Add support for monochrome images

Merged-by: Clément Bœsch <clement@stupeflix.com>
2016-06-21 12:29:46 +02:00
Vittorio Giovara
523c4c5b70 fate: Add TrueMotion 2 RT tests 2016-06-20 15:51:34 -04:00
Vittorio Giovara
cc58656aca fate: Add tests for MagicYUV 2016-06-20 15:47:23 -04:00
Petru Rares Sincraian
bc370c8f68 fate: add test for alimiter
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-06-20 20:15:20 +02:00
Clément Bœsch
2770e16d70 fate/h264: add test for ticket #631 2016-06-17 17:46:19 +02:00
Petru Rares Sincraian
c4a82194e0 fate: add test for agate
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-06-16 23:39:52 +02:00
Michael Niedermayer
fa0097e008 avfilter/vf_telecine: Make frame writable before writing into it
Fixes Ticket 5627

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-06-14 18:08:56 +02:00
Petru Rares Sincraian
b78b077c91 fate: add afade test
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-06-12 15:05:48 +02:00
Michael Niedermayer
f730367a60 avcodec/mpeg4videodec: Fix default low_delay flag value if not coded
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-06-05 20:55:09 +02:00
Thomas Mundt
2e395bbccf avfilter/vf_colormatrix: increase precision
Signed-off-by: Thomas Mundt <loudmax@yahoo.de>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-06-05 18:47:36 +02:00
Michael Niedermayer
79b6c9acd5 fate/prores: use aac fixed for audio to fix fate failures on arm
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-06-03 04:35:59 +02:00