[FFmpeg-devel] fate/proresenc_aw : Add fate test for interlace and 444 encoding

Submitted by Michael Niedermayer on Feb. 24, 2019, 6:12 p.m.

Details

Message ID 20190224181212.GF3501@michaelspb
State New
Headers show

Commit Message

Michael Niedermayer Feb. 24, 2019, 6:12 p.m.
On Sat, Feb 23, 2019 at 07:10:06PM +0100, Martin Vignali wrote:
> Hello,
> 
> Patch in attach add fate test for interlace and 444 encoding
> 
> All prores_aw encoding test can be test with :
> 
> make fate-vsynth3-prores;make fate-vsynth2-prores;make
> fate-vsynth1-prores;make fate-vsynth_lena-prores SAMPLES=fate-suite/;make
> fate-vsynth3-prores_int;make fate-vsynth2-prores_int;make
> fate-vsynth1-prores_int;make fate-vsynth_lena-prores_int
> SAMPLES=fate-suite/;make fate-vsynth3-prores_444;make
> fate-vsynth2-prores_444;make fate-vsynth1-prores_444;make
> fate-vsynth_lena-prores_444 SAMPLES=fate-suite/;make
> fate-vsynth3-prores_444_int;make fate-vsynth2-prores_444_int;make
> fate-vsynth1-prores_444_int;make fate-vsynth_lena-prores_444_int
> SAMPLES=fate-suite/
> 
> Martin

it seems a make fate fails with this: (linux x86-64)

Test vsynth3-prores_444_int failed. Look at tests/data/fate/vsynth3-prores_444_int.err for details.
make: *** [fate-vsynth3-prores_444_int] Error 1

[...]

Comments

Martin Vignali Feb. 25, 2019, 8:01 p.m.
Hello,

Thanks for testing.
Can you send me the result file vsynth3-prores_int.mov, so i can try to
find why the result are not the same.

Only the two vsynth3 interlaced test fail ?

Martin
Michael Niedermayer Feb. 25, 2019, 11:08 p.m.
On Mon, Feb 25, 2019 at 09:01:16PM +0100, Martin Vignali wrote:
> Hello,
> 
> Thanks for testing.
> Can you send me the result file vsynth3-prores_int.mov, so i can try to
> find why the result are not the same.

https://ffmpeg.org/~michael/vsynth3-prores_int.mov
https://ffmpeg.org/~michael/vsynth3-prores_444_int.mov


> 
> Only the two vsynth3 interlaced test fail ?

yes

thx

[...]
Martin Vignali Feb. 26, 2019, 11:04 a.m.
Hello,

Thanks for the files

The problem appear for "unsafe" resolution (only vsynth3 have this).

Patchs in attach are supposed to fix this
001 : fix sub_image_with_fill for interlaced encoding
002 : new fate test, with update result for vsynth3 interlace test

Can be test with :
make fate-vsynth3-prores_int;make fate-vsynth3-prores_444_int

Martin
Michael Niedermayer Feb. 26, 2019, 11:03 p.m.
On Tue, Feb 26, 2019 at 12:04:58PM +0100, Martin Vignali wrote:
> Hello,
> 
> Thanks for the files
> 
> The problem appear for "unsafe" resolution (only vsynth3 have this).
> 
> Patchs in attach are supposed to fix this
> 001 : fix sub_image_with_fill for interlaced encoding
> 002 : new fate test, with update result for vsynth3 interlace test
> 
> Can be test with :
> make fate-vsynth3-prores_int;make fate-vsynth3-prores_444_int

works here

thx

[...]
Martin Vignali Feb. 27, 2019, 5:05 p.m.
> works here
>
>
 Pushed, thanks.

Martin
Hendrik Leppkes March 7, 2019, 9:05 a.m.
On Wed, Feb 27, 2019 at 6:05 PM Martin Vignali <martin.vignali@gmail.com> wrote:
>
> > works here
> >
> >
>  Pushed, thanks.
>

These tests fail on all FATE boxes. http://fate.ffmpeg.org/

Can you check that and fix it?

- Hendrik
Martin Vignali March 7, 2019, 10:02 a.m.
>
> These tests fail on all FATE boxes. http://fate.ffmpeg.org/
>
> Can you check that and fix it?
>
>
Seems to be related to memory poisoning (pass when disable) :
http://fate.ffmpeg.org/report.cgi?time=20190307033138&slot=x86_64-archlinux-gcc-valgrind-no-undef

Will take a look.

Martin
Martin Vignali March 7, 2019, 11:11 p.m.
>> Can you check that and fix it?
>>
>>
>
Patch in attach fix for me vsynth3 interlace prores test :
make fate-vsynth3-prores_int;make fate-vsynth3-prores_444_int

