X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=libavfilter%2Fvf_xbr.c;h=7226c03783b2dad6a9a5b2956294117a75b8309c;hb=f183d6555e714e00b41aec728feb8a731826cbdc;hp=2c71871d22db45ee31369d132bbee062d45768bf;hpb=762c2b5dcd99a08452299cd1f83070f88115f1f3;p=ffmpeg diff --git a/libavfilter/vf_xbr.c b/libavfilter/vf_xbr.c index 2c71871d22d..7226c03783b 100644 --- a/libavfilter/vf_xbr.c +++ b/libavfilter/vf_xbr.c @@ -380,7 +380,7 @@ static int filter_frame(AVFilterLink *inlink, AVFrame *in) return ff_filter_frame(outlink, out); } -static int init(AVFilterContext *ctx) +static av_cold int init(AVFilterContext *ctx) { XBRContext *s = ctx->priv; static const xbrfunc_t xbrfuncs[] = {xbr2x, xbr3x, xbr4x}; @@ -395,7 +395,7 @@ static int init(AVFilterContext *ctx) int startg = FFMAX3(-bg, -rg, 0); int endg = FFMIN3(255-bg, 255-rg, 255); uint32_t y = (uint32_t)(( 299*rg + 1000*startg + 114*bg)/1000); - c = bg + (rg<<16) + 0x010101 * startg; + c = bg + rg * (1 << 16) + 0x010101 * startg; for (g = startg; g <= endg; g++) { s->rgbtoyuv[c] = ((y++) << 16) + (u << 8) + v; c+= 0x010101; @@ -425,7 +425,7 @@ static const AVFilterPad xbr_outputs[] = { { NULL } }; -AVFilter ff_vf_xbr = { +const AVFilter ff_vf_xbr = { .name = "xbr", .description = NULL_IF_CONFIG_SMALL("Scale the input using xBR algorithm."), .inputs = xbr_inputs,