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

2260 Commits

Author SHA1 Message Date
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
Marton Balint
5a93a85fd0 avformat/mxfdec: fix last packet timestamps
The current edit unit cannot be reliably determined for the last packet of a
video stream, because we can't query the start offset of the next edit unit
from the index. This caused missing timestamps for the last video packet.

Therefore from now on, we allow setting the PTS even if we are not sure of the
current edit unit if mxf_set_current_edit_unit returned a specific failure, and
the assumed current edit unit is the last.

Fixes last packet timestamp of:
ffprobe -fflags nofillin -show_packets tests/data/lavf/lavf.mxf -select_streams v

Signed-off-by: Marton Balint <cus@passwd.hu>
2017-12-03 21:06:47 +01:00
James Almer
d268094f88 Merge commit '99e9697e3a12ab4a6638a36b95edafd6a98f9eaa'
* commit '99e9697e3a12ab4a6638a36b95edafd6a98f9eaa':
  stereo3d: Support view type for frame sequence type

Merged-by: James Almer <jamrial@gmail.com>
2017-11-29 21:06:49 -03:00
Tobias Rapp
26c0c84784 avformat/avienc: fix fields-per-frame value for interlaced video streams
Writes one set of field framing information for progressive streams and
two sets for interlaced streams. Fixes ticket #6383.

Unfortunately the OpenDML v1.02 document is not very specific on what
value to use for start_line when frame data is not coming from a
capturing device, so this is just using 0/1 depending on the field order
as a best-effort guess.

Signed-off-by: Tobias Rapp <t.rapp@noa-archive.com>
2017-11-27 09:13:05 +01:00
Martin Vignali
8794e0c037 fate/hapAlphaOnly : add test for hap alpha only decoding 2017-11-25 19:49:34 +01:00
Martin Vignali
37810bee78 fate/hapdec : add test for hapqa decoding 2017-11-21 12:05:21 +01:00
Aman Gupta
3f1a540204 avcodec/mpeg12dec: parse A53 caption data embedded in SCTE-20 user data
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-11-15 18:14:39 -08:00
Sasi Inguva
54f8ac199f lavf/mov.c: Don't correct edit list start to zero, when we can't find a frame before edit list start.
After c2a8f0fcbe this can happen on normal edit lists starting on a B-frame.

Signed-off-by: Sasi Inguva <isasi@google.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-11-14 21:02:31 +01:00
John Stebbins
57a422ea4c fate/mov: add test for overlapping fragments
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-11-14 20:49:07 +01:00
James Almer
b125822d1d Merge commit 'ec0f4fa17ce29cf01d4def21041b0b87f7e3105d'
* commit 'ec0f4fa17ce29cf01d4def21041b0b87f7e3105d':
  FATE: add a test for the H.264 sample fixed by 7c4f6f6

Merged-by: James Almer <jamrial@gmail.com>
2017-11-11 18:37:54 -03:00
Sasi Inguva
bc50961731 lavf/mov.c: Parse upto 2 keyframes after the edit list end in mov_fix_index.
Partially fixes t/6699.

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-11-11 14:15:15 +01:00
Michael Niedermayer
b197d83ca3 avformat/utils: Look at the first 3 frames if timestamps indicate frame reorder but decoder delay does not
Fixes: Ticket6487

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-11-11 14:15:15 +01:00
James Almer
0ff8f0b7b4 Merge commit '5be9939b46a6a4d3860a1b1a872aa50897095970'
* commit '5be9939b46a6a4d3860a1b1a872aa50897095970':
  fate: Add cinepak encoder vsynth tests

See d7f62f033c

Merged-by: James Almer <jamrial@gmail.com>
2017-11-07 18:35:34 -03:00
Martin Vignali
ad784e0cb6 fate/utvideo : add test for decoding and encoding 2017-11-07 00:52:58 +01:00
Sasi Inguva
c2a8f0fcbe lavf/mov.c: Refine edit list start seek, based on PTS computed from CTTS.
Partially fixes t/6699.

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-11-04 05:05:03 +01:00
Carl Eugen Hoyos
9d0b42bce5 fate: Fix fitsdec-gbrap16 test on big-endian hardware. 2017-11-04 00:47:37 +01:00
Jonas Licht
59ad504696 libavformat/mov.c: use calculated dts offset when seeking in streams
Subtract the calculated dts offset from the requested timestamp before
seeking. This fixes an error "Error while filtering: Operation not
permitted" observed with a short file which contains only one key frame
and starts with negative timestamps.

Then, av_index_search_timestamp() returns a valid negative timestamp,
but mov_seek_stream bails out with AVERROR_INVALIDDATA.

Fixes ticket #6139.

Signed-off-by: Jonas Licht <jonas.licht@fem.tu-ilmenau.de>
Signed-off-by: Peter Große <pegro@friiks.de>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-10-30 01:09:40 +01:00
Carl Eugen Hoyos
4ccc1ef2a3 fate: Add bitexact flag to the invalid-elst test.
Fixes fate-mov-invalid-elst-entry-count on a ppc system.
2017-10-29 23:10:02 +01:00