dionysis-media-video/config.py
2026-08-05 22:29:01 +00:00

36 lines
1 KiB
Python

import os
import secrets
from pathlib import Path
BASE_DIR = Path(__file__).parent.resolve()
def env_default(name, default=None):
return os.environ.get(name, default)
class Config:
VERSION = (BASE_DIR / 'VERSION').read_text().strip()
SECRET_KEY = env_default('APP_SECRET_KEY', secrets.token_hex(32))
ADMIN_PASSWORD = env_default('ADMIN_PASSWORD')
PUBLIC_BASE_URL = env_default('PUBLIC_BASE_URL', 'http://localhost:5000').rstrip('/')
INTERNAL_PORT = int(env_default('INTERNAL_PORT', '5000'))
DATABASE = Path(env_default('DATABASE', str(BASE_DIR / 'data' / 'app.db')))
UPLOAD_FOLDER = Path(env_default('UPLOAD_FOLDER', str(BASE_DIR / 'uploads')))
OUTPUT_FOLDER = Path(env_default('OUTPUT_FOLDER', str(BASE_DIR / 'outputs')))
MAX_UPLOAD_SIZE = 500 * 1024 * 1024 # 500 MB
VIDEO_WIDTH = 1920
VIDEO_HEIGHT = 1080
VIDEO_FPS = 30
VIDEO_BITRATE = '5000k'
AUDIO_BITRATE = '192k'
VIDEO_CODEC = 'libx264'
AUDIO_CODEC = 'aac'
OUTPUT_FORMAT = 'mp4'
YOUTUBE_PRESET = True # use faststart + yuv420p