util ¶
Classes:
-
LinearLight
– -
NoScale
– -
NoShift
–Class util used to always pass shift=(0, 0)
Functions:
LinearLight dataclass
¶
LinearLight(
clip: VideoNode,
linear: bool = True,
sigmoid: bool | tuple[Slope, Center] = False,
resampler: ResamplerT | None = Catrom,
out_fmt: VideoFormat | None = None,
)
Classes:
Attributes:
-
clip
(VideoNode
) – -
linear
(bool
) – -
out_fmt
(VideoFormat | None
) – -
resampler
(ResamplerT | None
) – -
sigmoid
(bool | tuple[Slope, Center]
) –
LinearLightProcessing dataclass
¶
LinearLightProcessing(ll: LinearLight)
Bases: baseclass
Methods:
-
get_linear
– -
out
– -
set_linear
–
Attributes:
-
linear
– -
ll
(LinearLight
) –
linear class-attribute
instance-attribute
¶
linear = cachedproperty[[Self], VideoNode, Self, VideoNode, ...](
get_linear, set_linear
)
get_linear ¶
get_linear() -> VideoNode
Source code
144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 |
|
out ¶
out() -> VideoNode
Source code
181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 |
|
set_linear ¶
set_linear(processed: VideoNode) -> None
Source code
172 173 174 175 176 177 |
|
NoScale ¶
Bases: NoScaleBase
, Bicubic
Methods:
-
descale
– -
ensure_obj
– -
from_kernel
– -
from_param
– -
get_clean_kwargs
– -
get_descale_args
– -
get_implemented_funcs
– -
get_params_args
– -
get_resample_args
– -
get_scale_args
– -
kernel_radius
– -
multi
– -
pretty_string
– -
resample
– -
scale
– -
shift
– -
supersample
–
Attributes:
-
b
– -
c
– -
descale_function
– -
kwargs
(KwargsT
) –Arguments passed to the internal scale function
-
resample_function
– -
scale_function
–
Source code
41 42 43 44 |
|
kwargs instance-attribute
¶
kwargs: KwargsT = kwargs
Arguments passed to the internal scale function
descale ¶
descale(
clip: VideoNode,
width: int | None = None,
height: int | None = None,
shift: ShiftT = (0, 0),
*,
border_handling: BorderHandling = MIRROR,
sample_grid_model: SampleGridModel = MATCH_EDGES,
field_based: FieldBased | None = None,
linear: bool = False,
sigmoid: bool | tuple[Slope, Center] = False,
blur: float = 1.0,
ignore_mask: VideoNode | None = None,
**kwargs: Any
) -> ConstantFormatVideoNode
Source code
60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 |
|
ensure_obj classmethod
¶
ensure_obj(
kernel: ScalerT | KernelT | None = ...,
/,
func_except: FuncExceptT | None = None,
) -> Scaler
ensure_obj(
kernel: DescalerT | KernelT | None = ...,
/,
func_except: FuncExceptT | None = None,
) -> Descaler
ensure_obj(
kernel: ResamplerT | KernelT | None = ...,
/,
func_except: FuncExceptT | None = None,
) -> Resampler
ensure_obj(
kernel: str | type[BaseScaler] | BaseScaler | None = None,
/,
func_except: FuncExceptT | None = None,
) -> BaseScaler
Source code
647 648 649 650 651 652 653 654 |
|
from_kernel staticmethod
¶
Source code
117 118 119 120 121 122 123 124 |
|
from_param classmethod
¶
from_param(
kernel: KernelT | None = ..., /, func_except: FuncExceptT | None = None
) -> type[Kernel]
from_param(
kernel: ScalerT | KernelT | None = ...,
/,
func_except: FuncExceptT | None = None,
) -> type[Scaler]
from_param(
kernel: DescalerT | KernelT | None = ...,
/,
func_except: FuncExceptT | None = None,
) -> type[Descaler]
from_param(
kernel: ResamplerT | KernelT | None = ...,
/,
func_except: FuncExceptT | None = None,
) -> type[Resampler]
from_param(
kernel: str | type[BaseScaler] | BaseScaler | None = None,
/,
func_except: FuncExceptT | None = None,
) -> type[BaseScaler]
Source code
611 612 613 614 615 616 617 |
|
get_clean_kwargs ¶
Source code
216 217 |
|
get_descale_args ¶
get_descale_args(
clip: VideoNode,
shift: tuple[TopShift, LeftShift] = (0, 0),
width: int | None = None,
height: int | None = None,
*funcs: Callable[..., Any],
**kwargs: Any
) -> KwargsT
Source code
673 674 675 676 677 678 679 680 681 682 683 |
|
get_implemented_funcs ¶
Source code
701 702 |
|
get_params_args ¶
get_params_args(
is_descale: bool,
clip: VideoNode,
width: int | None = None,
height: int | None = None,
**kwargs: Any
) -> dict[str, Any]
Source code
46 47 48 49 50 51 52 |
|
get_resample_args ¶
get_resample_args(
clip: VideoNode,
format: int | VideoFormatT | HoldsVideoFormatT,
matrix: MatrixT | None,
matrix_in: MatrixT | None,
*funcs: Callable[..., Any],
**kwargs: Any
) -> KwargsT
Source code
685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 |
|
get_scale_args ¶
get_scale_args(
clip: VideoNode,
shift: tuple[TopShift, LeftShift] = (0, 0),
width: int | None = None,
height: int | None = None,
*funcs: Callable[..., Any],
**kwargs: Any
) -> KwargsT
Source code
661 662 663 664 665 666 667 668 669 670 671 |
|
kernel_radius ¶
kernel_radius() -> int
Source code
54 55 56 57 58 |
|
multi ¶
multi(
clip: VideoNode,
multi: float = 2.0,
shift: tuple[TopShift, LeftShift] = (0, 0),
**kwargs: Any
) -> VideoNode
Source code
272 273 274 275 276 277 278 279 280 281 |
|
pretty_string ¶
pretty_string() -> str
Source code
225 226 227 |
|
resample ¶
resample(
clip: VideoNode,
format: int | VideoFormatT | HoldsVideoFormatT,
matrix: MatrixT | None = None,
matrix_in: MatrixT | None = None,
**kwargs: Any
) -> ConstantFormatVideoNode
Source code
438 439 440 441 442 443 444 445 446 |
|
scale ¶
scale(
clip: VideoNode,
width: int | None = None,
height: int | None = None,
shift: tuple[TopShift, LeftShift] = (0, 0),
**kwargs: Any
) -> VideoNode
Source code
105 106 107 108 109 110 111 112 |
|
shift ¶
shift(
clip: VideoNode,
shifts_or_top: float | tuple[float, float] | list[float] | None = None,
shift_left: float | list[float] | None = None,
/,
**kwargs: Any,
) -> ConstantFormatVideoNode
Source code
523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 |
|
supersample ¶
supersample(
clip: VideoNode,
rfactor: float = 2.0,
shift: tuple[TopShift, LeftShift] = (0, 0),
**kwargs: Any
) -> VideoNode
Source code
257 258 259 260 261 262 263 264 265 266 267 268 269 270 |
|
NoScaleBase ¶
NoScaleBase(**kwargs: Any)
Bases: Scaler
Methods:
-
ensure_obj
– -
from_param
– -
get_clean_kwargs
– -
get_implemented_funcs
– -
get_scale_args
– -
kernel_radius
– -
multi
– -
pretty_string
– -
scale
– -
supersample
–
Attributes:
-
kwargs
(KwargsT
) –Arguments passed to the internal scale function
-
scale_function
(Callable[..., VideoNode]
) –Scale function called internally when scaling
Source code
182 183 |
|
kwargs instance-attribute
¶
kwargs: KwargsT = kwargs
Arguments passed to the internal scale function
scale_function instance-attribute
¶
scale_function: Callable[..., VideoNode]
Scale function called internally when scaling
ensure_obj classmethod
¶
ensure_obj(
scaler: str | type[BaseScalerT] | BaseScalerT | None = None,
/,
func_except: FuncExceptT | None = None,
) -> BaseScalerT
Source code
201 202 203 204 205 206 207 208 |
|
from_param classmethod
¶
from_param(
scaler: str | type[BaseScalerT] | BaseScalerT | None = None,
/,
func_except: FuncExceptT | None = None,
) -> type[BaseScalerT]
Source code
192 193 194 195 196 197 198 199 |
|
get_clean_kwargs ¶
Source code
216 217 |
|
get_implemented_funcs ¶
Source code
299 300 |
|
get_scale_args ¶
get_scale_args(
clip: VideoNode,
shift: tuple[TopShift, LeftShift] = (0, 0),
width: int | None = None,
height: int | None = None,
*funcs: Callable[..., Any],
**kwargs: Any
) -> KwargsT
Source code
283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 |
|
kernel_radius ¶
kernel_radius() -> int
Source code
210 211 212 213 214 |
|
multi ¶
multi(
clip: VideoNode,
multi: float = 2.0,
shift: tuple[TopShift, LeftShift] = (0, 0),
**kwargs: Any
) -> VideoNode
Source code
272 273 274 275 276 277 278 279 280 281 |
|
pretty_string ¶
pretty_string() -> str
Source code
225 226 227 |
|
scale ¶
scale(
clip: VideoNode,
width: int | None = None,
height: int | None = None,
shift: tuple[TopShift, LeftShift] = (0, 0),
**kwargs: Any
) -> VideoNode
Source code
89 90 91 92 93 94 95 96 97 98 99 100 |
|
supersample ¶
supersample(
clip: VideoNode,
rfactor: float = 2.0,
shift: tuple[TopShift, LeftShift] = (0, 0),
**kwargs: Any
) -> VideoNode
Source code
257 258 259 260 261 262 263 264 265 266 267 268 269 270 |
|
NoShift ¶
Bases: Bicubic
, NoShiftBase
Class util used to always pass shift=(0, 0)
By default it inherits from :py:class:vskernels.Bicubic
, this behaviour can be changed with :py:attr:Noshift.from_kernel
Use case, for example vsaa's ZNedi3:
test = ... # some clip, 480x480
doubled_no_shift = Znedi3(field=0, nsize=4, nns=3, shifter=NoShift).scale(test, 960, 960)
down = Point.scale(double, 480, 480)
Methods:
-
descale
– -
ensure_obj
– -
from_kernel
–Function or decorator for making a kernel not shift.
-
from_param
– -
get_clean_kwargs
– -
get_descale_args
– -
get_implemented_funcs
– -
get_params_args
– -
get_resample_args
– -
get_scale_args
– -
kernel_radius
– -
multi
– -
pretty_string
– -
resample
– -
scale
– -
shift
– -
supersample
–
Attributes:
-
b
– -
c
– -
descale_function
– -
kwargs
(KwargsT
) –Arguments passed to the internal scale function
-
resample_function
– -
scale_function
–
Source code
41 42 43 44 |
|
kwargs instance-attribute
¶
kwargs: KwargsT = kwargs
Arguments passed to the internal scale function
descale ¶
descale(
clip: VideoNode,
width: int | None = None,
height: int | None = None,
shift: ShiftT = (0, 0),
*,
border_handling: BorderHandling = MIRROR,
sample_grid_model: SampleGridModel = MATCH_EDGES,
field_based: FieldBased | None = None,
linear: bool = False,
sigmoid: bool | tuple[Slope, Center] = False,
blur: float = 1.0,
ignore_mask: VideoNode | None = None,
**kwargs: Any
) -> ConstantFormatVideoNode
Source code
60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 |
|
ensure_obj classmethod
¶
ensure_obj(
kernel: ScalerT | KernelT | None = ...,
/,
func_except: FuncExceptT | None = None,
) -> Scaler
ensure_obj(
kernel: DescalerT | KernelT | None = ...,
/,
func_except: FuncExceptT | None = None,
) -> Descaler
ensure_obj(
kernel: ResamplerT | KernelT | None = ...,
/,
func_except: FuncExceptT | None = None,
) -> Resampler
ensure_obj(
kernel: str | type[BaseScaler] | BaseScaler | None = None,
/,
func_except: FuncExceptT | None = None,
) -> BaseScaler
Source code
647 648 649 650 651 652 653 654 |
|
from_kernel staticmethod
¶
Function or decorator for making a kernel not shift.
As example, in vsaa:
doubled_no_shift = Znedi3(..., shifter=NoShift.from_kernel('lanczos')).scale(...)
# which in *this case* can also be written as this
doubled_no_shift = Znedi3(..., shifter=NoShift, scaler=Lanczos).scale(...)
Or for some other code:
@NoShift.from_kernel
class CustomCatromWithoutShift(Catrom):
# some cool code
...
Source code
58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 |
|
from_param classmethod
¶
from_param(
kernel: KernelT | None = ..., /, func_except: FuncExceptT | None = None
) -> type[Kernel]
from_param(
kernel: ScalerT | KernelT | None = ...,
/,
func_except: FuncExceptT | None = None,
) -> type[Scaler]
from_param(
kernel: DescalerT | KernelT | None = ...,
/,
func_except: FuncExceptT | None = None,
) -> type[Descaler]
from_param(
kernel: ResamplerT | KernelT | None = ...,
/,
func_except: FuncExceptT | None = None,
) -> type[Resampler]
from_param(
kernel: str | type[BaseScaler] | BaseScaler | None = None,
/,
func_except: FuncExceptT | None = None,
) -> type[BaseScaler]
Source code
611 612 613 614 615 616 617 |
|
get_clean_kwargs ¶
Source code
216 217 |
|
get_descale_args ¶
Source code
37 38 |
|
get_implemented_funcs ¶
Source code
701 702 |
|
get_params_args ¶
get_params_args(
is_descale: bool,
clip: VideoNode,
width: int | None = None,
height: int | None = None,
**kwargs: Any
) -> dict[str, Any]
Source code
46 47 48 49 50 51 52 |
|
get_resample_args ¶
get_resample_args(
clip: VideoNode,
format: int | VideoFormatT | HoldsVideoFormatT,
matrix: MatrixT | None,
matrix_in: MatrixT | None,
*funcs: Callable[..., Any],
**kwargs: Any
) -> KwargsT
Source code
685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 |
|
get_scale_args ¶
Source code
34 35 |
|
kernel_radius ¶
kernel_radius() -> int
Source code
54 55 56 57 58 |
|
multi ¶
multi(
clip: VideoNode,
multi: float = 2.0,
shift: tuple[TopShift, LeftShift] = (0, 0),
**kwargs: Any
) -> VideoNode
Source code
272 273 274 275 276 277 278 279 280 281 |
|
pretty_string ¶
pretty_string() -> str
Source code
225 226 227 |
|
resample ¶
resample(
clip: VideoNode,
format: int | VideoFormatT | HoldsVideoFormatT,
matrix: MatrixT | None = None,
matrix_in: MatrixT | None = None,
**kwargs: Any
) -> ConstantFormatVideoNode
Source code
438 439 440 441 442 443 444 445 446 |
|
scale ¶
scale(
clip: VideoNode,
width: int | None = None,
height: int | None = None,
shift: tuple[TopShift, LeftShift] = (0, 0),
*,
border_handling: BorderHandling = MIRROR,
sample_grid_model: SampleGridModel = MATCH_EDGES,
sar: Sar | float | bool | None = None,
dar: Dar | float | bool | None = None,
dar_in: Dar | bool | float | None = None,
keep_ar: bool | None = None,
linear: bool = False,
sigmoid: bool | tuple[Slope, Center] = False,
blur: float = 1.0,
**kwargs: Any
) -> VideoNode
Source code
41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 |
|
shift ¶
shift(
clip: VideoNode,
shifts_or_top: float | tuple[float, float] | list[float] | None = None,
shift_left: float | list[float] | None = None,
/,
**kwargs: Any,
) -> ConstantFormatVideoNode
Source code
523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 |
|
supersample ¶
supersample(
clip: VideoNode,
rfactor: float = 2.0,
shift: tuple[TopShift, LeftShift] = (0, 0),
**kwargs: Any
) -> VideoNode
Source code
257 258 259 260 261 262 263 264 265 266 267 268 269 270 |
|
NoShiftBase ¶
NoShiftBase(**kwargs: Any)
Bases: Kernel
Methods:
-
descale
– -
ensure_obj
– -
from_param
– -
get_clean_kwargs
– -
get_descale_args
– -
get_implemented_funcs
– -
get_params_args
– -
get_resample_args
– -
get_scale_args
– -
kernel_radius
– -
multi
– -
pretty_string
– -
resample
– -
scale
– -
shift
– -
supersample
–
Attributes:
-
descale_function
(Callable[..., ConstantFormatVideoNode]
) –Descale function called internally when descaling
-
kwargs
(KwargsT
) –Arguments passed to the internal scale function
-
resample_function
(Callable[..., ConstantFormatVideoNode]
) –Resample function called internally when resampling
-
scale_function
(Callable[..., VideoNode]
) –Scale function called internally when scaling
Source code
182 183 |
|
descale_function instance-attribute
¶
descale_function: Callable[..., ConstantFormatVideoNode]
Descale function called internally when descaling
kwargs instance-attribute
¶
kwargs: KwargsT = kwargs
Arguments passed to the internal scale function
resample_function instance-attribute
¶
resample_function: Callable[..., ConstantFormatVideoNode]
Resample function called internally when resampling
scale_function instance-attribute
¶
scale_function: Callable[..., VideoNode]
Scale function called internally when scaling
descale ¶
descale(
clip: VideoNode,
width: int | None,
height: int | None,
shift: ShiftT = (0, 0),
*,
border_handling: BorderHandling = MIRROR,
sample_grid_model: SampleGridModel = MATCH_EDGES,
field_based: FieldBased | None = None,
**kwargs: Any
) -> ConstantFormatVideoNode
Source code
313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 |
|
ensure_obj classmethod
¶
ensure_obj(
kernel: ScalerT | KernelT | None = ...,
/,
func_except: FuncExceptT | None = None,
) -> Scaler
ensure_obj(
kernel: DescalerT | KernelT | None = ...,
/,
func_except: FuncExceptT | None = None,
) -> Descaler
ensure_obj(
kernel: ResamplerT | KernelT | None = ...,
/,
func_except: FuncExceptT | None = None,
) -> Resampler
ensure_obj(
kernel: str | type[BaseScaler] | BaseScaler | None = None,
/,
func_except: FuncExceptT | None = None,
) -> BaseScaler
Source code
647 648 649 650 651 652 653 654 |
|
from_param classmethod
¶
from_param(
kernel: KernelT | None = ..., /, func_except: FuncExceptT | None = None
) -> type[Kernel]
from_param(
kernel: ScalerT | KernelT | None = ...,
/,
func_except: FuncExceptT | None = None,
) -> type[Scaler]
from_param(
kernel: DescalerT | KernelT | None = ...,
/,
func_except: FuncExceptT | None = None,
) -> type[Descaler]
from_param(
kernel: ResamplerT | KernelT | None = ...,
/,
func_except: FuncExceptT | None = None,
) -> type[Resampler]
from_param(
kernel: str | type[BaseScaler] | BaseScaler | None = None,
/,
func_except: FuncExceptT | None = None,
) -> type[BaseScaler]
Source code
611 612 613 614 615 616 617 |
|
get_clean_kwargs ¶
Source code
216 217 |
|
get_descale_args ¶
Source code
37 38 |
|
get_implemented_funcs ¶
Source code
701 702 |
|
get_params_args ¶
get_params_args(
is_descale: bool,
clip: VideoNode,
width: int | None = None,
height: int | None = None,
**kwargs: Any
) -> KwargsT
Source code
656 657 658 659 |
|
get_resample_args ¶
get_resample_args(
clip: VideoNode,
format: int | VideoFormatT | HoldsVideoFormatT,
matrix: MatrixT | None,
matrix_in: MatrixT | None,
*funcs: Callable[..., Any],
**kwargs: Any
) -> KwargsT
Source code
685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 |
|
get_scale_args ¶
Source code
34 35 |
|
kernel_radius ¶
kernel_radius() -> int
Source code
210 211 212 213 214 |
|
multi ¶
multi(
clip: VideoNode,
multi: float = 2.0,
shift: tuple[TopShift, LeftShift] = (0, 0),
**kwargs: Any
) -> VideoNode
Source code
272 273 274 275 276 277 278 279 280 281 |
|
pretty_string ¶
pretty_string() -> str
Source code
225 226 227 |
|
resample ¶
resample(
clip: VideoNode,
format: int | VideoFormatT | HoldsVideoFormatT,
matrix: MatrixT | None = None,
matrix_in: MatrixT | None = None,
**kwargs: Any
) -> ConstantFormatVideoNode
Source code
438 439 440 441 442 443 444 445 446 |
|
scale ¶
scale(
clip: VideoNode,
width: int | None = None,
height: int | None = None,
shift: tuple[TopShift, LeftShift] = (0, 0),
**kwargs: Any
) -> VideoNode
Source code
243 244 245 246 247 248 249 250 251 252 253 254 255 |
|
shift ¶
shift(
clip: VideoNode,
shifts_or_top: float | tuple[float, float] | list[float] | None = None,
shift_left: float | list[float] | None = None,
/,
**kwargs: Any,
) -> ConstantFormatVideoNode
Source code
523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 |
|
supersample ¶
supersample(
clip: VideoNode,
rfactor: float = 2.0,
shift: tuple[TopShift, LeftShift] = (0, 0),
**kwargs: Any
) -> VideoNode
Source code
257 258 259 260 261 262 263 264 265 266 267 268 269 270 |
|
resample_to ¶
resample_to(
clip: VideoNode,
out_fmt: HoldsVideoFormatT,
matrix: MatrixT | None = None,
resampler: ResamplerT = Catrom,
) -> VideoNode
Source code
242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 |
|