generic ¶
Type Aliases:
-
ChromaLocationLike–Type alias for values that can be used to initialize a ChromaLocation.
-
FieldBasedLike–Type alias for values that can be used to initialize a FieldBased.
Classes:
-
ChromaLocation–Chroma sample position in YUV formats.
-
Field–Indicates which field (top or bottom) was used to generate the current frame.
-
FieldBased–Whether the frame is composed of two independent fields (interlaced) and their order if so.
Attributes:
-
ChromaLocationT–Deprecated alias of ChromaLocationLike
-
FieldBasedT–Deprecated alias of FieldBasedT = FieldBasedLike
ChromaLocationT module-attribute ¶
ChromaLocationT = ChromaLocationLike
Deprecated alias of ChromaLocationLike
FieldBasedT module-attribute ¶
FieldBasedT = FieldBasedLike
Deprecated alias of FieldBasedT = FieldBasedLike
ChromaLocationLike ¶
ChromaLocationLike = int | ChromaLocation | ChromaLocation
Type alias for values that can be used to initialize a ChromaLocation.
FieldBasedLike ¶
FieldBasedLike = int | FieldBased | FieldBased
Type alias for values that can be used to initialize a FieldBased.
ChromaLocation ¶
Bases: PropEnum
Chroma sample position in YUV formats.
Methods:
-
apply–Applies the property to the VideoNode.
-
ensure_presence–Ensure the presence of the property in the VideoNode.
-
ensure_presences–Ensure the presence of multiple PropEnums at once.
-
from_param_or_video–Get the enum member from a value that can be casted to this prop value or grab it from frame properties.
-
from_param_with_fallback–Attempts to obtain an enum member from a parameter value, returning a fallback if the value cannot be converted
-
from_res–Guess the chroma location based on the clip's resolution.
-
from_video–Obtain the chroma location of a clip from the frame properties.
-
get_offsets–Get (left,top) shift for chroma relative to luma.
-
is_unspecified–Whether the value is unspecified.
-
pretty_string–Get a pretty, displayable string of the enum member.
-
prop_key–The key used in props to store the enum.
-
string–Get the string representation used in resize plugin/encoders.
Attributes:
Source code in vstools/enums/base.py
34 35 36 | |
apply ¶
apply(clip: VideoNode) -> VideoNode
Applies the property to the VideoNode.
Source code in vstools/enums/base.py
67 68 69 70 71 | |
ensure_presence classmethod ¶
ensure_presence(
clip: VideoNode, value: Any, func: FuncExcept | None = None
) -> VideoNode
Ensure the presence of the property in the VideoNode.
Source code in vstools/enums/base.py
153 154 155 156 157 158 159 160 | |
ensure_presences staticmethod ¶
ensure_presences(
clip: VideoNode,
prop_enums: Iterable[type[PropEnum] | PropEnum],
func: FuncExcept | None = None,
) -> VideoNode
Ensure the presence of multiple PropEnums at once.
Source code in vstools/enums/base.py
162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 | |
from_param_or_video classmethod ¶
from_param_or_video(
value: Any,
src: VideoNode | VideoFrame | Mapping[str, Any],
strict: bool = False,
func_except: FuncExcept | None = None,
) -> Self
Get the enum member from a value that can be casted to this prop value or grab it from frame properties.
If strict=False, gather the heuristics using the clip's size or format.
Parameters:
-
(value¶Any) –Value to cast.
-
(src¶VideoNode | VideoFrame | Mapping[str, Any]) –Clip to get prop from.
-
(strict¶bool, default:False) –Be strict about the frame properties. Default: False.
-
(func_except¶FuncExcept | None, default:None) –Function returned for custom error handling.
Source code in vstools/enums/base.py
126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 | |
from_param_with_fallback classmethod ¶
Attempts to obtain an enum member from a parameter value, returning a fallback if the value cannot be converted or represents an unspecified enum member.
Parameters:
-
(value¶Any) –The input value to convert into an enum member.
-
(fallback¶T | None, default:None) –The value to return if the input cannot be converted. Defaults to
None.
Returns:
-
Self | T | None–The corresponding enum member if conversion succeeds, otherwise the provided
fallbackvalue.
Source code in vstools/enums/base.py
101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 | |
from_res classmethod ¶
from_res(frame: VideoNode | VideoFrame) -> ChromaLocation
Guess the chroma location based on the clip's resolution.
Parameters:
-
(frame¶VideoNode | VideoFrame) –Input clip or frame.
Returns:
-
ChromaLocation–ChromaLocation object.
Source code in vstools/enums/generic.py
62 63 64 65 66 67 68 69 70 71 72 73 | |
from_video classmethod ¶
from_video(
src: VideoNode | VideoFrame | Mapping[str, Any],
strict: bool = False,
func: FuncExcept | None = None,
) -> ChromaLocation
Obtain the chroma location of a clip from the frame properties.
Parameters:
-
(src¶VideoNode | VideoFrame | Mapping[str, Any]) –Input clip, frame, or props.
-
(strict¶bool, default:False) –Be strict about the properties. The result may NOT be an unknown value.
Returns:
-
ChromaLocation–ChromaLocation object.
Raises:
-
UndefinedChromaLocationError–If chroma location is undefined or chroma location can not be determined from the frame properties.
Source code in vstools/enums/generic.py
75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 | |
get_offsets ¶
get_offsets(
src: SupportsInt | VideoFormatLike | HoldsVideoFormat,
) -> tuple[float, float]
Get (left,top) shift for chroma relative to luma.
This is only useful if you MUST use a pre-specified chroma location and shift the chroma yourself.
Source code in vstools/enums/generic.py
40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 | |
is_unspecified ¶
is_unspecified() -> bool
Whether the value is unspecified.
Source code in vstools/enums/base.py
73 74 75 76 77 | |
pretty_string ¶
pretty_string() -> str
Get a pretty, displayable string of the enum member.
Source code in vstools/enums/base.py
45 46 47 48 49 50 | |
Field ¶
Bases: PropEnum
Indicates which field (top or bottom) was used to generate the current frame.
This property is typically set when the frame is produced by a function such as .std.SeparateFields.
Methods:
-
apply–Applies the property to the VideoNode.
-
ensure_presence–Ensure the presence of the property in the VideoNode.
-
ensure_presences–Ensure the presence of multiple PropEnums at once.
-
from_param_or_video–Get the enum member from a value that can be casted to this prop value or grab it from frame properties.
-
from_param_with_fallback–Attempts to obtain an enum member from a parameter value, returning a fallback if the value cannot be converted
-
from_res–Get an enum member from the video resolution with heuristics.
-
from_video–Obtain the Field of a clip from the frame properties.
-
is_unspecified–Whether the value is unspecified.
-
pretty_string–Get a pretty, displayable string of the enum member.
-
prop_key–The key used in props to store the enum.
-
string–Get the string representation used in resize plugin/encoders.
Attributes:
Source code in vstools/enums/base.py
34 35 36 | |
apply ¶
apply(clip: VideoNode) -> VideoNode
Applies the property to the VideoNode.
Source code in vstools/enums/base.py
67 68 69 70 71 | |
ensure_presence classmethod ¶
ensure_presence(
clip: VideoNode, value: Any, func: FuncExcept | None = None
) -> VideoNode
Ensure the presence of the property in the VideoNode.
Source code in vstools/enums/base.py
153 154 155 156 157 158 159 160 | |
ensure_presences staticmethod ¶
ensure_presences(
clip: VideoNode,
prop_enums: Iterable[type[PropEnum] | PropEnum],
func: FuncExcept | None = None,
) -> VideoNode
Ensure the presence of multiple PropEnums at once.
Source code in vstools/enums/base.py
162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 | |
from_param_or_video classmethod ¶
from_param_or_video(
value: Any,
src: VideoNode | VideoFrame | Mapping[str, Any],
strict: bool = False,
func_except: FuncExcept | None = None,
) -> Self
Get the enum member from a value that can be casted to this prop value or grab it from frame properties.
If strict=False, gather the heuristics using the clip's size or format.
Parameters:
-
(value¶Any) –Value to cast.
-
(src¶VideoNode | VideoFrame | Mapping[str, Any]) –Clip to get prop from.
-
(strict¶bool, default:False) –Be strict about the frame properties. Default: False.
-
(func_except¶FuncExcept | None, default:None) –Function returned for custom error handling.
Source code in vstools/enums/base.py
126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 | |
from_param_with_fallback classmethod ¶
Attempts to obtain an enum member from a parameter value, returning a fallback if the value cannot be converted or represents an unspecified enum member.
Parameters:
-
(value¶Any) –The input value to convert into an enum member.
-
(fallback¶T | None, default:None) –The value to return if the input cannot be converted. Defaults to
None.
Returns:
-
Self | T | None–The corresponding enum member if conversion succeeds, otherwise the provided
fallbackvalue.
Source code in vstools/enums/base.py
101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 | |
from_res classmethod ¶
from_res(frame: VideoNode | VideoFrame) -> NoReturn
Get an enum member from the video resolution with heuristics.
Source code in vstools/enums/generic.py
239 240 241 | |
from_video classmethod ¶
from_video(
src: VideoNode | VideoFrame | Mapping[str, Any],
strict: bool = False,
func: FuncExcept | None = None,
) -> Field
Obtain the Field of a clip from the frame properties.
Parameters:
-
(src¶VideoNode | VideoFrame | Mapping[str, Any]) –Input clip, frame, or props.
-
(strict¶bool, default:False) –Be strict about the properties. Will ALWAYS error if the Field is missing.
-
(func¶FuncExcept | None, default:None) –Function returned for custom error handling.
Returns:
-
Field–Field object.
Raises:
-
UndefinedFieldError–if the Field is undefined or can not be determined from the frame properties.
Source code in vstools/enums/generic.py
243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 | |
is_unspecified ¶
is_unspecified() -> bool
Whether the value is unspecified.
Source code in vstools/enums/base.py
73 74 75 76 77 | |
pretty_string ¶
pretty_string() -> str
Get a pretty, displayable string of the enum member.
Source code in vstools/enums/base.py
45 46 47 48 49 50 | |
FieldBased ¶
Bases: PropEnum
Whether the frame is composed of two independent fields (interlaced) and their order if so.
Methods:
-
apply–Applies the property to the VideoNode.
-
ensure_presence–Ensure the presence of the property in the clip.
-
ensure_presences–Ensure the presence of multiple PropEnums at once.
-
from_param–Determine the type of field through a parameter.
-
from_param_or_video–Get the enum member from a value that can be casted to this prop value or grab it from frame properties.
-
from_param_with_fallback–Attempts to obtain an enum member from a parameter value, returning a fallback if the value cannot be converted
-
from_res–Guess the Field order from the frame resolution.
-
from_video–Obtain the Field order of a clip from the frame properties.
-
is_inter–Check whether the value belongs to an interlaced value.
-
is_tff–Check whether the value is Top-Field-First.
-
is_unspecified–Whether the value is unspecified.
-
prop_key–The key used in props to store the enum.
-
string–Get the string representation used in resize plugin/encoders.
Attributes:
-
BFF–The frame is interlaced and the field order is bottom field first.
-
PROGRESSIVE–The frame is progressive.
-
TFF–The frame is interlaced and the field order is top field first.
-
field(Field) –Check what field the enum signifies.
-
inverted_field(FieldBased) –Get the inverted field order.
-
pretty_string(str) –Get a pretty, displayable string of the enum member.
Source code in vstools/enums/base.py
34 35 36 | |
BFF class-attribute instance-attribute ¶
BFF = 1
The frame is interlaced and the field order is bottom field first.
TFF class-attribute instance-attribute ¶
TFF = 2
The frame is interlaced and the field order is top field first.
field property ¶
field: Field
Check what field the enum signifies.
Raises:
-
UnsupportedFieldBasedError–If PROGRESSIVE value is passed.
inverted_field property ¶
inverted_field: FieldBased
apply ¶
apply(clip: VideoNode) -> VideoNode
Applies the property to the VideoNode.
Source code in vstools/enums/base.py
67 68 69 70 71 | |
ensure_presence classmethod ¶
Ensure the presence of the property in the clip.
Parameters:
-
(clip¶VideoNode) –Input clip.
-
(value¶Any) –Value or FieldBased object. If it's bool, it specifies whether it's TFF or BFF.
-
(func¶FuncExcept | None, default:None) –Function returned for custom error handling.
Returns:
-
VideoNode–Clip with the FieldBased set.
Source code in vstools/enums/generic.py
210 211 212 213 214 215 216 217 218 219 220 221 222 223 | |
ensure_presences staticmethod ¶
ensure_presences(
clip: VideoNode,
prop_enums: Iterable[type[PropEnum] | PropEnum],
func: FuncExcept | None = None,
) -> VideoNode
Ensure the presence of multiple PropEnums at once.
Source code in vstools/enums/base.py
162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 | |
from_param classmethod ¶
from_param(value: Any, func_except: FuncExcept | None = None) -> FieldBased
Determine the type of field through a parameter.
Parameters:
-
(value¶Any) –Value or FieldBased object. If it's bool, it specifies whether it's TFF or BFF.
-
(func_except¶FuncExcept | None, default:None) –Function returned for custom error handling.
Returns:
-
FieldBased–FieldBased object.
Source code in vstools/enums/generic.py
165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 | |
from_param_or_video classmethod ¶
from_param_or_video(
value: Any,
src: VideoNode | VideoFrame | Mapping[str, Any],
strict: bool = False,
func_except: FuncExcept | None = None,
) -> Self
Get the enum member from a value that can be casted to this prop value or grab it from frame properties.
If strict=False, gather the heuristics using the clip's size or format.
Parameters:
-
(value¶Any) –Value to cast.
-
(src¶VideoNode | VideoFrame | Mapping[str, Any]) –Clip to get prop from.
-
(strict¶bool, default:False) –Be strict about the frame properties. Default: False.
-
(func_except¶FuncExcept | None, default:None) –Function returned for custom error handling.
Source code in vstools/enums/base.py
126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 | |
from_param_with_fallback classmethod ¶
Attempts to obtain an enum member from a parameter value, returning a fallback if the value cannot be converted or represents an unspecified enum member.
Parameters:
-
(value¶Any) –The input value to convert into an enum member.
-
(fallback¶T | None, default:None) –The value to return if the input cannot be converted. Defaults to
None.
Returns:
-
Self | T | None–The corresponding enum member if conversion succeeds, otherwise the provided
fallbackvalue.
Source code in vstools/enums/base.py
101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 | |
from_res classmethod ¶
from_res(frame: VideoNode | VideoFrame) -> FieldBased
Guess the Field order from the frame resolution.
Source code in vstools/enums/generic.py
182 183 184 185 186 187 | |
from_video classmethod ¶
from_video(
src: VideoNode | VideoFrame | Mapping[str, Any],
strict: bool = False,
func: FuncExcept | None = None,
) -> FieldBased
Obtain the Field order of a clip from the frame properties.
Parameters:
-
(src¶VideoNode | VideoFrame | Mapping[str, Any]) –Input clip, frame, or props.
-
(strict¶bool, default:False) –Be strict about the properties. Will ALWAYS error if the FieldBased is missing.
-
(func¶FuncExcept | None, default:None) –Function returned for custom error handling.
Returns:
-
FieldBased–FieldBased object.
Raises:
-
UndefinedFieldBasedError–If the Field order is undefined or can not be determined from the frame properties.
Source code in vstools/enums/generic.py
189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 | |
is_inter ¶
is_inter() -> bool
Check whether the value belongs to an interlaced value.
Source code in vstools/enums/generic.py
153 154 155 156 157 | |
is_tff ¶
is_tff() -> bool
Check whether the value is Top-Field-First.
Source code in vstools/enums/generic.py
159 160 161 162 163 | |
is_unspecified ¶
is_unspecified() -> bool
Whether the value is unspecified.
Source code in vstools/enums/base.py
73 74 75 76 77 | |