typedef struct HysteresisContext {
const AVClass *class;
+ FFFrameSync fs;
int planes;
int threshold;
int width[4], height[4];
int nb_planes;
int depth;
- FFFrameSync fs;
uint8_t *map;
uint32_t *xy;
{ NULL }
};
-AVFILTER_DEFINE_CLASS(hysteresis);
-
static int query_formats(AVFilterContext *ctx)
{
static const enum AVPixelFormat pix_fmts[] = {
AV_PIX_FMT_GBRP, AV_PIX_FMT_GBRP9, AV_PIX_FMT_GBRP10,
AV_PIX_FMT_GBRP12, AV_PIX_FMT_GBRP14, AV_PIX_FMT_GBRP16,
AV_PIX_FMT_GBRAP, AV_PIX_FMT_GBRAP10, AV_PIX_FMT_GBRAP12, AV_PIX_FMT_GBRAP16,
- AV_PIX_FMT_GRAY8, AV_PIX_FMT_GRAY9, AV_PIX_FMT_GRAY10, AV_PIX_FMT_GRAY12, AV_PIX_FMT_GRAY16,
+ AV_PIX_FMT_GRAY8, AV_PIX_FMT_GRAY9, AV_PIX_FMT_GRAY10, AV_PIX_FMT_GRAY12, AV_PIX_FMT_GRAY14, AV_PIX_FMT_GRAY16,
AV_PIX_FMT_NONE
};
av_log(ctx, AV_LOG_ERROR, "inputs must be of same pixel format\n");
return AVERROR(EINVAL);
}
- if (base->w != alt->w ||
- base->h != alt->h ||
- base->sample_aspect_ratio.num != alt->sample_aspect_ratio.num ||
- base->sample_aspect_ratio.den != alt->sample_aspect_ratio.den) {
+ if (base->w != alt->w || base->h != alt->h) {
av_log(ctx, AV_LOG_ERROR, "First input link %s parameters "
- "(size %dx%d, SAR %d:%d) do not match the corresponding "
- "second input link %s parameters (%dx%d, SAR %d:%d)\n",
+ "(size %dx%d) do not match the corresponding "
+ "second input link %s parameters (size %dx%d)\n",
ctx->input_pads[0].name, base->w, base->h,
- base->sample_aspect_ratio.num,
- base->sample_aspect_ratio.den,
ctx->input_pads[1].name,
- alt->w, alt->h,
- alt->sample_aspect_ratio.num,
- alt->sample_aspect_ratio.den);
+ alt->w, alt->h);
return AVERROR(EINVAL);
}
av_freep(&s->xy);
}
+FRAMESYNC_DEFINE_CLASS(hysteresis, HysteresisContext, fs);
+
static const AVFilterPad hysteresis_inputs[] = {
{
.name = "base",
AVFilter ff_vf_hysteresis = {
.name = "hysteresis",
.description = NULL_IF_CONFIG_SMALL("Grow first stream into second stream by connecting components."),
+ .preinit = hysteresis_framesync_preinit,
.priv_size = sizeof(HysteresisContext),
.uninit = uninit,
.query_formats = query_formats,