avfilter/vf_fieldmatch: use correct subsamplings for y0a, y1a and startx
authorPaul B Mahol <onemda@gmail.com>
Sat, 28 Apr 2018 19:01:27 +0000 (21:01 +0200)
committerPaul B Mahol <onemda@gmail.com>
Sat, 28 Apr 2018 20:49:09 +0000 (22:49 +0200)
Signed-off-by: Paul B Mahol <onemda@gmail.com>
libavfilter/vf_fieldmatch.c
tests/ref/fate/filter-pixfmts-fieldmatch

index 3694f26..4f10ed7 100644 (file)
@@ -503,9 +503,9 @@ static int compare_fields(FieldMatchContext *fm, int match1, int match2, int fie
         int prvf_linesize, nxtf_linesize;
         const int width  = get_width (fm, src, plane);
         const int height = get_height(fm, src, plane);
-        const int y0a = fm->y0 >> (plane != 0);
-        const int y1a = fm->y1 >> (plane != 0);
-        const int startx = (plane == 0 ? 8 : 4);
+        const int y0a = fm->y0 >> (plane ? fm->vsub : 0);
+        const int y1a = fm->y1 >> (plane ? fm->vsub : 0);
+        const int startx = (plane == 0 ? 8 : 8 >> fm->hsub);
         const int stopx  = width - startx;
         const uint8_t *srcpf, *srcf, *srcnf;
         const uint8_t *prvpf, *prvnf, *nxtpf, *nxtnf;
index 99946c8..c3165b8 100644 (file)
@@ -2,4 +2,4 @@ yuv410p             a6c9b4065e8253d8120772f69be0bf04
 yuv411p             b913e634ad37ce046240252bed8681fb
 yuv420p             a9286560141eb14595e427dbe5829b00
 yuv422p             11ad22ce00c5e8a30d0472f29fb15434
-yuv444p             9350a3f23cd7d95ec441a49f63f55953
+yuv444p             6c5b0c1343d625d0656b6755906fd874