1
0
mirror of https://github.com/FFmpeg/FFmpeg.git synced 2024-11-21 10:55:51 +02:00
Commit Graph

2677 Commits

Author SHA1 Message Date
Zane van Iperen
3b860bfd6f fate/adpcm: add adpcm_ima_ssi tests
Signed-off-by: Zane van Iperen <zane@zanevaniperen.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2020-02-08 00:01:17 +01:00
Zane van Iperen
d84a30e123 fate/adpcm: add adpcm_argo tests
Signed-off-by: Zane van Iperen <zane@zanevaniperen.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2020-02-04 23:34:22 +01:00
Michael Niedermayer
07754f3f8f remove tests/ref/lavf/fits
This appears to be forgotten in ac4b5d8622

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2020-01-30 19:57:58 +01:00
Guo, Yejun
de1b2aa796 Revert "fate/filter-video: add two tests for dnn_processing with frame format rgb24 and grayf32"
The tests broke fate without SAMPLES and fate on some platforms.
This reverts commit 95ade711eb.
2020-01-29 01:15:56 +01:00
James Almer
609dfb4057 fate/lavf-container: add an AV1 in Matroska muxing test
Signed-off-by: James Almer <jamrial@gmail.com>
2020-01-26 12:41:32 -03:00
James Almer
cc929cee76 avformat/movenc: add a flag to enable CMAF compatability
Sets some required constrains and reports compatability with the relevant
compatible brand.

Signed-off-by: James Almer <jamrial@gmail.com>
2020-01-15 23:34:21 -03:00
Guo, Yejun
95ade711eb fate/filter-video: add two tests for dnn_processing with frame format rgb24 and grayf32
Signed-off-by: Guo, Yejun <yejun.guo@intel.com>
Signed-off-by: Pedro Arthur <bygrandao@gmail.com>
2020-01-14 11:00:04 -03:00
Andreas Rheinhardt
2ff687c17f avformat/matroskadec: Fix lzo decompression
When a Matroska Block is only stored in compressed form, the size of
the uncompressed block is not explicitly coded and therefore not known
before decompressing it. Therefore the demuxer uses a guess for the
uncompressed size: The first guess is three times the compressed size
and if this is not enough, it is repeatedly incremented by a factor of
three. But when this happens with lzo, the decompression is neither
resumed nor started again. Instead when av_lzo1x_decode indicates that x
bytes of input data could not be decoded, because the output buffer is
already full, the first (not the last) x bytes of the input buffer are
resent for decoding in the next try; they overwrite already decoded
data.

This commit fixes this by instead restarting the decompression anew,
just with a bigger buffer.

This seems to be a regression since 935ec5a1.

A FATE-test for this has been added.

Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
Signed-off-by: James Almer <jamrial@gmail.com>
2019-12-28 22:40:13 -03:00
Andreas Rheinhardt
6c735b96ee fate/matroska: Add test for ProRes and bz2 compression
This test tests that demuxing ProRes that is muxed like it should be in
Matroska (i.e. with the first header ("icpf") atom stripped away) works;
it also tests bz2 decompression as well as the handling of
unknown-length clusters.

Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
Signed-off-by: James Almer <jamrial@gmail.com>
2019-12-28 22:40:13 -03:00
Paul B Mahol
6399eed48a avfilter/vf_waveform: implement tint options 2019-12-28 21:51:40 +01:00
Paul B Mahol
2736dc0564 avfilter/vf_vectorscope: rename gray mode to tint mode 2019-12-28 14:01:15 +01:00
Marton Balint
a619787a9c avutil/tests/opt: add av_opt_get/av_opt_set tests
Signed-off-by: Marton Balint <cus@passwd.hu>
2019-12-27 21:52:21 +01:00
Marton Balint
672b925e8a avutil/tests/opt: add tests for AV_OPT_TYPE_DICT
Signed-off-by: Marton Balint <cus@passwd.hu>
2019-12-27 21:52:21 +01:00
Andreas Rheinhardt
9bde6c6be0 avformat/microdvd: Use \n instead of \0 to end file header
Up until now, the microdvd demuxer uses av_strdup() to allocate the
extradata from a string; its length is set to strlen() + 1, i.e.
including the \0 at the end. Upon remuxing, the muxer would simply copy
the extradata at the beginning, including the \0.

This commit changes this by not adding the \0 to the size of the
extradata; the muxer now delimits extradata by inserting a \n. This
required to change the subtitles-microdvd-remux FATE-test.

Furthermore, the extradata is now allocated with zeroed padding.

The microdvd decoder is not affected by this, as it didn't use the size
of the extradata at all, but treated it as a C-string.

Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
Reviewed-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2019-12-27 12:38:08 +01:00
James Almer
191df4f2d1 avformat/movenc: use iso6 major brand when signed CTS offsets are used in trun boxes
Signed-off-by: James Almer <jamrial@gmail.com>
2019-12-21 11:57:28 -03:00
James Almer
245ace4e2d avformat/movenc: ensure we don't write the major brand as a compatible brand more than once
Signed-off-by: James Almer <jamrial@gmail.com>
2019-12-21 11:57:28 -03:00
James Almer
58ac760816 avformat/movenc: write the major brand also as the first compatible brand
Signed-off-by: James Almer <jamrial@gmail.com>
2019-12-21 11:57:28 -03:00
Linjie Fu
ed2bd94fc0 FATE: add test for hevc files with 4 TUDepth(0..4) of cbf_cb/cbf_cr
5 cabac states for cbf_cb and cbf_cr are supported according to
Table 9-4.

Add a test for 64x64 4:4:4 8bit HEVC clips with TUDepth = 4, cbf_cr > 0.

Signed-off-by: Xu Guangxin <guangxin.xu@intel.com>
Signed-off-by: Linjie Fu <linjie.fu@intel.com>
Signed-off-by: James Almer <jamrial@gmail.com>
2019-12-17 14:12:40 -03:00
James Almer
54d09eb8d0 fate/cbs: use the rawvideo muxer for AV1 tests
The IVF muxer autoinserts the av1_metadata filter unconditionally, which is
not desirable for these tests.

Signed-off-by: James Almer <jamrial@gmail.com>
2019-12-13 10:58:10 -03:00
James Almer
13f2b6dc72 fate/cbs: update the two film grain cbs_av1 tests
They were missed in the previous commit.

Signed-off-by: James Almer <jamrial@gmail.com>
2019-12-11 21:59:24 -03:00
Martin Storsjö
c27a85b983 fate: Use a oneoff test for the tremolo filter
The tremolo filter uses floating point internally, and uses
multiplication factors derived from sin(fmod()), neither of
which is bitexact for use with framecrc.

This fixes running this test when built with for mingw/x86_32
with clang.

In this case, a 1 ulp difference in the output from fmod() would
end up in an output from the filter that differs by 1 ulp, but
which makes the lrint() in swresample/audioconvert.c round in a
different direction.

Signed-off-by: Martin Storsjö <martin@martin.st>
2019-12-11 22:20:00 +02:00
Andreas Rheinhardt
9f7b2b37e3 fate/matroska: Add a test for propagating flac channel layouts
contained in Vorbis comments in the CodecPrivate of flac tracks.
Moreover, it also tests header removal compression.

Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
Signed-off-by: James Almer <jamrial@gmail.com>
2019-12-08 18:20:53 -03:00
Andreas Rheinhardt
ff2b75d94c avformat/matroskadec: Add a fate test for CodecPrivate compression
This test contains a track with zlib compressed CodecPrivate in addition
to compressed frames; the former was unchecked before.

Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
Signed-off-by: James Almer <jamrial@gmail.com>
2019-12-07 23:11:55 -03:00
James Almer
70efa31ba1 fate/matroska: add a demux test for ProRes using zlib compression
Signed-off-by: James Almer <jamrial@gmail.com>
2019-12-07 12:36:21 -03:00
Michael Niedermayer
37f31f4e50 avcodec/fitsdec: Use lrint()
Fixes: fate-fitsdec-bitpix-64

Possibly Fixes: -nan is outside the range of representable values of type 'unsigned short'
Possibly Fixes: 17769/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_FITS_fuzzer-5678314672357376

Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2019-12-05 20:20:05 +01:00
James Almer
94fd85d81d fate/matroska: add a test for xiph lacing
Signed-off-by: James Almer <jamrial@gmail.com>
2019-12-04 22:52:01 -03:00
James Almer
968c4cbf22 fate/cbs: add svc AV1 tests
Signed-off-by: James Almer <jamrial@gmail.com>
2019-12-02 14:45:02 -03:00
James Almer
637742b45d fate/cbs: add a decode model AV1 test
Signed-off-by: James Almer <jamrial@gmail.com>
2019-12-01 16:53:11 -03:00
James Almer
af7ab32b89 fate/cbs: add a switch frame AV1 test
Signed-off-by: James Almer <jamrial@gmail.com>
2019-12-01 16:53:11 -03:00
James Almer
0d67af34c2 fate/demux: add an AV1 Annex B test
Signed-off-by: James Almer <jamrial@gmail.com>
2019-11-29 18:58:42 -03:00
James Almer
13ed243594 fate/lavf-container: add an H264 mp4 remux test
This uses a raw h264 bitstream as source, in order to test the avcC
generation code.

