🎬 Lingarr:让字幕翻译变得真正简单的全能工具

在这个多语言视频内容爆发的时代,从 YouTube 到 Netflix,再到个人自制短片,“字幕翻译”已经成为连接全球观众的关键一步。但如果你是一名影视自媒体创作者、字幕组成员,或只是想让外国影片更易理解的普通观众,你可能都曾被一个问题困扰:

为什么翻译字幕总是那么麻烦?

文件格式复杂、语言模型配置繁琐、人工翻译成本高……这些问题往往让人望而却步。

好消息是,Lingarr 正是为了解决这些痛点而生的一款开源工具。它可以自动化处理字幕翻译任务,让你轻松实现批量、精准、多语言的字幕转换。


一、Lingarr 是什么?

Lingarr 是一个基于多种翻译技术的自动化字幕翻译应用,它能够连接 LibreTranslate、DeepL、OpenAI、Anthropic、Gemini、Google、Bing、Yandex 等翻译服务,让你自由选择最适合的翻译引擎。

你可以把它理解为一个**“字幕翻译中枢”**:
只需配置一次,Lingarr 会自动检测并翻译影片字幕,输出你希望的目标语言版本。

无论你是在家用 NAS 上自建影音库,还是运营一个内容分发平台,Lingarr 都能帮助你省下大量重复劳动。


二、核心特性概览

🌍 支持多种翻译引擎

Lingarr 的最大亮点之一,是它能与众多翻译服务无缝协作:

支持服务 说明
LibreTranslate 开源、可本地部署的轻量级翻译引擎
LocalAI 支持本地 AI 模型(例如 Ollama 或兼容 OpenAPI 的模型路由)
DeepL 商业级翻译精度高(暂不支持 pt-BR)
Anthropic Claude 支持自然语言理解型 AI 翻译
OpenAI GPT 系列 提供上下文敏感的深层翻译
DeepSeek 中文语境下表现优秀的 AI 翻译服务
Gemini Google 新一代多模态语言模型
Google Translate / Bing / Yandex / Azure 传统机器翻译平台

这种灵活性意味着,无论你偏好免费方案还是高精度商业方案,都能找到合适选项。


三、Lingarr 的使用方式

Lingarr 支持 Docker ComposeDocker CLI 两种安装方式。下面我们一步步说明。

1. 使用 Docker Compose 安装

最推荐的方法是通过 Docker Compose。只需在你的 docker-compose.yml 文件中添加以下配置:

services:
  lingarr:
    image: lingarr/lingarr:latest
    container_name: lingarr
    restart: unless-stopped
    environment:
      - ASPNETCORE_URLS=http://+:9876
    ports:
      - "9876:9876"
    volumes:
      - /path/to/media/movies:/movies
      - /path/to/media/tv:/tv
      - /path/to/config:/app/config
    networks:
      - lingarr

networks:
  lingarr:
    external: true

运行:

docker compose up -d

Lingarr 即会在 9876 端口启动并提供服务。

💡 小贴士
如果你的影片文件夹层级较深,建议查看项目 Wiki 或提交 Issue,以避免动态映射问题。


2. 使用 Docker CLI 安装

如果你更喜欢命令行方式:

docker run -d \
  --name lingarr \
  --restart unless-stopped \
  -p 9876:9876 \
  -e ASPNETCORE_URLS=http://+:9876 \
  -v /path/to/media/movies:/movies \
  -v /path/to/media/tv:/tv \
  -v /path/to/config:/app/config \
  --network lingarr \
  lingarr/lingarr:latest

四、配置 Lingarr 环境变量

Lingarr 的运行依赖一系列环境变量,这些变量控制系统端口、数据库类型、并发任务数等关键参数。

