Sobre el proyecto

ytdl-sub es una herramienta de línea de comandos que automatiza la descarga de medios mediante yt-dlp y prepara los archivos resultantes para reproductores y servidores de medios populares, incluidos Kodi, Jellyfin, Plex, Emby y reproductores de música modernos. Según el README, no se requieren plugins adicionales ni scrapers externos. Cómo funciona: las suscripciones se definen en archivos YAML. Cada suscripción importa presets que describen cómo deben gestionarse y generarse los archivos de medios. El proyecto incluye muchos presets predefinidos para que los usuarios puedan empezar a descargar sin crear una configuración desde cero. Un solo comando, `ytdl-sub sub subscriptions.yaml`, procesa el archivo. Los casos de uso típicos mostrados en el README incluyen tratar canales de YouTube como programas de TV, organizar videos musicales y conciertos, y gestionar discografías de SoundCloud o Bandcamp. El README señala que el manejo de SoundCloud escribe etiquetas de música mediante la API de beets. La salida se organiza en directorios como tv_shows, music y music_videos, con miniaturas generadas, archivos de metadatos .nfo, posters y fanart adecuados para servidores de medios. La configuración es flexible: se pueden establecer anulaciones globales bajo una sección `__preset__`, y las opciones pueden pasarse directamente a la API de Python de yt-dlp, por ejemplo un archivo de cookies. Los presets pueden establecer etiquetas de género, clasificaciones de contenido y usar un preset "Only Recent" para limitar las descargas por rango de fechas y cantidad de archivos. Se admiten configuraciones personalizadas, con una guía paso a paso y configuraciones de ejemplo enlazadas desde el README. Las opciones de instalación enumeradas incluyen Docker Compose (Web-GUI, headless, passthrough de CPU/GPU), Docker CLI, Windows, Unraid, Linux, Linux ARM, PIP, instalación local y compilación local de Docker. La imagen Docker Web-GUI se describe como la combinación de la imagen code-server de LinuxServer.io con ytdl-sub preinstalado, y es recomendada por el README. El soporte de la comunidad está disponible a través de un canal de Discord, GitHub Issues para solicitudes de funciones e informes de errores, y una FAQ en la documentación. El README también enlaza a readthedocs para obtener información detallada sobre todos los campos de configuración.