Signed-off-by: James Almer <jamrial@gmail.com>
2019-11-29 18:24:01 -03:00
James Almer
de557eb191 fate/lavf-container: add an AV1 mp4 remux test
Signed-off-by: James Almer <jamrial@gmail.com>
2019-11-29 18:23:49 -03:00
James Almer
f18a5efb52 fate/cbs: add initial AV1 tests
Signed-off-by: James Almer <jamrial@gmail.com>
2019-11-19 14:49:03 -03:00
Michael Niedermayer
8d5f9daacd tests/ref/vsynth: add missing reference files, fix build 2019-11-13 23:34:56 +01:00
Baptiste Coudurier
a1403032c8 avcodec/dvenc: support encoding dvcprohd 2019-11-13 09:08:43 -08:00
Limin Wang
66ac7775f7 tests/fate/filter-video: add test for colorlevels
Signed-off-by: Limin Wang <lance.lmwang@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2019-11-11 14:51:09 +01:00
Limin Wang
78c0030f34 FATE: add a test for freeezedetect
Signed-off-by: Limin Wang <lance.lmwang@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2019-10-30 18:09:00 +01:00
Michael Niedermayer
0279e727e9 avcodec/cavsdec: Set ret on errors in decode_pic()
Fixes regression and fate failure on some machienes

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2019-10-17 13:17:18 +02:00
Michael Niedermayer
e7113704b2 avcodec/cavsdec: Check remaining bitstream in the main loop in decode_pic()
Fixes: Timeout (149sec ->1sec)
Fixes: 17311/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_CAVS_fuzzer-5679368642232320

Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2019-10-16 19:17:57 +02:00
Paul B Mahol
e831f60100 fate/source: add libavfilter/af_arnndn.c 2019-10-16 18:37:29 +02:00
Paul B Mahol
c109dfc1b1 avutil/opt: print runtime flag too 2019-10-14 11:28:54 +02:00
Matthieu Bouron
1921f866ec avformat/mov: parse sdtp atom and set the pkt disposable flag accordingly
Allows the creation of the sdtp atom while remuxing MP4 to MP4. This
atom is required by Apple devices (iPhone, Apple TV) in order to accept
2160p medias.
2019-10-12 14:36:15 +02:00
Paul B Mahol
1ac0d5513e fate: update hashes after ya16 change 2019-09-26 16:59:14 +02:00
Michael Niedermayer
f8406ab4b9 avcodec: add max_samples
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2019-09-25 17:18:37 +02:00
Anthony Delannoy
a221af1f5e avformat/mpegts: add support for EPG extraction from mpegts
Signed-off-by: Marton Balint <cus@passwd.hu>
2019-09-19 21:30:54 +02:00
Michael Niedermayer
b6b9ac5698 avcodec/vp56rac: delay signaling an error on truncated input
A threshold of 1 is sufficient for simple_dump_cut.webm, 10 is used
just to be sure the next truncated file doesnt cause the same issue

Obvious alternative fixes are to simply accept that the file is broken or to
write some advanced error concealment or to
simply accept that the decoder wont stop at the end of input.

Fixes: Ticket 8069 (artifacts not the differing md5 which was there before 1afd246960)
Fixes: simple_dump_cut.webm
Fixes: regression of 1afd246960

fate-vp5 changes because the last frame is truncated and now handled
differently.

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2019-09-11 22:36:33 +02:00
Calvin Walton
3ad5d4df9c lavfi/concat: allow to support inputs with different frame rates
Right now, the concat filter does not set the frame_rate value on any of
the out links. As a result, the default ffmpeg behaviour kicks in - to
copy the framerate from the first input to the outputs.

If a later input is higher framerate, this results in dropped frames; if
a later input is lower framerate it might cause judder.

This patch checks if all of the video inputs have the same framerate, and
if not it sets the out link to use '1/0' as the frame rate, the value
meaning "unknown/vfr".

A test is added to verify the VFR behaviour. The existing test for CFR
behaviour passes unchanged.
2019-09-08 16:48:28 +02:00
Gyan Doshi
2b66c757d6 fate: add test for stream_loop
Checks that seek to start indeed seeks to start.
2019-09-05 23:23:24 +05:30
Paul B Mahol
62459d6584 avfilter/vf_stereo3d: improve dubois anaglyphs 2019-08-30 22:41:07 +02:00
Michael Niedermayer
e0c973e5be avformat/mpsubdec: Remove floating point usage
This makes the code bitexact between platforms.
Intermediate timestamps between frames are preserved.
The timebase is simplified.
Rounding differs from doubles in cases where timestamps/durations
are "funny"

Suggested-by: jb
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2019-08-29 15:14:32 +02:00
Paul B Mahol
428b4aacb1 avformat/mov: improve timecode calculation
Fixes timecode calculation for NTSC frame rates.
Fixes ticket #5978.
2019-08-28 16:27:58 +02:00
James Almer
8b71cc3363 Revert "avcodec/qtrle: Do not output duplicated frames on insufficient input"
This reverts commit a9dacdeea6.

This patch effectively made the decoder output vfr content out of samples
where cfr is expected.

Addresses ticket #7880.

Signed-off-by: James Almer <jamrial@gmail.com>
2019-08-27 15:10:03 -03:00
Thilo Borgmann
1cfba7fc75 fate/als: Add test for conformance file with 512 channels. 2019-08-24 09:33:44 +02:00
Marton Balint
2fb550893f avformat/mpegtsenc: get rid of packet counting for sdt/pat/pmt
The packet counting based approach caused excessive sdt/pat/pmt for VBR, so
let's use a timestamp based approach instead similar to how we emit PCRs.
SDT/PAT/PMT period should be consistent for both VBR and CBR from now on.

Also change the type of sdt_period and pat_period to AV_OPT_TYPE_DURATION so no
floating point math is necessary.

Fixes ticket #3714.

Signed-off-by: Marton Balint <cus@passwd.hu>
2019-08-23 22:49:01 +02:00
Limin Wang
6a3bdf3148 fate: add accurate_rnd+bitexact sws_flags for fate-gifenc
This fixes make fate issue for frame thread scale in my local testing

Signed-off-by: Limin Wang <lance.lmwang@gmail.com>
Signed-off-by: Marton Balint <cus@passwd.hu>
2019-08-17 17:33:16 +02:00
Limin Wang
ad3ef00ce5 avfilter/f_select: yuv will use Y plane only for scenecut detect
At the moment scene change detection score uses all planes to detect scene
changes. In this regard this is similar how the frozen frames detection works.
However, in classic encoding scene change detection typically only uses the Y
plane.

We might get more resonable scores for scene change if we also use only
the Y plane for calculating the score if the pixel format is YUV. Although
this will require additional work once packed YUV formats are added,
because for the moment the generic scene sad score calculation has no way
to ignore some components in a packed format.

Signed-off-by: Limin Wang <lance.lmwang@gmail.com>
Signed-off-by: Marton Balint <cus@passwd.hu>
2019-08-17 17:15:19 +02:00
Zhong Li
8cd96e13ee fate: add a case for ticket #3229
Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Reviewed-by: Thilo Borgmann <thilo.borgmann@mail.de>
Signed-off-by: Zhong Li <zhong.li@intel.com>
2019-08-13 10:46:20 +08:00
Andreas Rheinhardt
b307d74fe6 compat/cuda: Change inclusion guards
cuda_runtime.h as well as dynlink_loader.h used nonstandard inclusion
guards with an AV_ prefix, although these files are not in an libav*/
path. So change the inclusion guards and adapt the ref file of the
source fate test accordingly.

Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
Signed-off-by: Timo Rothenpieler <timo@rothenpieler.org>
2019-08-05 12:07:09 +02:00
Steven Liu
46b97c0527 FATE: add hls single file mode test case
Signed-off-by: Steven Liu <lq@chinaffmpeg.org>
2019-08-01 19:25:29 +08:00
Paul B Mahol
cc6a1f1417 avcodec/adxenc: add EOF header
Fixes #8031.
2019-07-25 15:13:09 +01:00
Limin Wang
b696caba1a avformat/f_select: add support for more pixel formats for scene change score calculations
This avoids automatic conversions to rgb if scene change score is used in the expression.

Below is the tested results for the new added pixel format without autoscale to rgb24:
1. AV_PIX_FMT_YUVJ420P
time ./ffprobe -of compact=p=0 -show_entries frame=pkt_pts:frame_tags -bitexact -f lavfi \
"sws_flags=+accurate_rnd+bitexact;movie=../fate-suite/svq3/Vertical400kbit.sorenson3.mov,select=gt(scene\,.25)"

master:
pkt_pts=1620|tag:lavfi.scene_score=1.000000
pkt_pts=4140|tag:lavfi.scene_score=0.875036
pkt_pts=5800|tag:lavfi.scene_score=1.000000
pkt_pts=6720|tag:lavfi.scene_score=0.461625
pkt_pts=8160|tag:lavfi.scene_score=1.000000
pkt_pts=9760|tag:lavfi.scene_score=1.000000
pkt_pts=14080|tag:lavfi.scene_score=0.838916
pkt_pts=15700|tag:lavfi.scene_score=1.000000
pkt_pts=18500|tag:lavfi.scene_score=0.474948
pkt_pts=20040|tag:lavfi.scene_score=0.379700
pkt_pts=21760|tag:lavfi.scene_score=1.000000
./ffprobe -of compact=p=0 -show_entries frame=pkt_pts:frame_tags -bitexact -f  0.71s user 0.01s system 99% cpu 0.721 total

patch applied:
pkt_pts=1620|tag:lavfi.scene_score=1.000000
pkt_pts=4140|tag:lavfi.scene_score=0.668643
pkt_pts=5800|tag:lavfi.scene_score=0.996721
pkt_pts=6720|tag:lavfi.scene_score=0.357390
pkt_pts=8160|tag:lavfi.scene_score=0.886268
pkt_pts=9760|tag:lavfi.scene_score=0.926219
pkt_pts=14080|tag:lavfi.scene_score=0.650033
pkt_pts=15700|tag:lavfi.scene_score=1.000000
pkt_pts=18500|tag:lavfi.scene_score=0.316402
pkt_pts=20040|tag:lavfi.scene_score=0.269509
pkt_pts=21760|tag:lavfi.scene_score=1.000000
./ffprobe -of compact=p=0 -show_entries frame=pkt_pts:frame_tags -bitexact -f  0.19s user 0.01s system 81% cpu 0.240 total

