|
|
""" |
|
|
Configuration file |
|
|
""" |
|
|
|
|
|
import os |
|
|
from pydantic_settings import BaseSettings |
|
|
|
|
|
|
|
|
class Settings(BaseSettings): |
|
|
"""Application settings""" |
|
|
|
|
|
|
|
|
APP_NAME: str = "Swara API - Audio Analysis" |
|
|
VERSION: str = "1.0.0" |
|
|
DEBUG: bool = os.getenv("DEBUG", "False").lower() == "true" |
|
|
|
|
|
|
|
|
REDIS_HOST: str = os.getenv("REDIS_HOST", "localhost") |
|
|
REDIS_PORT: int = int(os.getenv("REDIS_PORT", "6379")) |
|
|
REDIS_DB: int = int(os.getenv("REDIS_DB", "0")) |
|
|
REDIS_PASSWORD: str = os.getenv("REDIS_PASSWORD", "") |
|
|
|
|
|
|
|
|
QUEUE_NAME: str = "audio_analysis" |
|
|
JOB_TIMEOUT: int = 3600 |
|
|
RESULT_TTL: int = 86400 |
|
|
|
|
|
|
|
|
MAX_UPLOAD_SIZE: int = 100 * 1024 * 1024 |
|
|
ALLOWED_EXTENSIONS: list = [".wav", ".mp3", ".m4a", ".flac", ".ogg"] |
|
|
UPLOAD_DIR: str = os.getenv("UPLOAD_DIR", "./uploads") |
|
|
|
|
|
|
|
|
WHISPER_MODEL: str = os.getenv("WHISPER_MODEL", "medium") |
|
|
KATA_KUNCI_PATH: str = os.getenv("KATA_KUNCI_PATH", "./kata_kunci.json") |
|
|
|
|
|
|
|
|
DEVICE: str = os.getenv("DEVICE", "auto") |
|
|
|
|
|
|
|
|
CORS_ORIGINS: list = ["*"] |
|
|
|
|
|
class Config: |
|
|
env_file = ".env" |
|
|
|
|
|
|
|
|
settings = Settings() |
|
|
|