diff --git a/vsaa/antialiasers/nnedi3.py b/vsaa/antialiasers/nnedi3.py index c6c6473..9fc3099 100644 --- a/vsaa/antialiasers/nnedi3.py +++ b/vsaa/antialiasers/nnedi3.py @@ -32,11 +32,16 @@ def get_aa_args(self, clip: vs.VideoNode, **kwargs: Any) -> dict[str, Any]: return dict(nsize=self.nsize, nns=self.nns, qual=self.qual, etype=self.etype, pscrn=pscrn) def interpolate(self, clip: vs.VideoNode, double_y: bool, **kwargs: Any) -> vs.VideoNode: - interpolated: vs.VideoNode = getattr( - core, 'znedi3' if hasattr(core, 'znedi3') else 'nnedi3' - ).nnedi3( - clip, self.field, double_y or not self.drop_fields, **kwargs - ) + if not (hasattr(core, 'znedi3') or hasattr(core, 'nnedi3')): + interpolated: vs.VideoNode = self.full_interpolate( + clip, double_y or not self.drop_fields, False, **kwargs + ) + else: + interpolated = getattr( + core, 'znedi3' if hasattr(core, 'znedi3') else 'nnedi3' + ).nnedi3( + clip, self.field, double_y or not self.drop_fields, **kwargs + ) return self.shift_interpolate(clip, interpolated, double_y, **kwargs)