环境变量 描述
ASPNETCORE_URLS 容器内部监听的端口(默认 http://+:9876
MAX_CONCURRENT_JOBS 并行翻译任务数量,默认为 1
DB_CONNECTION 数据库类型,可选 mysqlsqlite
DB_HOST MySQL 主机名
DB_PORT MySQL 端口(默认 3306)
DB_DATABASE 数据库名称
DB_USERNAME / DB_PASSWORD 数据库用户名与密码
DB_HANGFIRE_SQLITE_PATH Hangfire 任务数据库文件路径(使用 SQLite 时)

这些变量可在容器启动时通过环境变量传入,也可以在配置文件中持久化保存。


五、连接字幕管理工具(Radarr / Sonarr)

Lingarr 支持与 Radarr、Sonarr 等常见影音库管理系统联动,实现自动化翻译流程。

1. Radarr 配置

环境变量 描述
RADARR_URL Radarr API 基地址,例如 http://localhost:7878
RADARR_API_KEY 从 Radarr 实例中获取的 API Key

2. Sonarr 配置

环境变量 描述
SONARR_URL Sonarr API 地址
SONARR_API_KEY Sonarr 的 API Key

配置完成后,Lingarr 可以在你下载或整理影片时自动调用字幕翻译流程。


六、配置翻译服务

Lingarr 最大的灵活性来自它支持多种翻译 API。你只需设置 SERVICE_TYPE 即可切换翻译源。

1. 通用设置

环境变量 描述
SERVICE_TYPE 翻译服务类型,例如 libretranslate, openai, deepl
SOURCE_LANGUAGES 源语言数组(JSON 格式)
TARGET_LANGUAGES 目标语言数组(JSON 格式)

示例:

[{"name":"English","code":"en"},{"name":"Dutch","code":"nl"}]

2. 各翻译引擎配置一览

服务类型 关键变量 示例
LibreTranslate LIBRE_TRANSLATE_URL, LIBRE_TRANSLATE_API_KEY https://libretranslate.com
OpenAI OPENAI_MODEL, OPENAI_API_KEY, AI_PROMPT gpt-4, sk-xxxx
Anthropic ANTHROPIC_MODEL, ANTHROPIC_API_KEY, ANTHROPIC_VERSION claude-2
Gemini GEMINI_MODEL, GEMINI_API_KEY gemini-2.0-flash
DeepSeek DEEPSEEK_MODEL, DEEPSEEK_API_KEY deepseek-chat
LocalAI LOCAL_AI_MODEL, LOCAL_AI_API_KEY, LOCAL_AI_ENDPOINT http://localhost:8080
DeepL DEEPL_API_KEY 私有 API 密钥

七、配置 LibreTranslate(可选)

如果你选择自建 LibreTranslate 服务,可以用 Docker 部署:

LibreTranslate:
  container_name: LibreTranslate
  image: libretranslate/libretranslate:latest
  restart: unless-stopped
  environment:
    - LT_LOAD_ONLY=en,nl
  ports:
    - 5000:5000
  volumes:
    - /path/to/config:/home/libretranslate/.local/share/argos-translate
  networks:
    - lingarr
  healthcheck:
    test: ["CMD-SHELL", "./venv/bin/python scripts/healthcheck.py"]

命令行方式:

docker run -d \
  --name LibreTranslate \
  -p 5000:5000 \
  -v /path/to/libretranslate/db:/app/db \
  -v /path/to/libretranslate/local:/home/libretranslate/.local \
  libretranslate/libretranslate \
  --disable-web-ui \
  --load-only=en,nl

八、Lingarr API:让自动化更进一步

Lingarr 提供了完整的 RESTful API,可供你集成到自己的系统或脚本中。
通过 API,你可以:

  • 触发字幕翻译任务
  • 查询翻译进度
  • 管理翻译队列与日志

文档及 Swagger 接口说明可在 https://lingarr.com/docs/api 查阅。


九、FAQ 常见问题

❓1. 可以在本地运行 Lingarr 吗?

可以。你可以在任意 Docker 环境中运行,无论是 NAS、服务器还是开发机。


❓2. 支持哪些字幕格式?

Lingarr 支持常见的 .srt.ass.vtt 等格式(具体见源码说明),无需额外转换。


❓3. 我能同时用多个翻译引擎吗?

理论上可以,但推荐一次只启用一个 SERVICE_TYPE,以保证任务稳定性。


❓4. 翻译速度能调快吗?

可以通过设置 MAX_CONCURRENT_JOBS 增加并发任务数量,但需留意 API 限速。


❓5. 我需要数据库吗?

Lingarr 默认使用 SQLite,无需额外配置。如果需要多节点部署,可改用 MySQL。


十、如何参与项目

Lingarr 是一个开源项目,欢迎开发者贡献代码、报告问题或提出新功能建议。


🧭 总结

Lingarr 不只是一个“字幕翻译器”。
它代表了一种多引擎、自动化、可扩展的内容处理方式。
对创作者而言,它节省时间、降低成本;
对开发者而言,它是一个强大的自动化 API;
对普通用户而言,它让语言的边界变得更模糊。

如果你正寻找一款能“自动理解你的字幕需求”的工具,Lingarr 值得你尝试。