onyx-and-iris 0eca324e38 add docstrings
add documentation tags

add some error handling
2026-04-05 00:22:50 +01:00

55 lines
1.4 KiB
Python

"""Models for the parameters of a strip."""
from typing import Optional
from pydantic import BaseModel
class StripParams(BaseModel):
"""Parameters for a single strip."""
gain: Optional[float] = None
mute: Optional[bool] = None
mono: Optional[bool] = None
solo: Optional[bool] = None
A1: Optional[bool] = None
A2: Optional[bool] = None
A3: Optional[bool] = None
A4: Optional[bool] = None
A5: Optional[bool] = None
B1: Optional[bool] = None
B2: Optional[bool] = None
B3: Optional[bool] = None
class StripCompParams(BaseModel):
"""Parameters for the compressor of a strip."""
knob: Optional[float] = None
gainin: Optional[float] = None
ratio: Optional[float] = None
threshold: Optional[float] = None
attack: Optional[float] = None
release: Optional[float] = None
knee: Optional[float] = None
gainout: Optional[float] = None
makeup: Optional[bool] = None
class StripGateParams(BaseModel):
"""Parameters for the gate of a strip."""
knob: Optional[float] = None
threshold: Optional[float] = None
damping: Optional[float] = None
bpsidechain: Optional[float] = None
attack: Optional[float] = None
hold: Optional[float] = None
release: Optional[float] = None
class StripDenoiserParams(BaseModel):
"""Parameters for the denoiser of a strip."""
knob: Optional[float] = None