Rosub: subtítulos en rumano para Jellyfin

Descarga automáticamente de subs.ro el subtítulo en rumano que coincide exactamente con el release de cada película y episodio de tu biblioteca de Jellyfin.

Rosub status in the Jellyfin dashboard: today's subs.ro and OpenSubtitles quota and the latest daily check of missing Romanian subtitles1 de 6

Rosub encuentra subtítulos en rumano para tu biblioteca de Jellyfin en subs.ro y elige, de los archivos que descarga, el archivo hecho para tu release, para que la sincronización sea correcta.

Qué hace

  • Al llegar: unos minutos después de que Jellyfin identifica una película o episodio nuevo, Rosub busca en subs.ro (por id de IMDb/TMDb) y guarda el subtítulo junto al vídeo como Name.ro.srt.
  • Cada día (tarea programada a las 04:00): reintenta todo lo que no tiene subtítulo en rumano, primero lo más nuevo; los elementos no encontrados aún se reintentan a los pocos días, porque los subtítulos suelen aparecer días después del release.
  • Coincidencia de release: el nombre del archivo se divide en título, año, temporada/episodio, resolución, fuente (WEB-DL, BluRay, HDTV), servicio, códec y grupo de release, y se compara con cada subtítulo; el modo strict solo acepta subtítulos hechos para el mismo release, grupo o fuente de streaming.
  • Comprobación de sincronización: cuando el vídeo tiene un subtítulo incrustado, los tiempos del candidato se comparan con él; un desfase constante se corrige, un subtítulo desincronizado se rechaza.
  • Rumano correcto: UTF-8, con ș y ț (coma debajo) en lugar de las antiguas formas con cedilla.
  • OpenSubtitles.com como respaldo (opcional, tu propia clave de API) cuando subs.ro no tiene nada aceptable.
  • Búsqueda manual: Rosub aparece como proveedor en la búsqueda de subtítulos de Jellyfin.
  • Respeta la cuota: subs.ro permite 300 peticiones al día por clave; Rosub usa como máximo el presupuesto que fijas y guarda una reserva para los elementos recién añadidos.

Requisitos

  • Jellyfin Server 12.2 o superior.
  • Una clave de API gratuita de subs.ro (My account → API); opcionalmente una clave de API de OpenSubtitles.com.
  • El ffprobe del servidor, para la comprobación de sincronización.

Preguntas frecuentes

¿Cómo consigo subtítulos en rumano automáticamente en Jellyfin? Instala Rosub y escribe tu clave de API de subs.ro en Dashboard → Rosub. Las películas y episodios nuevos reciben un subtítulo en rumano coincidente a los pocos minutos de añadirse, y la tarea diaria completa el resto de la biblioteca. Consulta la guía.

¿Por qué «coincide exactamente con el release»? Un subtítulo hecho para otro release (otro grupo, fuente o corte) suele estar desincronizado. Rosub elige el archivo hecho para tu release y comprueba los tiempos antes de guardarlo.

Qué envía y adónde

  • subs.ro (api.subs.ro) — solo con tu propia clave de API (no se incluye ninguna): solo el id de IMDb o TMDb de la película/serie (para episodios, el id de la serie) y el idioma; después la descarga del subtítulo elegido y una consulta de cuota. No se envían títulos, nombres de archivo, nombres de release ni hashes.
  • OpenSubtitles (api.opensubtitles.com) — opcional, solo con tu propia clave: idiomas, id de IMDb/TMDb (o id de la serie + temporada/episodio) y el hash de OpenSubtitles del archivo (calculado en local a partir del tamaño y los primeros/últimos 64 KB; no se envía el contenido); inicio de sesión opcional con tu cuenta de OpenSubtitles (nombre de usuario + contraseña → token); descarga desde la CDN de OpenSubtitles.
  • Cuándo: ~2 min después de añadirse un título, cada día a las 04:00 (títulos sin subtítulos), en la búsqueda manual en el servidor; con presupuestos diarios (subs.ro 250, OpenSubtitles 5 peticiones por defecto).
  • La comprobación de sincronización y la coincidencia de release se hacen en local (ffprobe). Las notificaciones van al registro de actividad local.
  • Además, el cliente de licencias, igual en todos los plugins: consulta Licencias y privacidad en nuestros plugins.