2. AV_PIX_FMT_YUV420P
time ./ffprobe -of compact=p=0 -show_entries frame=pkt_pts:frame_tags -bitexact -f lavfi \
"sws_flags=+accurate_rnd+bitexact;movie=../Passengers_Breakfast_1080-sdr.mkv,select=gt(scene\,.2)"
master:
pkt_pts=3587|tag:lavfi.scene_score=0.462364
pkt_pts=4838|tag:lavfi.scene_score=0.419519
pkt_pts=6548|tag:lavfi.scene_score=0.397027
pkt_pts=9968|tag:lavfi.scene_score=0.419245
pkt_pts=12471|tag:lavfi.scene_score=0.413084
pkt_pts=16225|tag:lavfi.scene_score=0.506370
pkt_pts=19645|tag:lavfi.scene_score=0.507538
pkt_pts=22314|tag:lavfi.scene_score=0.504319
pkt_pts=24817|tag:lavfi.scene_score=0.417544
pkt_pts=25651|tag:lavfi.scene_score=0.413916
pkt_pts=26652|tag:lavfi.scene_score=0.487707
18.58s user 0.07s system 99% cpu 18.663 total

patch applied:
pkt_pts=3587|tag:lavfi.scene_score=0.272173
pkt_pts=4838|tag:lavfi.scene_score=0.247841
pkt_pts=6548|tag:lavfi.scene_score=0.233134
pkt_pts=9968|tag:lavfi.scene_score=0.247253
pkt_pts=12471|tag:lavfi.scene_score=0.244129
pkt_pts=16225|tag:lavfi.scene_score=0.302531
pkt_pts=19645|tag:lavfi.scene_score=0.303560
pkt_pts=22314|tag:lavfi.scene_score=0.301861
pkt_pts=24817|tag:lavfi.scene_score=0.249331
pkt_pts=25651|tag:lavfi.scene_score=0.247096
pkt_pts=26652|tag:lavfi.scene_score=0.287728
10.90s user 0.06s system 99% cpu 10.967 total

3. AV_PIX_FMT_YUV422P

time ./ffprobe -of compact=p=0 -show_entries frame=pkt_pts:frame_tags -bitexact -f lavfi \
"sws_flags=+accurate_rnd+bitexact;movie=../Passengers_Breakfast_1080-sdr.mkv,format=yuv422p,select=gt(scene\,.2)"
master:

patched applied:
pkt_pts=3587|tag:lavfi.scene_score=0.224017
pkt_pts=4838|tag:lavfi.scene_score=0.204225
pkt_pts=9968|tag:lavfi.scene_score=0.204636
pkt_pts=12471|tag:lavfi.scene_score=0.202772
pkt_pts=16225|tag:lavfi.scene_score=0.248765
pkt_pts=19645|tag:lavfi.scene_score=0.250144
pkt_pts=22314|tag:lavfi.scene_score=0.248802
pkt_pts=24817|tag:lavfi.scene_score=0.208362
pkt_pts=25651|tag:lavfi.scene_score=0.205777
pkt_pts=26652|tag:lavfi.scene_score=0.230742

4.  AV_PIX_FMT_YUV420P10
time ./ffprobe -of compact=p=0 -show_entries frame=pkt_pts:frame_tags -bitexact -f lavfi \
"sws_flags=+accurate_rnd+bitexact;movie=../Passengers_Breakfast_4k.mkv,select=gt(scene\,.2)"

master:
pkt_pts=3587|tag:lavfi.scene_score=0.269890
pkt_pts=4838|tag:lavfi.scene_score=0.248957
pkt_pts=6548|tag:lavfi.scene_score=0.234619
pkt_pts=9969|tag:lavfi.scene_score=0.224912
pkt_pts=12471|tag:lavfi.scene_score=0.225158
pkt_pts=16225|tag:lavfi.scene_score=0.289809
pkt_pts=19645|tag:lavfi.scene_score=0.285013
pkt_pts=22314|tag:lavfi.scene_score=0.280295
pkt_pts=24817|tag:lavfi.scene_score=0.206486
pkt_pts=25651|tag:lavfi.scene_score=0.208556
pkt_pts=26652|tag:lavfi.scene_score=0.249577
./ffprobe -of compact=p=0 -show_entries frame=pkt_pts:frame_tags -bitexact -f  76.03s user 0.22s system 99% cpu 1:16.27 total

patch applied
pkt_pts=3587|tag:lavfi.scene_score=0.269890
pkt_pts=4838|tag:lavfi.scene_score=0.248957
pkt_pts=6548|tag:lavfi.scene_score=0.234619
pkt_pts=9969|tag:lavfi.scene_score=0.224912
pkt_pts=12471|tag:lavfi.scene_score=0.225158
pkt_pts=16225|tag:lavfi.scene_score=0.289809
pkt_pts=19645|tag:lavfi.scene_score=0.285013
pkt_pts=22314|tag:lavfi.scene_score=0.280295
pkt_pts=24817|tag:lavfi.scene_score=0.206486
pkt_pts=25651|tag:lavfi.scene_score=0.208556
pkt_pts=26652|tag:lavfi.scene_score=0.249577
./ffprobe -of compact=p=0 -show_entries frame=pkt_pts:frame_tags -bitexact -f  50.27s user 0.20s system 99% cpu 50.476 total

5. AV_PIX_FMT_RGBA, AV_PIX_FMT_ABGR, AV_PIX_FMT_BGRA, AV_PIX_FMT_GRAY8
are tested by format= with the fate sample: Vertical400kbit.sorenson3.mov like below:
time ./ffprobe -of compact=p=0 -show_entries frame=pkt_pts:frame_tags -bitexact -f lavfi \
"sws_flags=+accurate_rnd+bitexact;movie=../fate-suite/svq3/Vertical400kbit.sorenson3.mov,format=rgba,select=gt(scene\,.25)"

patch applied:
pkt_pts=1620|tag:lavfi.scene_score=1.000000
pkt_pts=4140|tag:lavfi.scene_score=0.656277
pkt_pts=5800|tag:lavfi.scene_score=1.000000
pkt_pts=6720|tag:lavfi.scene_score=0.346218
pkt_pts=8160|tag:lavfi.scene_score=0.987686
pkt_pts=9760|tag:lavfi.scene_score=1.000000
pkt_pts=14080|tag:lavfi.scene_score=0.629187
pkt_pts=15700|tag:lavfi.scene_score=1.000000
pkt_pts=18500|tag:lavfi.scene_score=0.356211
pkt_pts=20040|tag:lavfi.scene_score=0.284775
pkt_pts=21760|tag:lavfi.scene_score=1.000000

6. AV_PIX_FMT_YUVJ422P
time ./ffprobe -of compact=p=0 -show_entries frame=pkt_pts:frame_tags -bitexact -f lavfi \
"sws_flags=+accurate_rnd+bitexact;movie=../fate-suite/svq3/Vertical400kbit.sorenson3.mov,format=yuvj422p,select=gt(scene\,.25)"

patch applied:
pkt_pts=1620|tag:lavfi.scene_score=0.838281
pkt_pts=4140|tag:lavfi.scene_score=0.541382
pkt_pts=5800|tag:lavfi.scene_score=0.780588
pkt_pts=6720|tag:lavfi.scene_score=0.298274
pkt_pts=8160|tag:lavfi.scene_score=0.699106
pkt_pts=9760|tag:lavfi.scene_score=0.730136
pkt_pts=14080|tag:lavfi.scene_score=0.537742
pkt_pts=15700|tag:lavfi.scene_score=0.811946
pkt_pts=18500|tag:lavfi.scene_score=0.263382
pkt_pts=21760|tag:lavfi.scene_score=0.880773

Reviewed-by: Marton Balint <cus@passwd.hu>
Signed-off-by: Limin Wang <lance.lmwang@gmail.com>
2019-07-22 22:54:51 +02:00
Limin Wang
d75c7dd45e fate: change the scenecut fate threshold
why change .4 to .25, it's for:
one scenecut(pkt_pts=20040) isn't detected by 0.4 threshold

why not change to 0.3 instead of 0.25:
it will miss the scenecut(pkt_pts=20040) after applying the next
patch which enables yuvj420

for fate testing, it's better to catch all scenecut scenes.

Reviewed-by: Marton Balint <cus@passwd.hu>
Signed-off-by: Limin Wang <lance.lmwang@gmail.com>
2019-07-22 22:54:51 +02:00
Steven Liu
ac22835db9 fate: add hls fmp4 segment type test case
Tested-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: Steven Liu <lq@chinaffmpeg.org>
2019-07-15 21:57:43 +08:00
Marton Balint
397abca001 avformat/movenc: use unspecified language by default
English was used before.

Signed-off-by: Marton Balint <cus@passwd.hu>
2019-07-12 20:26:38 +02:00
Steven Liu
af9dc02e6b fate: add hls_list_size fate test case
Signed-off-by: Steven Liu <lq@chinaffmpeg.org>
2019-07-11 09:39:44 +08:00
Steven Liu
89ea0c9bfd fate: add hls_init_time option fate
Signed-off-by: Steven Liu <lq@chinaffmpeg.org>
2019-07-11 09:37:29 +08:00
Peter Ross
f4c35a458f fate: add VP4 test 2019-06-12 20:06:20 +10:00
Michael Niedermayer
640e401aed tests/ref/fate/nuv-rtjpeg: Preserve the original timestamps
The tests previously rounded the timestamps. Its better in a fate test to preserve
the data from the demuxer and decoder.

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2019-06-12 12:01:32 +02:00
Andreas Rheinhardt
8b2140de63 avutil: Add missing reference files for pixdesc fate test
Commit cd48318035 added support for NV24 and NV42, including several
fate tests for these formats, but did not include the reference files
for the tests filter-pixdesc-nv24 and filter-pixdesc-nv42. As a result,
these two tests were broken.

Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2019-05-14 12:06:26 +02:00
Philip Langdale
4fa4f1d7a9 swscale: Add test for isSemiPlanarYUV to pixdesc_query
Lauri had asked me what the semi planar formats were and that reminded
me that we could add it to pixdesc_query so we know exactly what the
list is.
2019-05-12 07:51:02 -07:00
Philip Langdale
cd48318035 swscale: Add support for NV24 and NV42
The implementation is pretty straight-forward. Most of the existing
NV12 codepaths work regardless of subsampling and are re-used as is.
Where necessary I wrote the slightly different NV24 versions.

