Unified · Split
| @@ -84,34 +84,34 @@ AVFILTER_DEFINE_CLASS(smartblur); · 83 unmodified lines | |||
| 84 | 84 | ||
| 85 | static av_cold int init(AVFilterContext *ctx) | 85 | static av_cold int init(AVFilterContext *ctx) |
| 86 | { | 86 | { |
| 87 | SmartblurContext *sblur = ctx->priv; | 87 | SmartblurContext *s = ctx->priv; |
| 88 | 88 | ||
| 89 | /* make chroma default to luma values, if not explicitly set */ | 89 | /* make chroma default to luma values, if not explicitly set */ |
| 90 | if (sblur->chroma.radius < RADIUS_MIN) | 90 | if (s->chroma.radius < RADIUS_MIN) |
| 91 | sblur->chroma.radius = sblur->luma.radius; | 91 | s->chroma.radius = s->luma.radius; |
| 92 | if (sblur->chroma.strength < STRENGTH_MIN) | 92 | if (s->chroma.strength < STRENGTH_MIN) |
| 93 | sblur->chroma.strength = sblur->luma.strength; | 93 | s->chroma.strength = s->luma.strength; |
| 94 | if (sblur->chroma.threshold < THRESHOLD_MIN) | 94 | if (s->chroma.threshold < THRESHOLD_MIN) |
| 95 | sblur->chroma.threshold = sblur->luma.threshold; | 95 | s->chroma.threshold = s->luma.threshold; |
| 96 | 96 | ||
| 97 | sblur->luma.quality = sblur->chroma.quality = 3.0; | 97 | s->luma.quality = s->chroma.quality = 3.0; |
| 98 | sblur->sws_flags = SWS_BICUBIC; | 98 | s->sws_flags = SWS_BICUBIC; |
| 99 | 99 | ||
| 100 | av_log(ctx, AV_LOG_VERBOSE, | 100 | av_log(ctx, AV_LOG_VERBOSE, |
| 101 | "luma_radius:%f luma_strength:%f luma_threshold:%d " | 101 | "luma_radius:%f luma_strength:%f luma_threshold:%d " |
| 102 | "chroma_radius:%f chroma_strength:%f chroma_threshold:%d\n", | 102 | "chroma_radius:%f chroma_strength:%f chroma_threshold:%d\n", |
| 103 | sblur->luma.radius, sblur->luma.strength, sblur->luma.threshold, | 103 | s->luma.radius, s->luma.strength, s->luma.threshold, |
| 104 | sblur->chroma.radius, sblur->chroma.strength, sblur->chroma.threshold); | 104 | s->chroma.radius, s->chroma.strength, s->chroma.threshold); |
| 105 | 105 | ||
| 106 | return 0; | 106 | return 0; |
| 107 | } | 107 | } |
| 108 | 108 | ||
| 109 | static av_cold void uninit(AVFilterContext *ctx) | 109 | static av_cold void uninit(AVFilterContext *ctx) |
| 110 | { | 110 | { |
| 111 | SmartblurContext *sblur = ctx->priv; | 111 | SmartblurContext *s = ctx->priv; |
| 112 | 112 | ||
| 113 | sws_freeContext(sblur->luma.filter_context); | 113 | sws_freeContext(s->luma.filter_context); |
| 114 | sws_freeContext(sblur->chroma.filter_context); | 114 | sws_freeContext(s->chroma.filter_context); |
| 115 | } | 115 | } |
| 116 | 116 | ||
| 117 | static int query_formats(AVFilterContext *ctx) | 117 | static int query_formats(AVFilterContext *ctx) |
| @@ -159,17 +159,17 @@ static int alloc_sws_context(FilterParam *f, int width, int height, unsigned int · 41 unmodified lines | |||
| 159 | 159 | ||
| 160 | static int config_props(AVFilterLink *inlink) | 160 | static int config_props(AVFilterLink *inlink) |
| 161 | { | 161 | { |
| 162 | SmartblurContext *sblur = inlink->dst->priv; | 162 | SmartblurContext *s = inlink->dst->priv; |
| 163 | const AVPixFmtDescriptor *desc = av_pix_fmt_desc_get(inlink->format); | 163 | const AVPixFmtDescriptor *desc = av_pix_fmt_desc_get(inlink->format); |
| 164 | 164 | ||
| 165 | sblur->hsub = desc->log2_chroma_w; | 165 | s->hsub = desc->log2_chroma_w; |
| 166 | sblur->vsub = desc->log2_chroma_h; | 166 | s->vsub = desc->log2_chroma_h; |
| 167 | 167 | ||
| 168 | alloc_sws_context(&sblur->luma, inlink->w, inlink->h, sblur->sws_flags); | 168 | alloc_sws_context(&s->luma, inlink->w, inlink->h, s->sws_flags); |
| 169 | alloc_sws_context(&sblur->chroma, | 169 | alloc_sws_context(&s->chroma, |
| 170 | FF_CEIL_RSHIFT(inlink->w, sblur->hsub), | 170 | FF_CEIL_RSHIFT(inlink->w, s->hsub), |
| 171 | FF_CEIL_RSHIFT(inlink->h, sblur->vsub), | 171 | FF_CEIL_RSHIFT(inlink->h, s->vsub), |
| 172 | sblur->sws_flags); | 172 | s->sws_flags); |
| 173 | 173 | ||
| 174 | return 0; | 174 | return 0; |
| 175 | } | 175 | } |
| @@ -240,11 +240,11 @@ static void blur(uint8_t *dst, const int dst_linesize, · 64 unmodified lines | |||
| 240 | 240 | ||
| 241 | static int filter_frame(AVFilterLink *inlink, AVFrame *inpic) | 241 | static int filter_frame(AVFilterLink *inlink, AVFrame *inpic) |
| 242 | { | 242 | { |
| 243 | SmartblurContext *sblur = inlink->dst->priv; | 243 | SmartblurContext *s = inlink->dst->priv; |
| 244 | AVFilterLink *outlink = inlink->dst->outputs[0]; | 244 | AVFilterLink *outlink = inlink->dst->outputs[0]; |
| 245 | AVFrame *outpic; | 245 | AVFrame *outpic; |
| 246 | int cw = FF_CEIL_RSHIFT(inlink->w, sblur->hsub); | 246 | int cw = FF_CEIL_RSHIFT(inlink->w, s->hsub); |
| 247 | int ch = FF_CEIL_RSHIFT(inlink->h, sblur->vsub); | 247 | int ch = FF_CEIL_RSHIFT(inlink->h, s->vsub); |
| 248 | 248 | ||
| 249 | outpic = ff_get_video_buffer(outlink, outlink->w, outlink->h); | 249 | outpic = ff_get_video_buffer(outlink, outlink->w, outlink->h); |
| 250 | if (!outpic) { | 250 | if (!outpic) { |
| @@ -255,18 +255,18 @@ static int filter_frame(AVFilterLink *inlink, AVFrame *inpic) · 4 unmodified lines | |||
| 255 | 255 | ||
| 256 | blur(outpic->data[0], outpic->linesize[0], | 256 | blur(outpic->data[0], outpic->linesize[0], |
| 257 | inpic->data[0], inpic->linesize[0], | 257 | inpic->data[0], inpic->linesize[0], |
| 258 | inlink->w, inlink->h, sblur->luma.threshold, | 258 | inlink->w, inlink->h, s->luma.threshold, |
| 259 | sblur->luma.filter_context); | 259 | s->luma.filter_context); |
| 260 | 260 | ||
| 261 | if (inpic->data[2]) { | 261 | if (inpic->data[2]) { |
| 262 | blur(outpic->data[1], outpic->linesize[1], | 262 | blur(outpic->data[1], outpic->linesize[1], |
| 263 | inpic->data[1], inpic->linesize[1], | 263 | inpic->data[1], inpic->linesize[1], |
| 264 | cw, ch, sblur->chroma.threshold, | 264 | cw, ch, s->chroma.threshold, |
| 265 | sblur->chroma.filter_context); | 265 | s->chroma.filter_context); |
| 266 | blur(outpic->data[2], outpic->linesize[2], | 266 | blur(outpic->data[2], outpic->linesize[2], |
| 267 | inpic->data[2], inpic->linesize[2], | 267 | inpic->data[2], inpic->linesize[2], |
| 268 | cw, ch, sblur->chroma.threshold, | 268 | cw, ch, s->chroma.threshold, |
| 269 | sblur->chroma.filter_context); | 269 | s->chroma.filter_context); |
| 270 | } | 270 | } |
| 271 | 271 | ||
| 272 | av_frame_free(&inpic); | 272 | av_frame_free(&inpic); |