Guardado localmente: la clave de API de subs.ro, la clave de API de OpenSubtitles y la contraseña de la cuenta de OpenSubtitles, cifrados en reposo en secrets.enc.json en la carpeta de datos del plugin (AES-256-GCM, clave aleatoria de secrets.key vinculada al id del servidor, ambos archivos en modo 600) y nunca enviados al navegador (la página solo muestra «set ✓»); el nombre de usuario de OpenSubtitles permanece en la configuración del plugin (desde la versión 1.1.3; las versiones anteriores guardan las claves y la contraseña en texto plano en la configuración); state/state.json (títulos, rutas, estado, diario de máximo 1000 entradas, cuotas, token de sesión de OpenSubtitles); caché de búsqueda (12 h) y archivos (30 días); subtítulos como <video>.ro.srt junto al archivo.

Compatibilidad con clientes

  • Los subtítulos se convierten en archivos .srt externos normales: 🟢 se muestran en cualquier cliente que muestre subtítulos externos (✅ Jellyfin: búsqueda y descarga reales de subs.ro). Apps nativas individuales: ❔ no probadas.
  • Página de administración: Jellyfin Web (✅ escritorio + teléfono).
  • Funciona con AISub (genera solo tras «searched, not found»).

Leyenda: ✅ verificado (prueba de extremo a extremo o en el dispositivo) · 🟢 en el servidor, funciona con cualquier cliente (por diseño, sin prueba específica para cada cliente) · ➖ no aplicable · ❔ no probado.

Licencia

El plugin es de código abierto (GPL-3.0). Las compilaciones listas para instalar son públicas, igual que el código fuente. Lo que compras es la suscripción: la licencia para usar el plugin en un servidor de Jellyfin, las actualizaciones que incluye tu plan y el soporte: cada actualización mientras la suscripción esté activa, a través de tu repositorio privado de plugins, y ayuda cuando algo no funcione. El plugin comprueba la clave de suscripción una vez al día; sin una suscripción válida se detiene hasta que renueves (no se borra nada). Mensual, anual o de por vida (la de por vida incluye un año de actualizaciones), o incluido en el paquete para Jellyfin. 30 días de prueba gratis.

Código fuente. Para cada versión, el código fuente correspondiente completo es público, junto a la compilación, en el registro de cambios, y también en tu cuenta (Cuenta → Licencias, Código fuente); cada archivo comprimido contiene el texto completo de la GPL-3.0 (LICENSE). Si necesitas el código fuente de una versión que ya no puedes descargar, pídenoslo y te lo enviamos. Consulta la sección 10 del EULA.

Funciona mejor con medialab Server

Este plugin funciona en Jellyfin oficial 12.2 o posterior. En medialab Server, nuestro servidor basado en Jellyfin con los mismos datos, bibliotecas, usuarios y apps, funciona mejor:

  • Verified – medialab. El servidor comprueba la firma de nuestros plugins y te muestra que los archivos son exactamente los que publicamos. Si un plugin se modifica después de publicarse, se marca.
  • Integrado en la interfaz. Los plugins pueden añadir botones y enlaces al menú de tus usuarios (por ejemplo, "TV", "Share") sin configurar nada a mano en la web.
  • Prioridad de forma predeterminada. Los plugins de medialab aparecen primero donde importa: sintonizadores de TV en directo, fuentes de guía y proveedores de subtítulos. El orden lo decides tú: puedes cambiarlo en cualquier momento.
  • El catálogo de medialab.works incluido, con instalación sin confirmaciones adicionales.
  • Actualizaciones desde la interfaz web, sin terminal (con Self-Update de MediaLab): comprueba, actualiza y vuelve a la versión anterior desde el panel de control; si una versión nueva no arranca, el servidor vuelve por sí solo a la anterior con tus datos intactos.
  • El mismo Jellyfin, al día. medialab Server sigue cada semana las versiones estables de Jellyfin 12.x; una versión nueva solo se publica después de superar todas las pruebas, incluidas las de nuestros plugins.

Rosub: Rosub es el primer proveedor de subtítulos en las bibliotecas nuevas.

Las apps de Jellyfin (Android, iOS, TV, web) se conectan exactamente igual que a Jellyfin oficial.

Para instalarlo, ejecuta la imagen del contenedor (guía) o, en Debian 12, los paquetes apt, que sustituyen a jellyfin-server y jellyfin-web y conservan tus datos donde están (guía).

medialab Server es software libre (GPL-2.0), basado en Jellyfin. El código fuente es público: medialab-server y medialab-server-web.

Requisitos

  • Jellyfin Server 12.2 o posterior (Linux, Windows o Docker)
  • Una clave de API gratuita de subs.ro
  • Código abierto (GPL-3.0): el código fuente de cada versión está en tu cuenta

Última versión

1.1.4
publicada el 20 oct 2026
Ver todos los cambios →

La compilación es pública; para usar el plugin necesitas una licencia o la prueba gratuita de 30 días.