Finally, the one thing that confused me for a long time was the
asm specific x86 path that did an explicit exclusion check for NV12.
I replaced that with a semi-planar check and also updated the
equivalent PPC code, which Lauri kindly checked.
2019-05-12 07:51:02 -07:00
Philip Langdale
5de4f1d871 avutil: Add NV24 and NV42 pixel formats
These are the 4:4:4 variants of the semi-planar NV12/NV21 formats.

These formats are not used much, so we've never had a reason to add
them until now. VDPAU recently added support HEVC 4:4:4 content
and when you use the OpenGL interop, the returned surfaces are in
NV24 format, so we need the pixel format for media players, even
if there's no direct use within ffmpeg.

Separately, there are apparently webcams that use NV24, but I've
never seen one.
2019-05-12 07:51:02 -07:00
Andreas Rheinhardt
0b61ddb576 avformat/matroskaenc: Don't waste bytes writing level 1 elements
Up until now, the length field of most level 1 elements has been written
using eight bytes, although it is known in advance how much space the
content of said elements will take up so that it would be possible to
determine the minimal amount of bytes for the length field. This
commit changes this.

Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
Signed-off-by: James Almer <jamrial@gmail.com>
2019-05-08 13:02:30 -03:00
Andreas Rheinhardt
add68dcca9 avformat/matroskaenc: Write CRC-32 in non-seekable mode
Given that in both the seekable as well as the non-seekable mode dynamic
buffers are used to write level 1 elements and that now no seeks are
used in the seekable case any more, the two modes can be combined; as a
consequence, the non-seekable mode automatically inherits the ability to
write CRC-32 elements.

There are no differences in case the output is seekable; when it is not
and writing CRC-32 elements is disabled, there can still be minor
differences because before this commit, the EBML ID and length field
were counted towards the cluster size limit; now they no longer are.

Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
Signed-off-by: James Almer <jamrial@gmail.com>
2019-05-08 13:02:30 -03:00
Andreas Rheinhardt
4e6df068b5 avformat/matroskaenc: Don't waste bytes in EBML Header
Up until now the EBML Header length field has been written with eight
bytes, although the EBML Header is always so small that only one byte
is needed for it. This patch saves seven bytes for every Matroska/Webm
file.

Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
Signed-off-by: James Almer <jamrial@gmail.com>
2019-05-08 13:02:29 -03:00
Jun Zhao
8d3630c540 lavf/oggparsevorbis: Fix change the case of metadata keys issue
The spec in https://xiph.org/vorbis/doc/v-comment.html states that
the metadata keys are case-insensitive, so don't change the case
and update the fate test case.

Fix #7784

Reviewed-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
Signed-off-by: Jun Zhao <barryjzhao@tencent.com>
2019-04-22 23:24:42 +08:00
Steven Liu
608d5fd8b6 add tests/ref/fate/hls-segment-size for the fate test
Signed-off-by: Steven Liu <lq@chinaffmpeg.org>
2019-04-19 06:14:03 +08:00
Marton Balint
f9840cd2b5 avformat/mxfdec: use operational_pattern_ul instead of operational_pattern for metadata
This makes it more consistent with other metadata keys.

Signed-off-by: Marton Balint <cus@passwd.hu>
2019-04-14 21:54:35 +02:00
Marton Balint
6ed7df5b20 avformat/mxfdec: export operational pattern UL as file metadata
Can be useful for API users as ffmpeg/libavformat can't properly support some
operational patterns.

Signed-off-by: Marton Balint <cus@passwd.hu>
2019-04-11 21:17:57 +02:00
Derek Buitenhuis
772c73e61f FATE: Add test for HEVC files that claim to have two first slices
This makes sure we don't regress on 70c8c8a818.

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2019-04-05 14:16:52 +01:00
Gyan Doshi
8161ac2902 lavf/movenc: fix tmcd writing for non-MP4/MOV modes
write_tmcd allows tmcd track to be created with any mode but in
mov_write_header, index for first tmcd track is only set for modes
MP4 or MOV, causing a crash if tmcd creation is attempted with other
modes.
2019-04-03 15:50:22 +05:30
James Almer
85649b6523 fate/lavf-image: fix passed arguments for some high bit depth tests
Should fix fate failures on big endian targets.

Signed-off-by: James Almer <jamrial@gmail.com>
2019-03-14 17:15:28 -03:00
James Almer
ac4b5d8622 Merge commit 'f8df5e2f31a5ba7b30a0e1caaaf5a03c753b3f9b'
* commit 'f8df5e2f31a5ba7b30a0e1caaaf5a03c753b3f9b':
  tests: Add a convenience function for video-only lavf tests

Merged-by: James Almer <jamrial@gmail.com>
2019-03-14 14:59:45 -03:00
James Almer
a200bf8094 tests: Convert lavf container tests with samples to non-legacy test scripts 2019-03-14 14:37:44 -03:00
James Almer
fda424b300 Merge commit '618d02c1fa9e74d490cace64a7d15762656b521c'
* commit '618d02c1fa9e74d490cace64a7d15762656b521c':
  tests: Convert lavf container tests to non-legacy test scripts

Merged-by: James Almer <jamrial@gmail.com>
2019-03-14 14:36:24 -03:00
James Almer
ace96d2e69 Merge commit '896fe15dbb7b78de495c4a7dd75e7faec66778da'
* commit '896fe15dbb7b78de495c4a7dd75e7faec66778da':
  tests: Convert lavf pixfmt conversion tests to non-legacy test scripts

Merged-by: James Almer <jamrial@gmail.com>
2019-03-14 14:31:48 -03:00
James Almer
c2631dfd0a Merge commit 'a957e9379d11f2982d615f92c30580a57ea8bb40'
* commit 'a957e9379d11f2982d615f92c30580a57ea8bb40':
  tests: Convert lavf image tests to non-legacy test scripts

Merged-by: James Almer <jamrial@gmail.com>
2019-03-14 14:30:08 -03:00
James Almer
29929fc8e2 Merge commit 'eb8a8115994434b548523cf0bca6a4a74784e79c'
* commit 'eb8a8115994434b548523cf0bca6a4a74784e79c':
  tests: Convert audio-only lavf tests to non-legacy test scripts

Merged-by: James Almer <jamrial@gmail.com>
2019-03-14 14:19:03 -03:00
James Almer
d0c43e3242 Merge commit 'a70eac7a9b193e8434b5bed90bd72aa4cb688363'
* commit 'a70eac7a9b193e8434b5bed90bd72aa4cb688363':
  tests: Convert image2pipe tests to non-legacy test scripts

Merged-by: James Almer <jamrial@gmail.com>
2019-03-14 14:15:46 -03:00
Mark Reid
7ff89574c7 fate/mxf: add mxf user comments tests
Reviewed-by: Tomas Härdin <tjoppen@acc.umu.se>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2019-03-13 12:39:51 +01:00
James Almer
bad70b7af6 Merge commit 'dad5fd59f3d6a8311365314cfcde0ebcd15c2b01'
* commit 'dad5fd59f3d6a8311365314cfcde0ebcd15c2b01':
  tests: Enable CRC test for yuv4mpeg

