36 lines
1 KiB
Python
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
|