Pass fate test for me (os x X86_64) with and without
--enable-memory-poisoning

Martin
Peter Ross March 8, 2019, 8:53 a.m.
On Fri, Mar 08, 2019 at 12:11:47AM +0100, Martin Vignali wrote:
> >> Can you check that and fix it?
> >>
> >>
> >
> Patch in attach fix for me vsynth3 interlace prores test :
> make fate-vsynth3-prores_int;make fate-vsynth3-prores_444_int
> 
> Pass fate test for me (os x X86_64) with and without
> --enable-memory-poisoning

With this patch applied, the vsynth3 test no longer fails on my systems.
Please apply!

-- Peter
(A907 E02F A6E5 0CD2 34CD 20D2 6760 79C5 AC40 DD6B)
Michael Niedermayer March 9, 2019, 12:25 p.m.
On Fri, Mar 08, 2019 at 12:11:47AM +0100, Martin Vignali wrote:
> >> Can you check that and fix it?
> >>
> >>
> >
> Patch in attach fix for me vsynth3 interlace prores test :
> make fate-vsynth3-prores_int;make fate-vsynth3-prores_444_int
> 
> Pass fate test for me (os x X86_64) with and without
> --enable-memory-poisoning
> 
> Martin

>  libavcodec/proresenc_anatoliy.c         |    4 ++--
>  tests/ref/vsynth/vsynth3-prores_444_int |    8 ++++----
>  tests/ref/vsynth/vsynth3-prores_int     |    8 ++++----
>  3 files changed, 10 insertions(+), 10 deletions(-)
> 4dc0e29e35f88ba605b048fb841dc3c6a760b892  0001-avcodec-proresenc_aw-fix-interlace-encoding-for-unsa.patch
> From 8203aa9eb65e616df0c7ad3926a83484bec930d5 Mon Sep 17 00:00:00 2001
> From: Martin Vignali <martin.vignali@gmail.com>
> Date: Fri, 8 Mar 2019 00:06:01 +0100
> Subject: [PATCH] avcodec/proresenc_aw : fix interlace encoding for unsafe
>  height

tested on x86-64 and qemu mips, works with memory poisoning

thx

[...]
Martin Vignali March 9, 2019, 8:07 p.m.
Pushed, thanks for testing.

Martin

Patch hide | download patch | download mbox

--- ./tests/ref/vsynth/vsynth3-prores_int	2019-02-24 19:01:09.512273452 +0100
+++ tests/data/fate/vsynth3-prores_int	2019-02-24 19:01:46.068274557 +0100
@@ -1,4 +1,4 @@ 
-264713812dba67134321546191e04d20 *tests/data/fate/vsynth3-prores_int.mov
-140180 tests/data/fate/vsynth3-prores_int.mov
-0d5b3eb01390b7bfcff050c7c8de931e *tests/data/fate/vsynth3-prores_int.out.rawvideo
-stddev:    9.96 PSNR: 28.16 MAXDIFF:  242 bytes:    86700/    86700
+2396cb75873839b3c2c6cc9dd4dcd062 *tests/data/fate/vsynth3-prores_int.mov
+144416 tests/data/fate/vsynth3-prores_int.mov
+0af96cb0463485c4ae28c2fdd729f64a *tests/data/fate/vsynth3-prores_int.out.rawvideo
+stddev:    8.70 PSNR: 29.33 MAXDIFF:  233 bytes:    86700/    86700
Test vsynth3-prores_int failed. Look at tests/data/fate/vsynth3-prores_int.err for details.
make: *** [fate-vsynth3-prores_int] Error 1
TEST    vsynth3-svq1
--- ./tests/ref/vsynth/vsynth3-prores_444_int	2019-02-24 19:01:09.512273452 +0100
+++ tests/data/fate/vsynth3-prores_444_int	2019-02-24 19:01:46.068274557 +0100
@@ -1,4 +1,4 @@ 
-7545847af47cc52059a47d1018d3ee55 *tests/data/fate/vsynth3-prores_444_int.mov
-215553 tests/data/fate/vsynth3-prores_444_int.mov
-5bfc7730a33163a9900d591a1ba0a090 *tests/data/fate/vsynth3-prores_444_int.out.rawvideo
-stddev:    9.99 PSNR: 28.14 MAXDIFF:  242 bytes:    86700/    86700
+c707175556f0689e2b4edb7c55935d96 *tests/data/fate/vsynth3-prores_444_int.mov
+231464 tests/data/fate/vsynth3-prores_444_int.mov
+624c79ce621f75ae39ce370a30a14439 *tests/data/fate/vsynth3-prores_444_int.out.rawvideo
+stddev:    8.60 PSNR: 29.43 MAXDIFF:  234 bytes:    86700/    86700