Merged-by: James Almer <jamrial@gmail.com>
2019-03-10 22:22:50 -03:00
Martin Vignali
26cf50404d avcodec/proresenc_aw : fix interlace encoding for unsafe height
fix the call of the unsafe version of slice encoding in interlace mode
fix padding line count in sub image with fill in interlace mode
2019-03-09 20:46:50 +01:00
Martin Vignali
9cb576fc1e fate/qtrle : change 32b test to output bgra instead of rgb24 2019-03-04 13:03:34 +01:00
Martin Vignali
b38dd2d219 fate/proresenc_aw : add test for interlace and 444 encoding 2019-02-27 17:59:53 +01:00
Adam Sampson
bfa33f548d lavf/jacosubdec: compute subtitle duration correctly
When a JACOsub subtitle has two timestamps, they represent its start and
end times (http://unicorn.us.com/jacosub/jscripts.html#l_times); the
duration is the difference between the two, not the sum of the two.

The subtitle end times in the FATE test for this were wrong as a result;
fix them too. (This test is based on JACOsub's demo.txt, and the end
time computed for the last line using @ now matches what the comments
there say it should be.)

Also tested in practice using MPV, a LaserDisc, and some authentic 1993
JACOsub files.

Signed-off-by: Adam Sampson <ats@offog.org>
Reviewed-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2019-02-20 21:15:07 +01:00
Tomas Härdin
abc5ac3cf5 palettegen: Fill with last color, not black
If we fill with black then the generated palette will have one color more
than what the user requested. This also resulted in unwanted black specks in
the output of paletteuse, especially when generating small palettes.
2019-02-19 21:29:03 +01:00
Diego Biurrun
f8df5e2f31 tests: Add a convenience function for video-only lavf tests
Rename a test in the process for consistency and simplicity and
remove the remnants of the now-unused lavf regression test scripts.
2019-02-16 18:15:55 +01:00
Diego Biurrun
618d02c1fa tests: Convert lavf container tests to non-legacy test scripts
Rename some tests in the process for consistency and simplicity.
2019-02-16 18:15:46 +01:00
Diego Biurrun
896fe15dbb tests: Convert lavf pixfmt conversion tests to non-legacy test scripts
Also split monolithic lavf-pixfmt test into individual tests.
2019-02-16 18:15:38 +01:00
Diego Biurrun
a957e9379d tests: Convert lavf image tests to non-legacy test scripts
Rename some tests in the process for consistency and simplicity.
2019-02-16 18:15:30 +01:00
Diego Biurrun
eb8a811599 tests: Convert audio-only lavf tests to non-legacy test scripts
Rename some tests in the process for consistency and simplicity.
2019-02-16 18:15:22 +01:00
Diego Biurrun
a70eac7a9b tests: Convert image2pipe tests to non-legacy test scripts 2019-02-16 18:15:11 +01:00
Diego Biurrun
dad5fd59f3 tests: Enable CRC test for yuv4mpeg 2019-02-16 13:09:35 +01:00
Timo Rothenpieler
15c6390139 avutil/cuda_check: avoid pointlessly exporting same symbol from two libraries 2019-02-14 13:21:07 +01:00
Michael Niedermayer
5bcefceec8 avcodec: Add discard_sample_percentage
Suggested-by: BBB
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2019-01-28 01:09:38 +01:00
Peter Ross
d8ebfd1bdf avcodec/vp6: select idct based (loosely) on number of coefficients decoded
The VP3/4/5/6 reference decoders all use three IDCT versions: one for the
DC-only case, another for blocks with more than 10 coefficients, and an
optimised one for blocks with up to 10 AC coefficents. VP6 relies on the
sparse 10 coefficient version, and without it, IDCT drift occurs.

Fixes: https://trac.ffmpeg.org/ticket/1282

Signed-off-by: Peter Ross <pross@xvid.org>
2019-01-26 23:49:09 +11:00
Peter Ross
160ebe0a8d avcodec/vp6: use ff_vp3dsp_[hv]_loop_filter_12
Partially fixes: https://trac.ffmpeg.org/ticket/1282

Signed-off-by: Peter Ross <pross@xvid.org>
2019-01-26 23:49:04 +11:00
Peter Ross
10a57f55e6 avcodec/vp6: use rounded shift for chroma motion vector calculation
Partially fixes: https://trac.ffmpeg.org/ticket/1282

Signed-off-by: Peter Ross <pross@xvid.org>
2019-01-26 23:48:59 +11:00
Jun Zhao
90c4534206 lavc/options_table: Change some options location in opt table.
Change the some options location in avcodec_options to make code more
readable. And update the fate test with this change.

Signed-off-by: Jun Zhao <mypopydev@gmail.com>
2018-12-20 18:40:41 +08:00
Paul B Mahol
6f058b5cef avformat/nut: add support for yuva444/422p12 pixel format 2018-12-14 11:26:30 +01:00
Paul B Mahol
ec8502f9cb avcodec/gif: use avctx->frame_number 2018-12-13 19:30:39 +01:00
Paul B Mahol
faca28c264 avcodec: rewrite gif muxing and encoding
Now "-c copy" works.
Update FATE files.

Demuxer only split file into packets, no data is trimmed.
Encoder & muxer currently expect completely another format
where muxer writes stuff like disposal method which should
be really encoder job.
With this patch muxer only modifies delay between two packets.
Codec copy need to have same behavior between demuxer and
muxer to work correctly.

Fixes #6640.
2018-12-13 18:58:48 +01:00
Paul B Mahol
3d8d8c7199 avcodec/r210: use correct pixel format 2018-12-03 17:17:42 +01:00
Carl Eugen Hoyos
3c7a2a0b92 tests/ref/fate/vc1test_smm0005: Add a newline.
Fixes fate-pixelutils on aix.
2018-12-02 14:17:53 +01:00
Martin Vignali
ffafa53dbf avcodec/proresdec : add 12b decoding
based on patch by Kieran Kunhya

ticket 7163
2018-12-02 12:55:57 +01:00
Peter Ross
dea1224754 additional math.h functions for djgpp 2018-11-28 22:16:07 +11:00
Martin Vignali
e488d7b4f5 fate/prores-metadata : make output bit exact 2018-11-25 22:21:20 +01:00
Martin Vignali
86e6f0dbc7 swscale : add support for YUVA444P12 and YUVA422P12 2018-11-24 16:24:47 +01:00
Martin Vignali
80b0624099 avutil : add YUVA444P12 and YUVA422P12 2018-11-24 16:24:43 +01:00
Paul B Mahol
97d1ee437b avformat/movenc: get number of written bytes from bitstream writer
Update fate test.
2018-11-22 21:32:41 +01:00
Philip Langdale
420ab946ac avutil/cuda_check: Make sure this passes make fate-source
The header guards were unnecessarily non-standard and the c file
inclusion trick means the files dont't have standard licence
headers.

Based on a patch by: Martin Vignali <martin.vignali@gmail.com>
2018-11-17 08:18:51 -08:00
Jun Zhao
991cd79155 fate: Add test for vc1test demuxer
Signed-off-by: Jun Zhao <mypopydev@gmail.com>
2018-11-12 19:13:36 +08:00
Martin Vignali
752bf1f64c fate/prores_metadata : fix md5 value 2018-11-11 21:43:50 +01:00
Martin Vignali
679ad31469 fate/prores_metadata_bsf : add test for setting color property 2018-11-11 21:06:38 +01:00
Mark Thompson
252e79663d cbs_h265: Add PTL parsing for sublayers
With fate test using the SLPPLP_A_VIDYO_2 conformance file, which contains
two sublayers with full PTL information.
2018-11-11 17:22:09 +00:00
Carl Eugen Hoyos
f149a4a5fc swscale: Add GRAY10
Based on ab839054 by Luca Barbato.

Signed-off-by: James Almer <jamrial@gmail.com>
2018-11-06 12:39:15 -03:00
Michael Niedermayer
cd34c6a57e avfilter/vf_pixdesctest: Use 32bit read/write
This is needed for processing 32bit floats

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2018-10-27 22:39:27 +02:00
Michael Niedermayer
718044dc19 avutil/pixdesc: Add av_write_image_line2(), av_read_image_line2()
This is needed because of 32bit float formats (which are difficult to
store in 16bits)

This also fixes undefined behavior found by fate

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2018-10-27 22:39:27 +02:00
Josh de Kock
fb7925ba2f fate: add api-h264-slice test
This test ensures that you are able to send N number of slice NALUs in slice threaded mode to be decoded simultaneously
2018-10-26 11:51:04 +01:00
Josh de Kock
3f2103ec73 fate: add h264 timecode test 2018-10-23 15:46:30 +01:00
Martin Vignali
db4771af81 swscale : add YA16 LE/BE output 2018-10-18 21:43:24 +02:00
Martin Vignali
e832d769f4 avcodec/proresenc_aw : use for frame flag in the header the same value than the official encoder 2018-10-18 21:39:06 +02:00
Martin Vignali
cea5e90bde avcodec/proresenc_aw : use qp close to the official encoder 2018-10-18 21:38:48 +02:00
Martin Vignali
1a45b12cdc avcodec/proresenc_aw : use AVframe primaries, transfert, colorspace for frame header instead of default (unknown, unknown, Rec601)
avoid color shift, on some decoding software
2018-10-18 21:38:44 +02:00
Michael Niedermayer
fa7289e718 fate: Update checksums for recent mxf changes
References: bb89109a0a, 84e8a87ca0, ea55a11ced, 3d38e45eb8

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2018-10-14 13:06:32 +02:00
Baptiste Coudurier
bb89109a0a avformat/mxfenc: correctly set content package rate in system element 2018-10-12 12:27:58 -07:00
Baptiste Coudurier
84e8a87ca0 avformat/mxfenc: update body partition with footer offset 2018-10-12 12:27:43 -07:00
Baptiste Coudurier
ea55a11ced avformat/mxfenc: add mpeg-2 specific metadata, fix compatibility with sony content browser 2018-10-12 12:26:01 -07:00
Baptiste Coudurier
3d38e45eb8 avformat/mxfenc: write index delta entry array needed by sony vegas pro 11 2018-10-12 12:15:38 -07:00
Marton Balint
416804fe41 avutil/tests/parseutils: add some big duration tests
Signed-off-by: Marton Balint <cus@passwd.hu>
2018-10-07 20:26:29 +02:00
Paul B Mahol
d6e50e0716 avfilter/vf_curves: add planar rgb support 2018-09-25 16:35:29 +02:00
Paul B Mahol
009597ca33 avcodec: add native iLBC decoder
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2018-09-23 15:25:50 +02:00
Paul B Mahol
df05fd3131 avcodec/loco: switch to planar rgb format
Remove now unused step variable.
2018-09-10 15:16:07 +02:00
Paul B Mahol
404d21f486 tests/fate: fix lut hash for gray14 2018-09-09 22:58:26 +02:00
Paul B Mahol
b2ffecbd0c avcodec/lagarith: switch to planar rgb
Speed goes from 363 fps to 428 fps for 640x480 video.
2018-09-09 22:58:26 +02:00
Derek Buitenhuis
f55d987bad Add FATE test for QT format audio descriptors in MP4
Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2018-09-09 19:55:08 +01:00
Paul B Mahol
bd6c57d532 avfilter: add support for gray14 format 2018-09-09 19:10:44 +02:00
James Almer
70a708713a fate: fix hapqa-extract-nosnappy tests on small builds
Fixes ticket #7324

Signed-off-by: James Almer <jamrial@gmail.com>
2018-09-06 19:24:14 -03:00
Tobias Rapp
56f68a099c fate: add 10-bit test for hue video filter
Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: Tobias Rapp <t.rapp@noa-archive.com>
2018-08-31 13:57:49 +02:00
Carl Eugen Hoyos
cffbeda462 tests/ref/fate/pixelutils: Add a newline.
Fixes fate-pixelutils on aix.
2018-08-31 00:45:36 +02:00
Jan Ekström
1931761f18 avformat/movenc: implicitly enable negative CTS offsets for ismv
ISMV lacks any sort of edit list support, as well as tfxd is
effectively the PTS of the fragment for most intents and purposes.

Thus, if b-frames are requested without negative CTS offsets you
end up with N frames' worth of delay (tfxd PTS plus the CTS offset
of the first sample). Negative CTS offsets enable the first sample
to have CTS=DTS, and thus a/v desync due to b-frame reorder delay
is avoided.
2018-08-24 21:00:05 +03:00
Zhao Zhili
70d2bab80b lavc/hevc_ps: fix crop info for monochrome
The values of SubWidthC and SubHeightC are 1 in the ITU-T H.265. The
current code use the value of 2.

