summaryrefslogtreecommitdiff
path: root/tests
Commit message (Collapse)AuthorAge
* fate/demux, gapless, image: Add missing ffprobe dependenciesAndreas Rheinhardt2021-09-19
| | | | | | | And remove the unnecessary ffmpeg dependencies while at it. Reviewed-by: Soft Works <softworkz@hotmail.com> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* tests/concat-demuxer: add stream_meta testNicolas George2021-09-16
|
* lavf/concat: deprecate file_packet_metadataNicolas George2021-09-16
|
* avcodec/wmadec: fix WMA gapless playbackbnnm2021-09-12
| | | | | | | | | | | | | Fixes trac issue #7473. Removes encoder delay (skip samples) and writes remaining frame samples after EOF to get correct sample count. Output is now accurate vs players that use Microsoft's codecs (Windows Media Format Runtime). Tested vs encode>decode WMAv2 with MS's codecs and most sample rate/bit rate/channel/mode combinations in ASF/XWMA. WMAv1 appears to use the same delay, from FFmpeg samples. Signed-off-by: bnnm <bananaman255@gmail.com>
* fate: fix silenceremove testPaul B Mahol2021-09-09
|
* fate/wma: Account for trimmed samples in wmapro-ism testAndreas Rheinhardt2021-09-02
| | | | | | | Fixes FATE failures after 61c2c9ef8e66920c8ba308e8fa9f36ae602f8245. Reviewed-by: Paul B Mahol <onemda@gmail.com> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* tests/checkasm/vf_gblur.c: update check_horiz_slice for the new ↵Wu Jianhua2021-08-29
| | | | | | | | ff_horiz_slice_avx2/512 Co-authored-by: Cheng Yanfei <yanfei.cheng@intel.com> Co-authored-by: Jin Jun <jun.i.jin@intel.com> Signed-off-by: Wu Jianhua <jianhua.wu@intel.com>
* tests/checkasm/vf_gblur.c: add check_verti_slice() for unit testWu Jianhua2021-08-29
| | | | | | Co-authored-by: Cheng Yanfei <yanfei.cheng@intel.com> Co-authored-by: Jin Jun <jun.i.jin@intel.com> Signed-off-by: Wu Jianhua <jianhua.wu@intel.com>
* fate/pixfmt: test xyz12leAnton Khirnov2021-08-29
|
* FATE: allow multithreaded filteringAnton Khirnov2021-08-29
|
* avfilter/aeval: fix forgotten EOF case for activatePaul B Mahol2021-08-26
| | | | Bring fate test how it was previously.
* tests/fate: move TTML-in-MP4 tests from subtitles.mak to mov.makJan Ekström2021-08-25
| | | | | | | | subtitles.mak's fate-sub tests utilize a more strict comparator ("rawdiff"), which causes the tests fail in case of white space differences, such as CRLF vs LF. This in turn causes these ffprobe-using TTML-in-MP4 tests to fail on non-LF systems such as Windows or wine.
* avformat/movenc: add support for TTML muxingJan Ekström2021-08-25
| | | | | | | | | | | Includes basic support for both the ISMV ('dfxp') and MP4 ('stpp') methods. This initial version also foregoes fragmentation support in case the built-in sample squashing is to be utilized, as this eases the initial review. Additionally, add basic tests for both muxing modes in MP4. Signed-off-by: Jan Ekström <jan.ekstrom@24i.com>
* checkasm: collapse hevc pel testsJ. Dekker2021-08-24
| | | | | | Also add to `make fate-checkasm' target. Signed-off-by: J. Dekker <jdek@itanimul.li>
* fate: update some missing refsJames Almer2021-08-24
| | | | | | Forgotten in 590a7e02f04795ef308240bb13b76f97f916b16e Signed-off-by: James Almer <jamrial@gmail.com>
* avcodec: add a Film Grain codec property flagJames Almer2021-08-24
| | | | Signed-off-by: James Almer <jamrial@gmail.com>
* avformat/matroskaenc: Pass dispositions through unchanged by defaultAndreas Rheinhardt2021-08-24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Up until now, the Matroska muxer did not use the dispositions it is given as-is; instead it by default overrode the disposition of the first track of a kind (audio, video, subtitles) if no track of this kind has the default disposition set. And up until recently, it also enforced by default that no more than one track of each kind be marked as default. The rationale for the former is that there are lots of containers which lack the concept of default streams, so that it is not uncommon for no stream to be marked as default at all; the rationale for the latter was that up until recently, it was dubious whether the Matroska specification allowed more than one default stream for track type (e.g. mkvmerge disallowed it). It was this point which led to the implementation of the above mentioned behaviour inspired by mkvmerge. Yet the Matroska specifications have changed and now explicitly allow to set more than one track of each type as default, so that the main reason of not using the dispositions as-is was rendered moot. Therefore this commit changes the default to pass the disposition through. The matroska-mpegts-remux FATE-test has been updated to still use the old "infer" mode so that it is still covered by FATE; the matroska-zero-length-block test has also been updated to cover the infer_no_subs mode. The references for lots of other FATE tests needed to be updated because of a newly added FlagDefault element with value zero (whereas a FlagDefault with value 1 needn't be coded at all, as it coincided with the default value of said element). Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avformat/matroskaenc: Allow to set multiple streams as defaultAndreas Rheinhardt2021-08-24
| | | | | | | | | | The Matroska specifications have evolved and now allow to mark multiple tracks of the same kind as default (whether this was legal or not before was dubious; e.g. mkvmerge disallowed it). Yet when the Matroska muxer is set to infer default dispositions if absent, it also enforced the now outdated restriction. So update this. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avformat/mov: add AVFMT_SHOW_IDS flagGyan Doshi2021-08-22
| | | | | | The MOV muxer can store streamids as track ids but they aren't visible when probing the result via lavf/dump or ffprobe due to lack of this flag in the demuxer.
* avfilter/aevalsrc: switch to activatePaul B Mahol2021-08-21
| | | | | | Allow to set the EOF timestamp. FATE test is updated, as last 2 frames were duplicated.
* avcodec/options_table: Treat (request_)channel_layout as channel layoutAndreas Rheinhardt2021-08-15
| | | | | | | Also adapt some FATE tests to already cover this. Reviewed-by: Paul B Mahol <onemda@gmail.com> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* FATE: add a test for sliced scalingAnton Khirnov2021-08-08
|
* tools/venc_data_dump: factor out demux/decode codeAnton Khirnov2021-08-08
| | | | It can be shared with other simple demux/decode tools.
* ffprobe: remove references to frame->pkt_ptsJames Almer2021-08-07
| | | | | | The field was removed during the last major bump. Signed-off-by: James Almer <jamrial@gmail.com>
* ffprobe: Rename Audio Service Type 'type' field to 'service_type'Derek Buitenhuis2021-08-06
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | 677a030b26045acb50353d7954ae984ceefcd807 introduced more printable side data types in ffprobe, however the Audio Service Type side data 'type' field that was introduced aliases an existing field of the same name within the side data array, which can lead to JSON output like: "side_data_list": [ { "side_data_type": "Audio Service Type", "type": 0 }, { "side_data_type": "Stereo 3D", "type": "side by side", "inverted": 1 } ] This, while technically valid JSON, is considered bad practice, since it forces all downstream users to manually parse it and check all types; it makes simple deserialization impossible. Worse, in som loosely type languages, it can lead to silent bugs if exising code assumed it was a different type. As such, rename this second "type" field to "service_type". Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
* lavfi/vf_scale: use default swscale flags for scalerLinjie Fu2021-08-05
| | | | | | | | | | | | | | | | | | Currently the default swscale flags for simple filter graph is bicubic, however for complex filter graph it uses bilinear as decleared in scale filter. $ffmpeg -v verbose -i input.mp4 -vf format=yuv420p,scale=800x600 -an -f null - [Parsed_scale_1 @ 0x7f86d2c160c0] w:1920 h:1080 fmt:yuv420p sar:0/1 -> w:800 h:600 fmt:yuv420p sar:0/1 flags:0x4 $ffmpeg -v verbose -i input.mp4 -filter_complex format=yuv420p,scale=800x600 -an -f null - [Parsed_scale_1 @ 0x7f8779e046c0] w:1920 h:1080 fmt:yuv420p sar:0/1 -> w:800 h:600 fmt:yuv420p sar:0/1 flags:0x2 Use default swscale flags (bicubic currently) for scale filter. - Remove flags="bilinear" from vf_scale - Update the FATE refs Signed-off-by: Linjie Fu <linjie.justin.fu@gmail.com>
* lavd/lavfi.c: Set time_base for 608 cc to container time_base.Yun Zhang2021-08-02
| | | | Suggested-By: ffmpeg@fb.com
* avcodec/noise_bsf: restore dropamount for backwards compatibilityGyan Doshi2021-07-30
|
* avcodec/noise_bsf: add expr supportGyan Doshi2021-07-29
|
* Remove unnecessary mem.h inclusionsAndreas Rheinhardt2021-07-22
| | | | Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avcodec/avcodec: Stop including channel_layout.h in avcodec.hAndreas Rheinhardt2021-07-22
| | | | | | Also include channel_layout.h directly wherever used. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* lavu/kperf: use ff_thread_once()J. Dekker2021-07-21
| | | | Signed-off-by: J. Dekker <jdek@itanimul.li>
* lavu/checkasm: add (private) kperf timing for macOSJ. Dekker2021-07-20
| | | | Signed-off-by: J. Dekker <jdek@itanimul.li>
* fate/ffprobe: Verify ffprobe XML output against schema fileTobias Rapp2021-07-13
| | | | | | | | | | | Adds schema validation for ffprobe XML output so that updating the ffprobe.xsd file upon changes to ffprobe is not forgotten. This was suggested by Marton Balint in: http://ffmpeg.org/pipermail/ffmpeg-devel/2021-March/278428.html The schema FATE test is only run if xmllint command is available. Signed-off-by: Tobias Rapp <t.rapp@noa-archive.com>
* fate/oggvorbis: Fix tests after fixing AV_PKT_DATA_SKIP_SAMPLESGuangyu Sun2021-07-12
| | | | | | | | | | | | | | | | | | | | | | After fixing AV_PKT_DATA_SKIP_SAMPLES for reading vorbis packets from ogg, the actual decoded samples become fewer. Three fate tests are failing: fate-vorbis-20: The samples in 6.ogg are not frame aligned. 6.pcm file was generated by ffmpeg before the fix. After the fix, the decoded pcm file does not match anymore. Ideally the ref file 6.pcm should be updated but it is probably not worth it including another copy of the same file, only smaller. SIZE_TOLERANCE is added for this test case. fate-webm-dash-chapters: The original vorbis_chapter_extension_demo.ogg is transmuxed to dash-webm. The ref file webm-dash-chapters needs to be updated. fate-vorbis-encode: This exposes another bug in the vorbis encoder that initial_padding is not correctly set. It is fixed in the previous patch. Signed-off-by: Guangyu Sun <gsun@roblox.com>
* sws: separate the calls to scaled vs unscaled conversionAnton Khirnov2021-07-03
| | | | | | | | | | Call the scaler function directly rather than through a function pointer. Drop the now-unused return value from ff_getSwsFunc() and rename the function to reflect its new role. This will be useful in the following commits, where it will become important that the amount of output is different for scaled vs unscaled case.
* checkasm/vp9dsp: rename the iszero function to is_zeroMatthieu Patou2021-06-08
| | | | | | Suggested-by: ffmpeg@fb.com Reviewed-by: Ronald S. Bultje <rsbultje@gmail.com> Signed-off-by: James Almer <jamrial@gmail.com>
* fate-aac: use the fast coder for testsLynne2021-05-21
| | | | | | | | The twoloop coder is highly loaded with (pseudo-)perceptual metrics, and the aim of the tests is to piece-wise test each function of the encoder, for which the 'fast' coder is perfect, since it only decides on which scalefactors to use, rather than enable or disable encoder features.
* avformat/flvdec: use milisecond precision for parsing timestampsMarton Balint2021-05-20
| | | | | | | Also use helper function to set the timestamp. Maybe we could also use nanosecond precision, but there were some float rounding concerns. Signed-off-by: Marton Balint <cus@passwd.hu>
* avformat/framecrcenc: print basic side data information againJames Almer2021-05-18
| | | | | | This partially reverts c6ae560a18d67b9ddaa25a0338b7fb55e3312e57. Signed-off-by: James Almer <jamrial@gmail.com>
* fate: add a more extensive test for APNG_DISPOSE_OP_BACKGROUNDAnton Khirnov2021-05-14
| | | | Uses the sample from #9184.
* lavf/flvdec: normalize exporting date metadataAnton Khirnov2021-05-12
| | | | | | | | | | | | | Export them in UTC, not the local timezone. This way the output is the same everywhere. The timezone information stored in the file is still ignored, since there seems to be no simple way to export it correctly. Format them according to ISO 8601, which we generally use for exporting dates. Fixes fate-flv-demux, which was broken since 958bea5248f87116b0dd080461aa70c14ea86cf0 on some platforms.
* lavf/framecrcenc: do not hash side dataAnton Khirnov2021-05-09
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | There are no guarantees that all side data types have the same representation on all platforms. Tests that change output due to this: id3v2-priv-remux, cover-art-mp3-id3v2-remux, gapless-mp3: SKIP_SAMPLES, which is tested by fate-gapless-mp3-side-data matroska-vp8-alpha-remux: MATROSKA_BLOCKADDITIONAL, which is tested by remux itself (side data is written into output) matroska-mastering-display-metadata: MASTERING_DISPLAY_METADATA and CONTENT_LIGHT_LEVEL, which are tested by ffprobe invocation in the same test matroska-spherical-mono-remux: STEREO3D and SPHERICAL, which are tested by ffprobe invocation in the same test segment-mp4-to-ts: MPEGTS_STREAM_ID, which is tested by ts remuxing tests webm-webvtt-remux: WEBVTT_IDENTIFIER/SETTINGS, which is tested by the ffprobe invocation in the same test mxf-d10-user-comments: CPB_PROPERTIES, which is tested by mxf-probe-d10 mov-cover-image: SKIP_SAMPLES, which is tested for mov by mov-aac-2048-priming copy-trac3074: AUDIO_SERVICE_TYPE, which is tested by fate-hls-fmp4_ac3
* fate: drop the vp8-alpha testAnton Khirnov2021-05-09
| | | | It is redundant with matroska-vp8-alpha-remux.
* fate-run.sh: print stream side data in probeaudiostream()Anton Khirnov2021-05-09
| | | | Adds a test for reading AUDIO_SERVICE_TYPE in fate-hls-fmp4_ac3
* fate-webm-webvtt-remux: print packet side data in ffprobe outputAnton Khirnov2021-05-09
|
* fate/demux: convert flv-demux to ffprobeAnton Khirnov2021-05-09
| | | | It can handle side data cleanly.
* fate-ts-demux: convert to ffprobeAnton Khirnov2021-05-09
| | | | It can handle side data cleanly.
* fate-ts-opus-demux: convert to ffprobeAnton Khirnov2021-05-09
| | | | It can handle side data cleanly.
* fate-ts-small-demux: convert to ffprobeAnton Khirnov2021-05-09
| | | | It can handle side data cleanly.