Descargas básicas
Sin ninguna opción, yt-dlp elige la mejor combinación que puede fusionar y nombra el archivo con el título. Sorprendentemente a menudo, este es el comando correcto.
yt-dlp URL
Antes de descargar algo grande, conviene ver qué hay realmente disponible. Esto imprime la tabla de formatos y termina sin descargar nada.
yt-dlp -F URL
La columna de la izquierda de esa tabla es el id de formato, que luego puedes pedir directamente. Dos ids unidos con + significan «descarga los dos y fusiónalos».
yt-dlp -f 137+140 URL
Calidad y selección de formato
Los ids de formato fijos se rompen en cuanto un sitio cambia su escalera de codificación. Una expresión selectora es la versión duradera: pide las propiedades que quieres y deja que yt-dlp encuentre la mejor coincidencia.
yt-dlp -f "bv*[height<=1080]+ba/b[height<=1080]" URL
Se lee así: el mejor flujo de vídeo de no más de 1080 de alto más el mejor audio y, si esa pareja no existe, el mejor archivo único de no más de 1080. Ese respaldo tras la barra es lo que evita que el comando falle en sitios que solo publican flujos progresivos.
Fusionar dos flujos produce un contenedor que yt-dlp tiene que elegir. MP4 se reproduce en todas partes; MKV acepta cualquier cosa, lo que importa en cuanto entran en juego subtítulos y capítulos.
yt-dlp -f "bv*+ba" --merge-output-format mp4 URL
Para expresar una preferencia en lugar de un límite estricto, ordena en vez de filtrar. Esto prefiere 1080p y MP4 pero sigue descargando algo cuando no hay ninguno de los dos.
yt-dlp -S "res:1080,ext:mp4" URL
Audio y MP3
Extraer audio necesita ffmpeg: es la razón más común, con diferencia, por la que el comando de abajo falla en una instalación recién hecha.
yt-dlp -x --audio-format mp3 URL
Añadir carátula y etiquetas cuesta dos flags más y hace que el resultado sirva en una biblioteca musical en vez de ser una carpeta de archivos anónimos.
yt-dlp -x --audio-format mp3 --audio-quality 0 --embed-thumbnail --embed-metadata URL
--audio-quality 0 es tasa de bits variable en el mejor ajuste, no «calidad cero». Si necesitas una tasa fija, indícala: --audio-quality 320K.
Cuando la fuente ya es AAC u Opus, convertir a MP3 recodifica y pierde calidad para nada. Conservar el original es más rápido y mejor.
yt-dlp -x --audio-format best URL
Subtítulos
Los subtítulos incrustados viajan con el archivo; los archivos .srt separados son más fáciles de editar y de pasar a otra herramienta.
yt-dlp --embed-subs --sub-langs en URL yt-dlp --write-subs --sub-langs en,vi --convert-subs srt URL
Los subtítulos automáticos son un interruptor aparte. Sin él, un vídeo sin subtítulos humanos no produce nada en absoluto, y ningún error.
yt-dlp --write-auto-subs --sub-langs en --convert-subs srt --skip-download URL
Listas de reproducción y canales
Una URL de YouTube suele pertenecer a la vez a un vídeo y a una lista, y yt-dlp tiene que adivinar cuál querías. Dilo explícitamente.
yt-dlp --no-playlist URL yt-dlp --yes-playlist URL
Para cualquier cosa larga, el archivo de registro importa más que cualquier otra opción de aquí: anota lo que ya se ha descargado, de modo que volver a ejecutarlo continúa donde se detuvo en lugar de empezar de cero.
yt-dlp --yes-playlist -i \ --download-archive archive.txt \ -o "%(playlist_index)02d - %(title)s.%(ext)s" \ URL
Combinado con -i, un vídeo bloqueado por región o borrado ya no aborta los otros doscientos. Para coger solo una parte, -I acepta rangos y listas: -I 1:10, -I "1,3,7-10".
Clips, capítulos y patrocinios
Puedes descargar una parte del vídeo en vez de todo. El asterisco inicial marca una marca de tiempo en lugar del nombre de un capítulo, y las comillas son obligatorias: bash expande un * suelto contra tus nombres de archivo.
yt-dlp --download-sections "*00:01:30-00:03:00" URL
SponsorBlock usa marcas enviadas por la comunidad para cortar segmentos por completo, o para dejarlos como capítulos que puedas saltarte tú.
yt-dlp --sponsorblock-remove default URL yt-dlp --sponsorblock-mark all --embed-chapters URL
Nombres de archivo y carpetas
La plantilla de salida controla ambas cosas. Una barra crea un directorio, así que una sola plantilla puede organizar un archivo entero.
yt-dlp -o "%(uploader)s/%(upload_date>%Y-%m-%d)s - %(title)s.%(ext)s" URL
Los títulos contienen a menudo caracteres que algunos sistemas de archivos rechazan. --restrict-filenames lo reduce todo a ASCII simple, lo que merece la pena para cualquier cosa que vaya a moverse entre máquinas.
En un archivo .bat de Windows hay que duplicar cada % —%%(title)s— o el intérprete de lotes se come la plantilla antes de que yt-dlp la vea. El generador lo hace por ti cuando descargas un .bat.
Errores que te vas a encontrar de verdad
ffmpeg not found
Todo lo que fusiona, convierte, incrusta o corta necesita ffmpeg en tu PATH. Instálalo y confírmalo con ffmpeg -version.
Sign in to confirm you are not a bot
Prueba primero --impersonate chrome y luego --cookies-from-browser. Si fallan los dos, actualiza yt-dlp: esta comprobación concreta cambia a menudo y el arreglo suele llegar en una versión en cuestión de días.
Unable to extract player response
Casi siempre es un yt-dlp desactualizado. Actualízalo antes de cambiar cualquier otra cosa: yt-dlp -U, o tu gestor de paquetes si lo instalaste así.
Requested format is not available
Tu selector no coincidió con nada. Ejecuta -F para ver qué existe, y prefiere una ordenación (-S) a un filtro estricto para que siempre haya un respaldo.
HTTP Error 403
La URL estaba firmada para otra sesión u otra región. Vuelve a ejecutarlo con cookies nuevas, añade --impersonate chrome o prueba --geo-bypass.
Mantener yt-dlp al día
Se arreglan más fallos reportados actualizando que con cualquier flag. Si instalaste el binario independiente:
yt-dlp -U
Si lo instalaste con un gestor de paquetes, actualízalo por la misma vía: -U se negará, y hace bien.