Example #1
0
static int alloc_sws_context(FilterParam *f, int width, int height, unsigned int flags)
{
	SwsVector *vec;
	SwsFilter sws_filter;

	vec = sws_getGaussianVec(f->radius, f->quality);

	if (!vec)
		return 0;

	sws_scaleVec(vec, f->strength);
	vec->coeff[vec->length / 2] += 1.0 - f->strength;
	sws_filter.lumH = sws_filter.lumV = vec;
	sws_filter.chrH = sws_filter.chrV = NULL;
	f->filter_context = sws_getCachedContext(NULL,
											 width, height, AV_PIX_FMT_GRAY8,
											 width, height, AV_PIX_FMT_GRAY8,
											 flags, &sws_filter, NULL, NULL);

	sws_freeVec(vec);

	if (!f->filter_context)
		return 0;

	return 1;
}
Example #2
0
static int allocStuff(FilterParam *f, int width, int height){
    SwsVector *vec;
    SwsFilter swsF;

    vec = sws_getGaussianVec(f->radius, f->quality);
    sws_scaleVec(vec, f->strength);
    vec->coeff[vec->length/2]+= 1.0 - f->strength;
    swsF.lumH= swsF.lumV= vec;
    swsF.chrH= swsF.chrV= NULL;
    f->filterContext= sws_getContext(
        width, height, PIX_FMT_GRAY8, width, height, PIX_FMT_GRAY8, SWS_BICUBIC, &swsF, NULL, NULL);

    sws_freeVec(vec);

    return 0;
}