Merge commit 'feed239021bad89743d5e7989b426ae594322eb7'
authorJames Almer <jamrial@gmail.com>
Sat, 11 Nov 2017 13:09:41 +0000 (10:09 -0300)
committerJames Almer <jamrial@gmail.com>
Sat, 11 Nov 2017 13:09:41 +0000 (10:09 -0300)
* commit 'feed239021bad89743d5e7989b426ae594322eb7':
  yadif: Account for the buffer alignment while processing the frame edges

See 221f902f1dc167bdc0bfdff6b6af3214ae3cc1f4

Merged-by: James Almer <jamrial@gmail.com>
1  2 
libavfilter/vf_yadif.c

@@@ -190,9 -197,11 +195,10 @@@ static int filter_slice(AVFilterContex
      int refs = s->cur->linesize[td->plane];
      int df = (s->csp->comp[td->plane].depth + 7) / 8;
      int pix_3 = 3 * df;
 -    int slice_h = td->h / nb_jobs;
 -    int slice_start = jobnr * slice_h;
 -    int slice_end   = (jobnr == nb_jobs - 1) ? td->h : (jobnr + 1) * slice_h;
 +    int slice_start = (td->h *  jobnr   ) / nb_jobs;
 +    int slice_end   = (td->h * (jobnr+1)) / nb_jobs;
      int y;
+     int edge = 3 + MAX_ALIGN / df - 1;
  
      /* filtering reads 3 pixels to the left/right; to avoid invalid reads,
       * we need to call the c variant which avoids this for border pixels