Signed-off-by: James Almer <jamrial@gmail.com>
2018-08-22 14:01:12 -03:00
Baptiste Coudurier
b8351ea0c3 avformat/audiointerleave: pad last audio frame 2018-08-21 11:50:06 -07:00
Sergey Lavrushkin
582bc5a348 libswscale: Adds conversions from/to float gray format.
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2018-08-14 18:22:39 +02:00
Sergey Lavrushkin
00ae3498bf libavutil: Adds gray floating-point pixel formats.
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2018-08-11 02:37:42 +02:00
Sasi Inguva
12673bb253 lavf/mov.c: Set start_time for all streams (in case of edit lists).
Fixes vorbis mp4 audio files, with edit list specified. Since
st->skip_samples is not set in case of vorbis , ffmpeg computes the
start_time as negative.

Signed-off-by: Sasi Inguva <isasi@google.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2018-08-11 02:37:42 +02:00
Jun Zhao
b8bf7408dc lavutil/pixelutils: add sad_32x32 in pixelutils API.
add sad_32x32 in pixelutils API, and update the fate.

Signed-off-by: Jun Zhao <mypopydev@gmail.com>
2018-07-31 19:09:35 +08:00
Tobias Rapp
ec517ad9f9 fate: add tests for audio channel up-/downmixing with pan filter
Add tests for upmixing and downmixing with audio channel counts that
have a corresponding default layout and also tests where there is no
default layout.

Update the existing "stereo4" test so it actually outputs stereo like
the other stereo tests. Rename the previous "stereo4" test into
"upmix1".

Reviewed-by: Nicolas George <george@nsup.org>
Signed-off-by: Tobias Rapp <t.rapp@noa-archive.com>
2018-07-30 10:46:19 +02:00
James Almer
7ca892b7e5 fate: remove unnecessary reference file for fate-encryption-info
Signed-off-by: James Almer <jamrial@gmail.com>
2018-07-27 13:06:29 -03:00
Michael Niedermayer
d2015e6b86 avcodec/tscc: Do not duplicate images
This improves speed

Fixes: Timeout
Fixes: 9010/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_TSCC_fuzzer-6042614817095680

Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2018-07-23 02:58:38 +02:00
James Darnley
088b07427d fate: add more vc2 encoder tests 2018-07-18 11:32:20 +02:00
Gyan Doshi
8aa6d9a8d3 avformat/mov: only set handler_name from mdia->hdlr
6 FATE references updated.

Fixes #7104
2018-07-16 21:33:01 +05:30
Michael Niedermayer
bcc0ae5d5a tests/fate/demux: Add test for d25c945247
Sample provided by Thierry for fate

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2018-07-07 12:09:34 +02:00
Jacob Trimble
69bd73b3ff libavutil/encryption_info: Add unit tests.
Signed-off-by: Jacob Trimble <modmaker@google.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2018-06-27 13:43:39 +02:00
Steven Liu
387464bea5 from RTCTIME to N*23, step is 23
fix ticket: 7225

Signed-off-by: Steven Liu <lq@chinaffmpeg.org>
2018-06-25 14:06:45 +08:00
Gyan Doshi
830695be36 avformat/movenc: read track title from correct key
da9cc22d5b allowed the MOV muxer to relay a custom stream handler name,
whether populated from the input stream or user-set. However, the entry
key didn't match the key set by the MOV demuxer, so it wasn't
effective. Fixed.

Due to the change, four FATE refs have to be updated. Verified that the
target payload of the tests hasn't changed in terms of CRC.
2018-06-19 11:05:57 +05:30
Sasi Inguva
fe6c4f0c47 lavf/mov.c: Set st->start_time for video streams explicitly.
If start_time is not set, ffmpeg takes the duration from the global
movie instead of the per stream duration.
Signed-off-by: Sasi Inguva <isasi@google.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2018-06-06 01:53:30 +02:00
Michael Niedermayer
a9dacdeea6 avcodec/qtrle: Do not output duplicated frames on insufficient input
This improves performance and makes qtrle behave more similar to other decoders.
Libavcodec does generally not output known duplicated frames, instead the calling Application
can insert them as it needs.

Fixes: Timeout
Fixes: 6383/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_QTRLE_fuzzer-6199846902956032

Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2018-05-30 02:42:10 +02:00
Aman Gupta
16b4f97b72 avformat/mpegts: add merge_pmt_versions option
This new optional flag makes it easier to deal with mpegts
samples where the PMT is updated and elementary streams move
to different PIDs in the middle of playback.

Previously, new AVStreams were created per PID, and it was up
to the user to figure out which streams had migrated to a new PID
(by iterating over the list of AVProgram and making guesses), and
switch seamlessly to the new AVStream during playback.

Transcoding or remuxing these streams with ffmpeg on the CLI was
also quite painful, and the user would need to extract each set
of PIDs into a separate file and then stitch them back together.

With this new option, the mpegts demuxer will automatically detect
PMT changes and feed data from the new PID to the original AVStream
that was created for the orignal PID. For mpegts samples with
stream_identifier_descriptor available, the unique ID is used to
merge PIDs together. If the stream id is not available, the demuxer
attempts to map PIDs based on their position within the PMT.

With this change, I am able to playback and transcode/remux these
two samples which previously caused issues:

    https://tmm1.s3.amazonaws.com/pmt-version-change.ts
    https://kuroko.fushizen.eu/videos/pid_switch_sample.ts

I also have another longer sample in which the PMT changes
repeatedly and ES streams move to different pids three times
during playback:

    https://tmm1.s3.amazonaws.com/multiple-pmt-change.ts

Demuxing this sample with the new option shows several new log
messages as the PMT changes are handled:

    [mpegts] detected PMT change (program=1, version=3/6, pcr_pid=0xf98/0xfb7)
    [mpegts] re-using existing video stream 0 (pid=0xf98) for new pid=0xfb7
    [mpegts] re-using existing audio stream 1 (pid=0xf99) for new pid=0xfb8
    [mpegts] re-using existing audio stream 2 (pid=0xf9a) for new pid=0xfb9
    [mpegts] detected PMT change (program=1, version=6/3, pcr_pid=0xfb7/0xf98)
    [mpegts] detected PMT change (program=1, version=3/4, pcr_pid=0xf98/0xf9b)
    [mpegts] re-using existing video stream 0 (pid=0xf98) for new pid=0xf9b
    [mpegts] re-using existing audio stream 1 (pid=0xf99) for new pid=0xf9c
    [mpegts] re-using existing audio stream 2 (pid=0xf9a) for new pid=0xf9d
    [mpegts] detected PMT change (program=1, version=4/5, pcr_pid=0xf9b/0xfa9)
    [mpegts] re-using existing video stream 0 (pid=0xf98) for new pid=0xfa9
    [mpegts] re-using existing audio stream 1 (pid=0xf99) for new pid=0xfaa
    [mpegts] re-using existing audio stream 2 (pid=0xf9a) for new pid=0xfab
    [mpegts] detected PMT change (program=1, version=5/6, pcr_pid=0xfa9/0xfb7)

Signed-off-by: Aman Gupta <aman@tmm1.net>
2018-05-18 19:00:29 -07:00
Tobias Rapp
eb28b5ec8a avfilter/vsrc_testsrc: add pal75bars and pal100bars video filter sources
Generates color bar test patterns based on EBU PAL recommendations.

Reviewed-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Tobias Rapp <t.rapp@noa-archive.com>
2018-05-18 15:39:54 +02:00
Marton Balint
50d6b7bd83 avcodec/xwddec: fix palette alpha
Signed-off-by: Marton Balint <cus@passwd.hu>
2018-05-16 22:34:27 +02:00
Michael Niedermayer
d628caf54f avformat/mxfenc: Add Sample width/height/x offset/y offset, Display x offset and F2 offset
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2018-05-12 01:08:01 +02:00
Tobias Rapp
66ba303c53 fate: add more tests for hue video filter
Adds tests for the hue angle and brightness filter parameters.
Renames the existing saturation parameter test for consistency.

Signed-off-by: Tobias Rapp <t.rapp@noa-archive.com>
2018-05-11 09:16:08 +02:00
Mark Thompson
f995aa82d8 fate/cbs: Add an SEI test
The artificial sample file sei-1.h264 contains five frames (IDR P B I B)
and the following SEI message types:
* Buffering period
* Picture timing
* Pan-scan rectangle (display as 4:3)
* User data registered, containing A/53 closed captions (captions match
  frame content, including reordering)
