summaryrefslogtreecommitdiff
path: root/tests/ref
Commit message (Collapse)AuthorAge
* avfilter/interlace: add support for 10 and 12 bitThomas Mundt2017-09-23
| | | | | | Reviewed-by: Michael Niedermayer <michael@niedermayer.cc> Signed-off-by: Thomas Mundt <tmundt75@gmail.com> Signed-off-by: James Almer <jamrial@gmail.com>
* fate: add mxf_dv25/dvcpro50 regression testsTobias Rapp2017-09-18
| | | | Signed-off-by: Tobias Rapp <t.rapp@noa-archive.com>
* fate: add tinterlace lowpass filtering testsThomas Mundt2017-09-17
| | | | Signed-off-by: James Almer <jamrial@gmail.com>
* avfilter/interlace: prevent over-sharpening with the complex low-pass filterThomas Mundt2017-09-15
| | | | | | | | | | | | | | | | | The complex vertical low-pass filter slightly over-sharpens the picture. This becomes visible when several transcodings are cascaded and the error potentises, e.g. some generations of HD->SD SD->HD. To prevent this behaviour the destination pixel must not exceed the source pixel when the average of the pixels above and below is less than the source pixel. And the other way around. Tested and approved in a visual transcoding cascade test by video professionals. SSIM/PSNR test with the first generation of an HD->SD file as a reference against the 6th generation(3 x SD->HD HD->SD): Results without the patch: SSIM Y:0.956508 (13.615881) U:0.991601 (20.757750) V:0.993004 (21.551382) All:0.974405 (15.918463) PSNR y:31.838009 u:48.424280 v:48.962711 average:34.759466 min:31.699297 max:40.857847 Results with the patch: SSIM Y:0.970051 (15.236232) U:0.991883 (20.905857) V:0.993174 (21.658049) All:0.981290 (17.279202) PSNR y:34.412108 u:48.504454 v:48.969496 average:37.264644 min:34.310637 max:42.373392 Signed-off-by: Thomas Mundt <tmundt75@gmail.com> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* vf_fps: when reading EOF, using current_pts to duplicate the last frame if ↵Thierry Foucu2017-09-15
| | | | | | | | | needed. Fix ticket #2674 Tested with examples from ticket 2674. Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avformat/mxfenc: Correct the Sample rate for PCM outside D10Michael Niedermayer2017-09-12
| | | | | | Based on mail from IRT Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* fate: add test for asetnsamples filter with padding disabledTobias Rapp2017-09-08
| | | | | | | | | 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>
* ffprobe: use consistent string for unspecified color_range valueTobias Rapp2017-09-07
| | | | | | | 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>
* fate: add tests for some video source filtersTobias Rapp2017-08-31
| | | | | | | | | | 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>
* fate/pixlet : add test for rgbMartin Vignali2017-08-31
| | | | Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* FATE: Add FITS testsParas Chadha2017-08-30
| | | | Signed-off-by: Paras Chadha <paraschadha18@gmail.com>
* ffmpeg options: Enable trailing ? for map_channelpkviet2017-08-25
| | | | | | | | | | | 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>
* avformat/mov: Fix trampling of ctts during seeks when sidx support is enabled.Dale Curtis2017-08-24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When sidx box support is enabled, the code will skip reading all trun boxes (each containing ctts entries for samples inthat box). If seeks are attempted before all ctts values are known, the old code would dump ctts entries into the wrong location. These are then used to compute pts values which leads to out of order and incorrectly timestamped packets. This patch fixes ctts processing by always using the index returned by av_add_index_entry() as the ctts_data index. When the index gains new entries old values are reshuffled as appropriate. This approach makes sense since the mov demuxer is already relying on the mapping of AVIndex entries to samples for correct demuxing. As a result of this all ctts entries are now 1-count. A followup change will be submitted to remove support for > 1 count entries which will simplify seeking. Notes for future improvement: Probably there are other boxes (stts, stsc, etc) that are impacted by this issue... this patch only attempts to fix ctts since it completely breaks packet timestamping. This patch continues using an array for the ctts data, which is not the most ideal given the rearrangement that needs to happen (via memmove as new entries are read in). Ideally AVIndex and the ctts data would be set-type structures so addition is always worst case O(lg(n)) instead of the O(n^2) that exists now; this slowdown is noticeable during seeks. Signed-off-by: Dale Curtis <dalecurtis@chromium.org> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* fate: add overlay filter tests with alphaMarton Balint2017-08-16
| | | | Signed-off-by: Marton Balint <cus@passwd.hu>
* Add single precision planar RGB pixel formatsVittorio Giovara2017-08-15
| | | | | | Add a pixel format flag to identify this family. Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
* lavf/movenc.c: Set sgpd and sbgp atoms to represent decoder delay for AAC.Sasi Inguva2017-08-10
| | | | | | | | 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>
* avcodec/dvenc: Change quantizer dead zone default to 7Michael Niedermayer2017-08-08
| | | | | | This improves the quality and reduces the "blocking" in flat areas Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* fate: update ref files for gray pixel formats changesJames Almer2017-08-08
|
* avfilter: add support for GRAY9 and GBRAP10Paul B Mahol2017-08-07
|
* libswscale: add gray9 supportPaul B Mahol2017-08-07
|
* avfilter/drawutils: support gbrap10 tooPaul B Mahol2017-08-07
|
* swscale: fix gbrap16 alpha channel issuesJames Cowgill2017-08-05
| | | | | | | | | | | | | 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>
* speedhq: add FATE testsSteinar H. Gunderson2017-08-03
| | | | | | Also add simple FATE tests, based on output produced by the NDI SDK. Signed-off-by: James Almer <jamrial@gmail.com>
* lavc/htmlsubtitles: handle colors starting with many '#'Clément Bœsch2017-08-01
|
* lavc/htmlsubtitles: improve line breaks handlingClément Bœsch2017-08-01
|
* lavc/tests: add htmlsubtitlesClément Bœsch2017-08-01
|
* lavc/htmlsubtitles: improve handling broken garbageClément Bœsch2017-08-01
| | | | | | | | | | | | | | | | | | | | 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.
* sws/tests/pixdesc_query: replace rgb based pix fmts with endianess agnostic ↵Clément Bœsch2017-07-30
| | | | | | names Fixes ticket #6554
* sws/tests/pixdesc_query: sort pixel formatsClément Bœsch2017-07-30
|
* Revert "Revert "lavfi/buffersrc: push the frame deeper if requested.""Nicolas George2017-07-30
| | | | | | | | | | | This reverts commit 04aa09c4bcf2d5a634a35da3a3ae3fc1abe30ef8 and reintroduces 0ff5567a30be6d7c804e95997ae282d6bacd76c3 that was temporarily reverted due to minor regressions. It also reverts e5bce8b4ce7b1f3a83998febdfa86a3771df96ce that fixed FATE refs. The fate-ffm change is caused by field_order now being set on the output format because the first frame arrives earlier. The fate-mxf change is assumed to be the same.
* fate: update pixfmt_best test to check for endiannessTobias Rapp2017-07-27
| | | | Signed-off-by: Tobias Rapp <t.rapp@noa-archive.com>
* ffprobe: Print color properties from show_framesVittorio Giovara2017-07-21
| | | | Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
* fate: add libavdevice/reverse.c to fate-sourceJames Almer2017-07-20
|
* pixdesc: Add a test for av_find_best_pix_fmt_of_2()Mark Thompson2017-07-18
|
* fate: add sub-srt-badsyntax testMichael Niedermayer2017-07-15
| | | | | | Based-on: srt sample by ubitux Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* libavfilter/scale2ref: Maintain main input's DARKevin Mark2017-07-04
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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>
* fate: Add fate-copy-trac3074Michael Niedermayer2017-06-30
| | | | Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avcodec/utvideodec: decode to GBR(A)PPaul B Mahol2017-06-26
| | | | | | | | | | | 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>
* fate: update checksums for fate-lavf-ffm and fate-lavf-mxfJames Almer2017-06-24
| | | | | | | | | | | | | <@jamrial> durandal_1707: 04aa09c4bc broke fate-lavf-ffm and fate-lavf-mxf <@durandal_1707> how so? <@jamrial> one byte changes <@durandal_1707> jamrial: just update checksums <@jamrial> durandal_1707: but why did they change at all? the commit you reverted didn't affect them <@jamrial> why does reverting it affect these tests? <@jamrial> i don't think updating the checksum without knowing what changed is a good idea <@durandal_1707> jamrial: the lavfi core is in weird state after removal of recursive code <@durandal_1707> jamrial: the change is that older ones would get progressive flag set and new one doesnt <@jamrial> alright
* fate: use do_md5sum instead of the md5 protocol for most md5 fate testsMarton Balint2017-06-18
| | | | | | | | | | | | | 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>
* fate: add test for -time_base optionMichael Bradshaw2017-06-10
| | | | | Signed-off-by: Michael Bradshaw <mjbshaw@google.com> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* lavf/mov.c: offset index timestamps by the minimum pts to make first pts zeroSasi Inguva2017-06-09
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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>
* fate: add fate-adts-id3v1-demuxJames Almer2017-06-05
| | | | | | | | | | | 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 324f0fbff1245f9e9e1dda29ecb03138a2de287d. Tested-by: Michael Niedermayer <michael@niedermayer.cc> Signed-off-by: James Almer <jamrial@gmail.com>
* fate: add test for the Dirac low delay profileRostislav Pehlivanov2017-06-05
| | | | Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
* FATE: Add test for libavfilter/scale2refKevin Mark2017-06-05
| | | | | | | | | | | | | | | | | | | | | | | | | | | | 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>
* avcodec/tscc2: Skip duplicate framesMichael Niedermayer2017-05-25
| | | | | | | | | | 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>
* avcodec/aac_adtstoasc: propagate new extradata using packet side dataJames Almer2017-05-24
| | | | | | | | | | | | 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>
* fate/exr : add test for Y, b44A negative half, and datawindow != displaywindowMartin Vignali2017-05-10
| | | | Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* Merge commit '019ab88a95cb31b698506d90e8ce56695a7f1cc5'James Almer2017-05-08
|\ | | | | | | | | | | | | * commit '019ab88a95cb31b698506d90e8ce56695a7f1cc5': lavc: add an option for exporting cropping information to the caller Merged-by: James Almer <jamrial@gmail.com>
* | Merge commit '122de16dd8108a59a55d30543c9f28b5f61b02d1'Clément Bœsch2017-05-05
|\| | | | | | | | | | | | | * commit '122de16dd8108a59a55d30543c9f28b5f61b02d1': Replace cmdutils_common_opts.h by a macro Merged-by: Clément Bœsch <cboesch@gopro.com>