Subtitle Translator — 技能工具
v0.1.1[自动翻译] Translate SRT subtitle files using LLM APIs with OpenAI-compatible format. Supports both single-language and bilingual output. Use when you need to tr...
详细分析 ▾
运行时依赖
版本
- Default batch size for translation reduced from 250 to 50 sentences (configurable). - Added script: scripts/validate_srt.py for validating SRT file format. - Updated documentation with security considerations and best practices for storing API keys. - Expanded configuration options: now supports environment variables and command line arguments (recommended over config files). - Improved documentation for quick start, validation usage, and workflow steps.
安装命令 点击复制
技能文档
Overview
Translate SRT subtitle files using LLM APIs. Supports OpenAI-compatible API format with customizable URL, API key, and model selection. Outputs single-language or bilingual subtitles with original timestamps preserved.
Features
- Format Support: SRT subtitles
- API Compatibility: OpenAI-compatible endpoints
- Output Modes: Single-language or bilingual (translation above original)
- Batch Processing: 50 sentences per batch (configurable) with 1-second intervals
- Progress Tracking: Detailed logging of task progress and execution
- Validation: Ensures sentence count consistency and timestamp preservation
Quick Start
Basic Translation
python3 scripts/translate_srt.py \
--input video.srt \
--output video_zh.srt \
--source-lang en \
--target-lang zh \
--api-url https://api.openai.com/v1 \
--api-key sk-... \
--model gpt-4
Bilingual Output
python3 scripts/translate_srt.py \
--input video.srt \
--output video_bilingual.srt \
--source-lang en \
--target-lang zh \
--bilingual \
--api-url https://api.openai.com/v1 \
--api-key sk-...
Validate SRT File
python3 scripts/validate_srt.py input.srt
List Available Models
python3 scripts/list_models.py \
--api-url https://api.openai.com/v1 \
--api-key sk-...
Configuration
Option 1: Environment Variables (Recommended)
export SUBTITLE_API_URL="https://api.openai.com/v1"
export SUBTITLE_API_KEY="sk-your-api-key"
export SUBTITLE_MODEL="gpt-4"python3 scripts/translate_srt.py -i input.srt -o output.srt
Option 2: Command Line Arguments
python3 scripts/translate_srt.py \
-i input.srt \
-o output.srt \
-u https://api.openai.com/v1 \
-k sk-your-api-key \
-m gpt-4
Option 3: Config File (Less Secure)
Create ~/.openclaw/skills/subtitle-translator/config.json:
{
"api_url": "https://api.openai.com/v1",
"api_key": "sk-your-api-key",
"model": "gpt-4",
"batch_size": 50,
"batch_interval_ms": 1000,
"output_mode": "single",
"log_level": "info"
}
⚠️ Security Warning: Storing API keys in plaintext config files increases risk. Prefer environment variables or command line arguments.
Security Considerations
- API Key Storage: Use environment variables or secure secret managers instead of plaintext config files
- API Endpoint: Ensure you trust the API URL you provide
- Proxy Environment: The scripts honor
http_proxy/https_proxyenvironment variables. If your environment uses untrusted proxies, API keys could be captured - Network Traffic: All subtitle content is sent to the API endpoint. Do not use with sensitive/confidential content unless you control the API
Workflow
- Parse SRT: Extract index, timecodes, and text
- Validate: Optional validation of input format
- Batch Translation: Send 50 sentences per request (configurable)
- Validate: Ensure output count matches input
- Reconstruct: Combine original timecodes with translations
- Output: Generate SRT file
Resources
scripts/
translate_srt.py- Main translation scriptlist_models.py- List available models from APIvalidate_srt.py- Validate SRT file format
references/
srt_format.md- SRT file format specification
免费技能或插件可能存在安全风险,如需更匹配、更安全的方案,建议联系付费定制