* Recovery point (at the I frame)
* Display orientation (identity transformation)
* Mastering display (with arbitrary contents)
* Undefined SEI type 1234 (containing ascending bytes)
2018-05-10 23:54:02 +01:00
Michael Niedermayer
293a6e8332 avformat/mxfenc: Write transfer characteristic
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2018-05-08 23:02:58 +02:00
Michael Niedermayer
c35ca7e01c avformat/mxfenc: Add Stored F2 Offset / Image Start/End Offset for D10
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2018-05-08 23:02:58 +02:00
Michael Niedermayer
530ac1e50b avformat/mxfenc: Write Audio Ref Level for D10
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2018-05-08 23:02:58 +02:00
Michael Niedermayer
1246754c80 avformat/mxfenc: Add Padding Bits
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2018-05-08 23:02:58 +02:00
Michael Niedermayer
6d0339096e avformat/mxfenc: add white/black ref /color range
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2018-05-08 23:02:58 +02:00
Michael Niedermayer
2bee43b67d avformat/mxfenc: Add vertical subsampling support
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2018-05-08 23:02:58 +02:00
Michael Niedermayer
1b6c89ca8d avformat/mxfenc: Add object model version
Other tools (XFConvert at least) write this as well.

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2018-05-08 23:02:58 +02:00
Michael Niedermayer
86c9250923 avformat/mxfenc: Add Product Version, Toolkit version and Platform
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2018-05-08 23:02:58 +02:00
Michael Niedermayer
3ba1bbb4f9 avformat/mxfenc: Bump minor versions for S377-1-2009
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2018-05-08 23:02:58 +02:00
Michael Niedermayer
5c70513418 avformat/mxfenc: Correct KAG alignment of preface
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2018-05-08 23:02:58 +02:00
James Almer
08032331ac fate: update fate-sws-pixdesc-query reference file
Signed-off-by: James Almer <jamrial@gmail.com>
2018-05-05 19:20:38 -03:00
Paul B Mahol
a26367493c fate: update pad pixfmt test
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2018-05-05 22:05:07 +02:00
Paul B Mahol
b9dd058f7a swscale: add gray14 support
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2018-05-05 21:35:31 +02:00
Paul B Mahol
f43fd68f28 avfilter/drawutils: add support for full range
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2018-05-03 21:43:57 +02:00
Paul B Mahol
5abcf45d75 avformat/yuv4mpegdec: simplify math
This one actually works with hd1080 y4m files when seeking backwards.

Signed-off-by: Paul B Mahol <onemda@gmail.com>
2018-05-03 14:15:07 +02:00
Mark Thompson
ddd3a209dc lavc/cbs: Add tests for VP9
Uses the same mechanism as other codecs - conformance test files are
passed through the metadata filter (which, with no options, reads the
input and writes it back) and the output verified to match the input.
2018-05-02 01:21:40 +01:00
Marton Balint
c60a824ee8 avformat/qtpalette: parse color table according to the QuickTime file format specs
The specs says that the the first color component in the color array is
not alpha, but simply 0.

Fixes 0 alpha of fate-suite/cvid/catfight-cvid-pal8-partial.mov

Signed-off-by: Marton Balint <cus@passwd.hu>
2018-04-30 21:50:12 +02:00
Paul B Mahol
29fd44adf1 avfilter/vf_fieldmatch: use correct subsamplings for y0a, y1a and startx
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2018-04-28 22:49:09 +02:00
Derek Buitenhuis
28503c5aea mov: Properly abide by the track's media duration
The track's media duration from the mdhd atom takes precedence
over both the stts and elst atom for calculating and setting
the track's total duraion.

Technically, we shouldn't be using the stts atom at all for
calculating stream durations.

This fixes incorrect stream and final packet durations on files
with edit lists that are longer than the media duration.

The FATE changes are expected, and output is more correct (the
AAC frame is not 1028 samples).

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2018-04-26 14:42:15 +01:00
Jerome Borsboom
cc5deeb74a avcodec/vc1: add overlap smooting and loop filter for frame/field-interlace
Add previously omitted overlap smooting and loop filtering for
frame/field-interlace pictures. For progressive pictures switch to the
re-implemented versions of overlap smooting and loop filtering.

Signed-off-by: Jerome Borsboom <jerome.borsboom@carpalis.nl>
2018-04-25 22:07:20 +02:00
Jerome Borsboom
362ce2db4b avcodec/vc1: implement interlaced out-of-bounds reference pixel replication
The existing implementation did out-of-bounds reference pixel replication for
progressive reference frames. In interlaced reference frames both the even and
odd line on the horizontal edges need to be replicated.

Fixes #3262.

Signed-off-by: Jerome Borsboom <jerome.borsboom@carpalis.nl>
2018-04-25 22:07:20 +02:00
Paul B Mahol
b2570afde3 avformat/yuv4mpegdec: fix seeking backwards
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2018-04-25 18:30:46 +02:00
Jacob Trimble
f7221d8e67 avformat/mov: Increase support for common encryption.
- Parse schm atom to get different encryption schemes.
- Allow senc atom to appear in track fragments.
- Allow 16-byte IVs.
- Allow constant IVs (specified in tenc).
- Allow only tenc to specify encryption (i.e. no senc/saiz/saio).
- Use sample descriptor to detect clear fragments.

This doesn't support:
- Different sample descriptor holding different encryption info.
  - Only first sample descriptor can be encrypted.
- Encrypted sample groups (i.e. seig).
- Non-'cenc' encryption scheme when using -decryption_key.

Signed-off-by: Jacob Trimble <modmaker@google.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2018-04-19 03:15:32 +02:00
Michael Niedermayer
5c62a3dbda tests/fate/filter-video: Use a bitexact/lossless input sample for fate-filter-metadata-silencedetect
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2018-04-13 21:44:28 +02:00
Bela Bodecs
a06175d739 fate: to test program sub stream selection by its type in mpegts
Signed-off-by: Bela Bodecs <bodecsb@vivanet.hu>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2018-04-12 23:52:59 +02:00
Mattias Amnefelt
a26c9fdd1b libavformat/aac: Parse all ID3 tags present between ADTS frames
Some ADTS streams can have multiple ID3 tags between frames. This
change parses all of them, rather than just the first one.

Signed-off-by: Mattias Amnefelt <mattiasa@avm.se>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2018-04-12 02:54:14 +02:00
Gagandeep Singh
673604e0e3 lavc/cfhd: fix distortion of lowest 8 lines when height is not multiple of 16
Also update fate reference. Fixes ticket #6675.
2018-04-03 18:20:30 +02:00
Paul B Mahol
5710fdaeae avcodec/aic: fix decoding of videos which height is not multiple of 16
Fate output changes and under close inspection looks more correct.
Fixes #6187.

Signed-off-by: Paul B Mahol <onemda@gmail.com>
2018-04-02 16:17:18 +02:00
Rostislav Pehlivanov
a1b91b0cc2 lavc: prefer the mp3float decoder to the mp3 decoder
On modern x86 systems its around 2x faster. For systems without
FPUs it'll be slower, but our policy is to prefer floating point
implementations and to let users decide what's best (or just not
compile them on systems without FPUs).

Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
2018-04-01 13:02:12 +01:00
Nicolas Gaullier
5170ab20e1 lavfi/silencedetect: Fix silence_end accuracy 2018-03-29 15:45:24 +02:00
Nicolas Gaullier
56b2731aae lavfi/silencedetect: Fix silence_start accuracy 2018-03-29 15:45:20 +02:00
Nicolas Gaullier
cd4756a558 lavfi/silencedetect: Update test parameters
Set relevant filter parameters such that the result can easily be
checked with a waveform editor.
In particular, it makes it clear the silence_start is not accurate in
the current code.
2018-03-29 15:44:49 +02:00
Paul B Mahol
ae92970976 avcodec/eac3: add support for dependent stream
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2018-03-29 10:19:03 +02:00
Sasi Inguva
829aebf95d lavf/utils.c: Don't compute start_time from DISCARD packets for video.
Signed-off-by: Sasi Inguva <isasi@isasi.mtv.corp.google.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2018-03-24 03:11:08 +01:00
Martin Vignali
b2bb1cb68b fate/hapqa_extract : add test for hapqa_extract bsf
test extract color and alpha
with the three main kind of hap frame :
- no snappy compression
- snappy compression and one chunk
- snappy compression and several chunks (16 here)

like the bsf filter need to be used with vtag and encoder edition
also test the information of the target mov for color and alpha
2018-03-18 13:43:39 +01:00
wm4
4b86ac27a0 lavu/frame: add QP side data
This adds a way for an API user to transfer QP data and metadata without
having to keep the reference to AVFrame, and without having to
explicitly care about QP APIs. It might also provide a way to finally
remove the deprecated QP related fields. In the end, the QP table should
be handled in a very similar way to e.g. AV_FRAME_DATA_MOTION_VECTORS.

There are two side data types, because I didn't care about having to
repack the QP data so the table and the metadata are in a single
AVBufferRef. Otherwise it would have either required a copy on decoding
(extra slowdown for something as obscure as the QP data), or would have
required making intrusive changes to the codecs which support export of
this data.

