summaryrefslogtreecommitdiff
path: root/tests/ref/fate
Commit message (Collapse)AuthorAge
* fate/ffmpeg: add a test for loopback decodingJames Almer2024-03-14
| | | | Signed-off-by: James Almer <jamrial@gmail.com>
* avformat/daudenc: force 2000 sample packet size with a bsfMarton Balint2024-03-14
| | | | | | | | The samples I found all have 2000 sample packets, and by forcing the packet size with a bsf we could automagically make muxing work for packets containing more than 3640 samples. Signed-off-by: Marton Balint <cus@passwd.hu>
* fftools/ffprobe: export IAMF Stream Group parametersJames Almer2024-03-13
| | | | Signed-off-by: James Almer <jamrial@gmail.com>
* fftools/ffprobe: export Tile Grid Stream Group parametersJames Almer2024-03-13
| | | | Signed-off-by: James Almer <jamrial@gmail.com>
* fftools/ffmpeg_filter: refactor setting input timebaseAnton Khirnov2024-03-13
| | | | | | | | | | | | | | Treat it analogously to stream parameters like format/dimensions/etc. This is functionally different from previous code in 2 ways: * for non-CFR video, the frame timebase (set by the decoder) is used rather than the demuxer timebase * for sub2video, AV_TIME_BASE_Q is used, which is hardcoded by the subtitle decoding API These changes should avoid unnecessary and potentially lossy timestamp conversions from decoder timebase into the demuxer one. Changes the timebases used in sub2video tests.
* tests/fate/matroska: add tests for side data preferenceAnton Khirnov2024-03-08
| | | | | | Cf. #10857 Signed-off-by: Anton Khirnov <anton@khirnov.net>
* lavu/opt: add array optionsAnton Khirnov2024-03-08
|
* avutil: remove deprecated FF_API_FRAME_PICTURE_NUMBERJames Almer2024-03-07
| | | | Signed-off-by: James Almer <jamrial@gmail.com>
* avutil: remove deprecated FF_API_PKT_DURATIONJames Almer2024-03-07
| | | | Signed-off-by: James Almer <jamrial@gmail.com>
* avutil: remove deprecated FF_API_OLD_CHANNEL_LAYOUTJames Almer2024-03-07
| | | | Signed-off-by: James Almer <jamrial@gmail.com>
* fate/iamf: print stream dispositionJames Almer2024-03-05
| | | | Signed-off-by: James Almer <jamrial@gmail.com>
* fate/mov: add a heic test with a derived image using a single item twiceJames Almer2024-03-05
| | | | Signed-off-by: James Almer <jamrial@gmail.com>
* fate/mov: use framecrc for the remaining avif/heic testsJames Almer2024-03-05
| | | | | | Put them in sync with the other tests. Signed-off-by: James Almer <jamrial@gmail.com>
* fate/mov: print stream group information for avif/heic testsJames Almer2024-03-05
| | | | Signed-off-by: James Almer <jamrial@gmail.com>
* avformat/mov: fix setting dependent disposition on ambisonic IAMF streamsJames Almer2024-03-05
| | | | Signed-off-by: James Almer <jamrial@gmail.com>
* fate/mov: print stream group information for iamf testsJames Almer2024-03-05
| | | | | Reviewed-by: Stefano Sabatini <stefasab@gmail.com> Signed-off-by: James Almer <jamrial@gmail.com>
* fate/iamf: print stream group informationJames Almer2024-03-05
| | | | | Reviewed-by: Stefano Sabatini <stefasab@gmail.com> Signed-off-by: James Almer <jamrial@gmail.com>
* fftools/ffprobe: add support for Stream GroupsJames Almer2024-03-05
| | | | | Reviewed-by: Stefano Sabatini <stefasab@gmail.com> Signed-off-by: James Almer <jamrial@gmail.com>
* avformat/iamfenc: ensure updated extradata is writtenJames Almer2024-03-04
| | | | Signed-off-by: James Almer <jamrial@gmail.com>
* avformat/iamf_writer: update extradata from packet side dataJames Almer2024-03-04
| | | | | | | Some encoders, like flac, propagate updated extradata at the end of encoding as packet side data. Use it to update the relevant codec_config. Signed-off-by: James Almer <jamrial@gmail.com>
* avformat/wavdec: dynamically set max_size by defaultMarton Balint2024-03-02
| | | | | | | | | | | | | The wav demuxer by default tried to demux 4096-byte packets which caused packets with very few number of samples for files with high channel count. This caused a significant overhead especially since the latest ffmpeg.c threading changes. So let's use a similar approach for selecting audio frame size which is already used in the PCM demuxer, which is to read 25 times per second but at most 1024 samples. Signed-off-by: Marton Balint <cus@passwd.hu>
* fate/mov: add tests for HEIF samples with derived imagesJames Almer2024-02-26
| | | | Signed-off-by: James Almer <jamrial@gmail.com>
* fate/mov: test remuxing all stream heif itemsJames Almer2024-02-26
| | | | Signed-off-by: James Almer <jamrial@gmail.com>
* fate/mxf: fix mxf-probe-j2k on big endian systemsMarton Balint2024-02-25
| | | | | | | | | Jpeg2000 decoder is decoding in native endian, so let's use the same workaround as in fate-mxf-probe-applehdr10. Fixes ticket #10868. Signed-off-by: Marton Balint <cus@passwd.hu>
* fate: add IAMF in mp4 testsJames Almer2024-02-20
| | | | Signed-off-by: James Almer <jamrial@gmail.com>
* fate: use an even more exotic channel layout mov-mp4-pcm-float testMarton Balint2024-02-19
| | | | | | | The old layout happened to be a native layout and therefore missed some recently fixed layout parsing bugs. Signed-off-by: Marton Balint <cus@passwd.hu>
* avformat/mpegts: add a ts_id exported optionJames Almer2024-02-19
| | | | | | It will replace AVFormatContext.ts_id in the coming bump. Signed-off-by: James Almer <jamrial@gmail.com>
* avutil/channel_layout: print known layout names in custom layoutJames Almer2024-02-18
| | | | | | | If a custom layout is equivalent to a native one, check if it matches one of the known layout names and print that instead. Signed-off-by: James Almer <jamrial@gmail.com>
* {avcodec,tests}: rename the bundled Mesa AV1 vulkan video headersJan Ekström2024-02-18
| | | | | | | | | | | | | | | | | | This together with adjusting the inclusion define allows for the build to not fail with latest Vulkan-Headers that contain the stabilized Vulkan AV1 decoding definitions. Compilation fails currently as the AV1 header is getting included via hwcontext_vulkan.h -> <vulkan/vulkan.h> -> vulkan_core.h, which finally includes vk_video/vulkan_video_codec_av1std.h and the decode header, leading to the bundled header to never defining anything due to the inclusion define being the same. This fix is imperfect, as it leads to additional re-definition warnings for things such as VK_STD_VULKAN_VIDEO_CODEC_AV1_DECODE_SPEC_VERSION. , but it is not clear how to otherwise have the bundled version trump the actually standardized one for a short-term compilation fix.
* avutil/tests/channel_layout: add tests for av_channel_order_retypeMarton Balint2024-02-18
| | | | Signed-off-by: Marton Balint <cus@passwd.hu>
* avfilter/buffersrc: promote unspecified color metadataNiklas Haas2024-02-13
| | | | | | | | | | | | Currently, this only affects untagged RGB/XYZ/Gray, which get forced to their corresponding metadata before entering the filter graph. The main justification for this change, however, is the planned ability to add automatic promotion of unspecified yuv to mpeg range yuv. Notably, this change will never allow accidentally cross-promoting unspecified to jpeg or to a specific YUV matrix, since that is still bound by the constraints of YUV range negotiation as set up by query_formats.
* lavf/assenc: normalize line endings to \nrcombs2024-02-11
| | | | | | | | | | | | Previously, we produced output with either \r\n or mixed line endings. This was undesirable unto itself, but also made working with patches affecting FATE output particularly challenging, especially via the mailing list. Everything that consumes the SSA/ASS format is line-ending-agnostic, so \n is selected to simplify git/ML usage in FATE. Extra \r characters at the end of a packet are dropped. These are always ignored by the renderer anyway.
* lavc/dxv: align to 4x4 blocks instead of 16x16Connor Worley2024-02-09
| | | | | | | | | | | | | | | | | | | | | | | | | | | The previous assumption that DXV needs to be aligned to 16x16 was erroneous. 4x4 works just as well, and FATE decoder tests pass for all texture formats. On the encoder side, we should reject input that isn't 4x4 aligned, like the HAP encoder does, and stop aligning to 16x16. This both solves the uninitialized reads causing current FATE tests to fail and produces smaller encoded outputs. With regard to correctness, I've checked the decoding path by encoding a real-world sample with git master, and decoding it with ffmpeg -i dxt1-master.mov -c:v rawvideo -f framecrc - The results are exactly the same between master and this patch. On the encoding side, I've encoded a real-world sample with both master and this patch, and decoded both versions with ffmpeg -i dxt1-{master,patch}.mov -c:v rawvideo -f framecrc - Under this patch, results for both inputs are exactly the same. In other words, the extra padding gained by 16x16 alignment over 4x4 alignment has no impact on decoded video. Signed-off-by: Connor Worley <connorbworley@gmail.com> Signed-off-by: Martin Storsjö <martin@martin.st>
* fate/video: add DXV3 HQ testsConnor Worley2024-02-08
| | | | Signed-off-by: Connor Worley <connorbworley@gmail.com>
* fate/video: add DXV3 DXT1 encoding testConnor Worley2024-02-08
| | | | Signed-off-by: Connor Worley <connorbworley@gmail.com>
* lavc/texturedsp: fix premult2straight inversionConnor Worley2024-02-08
| | | | | | This function should convert premultiplied alpha to straight, but does the opposite. Signed-off-by: Connor Worley <connorbworley@gmail.com>
* avfilter: pass link YUV colorspace to ff_draw_init2Niklas Haas2024-02-06
| | | | | | | | | | | | | This makes all ff_draw_* based filters aware of YUV colorspaces and ranges. Needed for YUVJ removal. Also fixes a bug where e.g. vf_pad would generate a limited range background even after conversion to full-scale grayscale. The FATE changes were a consequence of the aforementioned bugfix - the gray scale files are output as full range (due to conversion by libswscale, which hard-codes gray = full), and appropriately tagged as such, but before this change the padded version incorrectly used a limited range (16) black background for these formats.
* tests/fate/mov: add a test for reading and writing amve boxCosmin Stejerean2024-02-04
|
* fftools/ffmpeg: optimize inter-thread queue sizesAnton Khirnov2024-01-28
| | | | | | | Use 8 packets/frames by default rather than 1, which seems to provide better throughput. Allow -thread_queue_size to set the muxer queue size manually again.
* tests/fate/ffmpeg: add a test for the issue fixed in previous commitAnton Khirnov2024-01-27
|
* fate/iamf: add an ambisonic testJames Almer2024-01-23
| | | | Signed-off-by: James Almer <jamrial@gmail.com>
* fate: add VVC decoder testsJames Almer2024-01-23
| | | | Signed-off-by: James Almer <jamrial@gmail.com>
* avcodec/speexdec: fix setting frame_size from extradataJames Almer2024-01-22
| | | | | | | | | Finishes fixing vp5/potter512-400-partial.avi The fate-matroska-ms-mode test ref is updated to reflect that the Speex decoder can now read the stream. Signed-off-by: James Almer <jamrial@gmail.com>
* fate: add raw IAMF testsJames Almer2024-01-22
| | | | | | | Covers muxing from raw pcm audio input into FLAC, using several scalable layouts, and demuxing the result. Signed-off-by: James Almer <jamrial@gmail.com>
* fftools/ffmpeg_demux: implement -bsf for inputAnton Khirnov2024-01-19
| | | | | Previously bitstream filters could only be applied right before muxing, this allows to apply them right after demuxing.
* avutil/eval: Use even better PRNGMichael Niedermayer2024-01-16
| | | | | | | | | | | | | | | | | | This is the 64bit version of Chris Doty-Humphreys SFC64 Compared to the LCGs these produce much better quality numbers. Compared to LFGs this needs less state. (our LFG has 224 byte state for its 32bit version) this has 32byte state Also the initialization for our LFG is slower. This is also much faster than KISS or PCG. This commit replaces the broken LCG used before. (broken as it had only a period ~200M due to being put in a double) This changes the output from random() which is why libswresample.mak is updated, update was done using the command in libswresample.mak Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avformat/mov: improve HEIF parsingJames Almer2024-01-15
| | | | | | | | | | | | Parse iprp and iinf boxes and its child boxes to get the actual codec used (AV1 for avif, HEVC for heic), and properly export extradata and other properties in a generic way. The avif tests reference files are updated as the extradata is now exported. Based on a patch by Swaraj Hota Co-authored-by: Swaraj Hota <swarajhota353@gmail.com> Signed-off-by: James Almer <jamrial@gmail.com>
* fate/mov: force the native av1 decoder for the avif testsJames Almer2024-01-09
| | | | Signed-off-by: James Almer <jamrial@gmail.com>
* avformat/mov: Add support for demuxing still HEIC imagesVignesh Venkatasubramanian via ffmpeg-devel2024-01-09
| | | | | | | | | | | | | | | | | | They are similar to AVIF images (both use the HEIF container). The only additional work needed is to parse the hvcC box and put it in the extradata. With this patch applied, ffmpeg (when built with an HEVC decoder) is able to decode the files in https://github.com/nokiatech/heif/tree/gh-pages/content/images Also add a couple of fate tests with samples from https://github.com/nokiatech/heif_conformance/tree/master/conformance_files Partially fixes trac ticket #6521. Signed-off-by: Vignesh Venkatasubramanian <vigneshv@google.com> Signed-off-by: James Almer <jamrial@gmail.com>
* fate: Add fsync filter testsThilo Borgmann2024-01-05
|