- Add CLAUDE.md with project architecture and operation modes - Add backend/README.md with setup and usage instructions - Add test_backend.py with automated tests for config, database, and queue - Update requirements.txt with optional dependencies structure - Update .env.example with all configuration options
90 lines
2.4 KiB
Plaintext
90 lines
2.4 KiB
Plaintext
# ============================================
|
|
# TranscriptorIO Configuration
|
|
# ============================================
|
|
|
|
# === Application Mode ===
|
|
# Options: standalone, provider, or standalone,provider (hybrid mode)
|
|
TRANSCRIPTARR_MODE=standalone
|
|
|
|
# === Database Configuration ===
|
|
# SQLite (default - no additional driver needed)
|
|
DATABASE_URL=sqlite:///./transcriptarr.db
|
|
|
|
# PostgreSQL example (requires psycopg2-binary)
|
|
# DATABASE_URL=postgresql://user:password@localhost:5432/transcriptarr
|
|
|
|
# MariaDB/MySQL example (requires pymysql)
|
|
# DATABASE_URL=mariadb+pymysql://user:password@localhost:3306/transcriptarr
|
|
|
|
# === Worker Configuration ===
|
|
CONCURRENT_TRANSCRIPTIONS=2
|
|
WHISPER_THREADS=4
|
|
TRANSCRIBE_DEVICE=cpu
|
|
CLEAR_VRAM_ON_COMPLETE=True
|
|
|
|
# === Whisper Model Configuration ===
|
|
# Options: tiny, base, small, medium, large-v3, large-v3-turbo, etc.
|
|
WHISPER_MODEL=medium
|
|
MODEL_PATH=./models
|
|
COMPUTE_TYPE=auto
|
|
|
|
# === Standalone Mode Configuration ===
|
|
# Pipe-separated paths to scan
|
|
LIBRARY_PATHS=/media/anime|/media/movies
|
|
AUTO_SCAN_ENABLED=False
|
|
SCAN_INTERVAL_MINUTES=30
|
|
|
|
# Filter rules for standalone mode
|
|
REQUIRED_AUDIO_LANGUAGE=ja
|
|
REQUIRED_MISSING_SUBTITLE=spa
|
|
SKIP_IF_SUBTITLE_EXISTS=True
|
|
|
|
# === Provider Mode Configuration ===
|
|
BAZARR_URL=http://bazarr:6767
|
|
BAZARR_API_KEY=your_api_key_here
|
|
PROVIDER_TIMEOUT_SECONDS=600
|
|
PROVIDER_CALLBACK_ENABLED=True
|
|
PROVIDER_POLLING_INTERVAL=30
|
|
|
|
# === API Configuration ===
|
|
WEBHOOK_PORT=9000
|
|
API_HOST=0.0.0.0
|
|
DEBUG=True
|
|
|
|
# === Transcription Settings ===
|
|
# Options: transcribe, translate
|
|
TRANSCRIBE_OR_TRANSLATE=transcribe
|
|
SUBTITLE_LANGUAGE_NAME=
|
|
# Options: ISO_639_1, ISO_639_2_T, ISO_639_2_B, NAME, NATIVE
|
|
SUBTITLE_LANGUAGE_NAMING_TYPE=ISO_639_2_B
|
|
WORD_LEVEL_HIGHLIGHT=False
|
|
CUSTOM_REGROUP=cm_sl=84_sl=42++++++1
|
|
|
|
# === Skip Configuration ===
|
|
SKIP_IF_EXTERNAL_SUBTITLES_EXIST=False
|
|
SKIP_IF_TARGET_SUBTITLES_EXIST=True
|
|
SKIP_IF_INTERNAL_SUBTITLES_LANGUAGE=eng
|
|
# Pipe-separated language codes
|
|
SKIP_SUBTITLE_LANGUAGES=
|
|
SKIP_IF_AUDIO_LANGUAGES=
|
|
SKIP_UNKNOWN_LANGUAGE=False
|
|
SKIP_ONLY_SUBGEN_SUBTITLES=False
|
|
|
|
# === Advanced Settings ===
|
|
FORCE_DETECTED_LANGUAGE_TO=
|
|
DETECT_LANGUAGE_LENGTH=30
|
|
DETECT_LANGUAGE_OFFSET=0
|
|
SHOULD_WHISPER_DETECT_AUDIO_LANGUAGE=False
|
|
# Pipe-separated list in order of preference
|
|
PREFERRED_AUDIO_LANGUAGES=eng
|
|
|
|
# === Path Mapping ===
|
|
USE_PATH_MAPPING=False
|
|
PATH_MAPPING_FROM=/tv
|
|
PATH_MAPPING_TO=/Volumes/TV
|
|
|
|
# === Legacy SubGen Compatibility ===
|
|
SHOW_IN_SUBNAME_SUBGEN=True
|
|
SHOW_IN_SUBNAME_MODEL=True
|
|
APPEND=False
|
|
LRC_FOR_AUDIO_FILES=True |