MCPcopy Create free account
hub / github.com/Breakthrough/PySceneDetect / KernelSizeValue

Class KernelSizeValue

scenedetect/_cli/config.py:233–266  ·  view source on GitHub ↗

Validator for kernel sizes (odd integer > 1, or -1 for auto size).

Source from the content-addressed store, hash-verified

231
232
233class KernelSizeValue(ValidatedValue):
234 """Validator for kernel sizes (odd integer > 1, or -1 for auto size)."""
235
236 def __init__(self, value: int):
237 self._value: int | None
238 if value == -1:
239 # Kernel size of -1 maps to None internally for auto-sized kernel.
240 self._value = None
241 elif value < 0:
242 # Disallow other negative values.
243 raise ValueError()
244 elif value % 2 == 0:
245 # Disallow even values.
246 raise ValueError()
247 else:
248 self._value = value
249
250 @property
251 def value(self) -> int | None:
252 return self._value
253
254 def __str__(self) -> str:
255 if self._value is None:
256 return "auto"
257 return str(self._value)
258
259 @staticmethod
260 def from_config(config_value: str, default: "KernelSizeValue") -> "KernelSizeValue":
261 try:
262 return KernelSizeValue(int(config_value))
263 except ValueError as ex:
264 raise OptionParseFailure(
265 "Value must be an odd integer greater than 1, or set to -1 for auto kernel size."
266 ) from ex
267
268
269class EscapedString(ValidatedValue):

Callers 2

from_configMethod · 0.85
config.pyFile · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected