eedi2 ¶
This module implements wrappers for the Enhanced Edge Directed Interpolation (2nd gen.)
Classes:
-
EEDI2
–Base class for EEDI2 interpolating methods.
-
Eedi2
–Full implementation of the EEDI2 anti-aliaser
-
Eedi2DR
–Concrete implementation of EEDI2 used as a double-rater.
-
Eedi2SS
–Concrete implementation of EEDI2 used as a supersampler.
EEDI2 dataclass
¶
EEDI2(
mthresh: int = 10,
lthresh: int = 20,
vthresh: int = 20,
estr: int = 2,
dstr: int = 4,
maxd: int = 24,
pp: int = 1,
cuda: bool = False,
num_streams: int = 1,
device_id: int = -1,
*,
field: int = 0,
drop_fields: bool = True,
transpose_first: bool = False,
shifter: KernelT = Catrom,
scaler: ScalerT | None = None
)
Bases: _FullInterpolate
, Interpolater
Base class for EEDI2 interpolating methods.
Methods:
-
copy
–Returns a new Antialiaser class replacing specified fields with new values
-
full_interpolate
– -
get_aa_args
– -
interpolate
– -
is_full_interpolate_enabled
– -
shift_interpolate
–Applies a post-shifting interpolation operation to the interpolated clip.
Attributes:
-
cuda
(bool
) –Enables the use of the CUDA variant for processing.
-
device_id
(int
) –Specifies the target CUDA device.
-
drop_fields
(bool
) –Whether to discard the unused field based on the
field
setting. -
dstr
(int
) –Defines the required number of edge pixels (>=) in a 3x3 area, in which the center pixel
-
estr
(int
) –Defines the required number of edge pixels (<=) in a 3x3 area, in which the center pixel
-
field
(int
) –Controls the mode of operation and which field is kept in the resized image.
-
lthresh
(int
) –Controls the Laplacian threshold used in edge detection.
-
maxd
(int
) –Sets the maximum pixel search distance for determining the interpolation direction.
-
mthresh
(int
) –Controls the edge magnitude threshold used in edge detection for building the initial edge map.
-
num_streams
(int
) –Specifies the number of CUDA streams.
-
pp
(int
) –Enables two optional post-processing modes designed to reduce artifacts by identifying problem areas
-
scaler
(ScalerT | None
) –Scaler used for additional scaling operations. If None, default to
shifter
-
shifter
(KernelT
) –Kernel used for shifting operations. Default to Catrom.
-
transpose_first
(bool
) –Transpose the clip before any operation.
-
vthresh
(int
) –Controls the variance threshold used in edge detection.
cuda class-attribute
instance-attribute
¶
cuda: bool = False
Enables the use of the CUDA variant for processing. Note that full interpolating is only supported by CUDA.
device_id class-attribute
instance-attribute
¶
device_id: int = -1
Specifies the target CUDA device. The default value (-1) triggers auto-detection of the available device.
drop_fields class-attribute
instance-attribute
¶
drop_fields: bool = True
Whether to discard the unused field based on the field
setting.
dstr class-attribute
instance-attribute
¶
dstr: int = 4
Defines the required number of edge pixels (>=) in a 3x3 area, in which the center pixel has not been detected as an edge pixel, for the center pixel to be added to the edge map.
estr class-attribute
instance-attribute
¶
estr: int = 2
Defines the required number of edge pixels (<=) in a 3x3 area, in which the center pixel has been detected as an edge pixel, for the center pixel to be removed from the edge map.
field class-attribute
instance-attribute
¶
field: int = 0
Controls the mode of operation and which field is kept in the resized image. - 0: Same rate, keeps the bottom field. - 1: Same rate, keeps the top field. - 2: Double rate (alternates each frame), starts with the bottom field. - 3: Double rate (alternates each frame), starts with the top field.
lthresh class-attribute
instance-attribute
¶
lthresh: int = 20
Controls the Laplacian threshold used in edge detection. Its range is from 0 to 510, with lower values detecting weaker lines.
maxd class-attribute
instance-attribute
¶
maxd: int = 24
Sets the maximum pixel search distance for determining the interpolation direction. Larger values allow the algorithm to connect edges and lines with smaller slopes but may introduce artifacts. In some cases, using a smaller maxd
value can yield better results than a larger one. The maximum possible value for maxd
is 29.
mthresh class-attribute
instance-attribute
¶
mthresh: int = 10
Controls the edge magnitude threshold used in edge detection for building the initial edge map. Its range is from 0 to 255, with lower values detecting weaker edges.
num_streams class-attribute
instance-attribute
¶
num_streams: int = 1
Specifies the number of CUDA streams.
pp class-attribute
instance-attribute
¶
pp: int = 1
Enables two optional post-processing modes designed to reduce artifacts by identifying problem areas and applying simple vertical linear interpolation in those areas. While these modes can improve results, they may slow down processing and slightly reduce edge sharpness. - 0 = No post-processing - 1 = Check for spatial consistency of final interpolation directions - 2 = Check for junctions and corners - 3 = Apply both checks from 1 and 2
Only pp=0
and pp=1
is implemented for the CUDA variant.
scaler class-attribute
instance-attribute
¶
scaler: ScalerT | None = None
Scaler used for additional scaling operations. If None, default to shifter
shifter class-attribute
instance-attribute
¶
Kernel used for shifting operations. Default to Catrom.
transpose_first class-attribute
instance-attribute
¶
transpose_first: bool = False
Transpose the clip before any operation.
vthresh class-attribute
instance-attribute
¶
vthresh: int = 20
Controls the variance threshold used in edge detection. Its range is from 0 to a large number, with lower values detecting weaker edges.
copy ¶
copy(**kwargs: Any) -> Self
Returns a new Antialiaser class replacing specified fields with new values
Source code
137 138 139 |
|
full_interpolate ¶
full_interpolate(
clip: VideoNode, double_y: bool, double_x: bool, **kwargs: Any
) -> ConstantFormatVideoNode
Source code
150 151 152 153 154 155 156 157 158 159 160 |
|
get_aa_args ¶
Source code
103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 |
|
interpolate ¶
Source code
128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 |
|
is_full_interpolate_enabled ¶
Source code
100 101 |
|
shift_interpolate ¶
Applies a post-shifting interpolation operation to the interpolated clip.
Parameters:
-
clip
¶VideoNode
) –Source clip.
-
inter
¶VideoNode
) –Interpolated clip.
-
double_y
¶bool
) –Whether the height has been doubled
Returns:
-
ConstantFormatVideoNode
–Shifted clip.
Source code
111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 |
|
Eedi2 dataclass
¶
Eedi2(
mthresh: int = 10,
lthresh: int = 20,
vthresh: int = 20,
estr: int = 2,
dstr: int = 4,
maxd: int = 24,
pp: int = 1,
cuda: bool = False,
num_streams: int = 1,
device_id: int = -1,
*,
field: int = 0,
drop_fields: bool = True,
transpose_first: bool = False,
shifter: KernelT = Catrom,
scaler: ScalerT | None = None
)
Bases: Eedi2DR
, Eedi2SS
, Antialiaser
Full implementation of the EEDI2 anti-aliaser
Methods:
-
aa
– -
copy
–Returns a new Antialiaser class replacing specified fields with new values
-
draa
– -
full_interpolate
– -
get_aa_args
– -
get_sr_args
–Retrieves arguments for single rating processing.
-
get_ss_args
–Retrieves arguments for super sampling processing.
-
interpolate
– -
is_full_interpolate_enabled
– -
scale
–Scale the given clip using super sampling method.
-
shift_interpolate
–Applies a post-shifting interpolation operation to the interpolated clip.
Attributes:
-
cuda
(bool
) –Enables the use of the CUDA variant for processing.
-
device_id
(int
) –Specifies the target CUDA device.
-
drop_fields
(bool
) –Whether to discard the unused field based on the
field
setting. -
dstr
(int
) –Defines the required number of edge pixels (>=) in a 3x3 area, in which the center pixel
-
estr
(int
) –Defines the required number of edge pixels (<=) in a 3x3 area, in which the center pixel
-
field
(int
) –Controls the mode of operation and which field is kept in the resized image.
-
lthresh
(int
) –Controls the Laplacian threshold used in edge detection.
-
maxd
(int
) –Sets the maximum pixel search distance for determining the interpolation direction.
-
merge_func
(Callable[[VideoNode, VideoNode], ConstantFormatVideoNode]
) –Function used to merge the clips after the double-rate operation.
-
mthresh
(int
) –Controls the edge magnitude threshold used in edge detection for building the initial edge map.
-
num_streams
(int
) –Specifies the number of CUDA streams.
-
pp
(int
) –Enables two optional post-processing modes designed to reduce artifacts by identifying problem areas
-
scaler
(ScalerT | None
) –Scaler used for additional scaling operations. If None, default to
shifter
-
shifter
(KernelT
) –Kernel used for shifting operations. Default to Catrom.
-
transpose_first
(bool
) –Transpose the clip before any operation.
-
vthresh
(int
) –Controls the variance threshold used in edge detection.
cuda class-attribute
instance-attribute
¶
cuda: bool = False
Enables the use of the CUDA variant for processing. Note that full interpolating is only supported by CUDA.
device_id class-attribute
instance-attribute
¶
device_id: int = -1
Specifies the target CUDA device. The default value (-1) triggers auto-detection of the available device.
drop_fields class-attribute
instance-attribute
¶
drop_fields: bool = True
Whether to discard the unused field based on the field
setting.
dstr class-attribute
instance-attribute
¶
dstr: int = 4
Defines the required number of edge pixels (>=) in a 3x3 area, in which the center pixel has not been detected as an edge pixel, for the center pixel to be added to the edge map.
estr class-attribute
instance-attribute
¶
estr: int = 2
Defines the required number of edge pixels (<=) in a 3x3 area, in which the center pixel has been detected as an edge pixel, for the center pixel to be removed from the edge map.
field class-attribute
instance-attribute
¶
field: int = 0
Controls the mode of operation and which field is kept in the resized image. - 0: Same rate, keeps the bottom field. - 1: Same rate, keeps the top field. - 2: Double rate (alternates each frame), starts with the bottom field. - 3: Double rate (alternates each frame), starts with the top field.
lthresh class-attribute
instance-attribute
¶
lthresh: int = 20
Controls the Laplacian threshold used in edge detection. Its range is from 0 to 510, with lower values detecting weaker lines.
maxd class-attribute
instance-attribute
¶
maxd: int = 24
Sets the maximum pixel search distance for determining the interpolation direction. Larger values allow the algorithm to connect edges and lines with smaller slopes but may introduce artifacts. In some cases, using a smaller maxd
value can yield better results than a larger one. The maximum possible value for maxd
is 29.
merge_func class-attribute
instance-attribute
¶
merge_func: Callable[[VideoNode, VideoNode], ConstantFormatVideoNode] = Merge
Function used to merge the clips after the double-rate operation.
mthresh class-attribute
instance-attribute
¶
mthresh: int = 10
Controls the edge magnitude threshold used in edge detection for building the initial edge map. Its range is from 0 to 255, with lower values detecting weaker edges.
num_streams class-attribute
instance-attribute
¶
num_streams: int = 1
Specifies the number of CUDA streams.
pp class-attribute
instance-attribute
¶
pp: int = 1
Enables two optional post-processing modes designed to reduce artifacts by identifying problem areas and applying simple vertical linear interpolation in those areas. While these modes can improve results, they may slow down processing and slightly reduce edge sharpness. - 0 = No post-processing - 1 = Check for spatial consistency of final interpolation directions - 2 = Check for junctions and corners - 3 = Apply both checks from 1 and 2
Only pp=0
and pp=1
is implemented for the CUDA variant.
scaler class-attribute
instance-attribute
¶
scaler: ScalerT | None = None
Scaler used for additional scaling operations. If None, default to shifter
shifter class-attribute
instance-attribute
¶
Kernel used for shifting operations. Default to Catrom.
transpose_first class-attribute
instance-attribute
¶
transpose_first: bool = False
Transpose the clip before any operation.
vthresh class-attribute
instance-attribute
¶
vthresh: int = 20
Controls the variance threshold used in edge detection. Its range is from 0 to a large number, with lower values detecting weaker edges.
aa ¶
aa(
clip: VideoNode, dir: AADirection = BOTH, /, **kwargs: Any
) -> ConstantFormatVideoNode
aa(
clip: VideoNode,
y_or_dir: bool | AADirection = True,
x: bool = True,
/,
**kwargs: Any,
) -> ConstantFormatVideoNode
Source code
324 325 326 327 328 329 330 331 332 333 334 |
|
copy ¶
copy(**kwargs: Any) -> Self
Returns a new Antialiaser class replacing specified fields with new values
Source code
137 138 139 |
|
draa ¶
draa(
clip: VideoNode, y: bool = True, x: bool = True, /, **kwargs: Any
) -> ConstantFormatVideoNode
draa(
clip: VideoNode, dir: AADirection = BOTH, /, **kwargs: Any
) -> ConstantFormatVideoNode
draa(
clip: VideoNode,
y_or_dir: bool | AADirection = True,
x: bool = True,
/,
**kwargs: Any,
) -> ConstantFormatVideoNode
Source code
405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 |
|
full_interpolate ¶
full_interpolate(
clip: VideoNode, double_y: bool, double_x: bool, **kwargs: Any
) -> ConstantFormatVideoNode
Source code
150 151 152 153 154 155 156 157 158 159 160 |
|
get_aa_args ¶
Source code
103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 |
|
get_sr_args ¶
Retrieves arguments for single rating processing.
Parameters:
Returns:
Source code
287 288 289 290 291 292 293 294 295 |
|
get_ss_args ¶
Retrieves arguments for super sampling processing.
Parameters:
Returns:
Source code
178 179 180 181 182 183 184 185 186 |
|
interpolate ¶
Source code
128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 |
|
is_full_interpolate_enabled ¶
Source code
100 101 |
|
scale ¶
scale(
clip: VideoNode,
width: int | None = None,
height: int | None = None,
shift: tuple[TopShift, LeftShift] = (0, 0),
**kwargs: Any
) -> VideoNode
Scale the given clip using super sampling method.
Parameters:
-
clip
¶VideoNode
) –The input clip to be scaled.
-
width
¶int | None
, default:None
) –The target width for scaling. If None, the width of the input clip will be used.
-
height
¶int | None
, default:None
) –The target height for scaling. If None, the height of the input clip will be used.
-
shift
¶tuple[TopShift, LeftShift]
, default:(0, 0)
) –A tuple representing the shift values for the y and x axes.
-
**kwargs
¶Any
, default:{}
) –Additional arguments to be passed to the
interpolate
orfull_interpolate
methods.
Returns:
-
VideoNode
–The scaled clip.
Source code
188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 |
|
shift_interpolate ¶
Applies a post-shifting interpolation operation to the interpolated clip.
Parameters:
-
clip
¶VideoNode
) –Source clip.
-
inter
¶VideoNode
) –Interpolated clip.
-
double_y
¶bool
) –Whether the height has been doubled
Returns:
-
ConstantFormatVideoNode
–Shifted clip.
Source code
111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 |
|
Eedi2DR dataclass
¶
Eedi2DR(
mthresh: int = 10,
lthresh: int = 20,
vthresh: int = 20,
estr: int = 2,
dstr: int = 4,
maxd: int = 24,
pp: int = 1,
cuda: bool = False,
num_streams: int = 1,
device_id: int = -1,
*,
field: int = 0,
drop_fields: bool = True,
transpose_first: bool = False,
shifter: KernelT = Catrom,
scaler: ScalerT | None = None
)
Bases: Eedi2SR
, DoubleRater
Concrete implementation of EEDI2 used as a double-rater.
Methods:
-
aa
– -
copy
–Returns a new Antialiaser class replacing specified fields with new values
-
draa
– -
full_interpolate
– -
get_aa_args
– -
get_sr_args
–Retrieves arguments for single rating processing.
-
interpolate
– -
is_full_interpolate_enabled
– -
shift_interpolate
–Applies a post-shifting interpolation operation to the interpolated clip.
Attributes:
-
cuda
(bool
) –Enables the use of the CUDA variant for processing.
-
device_id
(int
) –Specifies the target CUDA device.
-
drop_fields
(bool
) –Whether to discard the unused field based on the
field
setting. -
dstr
(int
) –Defines the required number of edge pixels (>=) in a 3x3 area, in which the center pixel
-
estr
(int
) –Defines the required number of edge pixels (<=) in a 3x3 area, in which the center pixel
-
field
(int
) –Controls the mode of operation and which field is kept in the resized image.
-
lthresh
(int
) –Controls the Laplacian threshold used in edge detection.
-
maxd
(int
) –Sets the maximum pixel search distance for determining the interpolation direction.
-
merge_func
(Callable[[VideoNode, VideoNode], ConstantFormatVideoNode]
) –Function used to merge the clips after the double-rate operation.
-
mthresh
(int
) –Controls the edge magnitude threshold used in edge detection for building the initial edge map.
-
num_streams
(int
) –Specifies the number of CUDA streams.
-
pp
(int
) –Enables two optional post-processing modes designed to reduce artifacts by identifying problem areas
-
scaler
(ScalerT | None
) –Scaler used for additional scaling operations. If None, default to
shifter
-
shifter
(KernelT
) –Kernel used for shifting operations. Default to Catrom.
-
transpose_first
(bool
) –Transpose the clip before any operation.
-
vthresh
(int
) –Controls the variance threshold used in edge detection.
cuda class-attribute
instance-attribute
¶
cuda: bool = False
Enables the use of the CUDA variant for processing. Note that full interpolating is only supported by CUDA.
device_id class-attribute
instance-attribute
¶
device_id: int = -1
Specifies the target CUDA device. The default value (-1) triggers auto-detection of the available device.
drop_fields class-attribute
instance-attribute
¶
drop_fields: bool = True
Whether to discard the unused field based on the field
setting.
dstr class-attribute
instance-attribute
¶
dstr: int = 4
Defines the required number of edge pixels (>=) in a 3x3 area, in which the center pixel has not been detected as an edge pixel, for the center pixel to be added to the edge map.
estr class-attribute
instance-attribute
¶
estr: int = 2
Defines the required number of edge pixels (<=) in a 3x3 area, in which the center pixel has been detected as an edge pixel, for the center pixel to be removed from the edge map.
field class-attribute
instance-attribute
¶
field: int = 0
Controls the mode of operation and which field is kept in the resized image. - 0: Same rate, keeps the bottom field. - 1: Same rate, keeps the top field. - 2: Double rate (alternates each frame), starts with the bottom field. - 3: Double rate (alternates each frame), starts with the top field.
lthresh class-attribute
instance-attribute
¶
lthresh: int = 20
Controls the Laplacian threshold used in edge detection. Its range is from 0 to 510, with lower values detecting weaker lines.
maxd class-attribute
instance-attribute
¶
maxd: int = 24
Sets the maximum pixel search distance for determining the interpolation direction. Larger values allow the algorithm to connect edges and lines with smaller slopes but may introduce artifacts. In some cases, using a smaller maxd
value can yield better results than a larger one. The maximum possible value for maxd
is 29.
merge_func class-attribute
instance-attribute
¶
merge_func: Callable[[VideoNode, VideoNode], ConstantFormatVideoNode] = Merge
Function used to merge the clips after the double-rate operation.
mthresh class-attribute
instance-attribute
¶
mthresh: int = 10
Controls the edge magnitude threshold used in edge detection for building the initial edge map. Its range is from 0 to 255, with lower values detecting weaker edges.
num_streams class-attribute
instance-attribute
¶
num_streams: int = 1
Specifies the number of CUDA streams.
pp class-attribute
instance-attribute
¶
pp: int = 1
Enables two optional post-processing modes designed to reduce artifacts by identifying problem areas and applying simple vertical linear interpolation in those areas. While these modes can improve results, they may slow down processing and slightly reduce edge sharpness. - 0 = No post-processing - 1 = Check for spatial consistency of final interpolation directions - 2 = Check for junctions and corners - 3 = Apply both checks from 1 and 2
Only pp=0
and pp=1
is implemented for the CUDA variant.
scaler class-attribute
instance-attribute
¶
scaler: ScalerT | None = None
Scaler used for additional scaling operations. If None, default to shifter
shifter class-attribute
instance-attribute
¶
Kernel used for shifting operations. Default to Catrom.
transpose_first class-attribute
instance-attribute
¶
transpose_first: bool = False
Transpose the clip before any operation.
vthresh class-attribute
instance-attribute
¶
vthresh: int = 20
Controls the variance threshold used in edge detection. Its range is from 0 to a large number, with lower values detecting weaker edges.
aa ¶
aa(
clip: VideoNode, dir: AADirection = BOTH, /, **kwargs: Any
) -> ConstantFormatVideoNode
aa(
clip: VideoNode,
y_or_dir: bool | AADirection = True,
x: bool = True,
/,
**kwargs: Any,
) -> ConstantFormatVideoNode
Source code
324 325 326 327 328 329 330 331 332 333 334 |
|
copy ¶
copy(**kwargs: Any) -> Self
Returns a new Antialiaser class replacing specified fields with new values
Source code
137 138 139 |
|
draa ¶
draa(
clip: VideoNode, y: bool = True, x: bool = True, /, **kwargs: Any
) -> ConstantFormatVideoNode
draa(
clip: VideoNode, dir: AADirection = BOTH, /, **kwargs: Any
) -> ConstantFormatVideoNode
draa(
clip: VideoNode,
y_or_dir: bool | AADirection = True,
x: bool = True,
/,
**kwargs: Any,
) -> ConstantFormatVideoNode
Source code
405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 |
|
full_interpolate ¶
full_interpolate(
clip: VideoNode, double_y: bool, double_x: bool, **kwargs: Any
) -> ConstantFormatVideoNode
Source code
150 151 152 153 154 155 156 157 158 159 160 |
|
get_aa_args ¶
Source code
103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 |
|
get_sr_args ¶
Retrieves arguments for single rating processing.
Parameters:
Returns:
Source code
287 288 289 290 291 292 293 294 295 |
|
interpolate ¶
Source code
128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 |
|
is_full_interpolate_enabled ¶
Source code
100 101 |
|
shift_interpolate ¶
Applies a post-shifting interpolation operation to the interpolated clip.
Parameters:
-
clip
¶VideoNode
) –Source clip.
-
inter
¶VideoNode
) –Interpolated clip.
-
double_y
¶bool
) –Whether the height has been doubled
Returns:
-
ConstantFormatVideoNode
–Shifted clip.
Source code
111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 |
|
Eedi2SR dataclass
¶
Eedi2SR(
mthresh: int = 10,
lthresh: int = 20,
vthresh: int = 20,
estr: int = 2,
dstr: int = 4,
maxd: int = 24,
pp: int = 1,
cuda: bool = False,
num_streams: int = 1,
device_id: int = -1,
*,
field: int = 0,
drop_fields: bool = True,
transpose_first: bool = False,
shifter: KernelT = Catrom,
scaler: ScalerT | None = None
)
Bases: EEDI2
, SingleRater
Concrete implementation of EEDI2 used as a single-rater.
Methods:
-
aa
– -
copy
–Returns a new Antialiaser class replacing specified fields with new values
-
full_interpolate
– -
get_aa_args
– -
get_sr_args
–Retrieves arguments for single rating processing.
-
interpolate
– -
is_full_interpolate_enabled
– -
shift_interpolate
–Applies a post-shifting interpolation operation to the interpolated clip.
Attributes:
-
cuda
(bool
) –Enables the use of the CUDA variant for processing.
-
device_id
(int
) –Specifies the target CUDA device.
-
drop_fields
(bool
) –Whether to discard the unused field based on the
field
setting. -
dstr
(int
) –Defines the required number of edge pixels (>=) in a 3x3 area, in which the center pixel
-
estr
(int
) –Defines the required number of edge pixels (<=) in a 3x3 area, in which the center pixel
-
field
(int
) –Controls the mode of operation and which field is kept in the resized image.
-
lthresh
(int
) –Controls the Laplacian threshold used in edge detection.
-
maxd
(int
) –Sets the maximum pixel search distance for determining the interpolation direction.
-
mthresh
(int
) –Controls the edge magnitude threshold used in edge detection for building the initial edge map.
-
num_streams
(int
) –Specifies the number of CUDA streams.
-
pp
(int
) –Enables two optional post-processing modes designed to reduce artifacts by identifying problem areas
-
scaler
(ScalerT | None
) –Scaler used for additional scaling operations. If None, default to
shifter
-
shifter
(KernelT
) –Kernel used for shifting operations. Default to Catrom.
-
transpose_first
(bool
) –Transpose the clip before any operation.
-
vthresh
(int
) –Controls the variance threshold used in edge detection.
cuda class-attribute
instance-attribute
¶
cuda: bool = False
Enables the use of the CUDA variant for processing. Note that full interpolating is only supported by CUDA.
device_id class-attribute
instance-attribute
¶
device_id: int = -1
Specifies the target CUDA device. The default value (-1) triggers auto-detection of the available device.
drop_fields class-attribute
instance-attribute
¶
drop_fields: bool = True
Whether to discard the unused field based on the field
setting.
dstr class-attribute
instance-attribute
¶
dstr: int = 4
Defines the required number of edge pixels (>=) in a 3x3 area, in which the center pixel has not been detected as an edge pixel, for the center pixel to be added to the edge map.
estr class-attribute
instance-attribute
¶
estr: int = 2
Defines the required number of edge pixels (<=) in a 3x3 area, in which the center pixel has been detected as an edge pixel, for the center pixel to be removed from the edge map.
field class-attribute
instance-attribute
¶
field: int = 0
Controls the mode of operation and which field is kept in the resized image. - 0: Same rate, keeps the bottom field. - 1: Same rate, keeps the top field. - 2: Double rate (alternates each frame), starts with the bottom field. - 3: Double rate (alternates each frame), starts with the top field.
lthresh class-attribute
instance-attribute
¶
lthresh: int = 20
Controls the Laplacian threshold used in edge detection. Its range is from 0 to 510, with lower values detecting weaker lines.
maxd class-attribute
instance-attribute
¶
maxd: int = 24
Sets the maximum pixel search distance for determining the interpolation direction. Larger values allow the algorithm to connect edges and lines with smaller slopes but may introduce artifacts. In some cases, using a smaller maxd
value can yield better results than a larger one. The maximum possible value for maxd
is 29.
mthresh class-attribute
instance-attribute
¶
mthresh: int = 10
Controls the edge magnitude threshold used in edge detection for building the initial edge map. Its range is from 0 to 255, with lower values detecting weaker edges.
num_streams class-attribute
instance-attribute
¶
num_streams: int = 1
Specifies the number of CUDA streams.
pp class-attribute
instance-attribute
¶
pp: int = 1
Enables two optional post-processing modes designed to reduce artifacts by identifying problem areas and applying simple vertical linear interpolation in those areas. While these modes can improve results, they may slow down processing and slightly reduce edge sharpness. - 0 = No post-processing - 1 = Check for spatial consistency of final interpolation directions - 2 = Check for junctions and corners - 3 = Apply both checks from 1 and 2
Only pp=0
and pp=1
is implemented for the CUDA variant.
scaler class-attribute
instance-attribute
¶
scaler: ScalerT | None = None
Scaler used for additional scaling operations. If None, default to shifter
shifter class-attribute
instance-attribute
¶
Kernel used for shifting operations. Default to Catrom.
transpose_first class-attribute
instance-attribute
¶
transpose_first: bool = False
Transpose the clip before any operation.
vthresh class-attribute
instance-attribute
¶
vthresh: int = 20
Controls the variance threshold used in edge detection. Its range is from 0 to a large number, with lower values detecting weaker edges.
aa ¶
aa(
clip: VideoNode, dir: AADirection = BOTH, /, **kwargs: Any
) -> ConstantFormatVideoNode
aa(
clip: VideoNode,
y_or_dir: bool | AADirection = True,
x: bool = True,
/,
**kwargs: Any,
) -> ConstantFormatVideoNode
Source code
324 325 326 327 328 329 330 331 332 333 334 |
|
copy ¶
copy(**kwargs: Any) -> Self
Returns a new Antialiaser class replacing specified fields with new values
Source code
137 138 139 |
|
full_interpolate ¶
full_interpolate(
clip: VideoNode, double_y: bool, double_x: bool, **kwargs: Any
) -> ConstantFormatVideoNode
Source code
150 151 152 153 154 155 156 157 158 159 160 |
|
get_aa_args ¶
Source code
103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 |
|
get_sr_args ¶
Retrieves arguments for single rating processing.
Parameters:
Returns:
Source code
287 288 289 290 291 292 293 294 295 |
|
interpolate ¶
Source code
128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 |
|
is_full_interpolate_enabled ¶
Source code
100 101 |
|
shift_interpolate ¶
Applies a post-shifting interpolation operation to the interpolated clip.
Parameters:
-
clip
¶VideoNode
) –Source clip.
-
inter
¶VideoNode
) –Interpolated clip.
-
double_y
¶bool
) –Whether the height has been doubled
Returns:
-
ConstantFormatVideoNode
–Shifted clip.
Source code
111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 |
|
Eedi2SS dataclass
¶
Eedi2SS(
mthresh: int = 10,
lthresh: int = 20,
vthresh: int = 20,
estr: int = 2,
dstr: int = 4,
maxd: int = 24,
pp: int = 1,
cuda: bool = False,
num_streams: int = 1,
device_id: int = -1,
*,
field: int = 0,
drop_fields: bool = True,
transpose_first: bool = False,
shifter: KernelT = Catrom,
scaler: ScalerT | None = None
)
Bases: EEDI2
, SuperSampler
Concrete implementation of EEDI2 used as a supersampler.
Methods:
-
copy
–Returns a new Antialiaser class replacing specified fields with new values
-
full_interpolate
– -
get_aa_args
– -
get_ss_args
–Retrieves arguments for super sampling processing.
-
interpolate
– -
is_full_interpolate_enabled
– -
scale
–Scale the given clip using super sampling method.
-
shift_interpolate
–Applies a post-shifting interpolation operation to the interpolated clip.
Attributes:
-
cuda
(bool
) –Enables the use of the CUDA variant for processing.
-
device_id
(int
) –Specifies the target CUDA device.
-
drop_fields
(bool
) –Whether to discard the unused field based on the
field
setting. -
dstr
(int
) –Defines the required number of edge pixels (>=) in a 3x3 area, in which the center pixel
-
estr
(int
) –Defines the required number of edge pixels (<=) in a 3x3 area, in which the center pixel
-
field
(int
) –Controls the mode of operation and which field is kept in the resized image.
-
lthresh
(int
) –Controls the Laplacian threshold used in edge detection.
-
maxd
(int
) –Sets the maximum pixel search distance for determining the interpolation direction.
-
mthresh
(int
) –Controls the edge magnitude threshold used in edge detection for building the initial edge map.
-
num_streams
(int
) –Specifies the number of CUDA streams.
-
pp
(int
) –Enables two optional post-processing modes designed to reduce artifacts by identifying problem areas
-
scaler
(ScalerT | None
) –Scaler used for additional scaling operations. If None, default to
shifter
-
shifter
(KernelT
) –Kernel used for shifting operations. Default to Catrom.
-
transpose_first
(bool
) –Transpose the clip before any operation.
-
vthresh
(int
) –Controls the variance threshold used in edge detection.
cuda class-attribute
instance-attribute
¶
cuda: bool = False
Enables the use of the CUDA variant for processing. Note that full interpolating is only supported by CUDA.
device_id class-attribute
instance-attribute
¶
device_id: int = -1
Specifies the target CUDA device. The default value (-1) triggers auto-detection of the available device.
drop_fields class-attribute
instance-attribute
¶
drop_fields: bool = True
Whether to discard the unused field based on the field
setting.
dstr class-attribute
instance-attribute
¶
dstr: int = 4
Defines the required number of edge pixels (>=) in a 3x3 area, in which the center pixel has not been detected as an edge pixel, for the center pixel to be added to the edge map.
estr class-attribute
instance-attribute
¶
estr: int = 2
Defines the required number of edge pixels (<=) in a 3x3 area, in which the center pixel has been detected as an edge pixel, for the center pixel to be removed from the edge map.
field class-attribute
instance-attribute
¶
field: int = 0
Controls the mode of operation and which field is kept in the resized image. - 0: Same rate, keeps the bottom field. - 1: Same rate, keeps the top field. - 2: Double rate (alternates each frame), starts with the bottom field. - 3: Double rate (alternates each frame), starts with the top field.
lthresh class-attribute
instance-attribute
¶
lthresh: int = 20
Controls the Laplacian threshold used in edge detection. Its range is from 0 to 510, with lower values detecting weaker lines.
maxd class-attribute
instance-attribute
¶
maxd: int = 24
Sets the maximum pixel search distance for determining the interpolation direction. Larger values allow the algorithm to connect edges and lines with smaller slopes but may introduce artifacts. In some cases, using a smaller maxd
value can yield better results than a larger one. The maximum possible value for maxd
is 29.
mthresh class-attribute
instance-attribute
¶
mthresh: int = 10
Controls the edge magnitude threshold used in edge detection for building the initial edge map. Its range is from 0 to 255, with lower values detecting weaker edges.
num_streams class-attribute
instance-attribute
¶
num_streams: int = 1
Specifies the number of CUDA streams.
pp class-attribute
instance-attribute
¶
pp: int = 1
Enables two optional post-processing modes designed to reduce artifacts by identifying problem areas and applying simple vertical linear interpolation in those areas. While these modes can improve results, they may slow down processing and slightly reduce edge sharpness. - 0 = No post-processing - 1 = Check for spatial consistency of final interpolation directions - 2 = Check for junctions and corners - 3 = Apply both checks from 1 and 2
Only pp=0
and pp=1
is implemented for the CUDA variant.
scaler class-attribute
instance-attribute
¶
scaler: ScalerT | None = None
Scaler used for additional scaling operations. If None, default to shifter
shifter class-attribute
instance-attribute
¶
Kernel used for shifting operations. Default to Catrom.
transpose_first class-attribute
instance-attribute
¶
transpose_first: bool = False
Transpose the clip before any operation.
vthresh class-attribute
instance-attribute
¶
vthresh: int = 20
Controls the variance threshold used in edge detection. Its range is from 0 to a large number, with lower values detecting weaker edges.
copy ¶
copy(**kwargs: Any) -> Self
Returns a new Antialiaser class replacing specified fields with new values
Source code
137 138 139 |
|
full_interpolate ¶
full_interpolate(
clip: VideoNode, double_y: bool, double_x: bool, **kwargs: Any
) -> ConstantFormatVideoNode
Source code
150 151 152 153 154 155 156 157 158 159 160 |
|
get_aa_args ¶
Source code
103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 |
|
get_ss_args ¶
Retrieves arguments for super sampling processing.
Parameters:
Returns:
Source code
178 179 180 181 182 183 184 185 186 |
|
interpolate ¶
Source code
128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 |
|
is_full_interpolate_enabled ¶
Source code
100 101 |
|
scale ¶
scale(
clip: VideoNode,
width: int | None = None,
height: int | None = None,
shift: tuple[TopShift, LeftShift] = (0, 0),
**kwargs: Any
) -> VideoNode
Scale the given clip using super sampling method.
Parameters:
-
clip
¶VideoNode
) –The input clip to be scaled.
-
width
¶int | None
, default:None
) –The target width for scaling. If None, the width of the input clip will be used.
-
height
¶int | None
, default:None
) –The target height for scaling. If None, the height of the input clip will be used.
-
shift
¶tuple[TopShift, LeftShift]
, default:(0, 0)
) –A tuple representing the shift values for the y and x axes.
-
**kwargs
¶Any
, default:{}
) –Additional arguments to be passed to the
interpolate
orfull_interpolate
methods.
Returns:
-
VideoNode
–The scaled clip.
Source code
188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 |
|
shift_interpolate ¶
Applies a post-shifting interpolation operation to the interpolated clip.
Parameters:
-
clip
¶VideoNode
) –Source clip.
-
inter
¶VideoNode
) –Interpolated clip.
-
double_y
¶bool
) –Whether the height has been doubled
Returns:
-
ConstantFormatVideoNode
–Shifted clip.
Source code
111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 |
|