56 lines
1.5 KiB
Python
56 lines
1.5 KiB
Python
![]() |
# Copyright (c) Meta Platforms, Inc. and affiliates.
|
||
|
# All rights reserved.
|
||
|
# This source code is licensed under the license found in the
|
||
|
# LICENSE file in the root directory of this source tree.
|
||
|
|
||
|
import logging
|
||
|
import os
|
||
|
from pathlib import Path
|
||
|
|
||
|
logger = logging.getLogger(__name__)
|
||
|
|
||
|
APP_ROOT = os.getenv("APP_ROOT", "/opt/sam2")
|
||
|
|
||
|
API_URL = os.getenv("API_URL", "http://localhost:7263")
|
||
|
|
||
|
MODEL_SIZE = os.getenv("MODEL_SIZE", "base_plus")
|
||
|
|
||
|
logger.info(f"using model size {MODEL_SIZE}")
|
||
|
|
||
|
FFMPEG_NUM_THREADS = int(os.getenv("FFMPEG_NUM_THREADS", "1"))
|
||
|
|
||
|
# Path for all data used in API
|
||
|
DATA_PATH = Path(os.getenv("DATA_PATH", "/data"))
|
||
|
|
||
|
# Max duration an uploaded video can have in seconds. The default is 10
|
||
|
# seconds.
|
||
|
MAX_UPLOAD_VIDEO_DURATION = float(os.environ.get("MAX_UPLOAD_VIDEO_DURATION", "10"))
|
||
|
|
||
|
# If set, it will define which video is returned by the default video query for
|
||
|
# desktop
|
||
|
DEFAULT_VIDEO_PATH = os.getenv("DEFAULT_VIDEO_PATH")
|
||
|
|
||
|
# Prefix for gallery videos
|
||
|
GALLERY_PREFIX = "gallery"
|
||
|
|
||
|
# Path where all gallery videos are stored
|
||
|
GALLERY_PATH = DATA_PATH / GALLERY_PREFIX
|
||
|
|
||
|
# Prefix for uploaded videos
|
||
|
UPLOADS_PREFIX = "uploads"
|
||
|
|
||
|
# Path where all uploaded videos are stored
|
||
|
UPLOADS_PATH = DATA_PATH / UPLOADS_PREFIX
|
||
|
|
||
|
# Prefix for video posters (1st frame of video)
|
||
|
POSTERS_PREFIX = "posters"
|
||
|
|
||
|
# Path where all posters are stored
|
||
|
POSTERS_PATH = DATA_PATH / POSTERS_PREFIX
|
||
|
|
||
|
# Make sure any of those paths exist
|
||
|
os.makedirs(DATA_PATH, exist_ok=True)
|
||
|
os.makedirs(GALLERY_PATH, exist_ok=True)
|
||
|
os.makedirs(UPLOADS_PATH, exist_ok=True)
|
||
|
os.makedirs(POSTERS_PATH, exist_ok=True)
|