generic ¶
Classes:
-
ChromaLocation
–Chroma sample position in YUV formats.
-
FieldBased
–Whether the frame is composed of two independent fields (interlaced) and their order if so.
Attributes:
-
ChromaLocationLike
(TypeAlias
) –Type alias for values that can be used to initialize a ChromaLocation.
-
ChromaLocationT
–Deprecated alias of ChromaLocationLike
-
FieldBasedLike
(TypeAlias
) –Type alias for values that can be used to initialize a FieldBased.
-
FieldBasedT
–Deprecated alias of FieldBasedT = FieldBasedLike
ChromaLocationLike module-attribute
¶
ChromaLocationLike: TypeAlias = int | ChromaLocation | ChromaLocation
Type alias for values that can be used to initialize a ChromaLocation.
ChromaLocationT module-attribute
¶
ChromaLocationT = ChromaLocationLike
Deprecated alias of ChromaLocationLike
FieldBasedLike module-attribute
¶
FieldBasedLike: TypeAlias = int | FieldBased | FieldBased
Type alias for values that can be used to initialize a FieldBased.
FieldBasedT module-attribute
¶
FieldBasedT = FieldBasedLike
Deprecated alias of FieldBasedT = FieldBasedLike
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
–Determine the ChromaLocation through a parameter.
-
from_param_or_video
– -
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_unknown
–Whether the value represents an unknown value.
-
is_valid
–Check if the given value is a valid int value of this enum.
-
prop_key
–The key used in props to store the enum.
Attributes:
-
BOTTOM
– -
BOTTOM_LEFT
– -
CENTER
– -
LEFT
– -
TOP
– -
TOP_LEFT
– -
pretty_string
(str
) –Get a pretty, displayable string of the enum member.
-
string
(str
) –Get the string representation used in resize plugin/encoders.
apply ¶
apply(clip: VideoNodeT) -> VideoNodeT
Applies the property to the VideoNode.
Source code in vstools/enums/base.py
105 106 107 108 109 110 |
|
ensure_presence classmethod
¶
ensure_presence(
clip: VideoNodeT,
value: int | Self | None,
/,
func: FuncExcept | None = None,
) -> VideoNodeT
Ensure the presence of the property in the VideoNode.
Source code in vstools/enums/base.py
93 94 95 96 97 98 99 100 101 102 103 |
|
ensure_presences staticmethod
¶
ensure_presences(
clip: VideoNodeT,
prop_enums: Iterable[type[PropEnum] | PropEnum],
func: FuncExcept | None = None,
) -> VideoNodeT
Ensure the presence of multiple PropEnums at once.
Source code in vstools/enums/base.py
112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 |
|
from_param classmethod
¶
from_param(value: None, func_except: FuncExcept | None = None) -> None
from_param(
value: ChromaLocationLike, func_except: FuncExcept | None = None
) -> Self
from_param(
value: ChromaLocationLike | None, func_except: FuncExcept | None = None
) -> Self | None
from_param(value: Any, func_except: Any = None) -> Self | None
Determine the ChromaLocation through a parameter.
Parameters:
-
value
¶Any
) –Value or ChromaLocation object.
-
func_except
¶Any
, default:None
) –Function returned for custom error handling. This should only be set by VS package developers.
Returns:
-
Self | None
–ChromaLocation object or None.
Source code in vstools/enums/generic.py
59 60 61 62 63 64 65 66 67 68 69 70 71 |
|
from_param_or_video classmethod
¶
from_param_or_video(
value: ChromaLocation | None,
src: VideoNode | VideoFrame | Mapping[str, Any],
strict: bool = False,
func_except: FuncExcept | None = None,
) -> ChromaLocation
Source code in vstools/enums/generic.py
73 74 75 76 77 78 79 80 |
|
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
82 83 84 85 86 87 88 89 90 91 92 93 94 |
|
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
–Chroma location is undefined.
-
UndefinedChromaLocationError
–Chroma location can not be determined from the frame properties.
Source code in vstools/enums/generic.py
96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 |
|
get_offsets ¶
get_offsets(
src: int | 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
117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 |
|
is_unknown classmethod
¶
Whether the value represents an unknown value.
Source code in vstools/enums/base.py
21 22 23 24 25 26 27 |
|
is_valid classmethod
¶
Check if the given value is a valid int value of this enum.
Source code in vstools/enums/base.py
148 149 150 151 152 153 |
|
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_presences
–Ensure the presence of multiple PropEnums at once.
-
from_param
–Determine the type of field through a parameter.
-
from_param_or_video
– -
from_res
–Guess the Field order from the frame resolution.
-
from_video
–Obtain the Field order of a clip from the frame properties.
-
is_unknown
–Whether the value represents an unknown value.
-
is_valid
–Check if the given value is a valid int value of this enum.
-
prop_key
–The key used in props to store the enum.
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
(int
) –Check what field the enum signifies.
-
inverted_field
(FieldBased
) –Get the inverted field order.
-
is_inter
(bool
) –Check whether the value belongs to an interlaced value.
-
is_tff
(bool
) –Check whether the value is Top-Field-First.
-
pretty_string
(str
) – -
string
(str
) –Get the string representation used in resize plugin/encoders.
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: int
Check what field the enum signifies.
Raises:
-
UnsupportedFieldBasedError
–PROGRESSIVE value is passed.
inverted_field property
¶
inverted_field: FieldBased
apply ¶
apply(clip: VideoNodeT) -> VideoNodeT
Applies the property to the VideoNode.
Source code in vstools/enums/base.py
105 106 107 108 109 110 |
|
ensure_presence classmethod
¶
ensure_presence(
clip: VideoNodeT,
tff: FieldBasedLike | bool | None,
func: FuncExcept | None = None,
) -> VideoNodeT
Source code in vstools/enums/generic.py
215 216 217 218 219 220 221 |
|
ensure_presences staticmethod
¶
ensure_presences(
clip: VideoNodeT,
prop_enums: Iterable[type[PropEnum] | PropEnum],
func: FuncExcept | None = None,
) -> VideoNodeT
Ensure the presence of multiple PropEnums at once.
Source code in vstools/enums/base.py
112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 |
|
from_param classmethod
¶
from_param(value: None, func_except: FuncExcept | None = None) -> None
from_param(
value: FieldBasedLike | bool, func_except: FuncExcept | None = None
) -> Self
from_param(
value: FieldBasedLike | bool | None, func_except: FuncExcept | None = None
) -> Self | None
from_param(
value: FieldBasedLike | bool | None, func_except: FuncExcept | None = None
) -> Self | None
Determine the type of field through a parameter.
Parameters:
-
value
¶FieldBasedLike | bool | None
) –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. This should only be set by VS package developers.
Returns:
-
Self | None
–FieldBased object or None.
Source code in vstools/enums/generic.py
186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 |
|
from_param_or_video classmethod
¶
from_param_or_video(
value: FieldBasedLike | bool | None,
src: VideoNode | VideoFrame | Mapping[str, Any],
strict: bool = False,
func_except: FuncExcept | None = None,
) -> FieldBased
Source code in vstools/enums/generic.py
206 207 208 209 210 211 212 213 |
|
from_res classmethod
¶
from_res(frame: VideoNode | VideoFrame) -> FieldBased
Guess the Field order from the frame resolution.
Source code in vstools/enums/generic.py
223 224 225 226 227 228 229 |
|
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.
Returns:
-
FieldBased
–FieldBased object.
Raises:
-
UndefinedFieldBasedError
–Field order is undefined.
-
UndefinedFieldBasedError
–Field order can not be determined from the frame properties.
Source code in vstools/enums/generic.py
231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 |
|
is_unknown classmethod
¶
Whether the value represents an unknown value.
Source code in vstools/enums/base.py
21 22 23 24 25 26 27 |
|
is_valid classmethod
¶
Check if the given value is a valid int value of this enum.
Source code in vstools/enums/base.py
148 149 150 151 152 153 |
|