[FFmpeg-devel] Feature request: "overlap" option for segment muxer?
Hi everyone! We're planning on using FFmpeg's segment muxer [1] to split radio recordings for archival preservation usage (*). Works pretty well! (except for some warnings, but that's another issue). Would it be possible to have a "segment_overlap" option, to add some time before/after each cut, so that the output segments overlap? Thank you very much in advance, Peter B. (*) For example: $ ffmpeg -i day1.ts -c copy -map 0 -copy_unknown -f segment -segment_time 3600 out/day1-%03d.ts # Links: [1] https://ffmpeg.org/ffmpeg-all.html#segment_002c-stream_005fsegment_002c-ssegment ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".
[FFmpeg-devel] Feature request: Segment using info from textfile?
Hello everyone! :) FFmpeg's segment muxer [1] is very useful and very configurable already, and I was wondering if it would be possible to add the possibility for splitting based on something like information given in an additional (text)file? Each line of the textfile would contain the following information: * start-position * end-position * title Creating a separate file for each start/end/title line. We would need such a functionality for archival preservation of multi-content recordings. This can be a paid request. Thank you very much in advance, Peter B. # Links: [1] https://ffmpeg.org/ffmpeg-formats.html#segment_002c-stream_005fsegment_002c-ssegment [2] https://en.wikipedia.org/wiki/Edit_decision_list ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".
Re: [FFmpeg-devel] [PATCH v2 3/3] avformat/hashenc: add streamhash muxer
Hi :) On 11/09/2019 17:57, Gyan wrote: > > On 11-09-2019 08:19 PM, Moritz Barsnick wrote: >> The original user suggesting this muxer also requested a stream type >> indicator. Is that info really useful and not redundant, assuming the >> user will need to understand the implications of remuxing anyway? > > A bit of redundancy is useful for error-checking. If I understand this correctly, does it mean that the order of streams output by the streamhash muxer will be "in order of type" (video, audio, etc), independent of the order in the source? So 2 files (source/target) will have matching streamhash output order, independent of their actual stream order inside their containers? Since this streamhash is intended for content-validation and not remux-validation, I would say the way it's now is great! >> >> If I add this, and don't make it optional, what should the format be? >> Thus?: >> >> 0,v,SHA256=... >> 1,a,SHA256=... >> 2,s,SHA256=... > Looks fine. +1 from me, too :) I guess with multiple A/V tracks it will then be like this? 0,v,SHA256=... 1,v,SHA256=... 2,a,SHA256=... 3,a,SHA256=... 4,a,SHA256=... 5,s,SHA256=... Thank you very much, Peter B. ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".
Re: [FFmpeg-devel] [PATCH v2 3/3] avformat/hashenc: add streamhash muxer
btw: If you need anything to be tested, just let me know :) Cheers! Peter ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".
Re: [FFmpeg-devel] [PATCH] avcodec/ffv1enc: Use version 3 by default (CRCs by default)
On 09/12/2019 17:27, Kieran O Leary wrote: This was recently raised at the No Time To Wait conference in Budapest, so it would be great to see version three as the default! Actually it was triggered by NTTW4. (Thanks Michael for addressing this) It should be noted though, that Michael also reminded me of "why it was v1 in the first place": [quote] "The default is the lowest version which supports all the user selected features. Thats chosen so as to generate a file which is most widely supported. (older bitstream versions work on older decoders, newer would only work on newer decoders)" [/quote] This should be known. However, since I hardly see any reason to prefer v1 over v3 anymore, and considering that it's now the most widely one used, I'm happy to see it become default. Any objections? Kind regards, Peter B. ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".
Re: [FFmpeg-devel] [PATCH]lavf/matroska: Support codec id V_FFV1 for FFV1.
On 03/01/2017 03:00 PM, Jerome Martinez wrote: > My suggestion: > - support by the demuxer > - for the muxer, support only if a specific explicit option is set, > default stays AVI compatibility layer (no break in playback by old > players). This sounds like a very practical approach to me: New files can be played, but one is not accidentially/surprisingly creating incompatible files unless they explicitly choose to do so. :) Regards, Pb ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
Re: [FFmpeg-devel] Reintroducing FFmpeg to Debian
On 08/08/2014 09:22 PM, Matthias Urlichs wrote: > We'd also benefit from the fact that Upstream tends to use FFmpeg. I'd > hate to report some intractable codec bug which Upstream closes with > an "it works with FFmpeg" comment Oh, btw, just a few days ago, that's exactly what happened on kdenlive [1]. A developer posted the following statement on an issue which is open for more than 1.5 years now: [quote] Confirm this is a libav problem, use builds with ffmpeg or wait debian (&derivatives) to bring ffmpeg back [/quote] Just thought this might fit here... Regards, Pb == References: [1] http://www.kdenlive.org/mantis/view.php?id=2943#c10195 ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
Re: [FFmpeg-devel] Reintroducing FFmpeg to Debian
On 08/19/2014 12:45 PM, Clément Bœsch wrote: > See: > http://fate.ffmpeg.org/ > http://coverage.ffmpeg.org/ The 2nd link to "coverage" (which should show the LCOV output, I guess) seems to be broken: I get a "404 Not Found" :( Regards, Pb ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
Re: [FFmpeg-devel] Please help update tasks and mentor/backups for OPW
On 09/25/2014 10:54 PM, Carl Eugen Hoyos wrote: > The FFv1 P frame project sounds very difficult. I just read the description of this [1]. I was surprised to see this, because currently FFV1 already supports GOPs > 1, and according to my tests [2], FFV1.3 already is faster *and* smaller than h264-lossless :) Regards, Pb == References: [1] https://trac.ffmpeg.org/wiki/SponsoringPrograms/OPW/2014-12#FFv1Pframesupport [2] http://download.das-werkstatt.com/pb/mthk/info/video/comparison_video_codecs_containers.html#codec_tests ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
[FFmpeg-devel] FFV1 slicecrc: "hashxx" instead of "CRC" for speed?
Hi everyone :) This is merely a question of interest. Not a request, complaint or trolling of any kind :) I'm happy about any answer. I'm curious. Would it possibly have a significant impact on coding speed of FFV1's slicecrc option (Where a CRC is calculated for each frame slice), to use a faster algorithm instead (if one exists)? I'm wondering if, for example something like "xxHash" may warrant a try? (Haven't found CRC vs xxHash benchmarks yet, but I'm still looking) Anyhow, Thanks for any of your time :D ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".
Re: [FFmpeg-devel] FFV1 slicecrc: "hashxx" instead of "CRC" for speed?
Thanks for all your replies! Now I can refer to this, when being asked "Why CRC and not ...?" :) Kind regards, Peter ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".
[FFmpeg-devel] hashing audio streams beyond pcm_s16le
Hello everyone :) I was wondering about the behavior of FFmpeg's hashing muxer for audio streams: For example: With a 32bit float (f32le) source, FFmpeg seems to be able to generate a hash for the f32le source - but only if I explicitly know (and then tell) FFmpeg to do so. By default, I get the hash of a pcm_s16le version (see examples below). I remember it defaults to "pcm_s16le" (also mentioned in https://trac.ffmpeg.org/wiki/framemd5%20Intro%20and%20HowTo), but why is that so? And would it be possible to generate the hash of the source audio, without having to know what raw/uncompressed type it is? I would like to be able to use the hash to compare lossless conversion of the content between different audio formats (eg vs FLAC and PCM). Thank you very much in advance :) Peter B. Example: # pcm_f32le defaults to pcm_s16le hash: $ ffmpeg-git -loglevel quiet -i drums3.wav -f streamhash -hash md5 - 0,a,MD5=08170d6e02fbccc07b61fbf1d7476057 # ...as shown here: $ ffmpeg-git -loglevel quiet -i drums3.wav -c:a pcm_s16le -f streamhash -hash md5 - 0,a,MD5=08170d6e02fbccc07b61fbf1d7476057 # $ ffmpeg-git -loglevel quiet -i drums3.wav -c:a pcm_f32le -f streamhash -hash md5 - 0,a,MD5=1444cdc20cb8ea30874114cb53729797 $ ffmpeg-git -loglevel quiet -i drums3.wav -c:a copy -f streamhash -hash md5 - 0,a,MD5=1444cdc20cb8ea30874114cb53729797 $ ffmpeg-git -i drums3.wav -hash md5 - ffmpeg version N-109029-g1800a0da09 Copyright (c) 2000-2022 the FFmpeg developers built with gcc 9 (Ubuntu 9.4.0-1ubuntu1~20.04.1) configuration: --prefix=/usr/local --enable-gpl --enable-nonfree --enable-version3 --enable-postproc --enable-ffplay --enable-swscale --enable-avfilter --enable-pthreads --enable-bzlib --enable-zlib --enable-decoder=png --enable-encoder=png --enable-openssl --samples=../fate-suite --enable-libfreetype --enable-libopenjpeg --disable-decoder=jpeg2000 --enable-libvpx --enable-libvorbis --enable-libx264 --enable-libx265 libavutil 57. 42.100 / 57. 42.100 libavcodec 59. 52.100 / 59. 52.100 libavformat 59. 34.101 / 59. 34.101 libavdevice 59. 8.101 / 59. 8.101 libavfilter 8. 50.100 / 8. 50.100 libswscale 6. 8.112 / 6. 8.112 libswresample 4. 9.100 / 4. 9.100 libpostproc 56. 7.100 / 56. 7.100 Guessed Channel Layout for Input Stream #0.0 : mono Input #0, wav, from 'drums3.wav': Duration: 00:00:54.25, bitrate: 1536 kb/s Stream #0:0: Audio: pcm_f32le ([3][0][0][0] / 0x0003), 48000 Hz, 1 channels, flt, 1536 kb/s ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".
Re: [FFmpeg-devel] Matroska and PCM variants, error in encoding?
On 08/03/2015 01:50 PM, Ronald S. Bultje wrote: > Just different offsets and ranges. Unsigned, n bits (e.g. u8) is in the > range [0,2^^n> (e.g. for u8, the range is [0,255] or [0,256>), where > silence is 2^^n-1, e.g. 0x80 (128) for u8. Signed is in the range > [-2^^n-1,2^^n-1> (e.g. s16, the most typical variant, is [-32768,32767]. > Float is in the range [-1.0, 1.0]. In both cases, 0, is silence. > > We have various formats so we can represent exactly what's in a file or > output by any one particular decoder without having to convert the internal > representation into some intermediate format. Thanks for that detailed explanation. I've never used DPCM with FFmpeg, but after Andreas' question I looked it up, and found some documentation, and wanted to clear things up. Am I correct with the following conclusion: - acodec "pcm_*" is always linear PCM [1] - DPCM would be prefixed with "adpcm_*" (and some exceptions, like "interplay_dpcm", etc [2]) Thanks in advance, Pb == References: [1] https://trac.ffmpeg.org/wiki/audio%20types [2] http://ffmpeg.org/doxygen/trunk/dpcm_8c.html ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
[FFmpeg-devel] Adding FATE tests for FFV1 - revisited
Hello, I've been working on FATE tests for FFV1 in the past already [1]. My tests didn't work on all platforms and therefore never made it upstream. I think it's better if I try to provide these new tests in smaller chunks now :) First of all, there are things I find inconsistent or confusing with the current tests (vcodec.mak): - ENCOPTS for FFV1.3 contain "-vcodec ffv1" instead of "CODEC=ffv1" (this generates "-c ffv1.3" as parameter?) - Target "fate-vsynth%-*" tests default to sws_flags "accurate_rnd+bitexact". FFV1.3 tests have "neighbor+bitexact". Why? - ENCOPTS for "fate-vsynth%-ffv1" are "-slices 4", which is an FFV1.3-only option. - What is "ffv1.0"? My ideas/plans would be something like this: First steps: 1) Clean the current FFV1 tests (naming, ENCDEC options, etc) 2) Move FFV1 tests to its own file (ffv1.mak). Or at least to "lossless-video.mak". 3) Have separate tests for different FFV1 versions (1,3) Then: 4) Add default argument "-g 1" 5) Add tests to cover the following cases: - Color spaces YUV, RGB, GRAY - bits-per-component as currently supported - YUV subsampling 420, 422, 444 - Alpha channel: YUVA, BGRA Maybe: 6) Multiple coder/context options 7) Multiple slices options 8) Testing SliceCRC This will produce quite a number of tests :( I guess it is desired to keep the number of tests as low as necessary? I've attached my old test Makefile (ffv1.mak), for reference. :D What is the best way to proceed? Thanks in advance, Pb == References: [1] http://ffmpeg.org/pipermail/ffmpeg-user/2013-November/018361.html DEC_SRC = $(TARGET_PATH)/tests/data/fate # Word-size options for PSNR calculations: u8, s16, f32, f64 # Default is "u8" (8bits): fate-ffv1-enc-%: CMP_UNIT = u8 fate-ffv1-enc-%: CODEC = $(word 2, $(subst -, ,$(@))) fate-ffv1-enc-%: FMT = avi fate-ffv1-enc-%: SRC = tests/data/vsynth1.yuv # Limit the duration of test videos to 4 frames at 25fps: fate-ffv1-enc-%: DUR = 0:00:00.160 fate-ffv1-enc-%: CMD = enc_dec "rawvideo -s 352x288 -pix_fmt yuv420p $(RAWDECOPTS) -t $(DUR)" $(SRC) $(FMT) "-c $(CODEC) $(ENCOPTS)" rawvideo "-s 352x288 -pix_fmt yuv420p -vsync 0 $(DECOPTS)" -keep "$(DECINOPTS)" # This Makefile checks for $(CONFIG_...) variables being set, so we can # include/exclude tests accordingly: ifdef CONFIG_AVCONV FLAGS_FFV1_V3 = -strict experimental else FLAGS_FFV1_V3 = endif FATE_FFV1_LEVEL1 = v1-defaults \ v1-gray \ v1-rgb32\ v1-yuv410p \ v1-yuv411p \ v1-yuv420p \ v1-yuv422p \ v1-yuv444p \ v1-bgra \ v1-tff \ v1-bff # Target-specific tests: ifdef CONFIG_FFMPEG FATE_FFV1_LEVEL1 +=v1-bgr0 \ v1-yuv440p \ v1-yuva420p \ v1-yuva422p \ v1-yuva444p endif FATE_FFV1_LEVEL3 = v3-defaults \ v3-rgb32 \ v3-yuv410p \ v3-yuv420p \ v3-yuv422p \ v3-yuv444p \ v3-yuv420p9 \ v3-yuv422p9 \ v3-yuv444p9 \ v3-yuv420p10 \ v3-yuv422p10 \ v3-yuv444p10 \ v3-yuv420p16 \ v3-yuv422p16 \ v3-yuv444p16 \ v3-yuv422p_crc \ v3-yuv422p9_crc \ v3-yuv422p10_crc \ v3-yuv422p16_crc \ v3-yuv422p_pass1 \ v3-yuv422p_pass2 \ v3-tff \ v3-bff # Target-specific tests: ifdef CONFIG_FFMPEG FATE_FFV1_LEVEL3 +=v3-gray \ v3-gray16 \ v3-bgr0 \ v3-gbrp9 \ v3-gbrp10 \ v3-gbrp12 \ v3-gbrp14 \ v3-yuva420p9 \ v3-yuva422p9 \ v3-yuva444p9 \ v3-yuva420p10 \ v3-yuva422p10 \ v3-yuva444p10 \ v3-yuva420p16 \ v3-yuva422p16 \ v3-yuva444p16 endif FATE_FFV1 = $(FATE_FFV1_LEVEL1) \ $(FATE_FFV1_LEVEL3) # FFV1 - version 1 ### # Encoding: ### # YUV (8bit) # - This also iterates through all coder/context combinations. fate-ffv1-enc-v1-defaults: ENCOPTS = -
Re: [FFmpeg-devel] Adding FATE tests for FFV1 - revisited
On 08/30/2015 07:33 PM, Paul B Mahol wrote: > On 8/30/15, Peter B. wrote: >> This will produce quite a number of tests :( >> I guess it is desired to keep the number of tests as low as necessary? > Not at all. Just look at ffv1 coverage at coverage.ffmpeg.org :) I'd love to add tests for FFV1 to increase the coverage as much as possible. So, in order to avoid silent regressions in less-common combinations, I've added very detailed test-scenarios (as shown in my "ffv1.mak") previously. Except for a few other codecs (e.g. h264), most only have a handful of tests. So I thought my suggested test-suite was overkill. I'd like to keep the tests as much as necessary, but as little as possible. Regards, Pb ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
Re: [FFmpeg-devel] Adding FATE tests for FFV1 - revisited
On 08/30/2015 09:32 PM, Michael Niedermayer wrote: >> - Target "fate-vsynth%-*" tests default to sws_flags >> "accurate_rnd+bitexact". FFV1.3 tests have "neighbor+bitexact". Why? > it makes more cases lossless IIRC > the default upscaling + default downscaling is not binary identical Roger that. The way I understand the tests "lossless-video.mak", they operate differently than the ones in "vcodec.mak". I'd like to use that method (using framecrc) for FFV1 tests. Yet, all of them seem to require a specific sample in fate-suite. What's the proper way of using vsynth samples for that? My approach in the past was something like this: // --- fate-ffv1-enc-%: FMT = avi fate-ffv1-enc-%: SRC = tests/data/vsynth1.yuv # Limit the duration of test videos to 4 frames at 25fps: fate-ffv1-enc-%: DUR = 0:00:00.160 fate-ffv1-enc-%: CMD = enc_dec "rawvideo -s 352x288 -pix_fmt yuv420p $(RAWDECOPTS) -t $(DUR)" $(SRC) $(FMT) "-c $(CODEC) $(ENCOPTS)" rawvideo "-s 352x288 -pix_fmt yuv420p -vsync 0 $(DECOPTS)" -keep "$(DECINOPTS)" // --- That only uses vsynth1.yuv :( >> I guess it is desired to keep the number of tests as low as necessary? > avoiding redundant tests would be a good idea :) Will try my best. >> I've attached my old test Makefile (ffv1.mak), for reference. >> :D >> >> >> What is the best way to proceed? > probably, send patches > and probably better few and small ones at once then wait and see > in which direction reviewes go before spending too much time in some > specific direction Will do that. Currently starting with tidying up the existing tests. Thanks for your input! Pb ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
[FFmpeg-devel] Clean/reset FATE test data?
Hello, I've read the documentation on FATE tests, and would like to add new ones. How can I reset the FATE test data for certain targets, without having to re-run the whole test suite? Thank in advance, Pb ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
Re: [FFmpeg-devel] [PATCH] Cleaning existing FFV1 tests
Hi. I've now cleaned up a few things in the current FFV1 tests: - Changed "ffv1.X" to "ffv1-vX", removing necessity for vcodec argument. - Added linebreaks to FFV1 FATE tests for better readability. - Renamed pix_fmts wording in test target name to match pix_fmt parameter. Replaced the reference files accordingly, and ran "make fate" to verify that they still run properly. What do you think? Pb >From be1b2ee092a82fdf70ccb99eb20d70e228205182 Mon Sep 17 00:00:00 2001 From: Peter B. Date: Mon, 31 Aug 2015 03:02:36 +0200 Subject: [PATCH] Renamed pix_fmts wording in test target name to match pix_fmt parameter. --- tests/fate/vcodec.mak | 20 +++- tests/ref/vsynth/vsynth1-ffv1-v0 |4 tests/ref/vsynth/vsynth1-ffv1-v3-bgr0 |4 tests/ref/vsynth/vsynth1-ffv1-v3-yuv420p |4 tests/ref/vsynth/vsynth1-ffv1-v3-yuv422p10 |4 tests/ref/vsynth/vsynth1-ffv1-v3-yuv444p16 |4 tests/ref/vsynth/vsynth1-ffv1.0|4 tests/ref/vsynth/vsynth1-ffv1.3-420|4 tests/ref/vsynth/vsynth1-ffv1.3-422p10 |4 tests/ref/vsynth/vsynth1-ffv1.3-444p16 |4 tests/ref/vsynth/vsynth1-ffv1.3-bgr|4 tests/ref/vsynth/vsynth2-ffv1-v0 |4 tests/ref/vsynth/vsynth2-ffv1-v3-bgr0 |4 tests/ref/vsynth/vsynth2-ffv1-v3-yuv420p |4 tests/ref/vsynth/vsynth2-ffv1-v3-yuv422p10 |4 tests/ref/vsynth/vsynth2-ffv1-v3-yuv444p16 |4 tests/ref/vsynth/vsynth2-ffv1.0|4 tests/ref/vsynth/vsynth2-ffv1.3-420|4 tests/ref/vsynth/vsynth2-ffv1.3-422p10 |4 tests/ref/vsynth/vsynth2-ffv1.3-444p16 |4 tests/ref/vsynth/vsynth2-ffv1.3-bgr|4 tests/ref/vsynth/vsynth3-ffv1-v0 |4 tests/ref/vsynth/vsynth3-ffv1-v3-bgr0 |4 tests/ref/vsynth/vsynth3-ffv1-v3-yuv420p |4 tests/ref/vsynth/vsynth3-ffv1-v3-yuv422p10 |4 tests/ref/vsynth/vsynth3-ffv1-v3-yuv444p16 |4 tests/ref/vsynth/vsynth3-ffv1.0|4 tests/ref/vsynth/vsynth3-ffv1.3-420|4 tests/ref/vsynth/vsynth3-ffv1.3-422p10 |4 tests/ref/vsynth/vsynth3-ffv1.3-444p16 |4 tests/ref/vsynth/vsynth3-ffv1.3-bgr|4 tests/ref/vsynth/vsynth_lena-ffv1-v0 |4 tests/ref/vsynth/vsynth_lena-ffv1-v3-bgr0 |4 tests/ref/vsynth/vsynth_lena-ffv1-v3-yuv420|4 tests/ref/vsynth/vsynth_lena-ffv1-v3-yuv420p |4 tests/ref/vsynth/vsynth_lena-ffv1-v3-yuv422p10 |4 tests/ref/vsynth/vsynth_lena-ffv1-v3-yuv444p16 |4 tests/ref/vsynth/vsynth_lena-ffv1.0|4 tests/ref/vsynth/vsynth_lena-ffv1.3-420|4 tests/ref/vsynth/vsynth_lena-ffv1.3-422p10 |4 tests/ref/vsynth/vsynth_lena-ffv1.3-444p16 |4 tests/ref/vsynth/vsynth_lena-ffv1.3-bgr|4 42 files changed, 95 insertions(+), 89 deletions(-) create mode 100644 tests/ref/vsynth/vsynth1-ffv1-v0 create mode 100644 tests/ref/vsynth/vsynth1-ffv1-v3-bgr0 create mode 100644 tests/ref/vsynth/vsynth1-ffv1-v3-yuv420p create mode 100644 tests/ref/vsynth/vsynth1-ffv1-v3-yuv422p10 create mode 100644 tests/ref/vsynth/vsynth1-ffv1-v3-yuv444p16 delete mode 100644 tests/ref/vsynth/vsynth1-ffv1.0 delete mode 100644 tests/ref/vsynth/vsynth1-ffv1.3-420 delete mode 100644 tests/ref/vsynth/vsynth1-ffv1.3-422p10 delete mode 100644 tests/ref/vsynth/vsynth1-ffv1.3-444p16 delete mode 100644 tests/ref/vsynth/vsynth1-ffv1.3-bgr create mode 100644 tests/ref/vsynth/vsynth2-ffv1-v0 create mode 100644 tests/ref/vsynth/vsynth2-ffv1-v3-bgr0 create mode 100644 tests/ref/vsynth/vsynth2-ffv1-v3-yuv420p create mode 100644 tests/ref/vsynth/vsynth2-ffv1-v3-yuv422p10 create mode 100644 tests/ref/vsynth/vsynth2-ffv1-v3-yuv444p16 delete mode 100644 tests/ref/vsynth/vsynth2-ffv1.0 delete mode 100644 tests/ref/vsynth/vsynth2-ffv1.3-420 delete mode 100644 tests/ref/vsynth/vsynth2-ffv1.3-422p10 delete mode 100644 tests/ref/vsynth/vsynth2-ffv1.3-444p16 delete mode 100644 tests/ref/vsynth/vsynth2-ffv1.3-bgr create mode 100644 tests/ref/vsynth/vsynth3-ffv1-v0 create mode 100644 tests/ref/vsynth/vsynth3-ffv1-v3-bgr0 create mode 100644 tests/ref/vsynth/vsynth3-ffv1-v3-yuv420p create mode 100644 tests/ref/vsynth/vsynth3-ffv1-v3-yuv422p10 create mode 100644 tests/ref/vsynth/vsynth3-ffv1-v3-yuv444p16 delete mode 100644 tests/ref/vsynth/vsynth3-ffv1.0 delete mode 100644 tests/ref/vsynth/vsynth3-ffv1.3-420 delete mode 100644 tests/ref/vsynth/vsynth3-ffv1.3-422p10 delete mode 100644 tests/ref/vsynth/vsynth3-ffv1.3-444p16 delete mode 100644 tests/ref/vsynth/vsynth3-ffv1.3-bg
Re: [FFmpeg-devel] [PATCH] Cleaning existing FFV1 tests
Am Mo, 31.08.2015, 08:31 schrieb Carl Eugen Hoyos: > Peter B. das-werkstatt.com> writes: > >> Replaced the reference files accordingly > > This cannot be done, we want to run fate (also) > with old sources. Hm. Now I'm confused... I expected old sources to use old tests? In my case, there are files in "tests/ref/vsynth" that contain the expected reference results from tests. If I only provide the changed the FATE makefiles, like "vcodec.mak", who generates (and validates) the initial reference files? Thanks, Pb ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
Re: [FFmpeg-devel] [PATCH] Cleaning existing FFV1 tests
Am Mo, 31.08.2015, 11:22 schrieb Hendrik Leppkes: > On Mon, Aug 31, 2015 at 11:13 AM, Peter B. wrote: >> >> In my case, there are files in "tests/ref/vsynth" that contain the >> expected reference results from tests. >> >> If I only provide the changed the FATE makefiles, like "vcodec.mak", who >> generates (and validates) the initial reference files? >> > > The references inside the Git tree can be changed just fine if a > change in the tests warrants it. > What should not be changed is the samples inside the FATE suite - if a > change is needed, there should be a new sample with a new name - which > is probably what Carl refers to. > > But since these seem to be vsynth tests, no external samples from the > FATE suite are actually affected, are they? That makes perfect sense now. The current FFV1 tests only use vsynth*. No external samples. The reference files in "tests/ref/vsynth" had to be changed, because the tests were renamed, so the filenames inside the reference textfiles changed. So, it is correct if my patch includes "tests/ref/*" in the future? Regards, Pb ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
Re: [FFmpeg-devel] Adding FATE tests for FFV1 - revisited
On 08/31/2015 01:44 PM, Tobias Rapp wrote: > On 30.08.2015 21:32, Michael Niedermayer wrote: >>> - Target "fate-vsynth%-*" tests default to sws_flags >>> "accurate_rnd+bitexact". FFV1.3 tests have "neighbor+bitexact". Why? >> >> it makes more cases lossless IIRC >> the default upscaling + default downscaling is not binary identical > > Indeed. See > http://ffmpeg.org/pipermail/ffmpeg-devel/2015-June/174430.html and > http://ffmpeg.org/pipermail/ffmpeg-devel/2015-June/174447.html for > reference. All clear now. Thanks :) You also mentioned the stddev not being 0 for RGB. I've also noticed that yesterday. In my previous FFV1 tests, I'm using the file generated by ENC, therefore the pix_fmt of input/output matches and so the framecrc is happy :) // -- fate-ffv1-enc-v3-bgr0: ENCOPTS = -level 3 -g 1 -coder 0 -context 0 -slices 24 -slicecrc 0 -pix_fmt bgr0 $(FLAGS_FFV1_V3) fate-ffv1-dec-v3-bgr0: $(CMD = framecrc -i $(DEC_SRC)/ffv1-enc-v3-bgr0.avi) fate-ffv1-enc-v3-bgr0 // -- Would that be okay? >>> 4) Add default argument "-g 1" > > This removes the test for the default GOP size. True. Will keep that in mind. > I agree that having a full test suite for FFV1 would be a nice thing > but am not sure if integration into FATE is the right framework for > it. As far as I understand FATE tests need a good balance between > processing time and code coverage. I also understood it that way. Wouldn't want to overdo it. I'm not completely sure which things should definitely be tested in order to avoid regressions in not-so-common cases? What I've done previously is, to vary the coder/context/slices parameters for different pix_fmts. So the pix_fmts are tested, but at the same time coder/context/slices variations, too. I've added that since we've seen bugs with e.g. certain slice numbers during FFV1.3 development testing. > > Maybe it can be part of the IETF standardization task to create a FFV1 > test environment which tests every > color-space/bit-depth/subsampling/... combination? Definitely a good idea. However, it still doesn't serve the purpose of being a FATE test to avoid regressions. Additionally, I'm also planning to submit the final FFV1 tests to LibAV, so that LibAV stays compatible with changes/improvements implemented in FFmpeg. Regards, Pb ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
Re: [FFmpeg-devel] Adding FATE tests for FFV1 - revisited
On 08/30/2015 09:32 PM, Michael Niedermayer wrote: > probably, send patches > and probably better few and small ones at once then wait and see > in which direction reviewes go before spending too much time in some > specific direction For starters, I'd like to extract the FATE tests for FFV1 to its own file: "tests/fate/ffv1.mak" In order to keep the individual changes (=individual patches) minimal, I've done the following: 1) Move existing FFV1 targets from "vcodec.mak" to "ffv1.mak". 2) Add "include tests/fate/ffv1.mak" in vcodec.mak where the targets were previously. Works. But actually, I think it'd be best to change the FFV1 tests to match the ones in "lossless-video.mak", using framecrc rather than the enc_dec function used in "vcodec.mak". Changing that however, makes it difficult to stick with the auto-generated fate-vsynth% targets. So I'd actually be doing a major rewrite of the existing tests - even just keeping the ones that already exists. What is your suggestion? Thanks, Pb ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
Re: [FFmpeg-devel] [PATCH 1/2] Extract FFV1 FATE tests to own Makefile
On 09/01/2015 09:54 PM, Peter B. wrote: > [...] > But actually, I think it'd be best to change the FFV1 tests to match the > ones in "lossless-video.mak", using framecrc rather than the enc_dec > function used in "vcodec.mak". > > Changing that however, makes it difficult to stick with the > auto-generated fate-vsynth% targets. > So I'd actually be doing a major rewrite of the existing tests - even > just keeping the ones that already exists. > > What is your suggestion? Thought I'd give it a try already :) The attached patch extracts the FFV1 tests to ffv1.mak, and includes the Makefile in vcodec.mak. Tests themselves stay as-is. Regards, Pb >From 23bd1397b2aa68541bad334f868d968b79c24bf5 Mon Sep 17 00:00:00 2001 From: Peter B. Date: Tue, 1 Sep 2015 21:55:35 +0200 Subject: [PATCH 1/2] Moved FFV1 FATE tests to own file. --- tests/fate/ffv1.mak | 16 tests/fate/vcodec.mak | 16 +--- 2 files changed, 17 insertions(+), 15 deletions(-) create mode 100644 tests/fate/ffv1.mak diff --git a/tests/fate/ffv1.mak b/tests/fate/ffv1.mak new file mode 100644 index 000..f9f2261 --- /dev/null +++ b/tests/fate/ffv1.mak @@ -0,0 +1,16 @@ +FATE_VCODEC-$(call ENCDEC, FFV1, AVI) += ffv1 ffv1-v0 \ + ffv1-v3-yuv420p ffv1-v3-yuv422p10 ffv1-v3-yuv444p16 \ + ffv1-v3-bgr0 +fate-vsynth%-ffv1: ENCOPTS = -slices 4 +fate-vsynth%-ffv1-v0:CODEC = ffv1 +fate-vsynth%-ffv1-v3-yuv420p:ENCOPTS = -level 3 -pix_fmt yuv420p +fate-vsynth%-ffv1-v3-yuv422p10: ENCOPTS = -level 3 -pix_fmt yuv422p10 \ + -sws_flags neighbor+bitexact +fate-vsynth%-ffv1-v3-yuv422p10: DECOPTS = -sws_flags neighbor+bitexact +fate-vsynth%-ffv1-v3-yuv444p16: ENCOPTS = -level 3 -pix_fmt yuv444p16 \ + -sws_flags neighbor+bitexact +fate-vsynth%-ffv1-v3-yuv444p16: DECOPTS = -sws_flags neighbor+bitexact +fate-vsynth%-ffv1-v3-bgr0: ENCOPTS = -level 3 -pix_fmt bgr0 \ + -sws_flags neighbor+bitexact +fate-vsynth%-ffv1-v3-bgr0: DECOPTS = -sws_flags neighbor+bitexact + diff --git a/tests/fate/vcodec.mak b/tests/fate/vcodec.mak index 310352e..aa2f07b 100644 --- a/tests/fate/vcodec.mak +++ b/tests/fate/vcodec.mak @@ -68,21 +68,7 @@ fate-vsynth%-dv-50: ENCOPTS = -dct int -s pal -pix_fmt yuv422p \ fate-vsynth%-dv-50: DECOPTS = -sws_flags neighbor fate-vsynth%-dv-50: FMT = dv -FATE_VCODEC-$(call ENCDEC, FFV1, AVI) += ffv1 ffv1-v0 \ - ffv1-v3-yuv420p ffv1-v3-yuv422p10 ffv1-v3-yuv444p16 \ - ffv1-v3-bgr0 -fate-vsynth%-ffv1: ENCOPTS = -slices 4 -fate-vsynth%-ffv1-v0:CODEC = ffv1 -fate-vsynth%-ffv1-v3-yuv420p:ENCOPTS = -level 3 -pix_fmt yuv420p -fate-vsynth%-ffv1-v3-yuv422p10: ENCOPTS = -level 3 -pix_fmt yuv422p10 \ - -sws_flags neighbor+bitexact -fate-vsynth%-ffv1-v3-yuv422p10: DECOPTS = -sws_flags neighbor+bitexact -fate-vsynth%-ffv1-v3-yuv444p16: ENCOPTS = -level 3 -pix_fmt yuv444p16 \ - -sws_flags neighbor+bitexact -fate-vsynth%-ffv1-v3-yuv444p16: DECOPTS = -sws_flags neighbor+bitexact -fate-vsynth%-ffv1-v3-bgr0: ENCOPTS = -level 3 -pix_fmt bgr0 \ - -sws_flags neighbor+bitexact -fate-vsynth%-ffv1-v3-bgr0: DECOPTS = -sws_flags neighbor+bitexact +include tests/fate/ffv1.mak FATE_VCODEC-$(call ENCDEC, FFVHUFF, AVI) += ffvhuff ffvhuff444 ffvhuff420p12 ffvhuff422p10left ffvhuff444p16 fate-vsynth%-ffvhuff444: ENCOPTS = -vcodec ffvhuff -pix_fmt yuv444p -- 1.7.9.5 ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
[FFmpeg-devel] [PATCH 2/2] Changed FFV1 tests to work independet of vcodec.mak
This patch makes ffv1.mak work without requiring (or being included in) vcodec.mak. That's another step towards having a better environment for additional FFV1 tests. Regards, Pb >From 593f1551b999fbb4c4a378d0723c2140e3b469df Mon Sep 17 00:00:00 2001 From: Peter B. Date: Tue, 1 Sep 2015 23:00:48 +0200 Subject: [PATCH 2/2] Changed FFV1 FATE tests to work independent of vcodec.mak --- tests/Makefile |1 + tests/fate/ffv1.mak| 56 +++- tests/fate/vcodec.mak |2 - tests/ref/fate/ffv1-v0-defaults-vsynth1|4 ++ tests/ref/fate/ffv1-v0-defaults-vsynth2|4 ++ tests/ref/fate/ffv1-v0-defaults-vsynth_lena|4 ++ tests/ref/fate/ffv1-v3-bgr0-vsynth1|4 ++ tests/ref/fate/ffv1-v3-bgr0-vsynth2|4 ++ tests/ref/fate/ffv1-v3-bgr0-vsynth_lena|4 ++ tests/ref/fate/ffv1-v3-yuv420p-vsynth1 |4 ++ tests/ref/fate/ffv1-v3-yuv420p-vsynth2 |4 ++ tests/ref/fate/ffv1-v3-yuv420p-vsynth_lena |4 ++ tests/ref/fate/ffv1-v3-yuv422p10-vsynth1 |4 ++ tests/ref/fate/ffv1-v3-yuv422p10-vsynth2 |4 ++ tests/ref/fate/ffv1-v3-yuv422p10-vsynth_lena |4 ++ tests/ref/fate/ffv1-v3-yuv444p16-vsynth1 |4 ++ tests/ref/fate/ffv1-v3-yuv444p16-vsynth2 |4 ++ tests/ref/fate/ffv1-v3-yuv444p16-vsynth_lena |4 ++ tests/ref/vsynth/vsynth1-ffv1 |4 -- tests/ref/vsynth/vsynth1-ffv1-v0 |4 -- tests/ref/vsynth/vsynth1-ffv1-v3-bgr0 |4 -- tests/ref/vsynth/vsynth1-ffv1-v3-yuv420p |4 -- tests/ref/vsynth/vsynth1-ffv1-v3-yuv422p10 |4 -- tests/ref/vsynth/vsynth1-ffv1-v3-yuv444p16 |4 -- tests/ref/vsynth/vsynth2-ffv1 |4 -- tests/ref/vsynth/vsynth2-ffv1-v0 |4 -- tests/ref/vsynth/vsynth2-ffv1-v3-bgr0 |4 -- tests/ref/vsynth/vsynth2-ffv1-v3-yuv420p |4 -- tests/ref/vsynth/vsynth2-ffv1-v3-yuv422p10 |4 -- tests/ref/vsynth/vsynth2-ffv1-v3-yuv444p16 |4 -- tests/ref/vsynth/vsynth3-ffv1 |4 -- tests/ref/vsynth/vsynth3-ffv1-v0 |4 -- tests/ref/vsynth/vsynth3-ffv1-v3-bgr0 |4 -- tests/ref/vsynth/vsynth3-ffv1-v3-yuv420p |4 -- tests/ref/vsynth/vsynth3-ffv1-v3-yuv422p10 |4 -- tests/ref/vsynth/vsynth3-ffv1-v3-yuv444p16 |4 -- tests/ref/vsynth/vsynth_lena-ffv1 |4 -- tests/ref/vsynth/vsynth_lena-ffv1-v0 |4 -- tests/ref/vsynth/vsynth_lena-ffv1-v3-bgr0 |4 -- tests/ref/vsynth/vsynth_lena-ffv1-v3-yuv420|4 -- tests/ref/vsynth/vsynth_lena-ffv1-v3-yuv420p |4 -- tests/ref/vsynth/vsynth_lena-ffv1-v3-yuv422p10 |4 -- tests/ref/vsynth/vsynth_lena-ffv1-v3-yuv444p16 |4 -- 43 files changed, 105 insertions(+), 114 deletions(-) create mode 100644 tests/ref/fate/ffv1-v0-defaults-vsynth1 create mode 100644 tests/ref/fate/ffv1-v0-defaults-vsynth2 create mode 100644 tests/ref/fate/ffv1-v0-defaults-vsynth_lena create mode 100644 tests/ref/fate/ffv1-v3-bgr0-vsynth1 create mode 100644 tests/ref/fate/ffv1-v3-bgr0-vsynth2 create mode 100644 tests/ref/fate/ffv1-v3-bgr0-vsynth_lena create mode 100644 tests/ref/fate/ffv1-v3-yuv420p-vsynth1 create mode 100644 tests/ref/fate/ffv1-v3-yuv420p-vsynth2 create mode 100644 tests/ref/fate/ffv1-v3-yuv420p-vsynth_lena create mode 100644 tests/ref/fate/ffv1-v3-yuv422p10-vsynth1 create mode 100644 tests/ref/fate/ffv1-v3-yuv422p10-vsynth2 create mode 100644 tests/ref/fate/ffv1-v3-yuv422p10-vsynth_lena create mode 100644 tests/ref/fate/ffv1-v3-yuv444p16-vsynth1 create mode 100644 tests/ref/fate/ffv1-v3-yuv444p16-vsynth2 create mode 100644 tests/ref/fate/ffv1-v3-yuv444p16-vsynth_lena delete mode 100644 tests/ref/vsynth/vsynth1-ffv1 delete mode 100644 tests/ref/vsynth/vsynth1-ffv1-v0 delete mode 100644 tests/ref/vsynth/vsynth1-ffv1-v3-bgr0 delete mode 100644 tests/ref/vsynth/vsynth1-ffv1-v3-yuv420p delete mode 100644 tests/ref/vsynth/vsynth1-ffv1-v3-yuv422p10 delete mode 100644 tests/ref/vsynth/vsynth1-ffv1-v3-yuv444p16 delete mode 100644 tests/ref/vsynth/vsynth2-ffv1 delete mode 100644 tests/ref/vsynth/vsynth2-ffv1-v0 delete mode 100644 tests/ref/vsynth/vsynth2-ffv1-v3-bgr0 delete mode 100644 tests/ref/vsynth/vsynth2-ffv1-v3-yuv420p delete mode 100644 tests/ref/vsynth/vsynth2-ffv1-v3-yuv422p10 delete mode 100644 tests/ref/vsynth/vsynth2-ffv1-v3-yuv444p16 delete mode 100644 tests/ref/vsynth/vsynth3-ffv1 delete mode 100644 tests/ref/vsynth/vsynth3-ffv1-v0 delete mode 100644 tests/ref/vsynth/vsynth3-ffv1-v3-bgr0 delete mode 100644 tests/ref/vsynth/vsynth3-ffv1-v3-yuv420p delete mode 100644 tests/ref/vsynth/vsynth3-ffv1-v3-yuv422p10 delete mode 100644 tests/ref/vsynth/vsynth3-ffv1-v3-yuv444p16 delete mode 100644 tests/ref/vsynth/vsynth_lena-ffv1 delete mode 100644 t
Re: [FFmpeg-devel] [PATCH 1/2] Extract FFV1 FATE tests to own Makefile
On 09/01/2015 11:40 PM, Michael Niedermayer wrote: >> +include tests/fate/ffv1.mak > doesnt this belong in tests/Makefile ? I did so first, but then all the prerequisites set in vcodec.mak are not applied, causing ffv1.mak to fail. So in order to keep the modifications as little as possible, I just included it where it previously was. Pb ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
Re: [FFmpeg-devel] [PATCH 2/2] Changed FFV1 tests to work independet of vcodec.mak
Previous patch worked with "make fate", but fails to build FFmpeg after "make clean". I've had to do fix some unclean parts of ffv1.mak. Patch attached. Now everything seems to be fine again. Regards, Pb >From bb0b1dd72dd334d6621221e3c55d53f8cc0485b8 Mon Sep 17 00:00:00 2001 From: Peter B Date: Wed, 2 Sep 2015 00:32:33 +0200 Subject: [PATCH 29/29] Fixed Makefile errors for FFV1 FATE tests --- tests/fate/ffv1.mak | 11 ++- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/tests/fate/ffv1.mak b/tests/fate/ffv1.mak index 4062955..91c4a48 100644 --- a/tests/fate/ffv1.mak +++ b/tests/fate/ffv1.mak @@ -5,6 +5,7 @@ fate-ffv1-%: CMP_UNIT = u8 fate-ffv1-%: CODEC = ffv1 fate-ffv1-%: FMT = avi +# Requires generating vsynth files as input source: fate-ffv1-%-vsynth1: SRC = tests/data/vsynth1.yuv fate-ffv1-%-vsynth2: SRC = tests/data/vsynth2.yuv fate-ffv1-%-vsynth_lena: SRC = tests/data/vsynth_lena.yuv @@ -35,14 +36,14 @@ FATE_FFV1_VSYNTH1 := $(FATE_FFV1:%=%-vsynth1) FATE_FFV1_VSYNTH2 := $(FATE_FFV1:%=%-vsynth2) FATE_FFV1_VSYNTH_LENA := $(FATE_FFV1:%=%-vsynth_lena) -FATE_FFV1-$(call ENCDEC, FFV1, AVI) += $(FATE_FFV1_VSYNTH1) $(FATE_FFV1_VSYNTH2) $(FATE_FFV1_VSYNTH_LENA) +$(FATE_FFV1_VSYNTH1): tests/data/vsynth1.yuv +$(FATE_FFV1_VSYNTH2): tests/data/vsynth2.yuv +$(FATE_FFV1_VSYNTH_LENA): tests/data/vsynth_lena.yuv + +FATE_FFV1-$(call ENCDEC, FFV1, AVI) = $(FATE_FFV1_VSYNTH1) $(FATE_FFV1_VSYNTH2) $(FATE_FFV1_VSYNTH_LENA) FATE_SAMPLES_FFMPEG += $(FATE_FFV1-yes) fate-ffv1: $(FATE_FFV1-yes) -# Requires generating vsynth*.yuv as input source: -$(FATE_FFV1-yes) += tests/data/vsynth1.yuv \ -tests/data/vsynth2.yuv \ -tests/data/vsynth_lena.yuv -- 1.7.9.5 ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
Re: [FFmpeg-devel] [PATCH 1/2] Extract FFV1 FATE tests to own Makefile
On 09/02/2015 02:53 PM, Michael Niedermayer wrote: > the include breaks out of tree builds > mkdir delthisdir > cd delthisdir > ../configure > make -j12 > /home/michael/ffmpeg/tests/fate/vcodec.mak:71: tests/fate/ffv1.mak: No such > file or directory > make: *** No rule to make target `tests/fate/ffv1.mak'. Stop. The "include" was just an idea to have an intermediate step before making ffv1.mak independent of vcodec.mak. So it wouldn't make much sense to try "fixing" that step. Maybe the easiest way would be combine my 2 changes into 1 and I just submit ONE patch? Because the current version seems clean. Pb ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
Re: [FFmpeg-devel] [PATCH] Extract FFV1 FATE tests to own Makefile, independent of vcodec.mak
I've now combined my changes into one patch. They're basically moving ffv1 tests to ffv1.mak, and making that independent of vcodec.mak. Hope it works now :) Thanks and regards, Pb >From 5ba0e0510269e0ee591a9505fcb4654044002743 Mon Sep 17 00:00:00 2001 From: Peter B. Date: Tue, 1 Sep 2015 21:55:35 +0200 Subject: [PATCH 2/2] Moved FFV1 FATE tests to own file, making it independent of vcodec.mak --- tests/Makefile |1 + tests/fate/ffv1.mak| 49 tests/fate/vcodec.mak | 16 tests/ref/fate/ffv1-v0-defaults-vsynth1|4 ++ tests/ref/fate/ffv1-v0-defaults-vsynth2|4 ++ tests/ref/fate/ffv1-v0-defaults-vsynth_lena|4 ++ tests/ref/fate/ffv1-v3-bgr0-vsynth1|4 ++ tests/ref/fate/ffv1-v3-bgr0-vsynth2|4 ++ tests/ref/fate/ffv1-v3-bgr0-vsynth_lena|4 ++ tests/ref/fate/ffv1-v3-yuv420p-vsynth1 |4 ++ tests/ref/fate/ffv1-v3-yuv420p-vsynth2 |4 ++ tests/ref/fate/ffv1-v3-yuv420p-vsynth_lena |4 ++ tests/ref/fate/ffv1-v3-yuv422p10-vsynth1 |4 ++ tests/ref/fate/ffv1-v3-yuv422p10-vsynth2 |4 ++ tests/ref/fate/ffv1-v3-yuv422p10-vsynth_lena |4 ++ tests/ref/fate/ffv1-v3-yuv444p16-vsynth1 |4 ++ tests/ref/fate/ffv1-v3-yuv444p16-vsynth2 |4 ++ tests/ref/fate/ffv1-v3-yuv444p16-vsynth_lena |4 ++ tests/ref/vsynth/vsynth1-ffv1 |4 -- tests/ref/vsynth/vsynth1-ffv1-v0 |4 -- tests/ref/vsynth/vsynth1-ffv1-v3-bgr0 |4 -- tests/ref/vsynth/vsynth1-ffv1-v3-yuv420p |4 -- tests/ref/vsynth/vsynth1-ffv1-v3-yuv422p10 |4 -- tests/ref/vsynth/vsynth1-ffv1-v3-yuv444p16 |4 -- tests/ref/vsynth/vsynth2-ffv1 |4 -- tests/ref/vsynth/vsynth2-ffv1-v0 |4 -- tests/ref/vsynth/vsynth2-ffv1-v3-bgr0 |4 -- tests/ref/vsynth/vsynth2-ffv1-v3-yuv420p |4 -- tests/ref/vsynth/vsynth2-ffv1-v3-yuv422p10 |4 -- tests/ref/vsynth/vsynth2-ffv1-v3-yuv444p16 |4 -- tests/ref/vsynth/vsynth3-ffv1 |4 -- tests/ref/vsynth/vsynth3-ffv1-v0 |4 -- tests/ref/vsynth/vsynth3-ffv1-v3-bgr0 |4 -- tests/ref/vsynth/vsynth3-ffv1-v3-yuv420p |4 -- tests/ref/vsynth/vsynth3-ffv1-v3-yuv422p10 |4 -- tests/ref/vsynth/vsynth3-ffv1-v3-yuv444p16 |4 -- tests/ref/vsynth/vsynth_lena-ffv1 |4 -- tests/ref/vsynth/vsynth_lena-ffv1-v0 |4 -- tests/ref/vsynth/vsynth_lena-ffv1-v3-bgr0 |4 -- tests/ref/vsynth/vsynth_lena-ffv1-v3-yuv420|4 -- tests/ref/vsynth/vsynth_lena-ffv1-v3-yuv420p |4 -- tests/ref/vsynth/vsynth_lena-ffv1-v3-yuv422p10 |4 -- tests/ref/vsynth/vsynth_lena-ffv1-v3-yuv444p16 |4 -- 43 files changed, 110 insertions(+), 116 deletions(-) create mode 100644 tests/fate/ffv1.mak create mode 100644 tests/ref/fate/ffv1-v0-defaults-vsynth1 create mode 100644 tests/ref/fate/ffv1-v0-defaults-vsynth2 create mode 100644 tests/ref/fate/ffv1-v0-defaults-vsynth_lena create mode 100644 tests/ref/fate/ffv1-v3-bgr0-vsynth1 create mode 100644 tests/ref/fate/ffv1-v3-bgr0-vsynth2 create mode 100644 tests/ref/fate/ffv1-v3-bgr0-vsynth_lena create mode 100644 tests/ref/fate/ffv1-v3-yuv420p-vsynth1 create mode 100644 tests/ref/fate/ffv1-v3-yuv420p-vsynth2 create mode 100644 tests/ref/fate/ffv1-v3-yuv420p-vsynth_lena create mode 100644 tests/ref/fate/ffv1-v3-yuv422p10-vsynth1 create mode 100644 tests/ref/fate/ffv1-v3-yuv422p10-vsynth2 create mode 100644 tests/ref/fate/ffv1-v3-yuv422p10-vsynth_lena create mode 100644 tests/ref/fate/ffv1-v3-yuv444p16-vsynth1 create mode 100644 tests/ref/fate/ffv1-v3-yuv444p16-vsynth2 create mode 100644 tests/ref/fate/ffv1-v3-yuv444p16-vsynth_lena delete mode 100644 tests/ref/vsynth/vsynth1-ffv1 delete mode 100644 tests/ref/vsynth/vsynth1-ffv1-v0 delete mode 100644 tests/ref/vsynth/vsynth1-ffv1-v3-bgr0 delete mode 100644 tests/ref/vsynth/vsynth1-ffv1-v3-yuv420p delete mode 100644 tests/ref/vsynth/vsynth1-ffv1-v3-yuv422p10 delete mode 100644 tests/ref/vsynth/vsynth1-ffv1-v3-yuv444p16 delete mode 100644 tests/ref/vsynth/vsynth2-ffv1 delete mode 100644 tests/ref/vsynth/vsynth2-ffv1-v0 delete mode 100644 tests/ref/vsynth/vsynth2-ffv1-v3-bgr0 delete mode 100644 tests/ref/vsynth/vsynth2-ffv1-v3-yuv420p delete mode 100644 tests/ref/vsynth/vsynth2-ffv1-v3-yuv422p10 delete mode 100644 tests/ref/vsynth/vsynth2-ffv1-v3-yuv444p16 delete mode 100644 tests/ref/vsynth/vsynth3-ffv1 delete mode 100644 tests/ref/vsynth/vsynth3-ffv1-v0 delete mode 100644 tests/ref/vsynth/vsynth3-ffv1-v3-bgr0 delete mode 100644 tests/ref/vsynth/vsynth3-ffv1-v3-yuv420p delete mode 100644 tests/ref/vsynth/vsynth3-ffv1-v3-yuv422p10 delete mode 100644 tests/ref/vsynth/vsynth3-ffv1-v3-yuv444p16 delet
Re: [FFmpeg-devel] [PATCH] Extract FFV1 FATE tests to own Makefile, independent of vcodec.mak
On 09/07/2015 09:14 PM, Michael Niedermayer wrote: > On Thu, Sep 03, 2015 at 10:14:13PM +0200, Peter B. wrote: >> I've now combined my changes into one patch. >> They're basically moving ffv1 tests to ffv1.mak, and making that >> independent of vcodec.mak. >> >> Hope it works now :) > doesnt work > make fate ends in > make: *** No rule to make target `fate-vsynth_lena-ffv1', needed by > `fate-seek-vsynth_lena-ffv1'. Stop. > make: *** Waiting for unfinished jobs Darn. Overlooked the depency in "tests/fate/seek.mak". Should be fixed. (Getting errors with "make fate" for some fate-dxv*, with git HEAD but that seems unrelated to my changes) Regards, Pb >From 249e935516c344617850fa8b23751e60879d13c5 Mon Sep 17 00:00:00 2001 From: Peter B Date: Mon, 7 Sep 2015 23:11:37 +0200 Subject: [PATCH 2/2] - Extract FFV1 FATE tests to own Makefile. --- tests/Makefile |1 + tests/fate/ffv1.mak| 49 tests/fate/vcodec.mak | 17 +--- tests/ref/fate/ffv1-v0-defaults-vsynth1|4 ++ tests/ref/fate/ffv1-v0-defaults-vsynth2|4 ++ tests/ref/fate/ffv1-v0-defaults-vsynth_lena|4 ++ tests/ref/fate/ffv1-v3-bgr0-vsynth1|4 ++ tests/ref/fate/ffv1-v3-bgr0-vsynth2|4 ++ tests/ref/fate/ffv1-v3-bgr0-vsynth_lena|4 ++ tests/ref/fate/ffv1-v3-yuv420p-vsynth1 |4 ++ tests/ref/fate/ffv1-v3-yuv420p-vsynth2 |4 ++ tests/ref/fate/ffv1-v3-yuv420p-vsynth_lena |4 ++ tests/ref/fate/ffv1-v3-yuv422p10-vsynth1 |4 ++ tests/ref/fate/ffv1-v3-yuv422p10-vsynth2 |4 ++ tests/ref/fate/ffv1-v3-yuv422p10-vsynth_lena |4 ++ tests/ref/fate/ffv1-v3-yuv444p16-vsynth1 |4 ++ tests/ref/fate/ffv1-v3-yuv444p16-vsynth2 |4 ++ tests/ref/fate/ffv1-v3-yuv444p16-vsynth_lena |4 ++ tests/ref/seek/vsynth_lena-ffv1| 40 +-- tests/ref/vsynth/vsynth1-ffv1 |4 +- tests/ref/vsynth/vsynth1-ffv1-v0 |4 -- tests/ref/vsynth/vsynth1-ffv1-v3-bgr0 |4 -- tests/ref/vsynth/vsynth1-ffv1-v3-yuv420p |4 -- tests/ref/vsynth/vsynth1-ffv1-v3-yuv422p10 |4 -- tests/ref/vsynth/vsynth1-ffv1-v3-yuv444p16 |4 -- tests/ref/vsynth/vsynth2-ffv1 |4 +- tests/ref/vsynth/vsynth2-ffv1-v0 |4 -- tests/ref/vsynth/vsynth2-ffv1-v3-bgr0 |4 -- tests/ref/vsynth/vsynth2-ffv1-v3-yuv420p |4 -- tests/ref/vsynth/vsynth2-ffv1-v3-yuv422p10 |4 -- tests/ref/vsynth/vsynth2-ffv1-v3-yuv444p16 |4 -- tests/ref/vsynth/vsynth3-ffv1 |4 +- tests/ref/vsynth/vsynth3-ffv1-v0 |4 -- tests/ref/vsynth/vsynth3-ffv1-v3-bgr0 |4 -- tests/ref/vsynth/vsynth3-ffv1-v3-yuv420p |4 -- tests/ref/vsynth/vsynth3-ffv1-v3-yuv422p10 |4 -- tests/ref/vsynth/vsynth3-ffv1-v3-yuv444p16 |4 -- tests/ref/vsynth/vsynth_lena-ffv1 |4 +- tests/ref/vsynth/vsynth_lena-ffv1-v0 |4 -- tests/ref/vsynth/vsynth_lena-ffv1-v3-bgr0 |4 -- tests/ref/vsynth/vsynth_lena-ffv1-v3-yuv420|4 -- tests/ref/vsynth/vsynth_lena-ffv1-v3-yuv420p |4 -- tests/ref/vsynth/vsynth_lena-ffv1-v3-yuv422p10 |4 -- tests/ref/vsynth/vsynth_lena-ffv1-v3-yuv444p16 |4 -- 44 files changed, 140 insertions(+), 127 deletions(-) create mode 100644 tests/fate/ffv1.mak create mode 100644 tests/ref/fate/ffv1-v0-defaults-vsynth1 create mode 100644 tests/ref/fate/ffv1-v0-defaults-vsynth2 create mode 100644 tests/ref/fate/ffv1-v0-defaults-vsynth_lena create mode 100644 tests/ref/fate/ffv1-v3-bgr0-vsynth1 create mode 100644 tests/ref/fate/ffv1-v3-bgr0-vsynth2 create mode 100644 tests/ref/fate/ffv1-v3-bgr0-vsynth_lena create mode 100644 tests/ref/fate/ffv1-v3-yuv420p-vsynth1 create mode 100644 tests/ref/fate/ffv1-v3-yuv420p-vsynth2 create mode 100644 tests/ref/fate/ffv1-v3-yuv420p-vsynth_lena create mode 100644 tests/ref/fate/ffv1-v3-yuv422p10-vsynth1 create mode 100644 tests/ref/fate/ffv1-v3-yuv422p10-vsynth2 create mode 100644 tests/ref/fate/ffv1-v3-yuv422p10-vsynth_lena create mode 100644 tests/ref/fate/ffv1-v3-yuv444p16-vsynth1 create mode 100644 tests/ref/fate/ffv1-v3-yuv444p16-vsynth2 create mode 100644 tests/ref/fate/ffv1-v3-yuv444p16-vsynth_lena delete mode 100644 tests/ref/vsynth/vsynth1-ffv1-v0 delete mode 100644 tests/ref/vsynth/vsynth1-ffv1-v3-bgr0 delete mode 100644 tests/ref/vsynth/vsynth1-ffv1-v3-yuv420p delete mode 100644 tests/ref/vsynth/vsynth1-ffv1-v3-yuv422p10 delete mode 100644 tests/ref/vsynth/vsynth1-ffv1-v3-yuv444p16 delete mode 100644 tests/ref/vsynth/vsynth2-ffv1-v0 delete mode 100644 tests/ref/vsynth/vsynth2-ffv1-v3-bgr0 delete mode 100644 tests/ref/vs
Re: [FFmpeg-devel] [PATCH] Extract FFV1 FATE tests to own Makefile, independent of vcodec.mak
On 09/08/2015 01:46 AM, Michael Niedermayer wrote: > On Mon, Sep 07, 2015 at 11:18:56PM +0200, Peter B. wrote: >> Should be fixed. >> (Getting errors with "make fate" for some fate-dxv*, with git HEAD but >> that seems unrelated to my changes) > this seems to loose some tests > > before the patch: > make fate-list | wc >25722572 62899 > > after the patch: > make fate-list | wc >25672567 62788 True indeed. I had to drop the vsynth3 tests, because they behave differently and were intertwined with code in vcodec.mak. I didn't manage to move those to an external file. Thought it'd take that loss temporarily and try to add them back in the next step. Pb ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
[FFmpeg-devel] FATE: testing lossless video differently
Hi :) I'm having difficulties implement FFV1 lossless FATE tests in a way that seems more appropriate. I'd be grateful for advice how to deal with this: I'd rather use "framecrc" instead of the "enc_dec" method used in vodec.mak. Yet, the usage of framecrc in the tests for other lossless codecs in "lossless-video.mak", only seem to validate decoding of given source files in the fate-suite samples collection. I've checked the BASH code of the testing functions (enc_dec(), framecrc()) in "tests/fate-run.sh". I was thinking about adding a new function to tests/fate-run.sh that does something like this: 1) encode-and-convert vsynth*.yuv 2) framecrc the generated output 3) decode the generated output 4) compare framecrc of encoding with framecrc of decoding What do you think? Thanks in advance, Pb ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
[FFmpeg-devel] [PATCH] Adding ffv1 help reference for "coder" parameter.
Hi. I just saw that "ffmpeg --help encoder=ffv1 full" only lists the "slicecrc" parameter option. I'd like to add the other options to the help as well. The attached patch adds explanation for "-coder". I've read up on AVOption Struct Reference [1] and read other source files, but the usage of some arguments (offset, flags, unit) is not clear to me. Feedback on my patch, as well as hints towards documentation about adding AVOptions greatly appreciated :) Thanks in advance, Pb == References: [1] http://ffmpeg.org/doxygen/trunk/structAVOption.html >From d51af4c272d3573f4c4c94dcfe93c7c45e9d7e36 Mon Sep 17 00:00:00 2001 From: Peter B Date: Sun, 13 Sep 2015 19:04:20 +0200 Subject: [PATCH] Adding ffv1 help reference for "coder" parameter. --- libavcodec/ffv1enc.c |1 + 1 file changed, 1 insertion(+) diff --git a/libavcodec/ffv1enc.c b/libavcodec/ffv1enc.c index 265ced1..d210692 100644 --- a/libavcodec/ffv1enc.c +++ b/libavcodec/ffv1enc.c @@ -1345,6 +1345,7 @@ static av_cold int encode_close(AVCodecContext *avctx) #define VE AV_OPT_FLAG_VIDEO_PARAM | AV_OPT_FLAG_ENCODING_PARAM static const AVOption options[] = { { "slicecrc", "Protect slices with CRCs", OFFSET(ec), AV_OPT_TYPE_INT, { .i64 = -1 }, -1, 1, VE }, +{ "coder", "Coder used: 0 (Golomb Rice), 1 (Range coder), 2 (Range coder with custom state transition table)", OFFSET(ac), AV_OPT_TYPE_INT, { .i64 = -1 }, -1, 1, VE }, { NULL } }; -- 1.7.9.5 ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
[FFmpeg-devel] ffprobe -debug 1: Output for FFV1 inconsistent
Hello again :) I've just noticed that the output of "ffprobe -debug 1" for FFV1 files has different labels for same parameters in different versions. For example: == FFV1.1: [ffv1 @ 0x3a8ab80] ver:1 keyframe:1 coder:0 ec:0 slices:1 bps:8 == FFV1.3: [ffv1 @ 0x31584e0] global: ver:3.4, coder:0, colorspace: 0 bpr:8 chroma:1(1:0), alpha:0 slices:2x2 qtabs:2 ec:1 intra:0 CRC:0x9A658FB3 Summary: - "bps" seems to be "bpr"? - What is "keyframe"? - FFV1.1 has "slices"? - "colorspace" only in FFV1.3 - "intra" only in FFV1.3 - "alpha" only in FFV1.3 - keyword "global:" only in FFV1.3 Why is that so? Thanks in advance, Pb ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
[FFmpeg-devel] FFV1: version 0 vs 1?
Hello again :) I've just noticed that by default, FFV1 chooses version "0". I thought it would be "1". When adding "-level 1" it properly shows "ver:1". (and a proper value for "bps") == For example: Source video: https://media.xiph.org/video/derf/y4m/football_422_ntsc.y4m $ ffmpeg -i input.avi -c:v ffv1 -an output.avi $ ffprobe -debug 1 -i output.avi Shows: [ffv1 @ 0x2263b80] ver:0 keyframe:1 coder:0 ec:0 slices:1 bps:0 On the other hand: $ ffmpeg -i input.avi -c:v ffv1 -level 1 -an output.avi $ ffprobe -debug 1 -i output.avi Shows: [ffv1 @ 0x2c9eb80] ver:1 keyframe:1 coder:0 ec:0 slices:1 bps:8 Interestingly, the console output of both commands seems identical. Why is that so? Thanks in advance, Pb -- Complete uncut console output: // -- $ ffmpeg -i ../football_422_ntsc.y4m -c:v ffv1 -an output.avi // -- ffmpeg version N-75272-g5629143 Copyright (c) 2000-2015 the FFmpeg developers built with gcc 4.6 (Ubuntu/Linaro 4.6.3-1ubuntu5) configuration: --prefix=/usr/local --enable-gpl --enable-nonfree --enable-version3 --enable-postproc --enable-swscale --enable-avfilter --enable-pthreads --enable-bzlib --enable-zlib --enable-decoder=png --enable-encoder=png --samples=../fate-suite --enable-libfreetype --enable-libschroedinger --enable-libopenjpeg --disable-decoder=jpeg2000 --enable-libvpx --enable-libvorbis --enable-libx264 --enable-libfaac libavutil 55. 2.100 / 55. 2.100 libavcodec 57. 1.100 / 57. 1.100 libavformat57. 0.100 / 57. 0.100 libavdevice57. 0.100 / 57. 0.100 libavfilter 6. 2.100 / 6. 2.100 libswscale 4. 0.100 / 4. 0.100 libswresample 2. 0.100 / 2. 0.100 libpostproc54. 0.100 / 54. 0.100 Input #0, yuv4mpegpipe, from '../football_422_ntsc.y4m': Duration: 00:00:12.00, start: 0.00, bitrate: 167963 kb/s Stream #0:0: Video: rawvideo (Y42B / 0x42323459), yuv422p, 720x486, SAR 4320:4379 DAR 6400:4379, 30 fps, 30 tbr, 30 tbn, 30 tbc Output #0, avi, to 'output.avi': Metadata: ISFT: Lavf57.0.100 Stream #0:0: Video: ffv1 (FFV1 / 0x31564646), yuv422p, 720x486 [SAR 4320:4379 DAR 6400:4379], q=2-31, 200 kb/s, 30 fps, 30 tbn, 30 tbc Metadata: encoder : Lavc57.1.100 ffv1 Stream mapping: Stream #0:0 -> #0:0 (rawvideo (native) -> ffv1 (native)) Press [q] to stop, [?] for help frame= 360 fps= 45 q=-0.0 Lsize= 111033kB time=00:00:12.00 bitrate=75798.8kbits/s video:111019kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.012829% // -- // -- $ ffmpeg_git -i ../football_422_ntsc.y4m -c:v ffv1 -level 1 -an output.avi // -- ffmpeg version N-75272-g5629143 Copyright (c) 2000-2015 the FFmpeg developers built with gcc 4.6 (Ubuntu/Linaro 4.6.3-1ubuntu5) configuration: --prefix=/usr/local --enable-gpl --enable-nonfree --enable-version3 --enable-postproc --enable-swscale --enable-avfilter --enable-pthreads --enable-bzlib --enable-zlib --enable-decoder=png --enable-encoder=png --samples=../fate-suite --enable-libfreetype --enable-libschroedinger --enable-libopenjpeg --disable-decoder=jpeg2000 --enable-libvpx --enable-libvorbis --enable-libx264 --enable-libfaac libavutil 55. 2.100 / 55. 2.100 libavcodec 57. 1.100 / 57. 1.100 libavformat57. 0.100 / 57. 0.100 libavdevice57. 0.100 / 57. 0.100 libavfilter 6. 2.100 / 6. 2.100 libswscale 4. 0.100 / 4. 0.100 libswresample 2. 0.100 / 2. 0.100 libpostproc54. 0.100 / 54. 0.100 Input #0, yuv4mpegpipe, from '../football_422_ntsc.y4m': Duration: 00:00:12.00, start: 0.00, bitrate: 167963 kb/s Stream #0:0: Video: rawvideo (Y42B / 0x42323459), yuv422p, 720x486, SAR 4320:4379 DAR 6400:4379, 30 fps, 30 tbr, 30 tbn, 30 tbc Output #0, avi, to 'output.avi': Metadata: ISFT: Lavf57.0.100 Stream #0:0: Video: ffv1 (FFV1 / 0x31564646), yuv422p, 720x486 [SAR 4320:4379 DAR 6400:4379], q=2-31, 200 kb/s, 30 fps, 30 tbn, 30 tbc Metadata: encoder : Lavc57.1.100 ffv1 Stream mapping: Stream #0:0 -> #0:0 (rawvideo (native) -> ffv1 (native)) Press [q] to stop, [?] for help frame= 360 fps= 54 q=-0.0 Lsize= 111033kB time=00:00:12.00 bitrate=75798.8kbits/s video:111019kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.012829% // -- ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
Re: [FFmpeg-devel] FFV1: version 0 vs 1?
On 09/14/2015 12:25 AM, Michael Niedermayer wrote: > the encoder chooses the lowest version that supports the requested > features well to maximize compatibility Thanks for the explanation. Sounds reasonable. If I read [1] correcly, FFV1.0 does not store "bits_per_raw_sample". I'd be interested in any downsides FFV1.0 would have over FFV1.1? Thanks, Pb == References: [1] http://ffmpeg.org/~michael/ffv1.html#toc-Subsubsection-4.3.1 ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
[FFmpeg-devel] FFV1: Invalid parameter combination triggers FFV1.2
I wanted to check what happens if someone uses an invalid parameter combination: "-c:v ffv1 -level 1 -slices 2" I expected an error message about invalid slice number, but the code selected FFV1.2: "[ffv1 @ 0x391b060] Version 2 needed for requested features but version 2 is experimental and not enabled" Regards, Pb ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
Re: [FFmpeg-devel] ffprobe -debug 1: Output for FFV1 inconsistent
On 09/13/2015 11:48 PM, Michael Niedermayer wrote: >> - What is "keyframe"? > a random access point I'm not sure what your answer means. I understand that "A keyframe" is a random access point. The flag in ffprobe's output seems to always be "1". I thought it might be the same as "intra" in FFV1.3's ffprobe output, but it doesn't go to "0" when GOP>1. >> - FFV1.1 has "slices"? > one could argue that any codec without slices has 1 slice per frame True. I just found it a bit confusing to have "slices" mentioned in FFV1 < version 2. >> - "colorspace" only in FFV1.3 >> - "intra" only in FFV1.3 >> - "alpha" only in FFV1.3 >> - keyword "global:" only in FFV1.3 >> >> >> Why is that so? > The code parsing the headers differs and so does the debug printout > i think noone thought about / noticed these differences before Thanks for clearing that up. Regards, Pb ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
Re: [FFmpeg-devel] FFV1: Invalid parameter combination triggers FFV1.2
On 09/15/2015 08:47 PM, Michael Niedermayer wrote: > On Tue, Sep 15, 2015 at 01:31:20AM +0200, Peter B. wrote: >> I wanted to check what happens if someone uses an invalid parameter >> combination: >> "-c:v ffv1 -level 1 -slices 2" >> >> I expected an error message about invalid slice number, but the code >> selected FFV1.2: >> >> "[ffv1 @ 0x391b060] Version 2 needed for requested features but version >> 2 is experimental and not enabled" > fixed Thanks. Regards, Pb ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
Re: [FFmpeg-devel] [PATCH]lavc/v210dec: Skip Canopus C210 extradata
On 17/05/18 12:20, Carl Eugen Hoyos wrote: > 2018-05-10 22:50 GMT+02:00, Carl Eugen Hoyos : > >> Peter Bubestinger provided a C210 file where every frame starts with >> 64 bytes of extradata (24 byte "INFO", 16 byte "RDRT", rest "FIEL"). >> Piotr confirmed that the Canopus decoder accepts files without the >> extradata but consumes it if present. >> Attached patch fixes the file in question visually. > Patch applied, Carl Eugen I've just tested with recent git (=including your path) and it seems to work properly. Also transcoded to FFV1 and compared framemd5: matches. Thank you very much! Pb ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
[FFmpeg-devel] [PATCH] fate: Add test for wav Peak Envelope Chunk encoder (levl, chunk).
Hello. Georg Lippitsch and I created 2 FATE tests for the EBU Peak Envelope Chunk: Test 1: Normal WAV file with levl-chunk and audio data. Test 2: "Peakfile" WAV with levl-chunk, without audio data. I tried to follow the style of existing lavf-regression tests in FATE as good as possible. Regards, Pb >From bec0905cc5b896a287d8e0953c9931e41a62972d Mon Sep 17 00:00:00 2001 From: Peter B Date: Thu, 17 Jul 2014 18:51:38 +0200 Subject: [PATCH] fate: Add test for wav Peak Envelope Chunk encoder (levl chunk). --- tests/fate/avformat.mak |2 ++ tests/lavf-regression.sh |9 + tests/ref/lavf/wav_peak |3 +++ tests/ref/lavf/wav_peak_only |2 ++ 4 files changed, 16 insertions(+) create mode 100644 tests/ref/lavf/wav_peak create mode 100644 tests/ref/lavf/wav_peak_only diff --git a/tests/fate/avformat.mak b/tests/fate/avformat.mak index 5f9c8c1..1040afa 100644 --- a/tests/fate/avformat.mak +++ b/tests/fate/avformat.mak @@ -45,6 +45,8 @@ FATE_LAVF-$(call ENCDEC2, MPEG2VIDEO, MP2, MPEGTS) += ts FATE_LAVF-$(call ENCDEC, PCM_U8,VOC)+= voc FATE_LAVF-$(call ENCDEC, PCM_S16LE, VOC)+= voc_s16 FATE_LAVF-$(call ENCDEC, PCM_S16LE, WAV)+= wav +FATE_LAVF-$(call ENCDEC, PCM_S16LE, WAV)+= wav_peak +FATE_LAVF-$(call ENCDEC, PCM_S16LE, WAV)+= wav_peak_only FATE_LAVF-$(call ENCMUX, PCM_S16LE, W64)+= w64 FATE_LAVF-$(call ENCDEC, MP2, WTV)+= wtv FATE_LAVF-$(call ENCDEC, XBM, IMAGE2) += xbm diff --git a/tests/lavf-regression.sh b/tests/lavf-regression.sh index 0efbc9c..7e6ad06 100755 --- a/tests/lavf-regression.sh +++ b/tests/lavf-regression.sh @@ -274,6 +274,15 @@ if [ -n "$do_wav" ] ; then do_audio_only wav fi +if [ -n "$do_wav_peak" ] ; then +do_audio_only peak.wav "" "-write_peak on" +fi + +if [ -n "$do_wav_peak_only" ] ; then +file=${outfile}lavf.peak_only.wav +do_avconv $file $DEC_OPTS -ar 44100 -f s16le -i $pcm_src $ENC_OPTS -t 1 -qscale 10 -write_peak only +fi + if [ -n "$do_alaw" ] ; then do_audio_only al "" "" "-ar 44100" fi diff --git a/tests/ref/lavf/wav_peak b/tests/ref/lavf/wav_peak new file mode 100644 index 000..aa7e5fc --- /dev/null +++ b/tests/ref/lavf/wav_peak @@ -0,0 +1,3 @@ +35148d1f6e66b0080893851d917ecbf4 *./tests/data/lavf/lavf.peak.wav +89094 ./tests/data/lavf/lavf.peak.wav +./tests/data/lavf/lavf.peak.wav CRC=0x3a1da17e diff --git a/tests/ref/lavf/wav_peak_only b/tests/ref/lavf/wav_peak_only new file mode 100644 index 000..dccd0e7 --- /dev/null +++ b/tests/ref/lavf/wav_peak_only @@ -0,0 +1,2 @@ +b609a363e6d490710ed52231a8d09d3c *./tests/data/lavf/lavf.peak_only.wav +832 ./tests/data/lavf/lavf.peak_only.wav -- 1.7.9.5 ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
Re: [FFmpeg-devel] [PATCH] fate: Add test for wav Peak Envelope Chunk encoder (levl, chunk).
On 07/18/2014 07:40 PM, Michael Niedermayer wrote: > applied Thanks! Pb ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel