funcs ¶
Classes:
-
FunctionUtil
–Function util to normalize common actions and boilerplate often used in functions.
FunctionUtil ¶
FunctionUtil(
clip: VideoNode,
func: FuncExceptT,
planes: PlanesT = None,
color_family: (
VideoFormatT
| HoldsVideoFormatT
| ColorFamily
| Iterable[VideoFormatT | HoldsVideoFormatT | ColorFamily]
| None
) = None,
bitdepth: int | range | tuple[int, int] | set[int] | None = None,
*,
matrix: MatrixT | None = None,
transfer: TransferT | None = None,
primaries: PrimariesT | None = None,
range_in: ColorRangeT | None = None,
chromaloc: ChromaLocationT | None = None,
order: FieldBasedT | None = None
)
Bases: baseclass
, list[int]
, vs_object
Function util to normalize common actions and boilerplate often used in functions.
Main use is
- Automatically dither up and down as required.
- Automatically check if the input clip has variable formats, resolutions, etc.
- Fully type safe and removes the need for asserts or typeguards in function code.
- Handy properties for common code paths, improving code readability and writability.
Examples:
>>> func = FunctionUtil(clip, planes=0, color_family=(vs.YUV, vs.GRAY), bitdepth=16)
>>> wclip = func.work_clip
>>> txt = wclip.text.Text("This clip has been processed!")
>>> return func.return_clip(txt)
For further examples, see: https://github.com/search?q=org%3AJaded-Encoding-Thaumaturgy+FunctionUtil
Parameters:
-
clip
¶VideoNode
) –Clip to process.
-
func
¶FuncExceptT
) –Function returned for custom error handling. This should only be set by VS package developers.
-
planes
¶PlanesT
, default:None
) –Planes that get processed in the function. Default: All planes.
-
color_family
¶VideoFormatT | HoldsVideoFormatT | ColorFamily | Iterable[VideoFormatT | HoldsVideoFormatT | ColorFamily] | None
, default:None
) –Accepted color families. If the input does not adhere to these, an exception will be raised. Default: All families.
-
bitdepth
¶int | range | tuple[int, int] | set[int] | None
, default:None
) –The bitdepth or range of bitdepths to work with. Can be an int, range, tuple, or set. Range or tuple indicates a range of allowed bitdepths, set indicates specific allowed bitdepths. If an int is provided, set the clip's bitdepth to that value.
If a range or set is provided and the work clip's bitdepth is not allowed, the work clip's bitdepth will be converted to the lowest bitdepth that is greater than or equal to the work clip's current bitdepth.
return_clip
automatically restores the clip to the original bitdepth. If None, use the input clip's bitdepth. Default: None. -
matrix
¶MatrixT | None
, default:None
) –Color Matrix to work in. Used for YUV <-> RGB conversions. Default: Get matrix from the input clip.
-
transfer
¶TransferT | None
, default:None
) –Transfer to work in. Default: Get transfer from the input clip.
-
primaries
¶PrimariesT | None
, default:None
) –Color primaries to work in. Default: Get primaries from the input clip.
-
range_in
¶ColorRangeT | None
, default:None
) –Color Range to work in. Default: Get the color range from the input clip.
-
chromaloc
¶ChromaLocationT | None
, default:None
) –Chroma location to work in. Default: Get the chroma location from the input clip.
-
order
¶FieldBasedT | None
, default:None
) –Field order to work in. Default: Get the field order from the input clip.
Methods:
-
chroma_planes
–Get a list of all chroma planes in the normalised clip.
-
chromaloc
–Get the clip's chroma location.
-
color_range
–Get the clip's color range.
-
matrix
–Get the clip's matrix.
-
norm_clip
–Get a "normalized" clip. This means color space and bitdepth are converted if necessary.
-
norm_seq
–Normalize a value or sequence to a list mapped to the clip's planes.
-
normalize_planes
–Normalize the given sequence of planes.
-
order
–Get the clip's field order.
-
primaries
–Get the clip's primaries.
-
return_clip
–Merge back the chroma if necessary and convert the processed clip back to the original clip's format.
-
transfer
–Get the clip's transfer.
-
with_planes
– -
without_planes
– -
work_clip
–Get the "work clip" as specified from the input planes.
Attributes:
-
allowed_cfamilies
– -
bitdepth
– -
cfamily_converted
– -
chroma
(bool
) –Whether any chroma planes get processed.
-
chroma_only
(bool
) –Whether only chroma planes get processed.
-
chroma_pplanes
(list[int]
) –A list of which chroma planes get processed based on the work clip.
-
clip
– -
func
– -
is_float
(bool
) –Whether the clip is of a float sample type.
-
is_hd
(bool
) –Whether the clip is of an HD resolution (>= 1280x720).
-
is_integer
(bool
) –Whether the clip is of an integer sample type.
-
luma
(bool
) –Whether the luma gets processed.
-
luma_only
(bool
) –Whether luma is the only channel that gets processed.
-
norm_planes
– -
num_planes
– -
planes
–
Source code
53 54 55 56 57 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 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 |
|
chroma_pplanes property
¶
A list of which chroma planes get processed based on the work clip.
This means that if you pass [0, 1, 2] but passed a GRAY clip, it will only return [0]. Similarly, if you pass GRAY and it gets converted to RGB, this will return [0, 1, 2].
chroma_planes ¶
chroma_planes() -> list[VideoNode]
Get a list of all chroma planes in the normalised clip.
Source code
194 195 196 197 198 199 200 201 202 203 |
|
chromaloc ¶
chromaloc() -> ChromaLocation
Get the clip's chroma location.
Source code
237 238 239 240 241 242 243 |
|
color_range ¶
color_range() -> ColorRange
Get the clip's color range.
Source code
229 230 231 232 233 234 235 |
|
matrix ¶
matrix() -> Matrix
Get the clip's matrix.
Source code
205 206 207 208 209 210 211 |
|
norm_clip ¶
norm_clip() -> ConstantFormatVideoNode
Get a "normalized" clip. This means color space and bitdepth are converted if necessary.
Source code
132 133 134 135 136 137 138 139 140 141 142 143 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 171 172 173 174 175 176 177 178 179 180 181 182 183 184 |
|
norm_seq ¶
Normalize a value or sequence to a list mapped to the clip's planes. Unprocessed planes will be set to the given "null" value.
Source code
366 367 368 369 370 371 372 |
|
normalize_planes ¶
Normalize the given sequence of planes.
Source code
320 321 322 323 324 325 |
|
order ¶
order() -> FieldBased
Get the clip's field order.
Source code
245 246 247 248 249 250 251 |
|
primaries ¶
primaries() -> Primaries
Get the clip's primaries.
Source code
221 222 223 224 225 226 227 |
|
return_clip ¶
return_clip(processed: VideoNode) -> ConstantFormatVideoNode
Merge back the chroma if necessary and convert the processed clip back to the original clip's format. If bitdepth != None
, the bitdepth will also be converted if necessary.
Parameters:
-
processed
¶VideoNode
) –The clip with all the processing applied to it.
Returns:
-
ConstantFormatVideoNode
–Processed clip converted back to the original input clip's format.
Source code
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 |
|
transfer ¶
transfer() -> Transfer
Get the clip's transfer.
Source code
213 214 215 216 217 218 219 |
|
with_planes ¶
Source code
327 328 |
|
without_planes ¶
Source code
330 331 |
|
work_clip ¶
work_clip() -> ConstantFormatVideoNode
Get the "work clip" as specified from the input planes.
Source code
186 187 188 189 190 191 192 |
|