The new side data types are added under deprecation guards, because I
don't intend to change the status of the QP export as being deprecated
(as it was before this patch too).
2018-03-18 12:36:24 +01:00
Martin Vignali
32dbee4462 fate/hapenc : remove test which use libsnappy
the test in none mode can be let (they don't use libsnappy)
2018-03-17 18:23:43 +01:00
Jun Zhao
7b5cf0a410 lavu/opt: add bit stream filter option dump support.
enable dump bit stream filter and update opt fate test ref.

Signed-off-by: Jun Zhao <mypopydev@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2018-03-16 02:09:59 +01:00
Martin Vignali
f56ee74033 fate/hap : add test for hap encoding
with and without snappy compression
with chunk 1 or chunk 16
for hap, hapa, and hapq
2018-03-13 20:27:27 +01:00
Philipp M. Scholl
040b28aecc avformat/pcm: decrease delay when reading PCM streams.
Thanks for the discussion. Here's the next version, now with /25 and removed
ff_log2().

  The blocksize of the PCM decoder is hard-coded. This creates
unnecessary delay when reading low-rate (<100Hz) streams. This creates
issues when multiplexing multiple streams, since other inputs are only
opened/read after a low-rate input block was completely read.

 This patch decreases the blocksize for low-rate inputs, so
approximately a block is read every 40ms. This decreases the startup
delay when multiplexing inputs with different rates.

Signed-off-by: Philipp M. Scholl <pscholl@bawue.de>
Reviewed-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2018-03-13 01:34:42 +01:00
Yusuke Nakamura
af7e953a59 h264_mp4toannexb_bsf: Fix start code size of parameter sets.
Any parameter set shall have start code of at least 4 byte size.

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2018-03-13 01:34:42 +01:00
Sasi Inguva
43205df645 lavf/mov.c: Use the correct offset to shift timestamp when seeking.
Fixes seek for files with empty edits and files with negative ctts
(dts_shift > 0). Added fate samples and tests.

Signed-off-by: Sasi Inguva <isasi@isasi.mtv.corp.google.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2018-03-10 17:55:50 +01:00
Carl Eugen Hoyos
9fe61b6107 lavfi/drawutils: Do not claim to support P016.
Fixes fate on big-endian.
2018-03-08 11:56:41 +01:00
Aurelien Jacobs
0b4ad86959 crc: add AV_CRC_8_SBC as a 8 bits CRC with polynomial 0x1D 2018-03-07 22:26:53 +01:00
Philip Langdale
9d5aff09a7 swscale: Add p016 output support and generalise yuv420p1x to p010
To make the best use of existing code, I generalised the wrapper
that currently does yuv420p10 to p010 to support any mixture of
input and output sizes between 10 and 16 bits. This had the side
effect of yielding a working code path for all yuv420p1x formats
to p01x.
2018-03-02 14:52:48 -08:00
Timo Rothenpieler
27cbbbb33f compat: remove in-tree NVidia headers
External headers are no longer welcome in the ffmpeg codebase because they
increase the maintenance burden. However, in the NVidia case the vanilla
headers need some modifications to be usable in ffmpeg therefore we still
provide them, but in a separate repository.

The external headers can be found at
https://git.videolan.org/?p=ffmpeg/nv-codec-headers.git

Fate-source is updated because of the deleted files, and dynlink_loader.h
license headers were updated with the standard FFmpeg headers.

Signed-off-by: Marton Balint <cus@passwd.hu>
Signed-off-by: Timo Rothenpieler <timo@rothenpieler.org>
2018-02-27 16:22:12 +01:00
Martin Vignali
c8552b7858 fate/exr : add test for long name flag
ticket 6994
2018-02-24 21:42:46 +01:00
Rodger Combs
0419623cdc lavfi/vf_transpose: fix regression with semiplanar formats
(e.g. nv12)

Regression since 7b19e76aeb
2018-02-23 17:20:10 -06:00
Mark Thompson
9ca79784e9 lavc/mjpeg: Add profiles for MJPEG using SOF marker codes
This is needed by later hwaccel code to tell which encoding process was
used for a particular frame, because hardware decoders may only support a
subset of possible methods.
2018-02-21 23:37:58 +00:00
Calvin Walton
ff0de964e7 libavfilter/vf_fps: Add tests for start_time option
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2018-02-22 00:29:27 +01:00
Tobias Rapp
56f77b0f67 fate: add tests for pan audio filter
Signed-off-by: Tobias Rapp <t.rapp@noa-archive.com>
2018-02-19 08:32:44 +01:00
Calvin Walton
d2fc244293 libavfilter/vf_fps: Add more fate tests
These tests cover specific rounding behaviour, to ensure that I don't
introduce any regressions with the rewritten "activate" callback based
fps filter.

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2018-02-17 20:31:39 +01:00
Gyan Doshi
310d56e86f fate/mpegps: add tests for PCM_DVD stream remux
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2018-02-16 21:53:22 +01:00
Mark Thompson
a5ed07940c fate: Fix fate-api reference files after AVCodecContext change
Broken by d23fff0d8a.
2018-02-12 22:54:23 +00:00
Richard Shaffer
81d1e1e509 fate: add aac id3v2 demux test
A basic test for demuxing raw AAC (ADTS) with ID3v2 tags.
2018-02-12 22:08:51 +01:00
Nekopanda
f4d5d7e8de avcodec/mpeg2dec: Fix motion vector rounding for chroma components
In 16x8 motion compensation, for lower 16x8 region, the input to mpeg_motion() for motion_y was "motion_y + 16", which causes wrong rounding. For 4:2:0, chroma scaling for y is dividing by two and rounding toward zero. When motion_y < 0 and motion_y + 16 > 0, the rounding direction of "motion_y" and "motion_y + 16" is different and rounding "motion_y + 16" would be incorrect.

We should input "motion_y" as is to round correctly. I add "is_16x8" flag to do that.

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2018-02-11 12:04:47 +01:00
Nekopanda
8b154cb3e9 avcodec/mpeg2dec: Fix field selection for skipped macroblocks
For B field pictures, the spec says,

> The prediction shall be made from the field of the same parity as the field being predicted.

I did it.

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2018-02-11 02:16:40 +01:00
Richard Shaffer
4be6307cbf fate: add id3v2 test
Adds basic unit test for parsing ID3v2 tags.

Signed-off-by: James Almer <jamrial@gmail.com>
2018-02-02 12:16:56 -03:00
Marton Balint
2cbe6bac03 avfilter/vf_framerate: change blend factor precision
This is done mainly in preparation for the SIMD patches.

- for the 8-bit input, decrease the blend factor precision to 7-bit.
- for the 16-bit input, increase the blend factor precision to 15-bit.
- make sure the blend functions are not called with 0 or maximum blending
  factors, because we don't want the signed factor integers to overflow.

Fate test changes are due to different rounding.

Signed-off-by: Marton Balint <cus@passwd.hu>
2018-01-28 18:50:50 +01:00
Michael Niedermayer
293f24b42c fate: test the transpose filter more fully
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2018-01-28 15:10:52 +01:00
Marton Balint
e3acba0d5d avfilter/formats: remove support for deprecated channel count specification
Signed-off-by: Marton Balint <cus@passwd.hu>
2018-01-20 18:07:44 +01:00
James Almer
fb3fd4d506 fate: update filter-acrossfade test reference file
<jamrial> durandal_1707: 8088b5d69c broke the acrossfade test
<@durandal_1707> jamrial: there was test?
<jamrial> durandal_1707: fate-filter-acrossfade
<@durandal_1707> what broke?
<jamrial> what used to be one frame is now two
<@durandal_1707> ahh, just update test

Signed-off-by: James Almer <jamrial@gmail.com>
2018-01-18 19:12:50 -03:00
Marton Balint
0c31a3876d avfilter/vf_framerate: simplify filter
The framerate filter was quite convoluted with some filter_frame /
request_frame logic bugs. It seemed easier to rewrite the whole filter_frame /
request_frame part and also the frame interpolation ratio calculation part in
one step.

Notable changes:
- The filter now only stores 2 frames instead of 3
- filter_frame outputs all the frames it can to be able to handle consecutive
  filter_frame calls which previously caused early drops of buffered frames.
- because of this, request_frame is largely simplified and it only outputs
  frames on flush. Previously consecuitve request_frame calls could cause the
  filter to think it is in flush mode filling its buffer with the same frames
  causing a "ghost" effect on the output.
- PTS discontinuities are handled better
- frames with unknown PTS values are now dropped

Fixes ticket #4870.
Probably fixes ticket #5493.

Signed-off-by: Marton Balint <cus@passwd.hu>
2018-01-12 23:40:41 +01:00
James Almer
6ec9131920 fate: remove ffm reference files
Missed in c17f476144 and
8bbd8c8d52

Signed-off-by: James Almer <jamrial@gmail.com>
2018-01-06 22:21:35 -03:00
James Almer
b9ad04b19c fate: add PERSIST_RPARAM_A_RExt_Sony_3 hevc conformance test
The PERSIST_RPARAM_A_RExt_Sony_1 bitstream has an out-of-range value
and has therefore been superseded.
It is otherwise identical, and decodes the same.

Signed-off-by: James Almer <jamrial@gmail.com>
2018-01-05 16:47:02 -03:00
Marton Balint
f528c49c7c avfilter/vf_framerate: calculate interpolation as integer
It was truncated to int later on anyway. Fate test changes are due to rounding
instead of truncation.

Fixes fate test failures on x86-32 (gcc 4.8 (Ubuntu 4.8.5-2ubuntu1~14.04.1))
after 090b740680.

Signed-off-by: Marton Balint <cus@passwd.hu>
2018-01-04 22:37:43 +01:00
Paul B Mahol
57d0c24132 avcodec/utvideoenc: switch to planar RGB formats
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2018-01-02 13:41:50 +01:00
Paul B Mahol
d2a2bc9a9f avfilter/vf_lut: add support for gray formats
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2017-12-22 10:57:12 +01:00
Marton Balint
e1113a83cc avfilter/vf_framerate: fix scene change detection score
- normalize score to [0..100] instead of [0..85]
- change the default score to 8.2 to roughly keep existing behaviour
- take into account bit depth
- do not truncate to integer

Signed-off-by: Marton Balint <cus@passwd.hu>
2017-12-21 23:03:10 +01:00
Marton Balint
d6a8e46f97 fate: add 12 bit framerate filter tests
Signed-off-by: Marton Balint <cus@passwd.hu>
2017-12-21 23:03:10 +01:00
Sasi Inguva
58a25aeb8e lavf/mov.c: Guess video codec delay based on PTS while parsing MOV header.
Signed-off-by: Sasi Inguva <isasi@google.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-12-20 22:27:06 +01:00
Michael Niedermayer
b404d41b19 fate: Fix fate-mov-bbi-elst-starts-b on ARM 2017-12-08 20:02:16 +01:00
Mark Reid
0091a54f64 fate/mxf: add reel name test
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-12-08 20:02:16 +01:00
Mark Reid
ad2641c36b avformat/mxfenc: use track count to generate component instance uuid
Reviewed-by: Tomas Härdin <tjoppen@acc.umu.se>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-12-08 20:02:16 +01:00
James Almer
d6d605eb05 avformat/mux: stop delaying writing the header
Every bitstream filter behaves as intended now, so there's no need to
wait for the first packet of every stream.

Signed-off-by: James Almer <jamrial@gmail.com>
2017-12-06 15:43:59 -03:00
sfan5
d3a2100c67 fate/hevc: add skip_loop_filter test
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-12-05 19:56:40 +01:00