HRVC / src /ultimate_rvc /typing_extra.py
SpyC0der77's picture
Upload folder using huggingface_hub
1a942eb verified
Raw
History Blame Contribute Delete
1.18 kB
"""Extra typing for the Ultimate RVC project."""
from collections.abc import Mapping, Sequence
from enum import IntEnum, StrEnum
from os import PathLike
type StrPath = str | PathLike[str]
type Json = Mapping[str, Json] | Sequence[Json] | str | int | float | bool | None
class SeparationModel(StrEnum):
"""The model to use for audio separation."""
UVR_MDX_NET_VOC_FT = "UVR-MDX-NET-Voc_FT.onnx"
UVR_MDX_NET_KARA_2 = "UVR_MDXNET_KARA_2.onnx"
REVERB_HQ_BY_FOXJOY = "Reverb_HQ_By_FoxJoy.onnx"
class SegmentSize(IntEnum):
"""The segment size to use for audio separation."""
SEG_64 = 64
SEG_128 = 128
SEG_256 = 256
SEG_512 = 512
SEG_1024 = 1024
SEG_2048 = 2048
class F0Method(StrEnum):
"""The method to use for pitch detection."""
RMVPE = "rmvpe"
MANGIO_CREPE = "mangio-crepe"
class SampleRate(IntEnum):
"""The sample rate of an audio file."""
HZ_16000 = 16000
HZ_44100 = 44100
HZ_48000 = 48000
HZ_96000 = 96000
HZ_192000 = 192000
class AudioExt(StrEnum):
"""Audio file formats."""
MP3 = "mp3"
WAV = "wav"
FLAC = "flac"
OGG = "ogg"
M4A = "m4a"
AAC = "aac"