aboutsummaryrefslogtreecommitdiffstats
path: root/tests
Commit message (Collapse)AuthorAgeFilesLines
* fate/cbs: add more VVC testsJames Almer2023-07-076-0/+10
| | | | Signed-off-by: James Almer <jamrial@gmail.com>
* lavc/dvdec: export bitrateAnton Khirnov2023-07-072-2/+2
| | | | | | | | | | Changes the result of fate-mxf-probe-dv25, where the bitrate is now exported. Also changes the result of fate-bsf-dv-error-marker, where the exported bitrate is now different. Note that the codec layer bitrate does not match the container bitrate, because container timing is 25fps, while the DV profile is 50.
* avfilter/vf_bwdif: Add a filter_line3 method for optimisationJohn Cox2023-07-061-0/+81
| | | | | | | | | | | | | | | | | | | | | | Add an optional filter_line3 to the available optimisations. filter_line3 is equivalent to filter_line, memcpy, filter_line filter_line shares quite a number of loads and some calculations in common with its next iteration and testing shows that using aarch64 neon filter_line3s performance is 30% better than two filter_lines and a memcpy. Adds a test for vf_bwdif filter_line3 to checkasm Rounds job start lines down to a multiple of 4. This means that if filter_line3 exists then filter_line will not sometimes be called once at the end of a slice depending on thread count. The final slice may do up to 3 extra lines but filter_edge is faster than filter_line so it is unlikely to create any noticable thread load variation. Signed-off-by: John Cox <jc@kynesim.co.uk> Signed-off-by: Martin Storsjö <martin@martin.st>
* tests/checkasm: Add test for vf_bwdif filter_edgeJohn Cox2023-07-061-0/+54
| | | | | Signed-off-by: John Cox <jc@kynesim.co.uk> Signed-off-by: Martin Storsjö <martin@martin.st>
* tests/checkasm: Add test for vf_bwdif filter_intraJohn Cox2023-07-061-0/+37
| | | | | Signed-off-by: John Cox <jc@kynesim.co.uk> Signed-off-by: Martin Storsjö <martin@martin.st>
* Add SMC vsynth testsTomas Härdin2023-07-025-0/+20
|
* fate/cbs: fix sample path for discard testsJames Almer2023-07-021-2/+2
| | | | Signed-off-by: James Almer <jamrial@gmail.com>
* fate/cbs: simplify the filter_unit discard testsJames Almer2023-07-019-168/+20
| | | | | | | No need to generate intermediate files and probe them. We only care to know that the output of the bsf excludes the frames in question, and a simple checksum is enough. Signed-off-by: James Almer <jamrial@gmail.com>
* fate/cbs: run the VVC tests within the fate-cbs targetJames Almer2023-06-301-1/+1
| | | | Signed-off-by: James Almer <jamrial@gmail.com>
* fate/cbs: add VVC testsJames Almer2023-06-3022-0/+61
| | | | Signed-off-by: James Almer <jamrial@gmail.com>
* Add FATE test for timed id3 demux.Romain Beauxis2023-06-292-0/+9
| | | | Signed-off-by: Anton Khirnov <anton@khirnov.net>
* avcodec/j2kenc: use uint64_t type for the lambda valueJames Almer2023-06-244-16/+16
| | | | | | | Should fix integer overflows, and improve encoding results. Reviewed-by: Paul B Mahol <onemda@gmail.com> Signed-off-by: James Almer <jamrial@gmail.com>
* tests/fate/ffmpeg: silence the audio for fate-ffmpeg-streamloop-transcode-avAnton Khirnov2023-06-212-74/+77
| | | | | | | | Fixed-point AAC decoder currently does not produce the same output on all platforms. Until that is fixed, silence the audio stream using the volume filter. Also, actually use the aac_fixed decoder as was the original intent.
* lavc/msrleenc: Add msrle encoderTomas Härdin2023-06-205-0/+19
| | | | Keyframes are marked automagically
* avformat/evc: skip nalu header size bytes before parsing spsJames Almer2023-06-191-1/+1
| | | | Signed-off-by: James Almer <jamrial@gmail.com>
* fate/lavf-container: add a test to remux raw evc into mp4James Almer2023-06-192-0/+5
| | | | Signed-off-by: James Almer <jamrial@gmail.com>
* tests/fate: add a test for -streamloop with transcoding video+audioAnton Khirnov2023-06-192-0/+155
|
* tests/fate: rename ffmpeg-streamloop to ffmpeg-streamloop-copyAnton Khirnov2023-06-192-2/+2
| | | | | Makes it clear that this tests -streamloop with streamcopy, to distinguish it from further -streamloop tests added in future commits.
* fate/cbs: Fix the ffprobe dependency for Windows targetsMartin Storsjö2023-06-191-1/+1
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* fate/cbs: add tests for discard_unitsZhao Zhili2023-06-199-0/+177
| | | | Signed-off-by: Zhao Zhili <zhilizhao@tencent.com>
* aarch64: Add cpu flags for the dotprod and i8mm extensionsMartin Storsjö2023-06-061-0/+2
| | | | | | | Set these available if they are available unconditionally for the compiler. Signed-off-by: Martin Storsjö <martin@martin.st>
* fftools/ffmpeg_enc: avoid breaking exactly integer timestamps in vsync codeAnton Khirnov2023-06-054-4/+4
| | | | | | | | The code will currently add a small offset to avoid exact midpoints, but this can cause inexact results when a float timestamp is exactly representable as an integer. Fixes off-by-one in the first frame duration in multiple FATE tests.
* tests/fate/ffmpeg: add tests for -max_error_rateAnton Khirnov2023-06-053-0/+6
|
* av1dec: add Vulkan hwaccelLynne2023-05-291-0/+2
|
* fate-source: exclude Apache-2 licensed filesLynne2023-05-291-0/+1
|
* lsws: add in/out support for the new 12-bit 2-plane 422 and 444 pixfmtsLynne2023-05-2916-0/+70
|
* lavu: add 12-bit 2-plane 422 and 444 pixel formatsLynne2023-05-291-0/+4
|
* avfilter/af_silenceremove: add real peak detectorPaul B Mahol2023-05-261-1/+1
| | | | Rename old peak detector to more correct name one.
* avformat/gifdec: switch to using gif parserPaul B Mahol2023-05-251-1/+1
| | | | Update fate test, more correct as last packet is not truncated.
* fate/tests/ffmpeg: use -idct simple for fate-ffmpeg-input-rAnton Khirnov2023-05-231-1/+1
| | | | Makes the test bitexact on non-x86_64.
* tests/fate/ffmpeg: add a test for input -r optionAnton Khirnov2023-05-222-0/+16
|
* tests/fate/ffmpeg: move a misplaced lineAnton Khirnov2023-05-221-2/+1
|
* fate/checkasm: add h264chroma testJames Almer2023-05-201-0/+1
| | | | Signed-off-by: James Almer <jamrial@gmail.com>
* checkasm: add h264chroma testsLynne2023-05-204-0/+90
| | | | Checks all variants of put_h264_chroma and avg_h264_chroma.
* fate/demux: fix fate-cavs-demuxJames Almer2023-05-202-2/+2
| | | | Signed-off-by: James Almer <jamrial@gmail.com>
* avcodec/cavs_parser: fix finding the end of a frameZhao Zhili2023-05-202-0/+65
| | | | | | | | | | Use the next I/P/B or start code as the end of current frame. Before the patch, extension start code, user data start code, sequence end code and so on are treated as the start of next frame. Signed-off-by: Zhao Zhili <zhilizhao@tencent.com>
* fate/jpg: add RGB mjpeg fate testsLeo Izen2023-05-176-0/+41
| | | | | Adds FATE tests for RGB jpegs to test commit 0b352e350e773673f11ea380f3507923c70e1175.
* tests/fate: add a simple test for libx264Anton Khirnov2023-05-154-0/+108
| | | | | | | | Since this is an external encoder not under our control, we cannot test the encoded output exactly as is done for internal encoders. We can still test however that the output is decodable and produces the expected number of frames with expected dimensions, pixel formats, and timestamps.
* avformat/tests/imf: add invalid resource testPierre-Anthony Lemieux2023-05-111-0/+2
|
* fftools/ffprobe: print exported stream AVOptionsJames Almer2023-05-084-7/+7
| | | | | | | Similar to the decoder AVOptions, this is useful to show values from options exported by the demuxer. Signed-off-by: James Almer <jamrial@gmail.com>
* fftools/ffmpeg: always use the same path for setting InputStream.[next_]dtsAnton Khirnov2023-05-022-28/+28
| | | | | | | | | | | | | | | | | | | | | Currently those are set in different ways depending on whether the stream is decoded or not, using some values from the decoder if it is. This is wrong, because there may be arbitrary amount of delay between input packets and output frames (depending e.g. on the thread count when frame threading is used). Always use the path that was previously used only for streamcopy. This should not cause any issues, because these values are now used only for streamcopy and discontinuity handling. This change will allow to decouple discontinuity processing from decoding and move it to ffmpeg_demux. It also makes the code simpler. Changes output in fate-cover-art-aiff-id3v2-remux and fate-cover-art-mp3-id3v2-remux, where attached pictures are now written in the correct order. This happens because InputStream.dts is no longer reset to AV_NOPTS_VALUE after decoding, so streamcopy actually sees valid dts values.
* fftools/ffmpeg: rework audio-decode timestamp handlingAnton Khirnov2023-05-023-334/+334
| | | | | | | | | | | | | | | | | | | | | Stop using InputStream.dts for generating missing timestamps for decoded frames, because it contains pre-decoding timestamps and there may be arbitrary amount of delay between input packets and output frames (e.g. dependent on the thread count when frame threading is used). It is also in AV_TIME_BASE (i.e. microseconds), which may introduce unnecessary rounding issues. New code maintains a timebase that is the inverse of the LCM of all the samplerates seen so far, and thus can accurately represent every audio sample. This timebase is used to generate missing timestamps after decoding. Changes the result of the following FATE tests * pcm_dvd-16-5.1-96000 * lavf-smjpeg * adpcm-ima-smjpeg In all of these the timestamps now better correspond to actual frame durations.
* lavf/dv: use a more granular timebase for audioAnton Khirnov2023-05-021-8/+8
| | | | | | | | | | | | | One that is fine enough to represent all DV audio sample rates. Audio packet durations are now sample-accurate. This largely undoes commit 76fbb0052df471075858c1cb82b04c8be7adba8d. To avoid breaking the issue fixed by that commit, resync audio timestamps against video if they get more than one frame apart. The sample from issue #8762 still works correctly after this commit. Slightly changes the results of the lavf-dv seektest, due to the audio timebase being more granular.
* lavf/dv: do not set video timebase more than onceAnton Khirnov2023-05-024-44/+44
| | | | | | | | | | | | | Current code will call avpriv_set_pts_info() for each video frame, possibly setting a different timebase if the stream framerate changes. This violates API conventions, as the timebase is supposed to stay constant after stream creation. Change the demuxer to set a single timebase that is fine enough to handle all supported DV framerates. The seek tests change slightly because the new timebase is more granular.
* lavf/dauddec: set timebase to 1/samplerateAnton Khirnov2023-04-282-18/+18
| | | | | Prevents lavf from generating inexact timestamps with the default timebase of 1/90000.
* lavfi/dnn: Remove DNN native backendTing Fu2023-04-282-46/+0
| | | | | | | | | | According to discussion in https://etherpad.mit.edu/p/FF_dev_meeting_20221202 and the proposal in http://ffmpeg.org/pipermail/ffmpeg-devel/2022-December/304534.html, the DNN native backend should be removed at first step. All the DNN native backend related codes are deleted. Signed-off-by: Ting Fu <ting.fu@intel.com>
* tests: do not override movflags defaultsMarton Balint2023-04-242-2/+2
| | | | | | It does not matter if the default is 0, but still it is cleaner that way. Signed-off-by: Marton Balint <cus@passwd.hu>
* fftools/ffmpeg_enc: always use video frame durations when availableAnton Khirnov2023-04-244-71/+71
| | | | | | | | | Previously they would only be used with trivial filtergraphs, because filters did not handle frame durations. That is no longer true - most filters process frame durations properly (there may still be some that don't - this change will help finding and fixing them). Improves output video frame durations in a number of FATE tests.
* fate/jpeg2000: add missing dependecy checksJames Almer2023-04-231-3/+5
| | | | Signed-off-by: James Almer <jamrial@gmail.com>
* fate/jpeg2000: add JPEG 2000 tests using ITU/ISO conformance materialsPierre-Anthony Lemieux2023-04-2216-0/+149
| | | | | | | | | Adds JPEG 2000 decoder tests using materials from the conformance suite specified in Rec. ITU-T T.803 | ISO/IEC 15444-4. The test materials are available at https://gitlab.com/wg1/htj2k-codestreams Signed-off-by: Pierre-Anthony Lemieux <pal@palemieux.com>