On 10/28/17, Martin Vignali <martin.vign...@gmail.com> wrote:
> 2017-10-28 18:57 GMT+02:00 Nicolas George <geo...@nsup.org>:
>
>> Le septidi 7 brumaire, an CCXXVI, Martin Vignali a ecrit :
>> > Don't know if there is a better way to fix it
>> > but if the variable stay unsigned
>> > this for loop create the problem
>> > for (y = ymin; y < ymax - 15; y += 16) {
>>
>> Looks like a job for FFMAX or FFMIN to me.
>>
>
> Not sure i understand, can you explain a little bit more ?
> In my test, using FFMAX, and FFMIN, with "negative" unsigned doesn't fix
> the problem
>
> for example with ymin = 1 and ymax = 1
> FFMIN(ymin, ymax-15) return 1
>
>
> And after tests, both dimensions need to be test
>
> the previous patch, doesn't fix this :
> ./ffmpeg -lavfi testsrc2=s=2x600 -vframes 3 -f null -
>
> so i propose something like this (but feel free to post a better approach)
>
>     /* bottom right: checker with random noise */
>     {
>         int xmin = av_rescale(5, s->w, 8);//<== unsigned -> int
>         int xmax = av_rescale(7, s->w, 8);//<== unsigned -> int
>         int ymin = av_rescale(5, s->h, 8);//<== unsigned -> int
>         int ymax = av_rescale(7, s->h, 8);//<== unsigned -> int
>         unsigned i, r;
>         int x, y;//<== unsigned -> int
>         uint8_t alpha[256];
>
>         r = s->pts;
>         for (y = ymin; y < ymax - 15; y += 16) {//can hang
>             for (x = xmin; x < xmax - 15; x += 16) {//can hang
>                 if ((x ^ y) & 16)
>                     continue;
>                 for (i = 0; i < 256; i++) {
>                     r = r * 1664525 + 1013904223;
>                     alpha[i] = r >> 24;
>                 }
>                 set_color(s, &color, 0xFF00FF80);
>                 ff_blend_mask(&s->draw, &color, frame->data,
> frame->linesize,
>                                    frame->width, frame->height,
>                                    alpha, 16, 16, 16, 3, 0, x, y);
>             }
>         }
>     }
>
> Martin
> _______________________________________________
> ffmpeg-devel mailing list
> ffmpeg-devel@ffmpeg.org
> http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
>

Welcome to endless bikeshed.
_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel

Reply via email to