Files
guias_informatica/guia yt-dlp y spotDL.md
2026-09-26 17:43:23 +02:00

1100 lines
14 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# yt-dlp y spotDL
## Guía de instalación y uso para Windows, macOS y Linux
> Guía práctica para instalar y utilizar `yt-dlp`, `spotDL`, FFmpeg y Deno.
>
> **Nota:** usa estas herramientas únicamente con contenido cuya descarga y uso estén permitidos.
---
## Índice
- [1. Introducción](#1-introducción)
- [2. Requisitos generales](#2-requisitos-generales)
- [3. yt-dlp](#3-yt-dlp)
- [Windows](#31-windows)
- [macOS](#32-macos)
- [Linux](#33-linux)
- [Uso básico](#34-uso-básico)
- [Descargar vídeo](#35-descargar-vídeo)
- [Descargar audio](#36-descargar-audio)
- [Elegir calidad](#37-elegir-calidad)
- [Playlists](#38-playlists)
- [Subtítulos](#39-subtítulos)
- [Actualizar](#310-actualizar-yt-dlp)
- [4. spotDL](#4-spotdl)
- [Windows](#41-windows)
- [macOS](#42-macos)
- [Linux](#43-linux)
- [Uso básico](#44-uso-básico)
- [Canciones, álbumes y playlists](#45-canciones-álbumes-y-playlists)
- [Organización y metadatos](#46-organización-y-metadatos)
- [Actualizar](#47-actualizar-spotdl)
- [5. FFmpeg](#5-ffmpeg)
- [6. Deno](#6-deno)
- [7. Configuración recomendada](#7-configuración-recomendada)
- [8. Solución de problemas](#8-solución-de-problemas)
- [9. Resumen de comandos](#9-resumen-de-comandos)
- [10. Consideraciones legales](#10-consideraciones-legales)
---
# 1. Introducción
## yt-dlp
`yt-dlp` es una herramienta de línea de comandos para descargar contenido multimedia de numerosos sitios web.
Es especialmente útil para:
- Vídeos.
- Audio.
- Playlists.
- Canales.
- Subtítulos.
- Metadatos.
- Selección de formatos y calidades.
- Descargas automatizadas.
Proyecto oficial: https://github.com/yt-dlp/yt-dlp
## spotDL
`spotDL` trabaja con enlaces de Spotify para identificar canciones y obtener una fuente correspondiente para descargar el audio. No descarga directamente los archivos de audio offline de Spotify.
En términos generales:
```text
Spotify
│
│ información de canción
▼
spotDL
│
│ búsqueda
▼
YouTube / yt-dlp
│
│ audio
▼
archivo local
```
Proyecto oficial: https://github.com/spotDL/spotify-downloader
---
# 2. Requisitos generales
Para una instalación completa se recomienda:
- Python 3.10–3.14 para spotDL.
- FFmpeg.
- yt-dlp.
- spotDL.
- Deno.
No todos son imprescindibles para cada operación.
Arquitectura típica:
```text
Python
│
├── spotDL
│
└── yt-dlp
│
└── FFmpeg
```
---
# 3. yt-dlp
Documentación de instalación:
https://github.com/yt-dlp/yt-dlp/wiki/Installation
## 3.1 Windows
### WinGet
En PowerShell:
```powershell
winget install yt-dlp
```
Actualizar:
```powershell
winget upgrade yt-dlp
```
Comprobar:
```powershell
yt-dlp --version
```
### Instalación manual
También puedes descargar el ejecutable oficial `yt-dlp.exe` desde:
https://github.com/yt-dlp/yt-dlp/releases/latest
Colócalo en una carpeta incluida en `PATH` para poder ejecutarlo desde cualquier terminal.
---
## 3.2 macOS
Con Homebrew:
```bash
brew install yt-dlp
```
Comprobar:
```bash
yt-dlp --version
```
Actualizar:
```bash
brew upgrade yt-dlp
```
---
## 3.3 Linux
### Ubuntu / Debian
```bash
sudo apt update
sudo apt install yt-dlp
```
También puedes utilizar el binario oficial o Python:
```bash
python3 -m pip install -U "yt-dlp[default]"
```
Comprobar:
```bash
yt-dlp --version
```
### Arch Linux
```bash
sudo pacman -Syu yt-dlp
```
### Binario oficial
Para instalar el binario en `~/.local/bin`:
```bash
mkdir -p ~/.local/bin
curl -L \
https://github.com/yt-dlp/yt-dlp/releases/latest/download/yt-dlp \
-o ~/.local/bin/yt-dlp
chmod a+rx ~/.local/bin/yt-dlp
```
Asegúrate de que `~/.local/bin` está incluido en `PATH`.
---
## 3.4 Uso básico
```bash
yt-dlp "URL"
```
Ejemplo:
```bash
yt-dlp "https://www.youtube.com/watch?v=XXXXXXXXXXX"
```
El archivo se guardará en la carpeta actual.
Linux/macOS:
```bash
pwd
```
Windows PowerShell:
```powershell
Get-Location
```
---
## 3.5 Descargar vídeo
Mejor vídeo + audio disponibles:
```bash
yt-dlp -f "bv*+ba/b" "URL"
```
Solicitar MP4 como contenedor final:
```bash
yt-dlp \
-f "bv*+ba/b" \
--merge-output-format mp4 \
"URL"
```
> La combinación de pistas separadas requiere FFmpeg.
---
## 3.6 Descargar audio
Extraer audio:
```bash
yt-dlp -x "URL"
```
Convertir a MP3:
```bash
yt-dlp -x --audio-format mp3 "URL"
```
Calidad alta:
```bash
yt-dlp \
-x \
--audio-format mp3 \
--audio-quality 0 \
"URL"
```
---
## 3.7 Elegir calidad
Consultar formatos:
```bash
yt-dlp -F "URL"
```
Ejemplo:
```text
ID EXT RESOLUTION
137 mp4 1080p
136 mp4 720p
135 mp4 480p
140 m4a audio
```
Seleccionar formatos concretos:
```bash
yt-dlp -f 137+140 "URL"
```
Selección automática recomendada:
```bash
yt-dlp -f "bv*+ba/b" "URL"
```
---
## 3.8 Playlists
Descargar una playlist:
```bash
yt-dlp "URL_DE_LA_PLAYLIST"
```
Organizarla automáticamente:
```bash
yt-dlp \
-o "%(playlist_title)s/%(playlist_index)02d - %(title)s.%(ext)s" \
"URL_DE_LA_PLAYLIST"
```
Resultado:
```text
Mi Playlist/
├── 01 - Canción 1.mp4
├── 02 - Canción 2.mp4
├── 03 - Canción 3.mp4
└── ...
```
---
## 3.9 Subtítulos
Ver subtítulos disponibles:
```bash
yt-dlp --list-subs "URL"
```
Descargar subtítulos:
```bash
yt-dlp --write-subs "URL"
```
Español:
```bash
yt-dlp \
--write-subs \
--sub-langs "es" \
"URL"
```
Subtítulos automáticos:
```bash
yt-dlp \
--write-auto-subs \
--sub-langs "es" \
"URL"
```
---
## 3.10 Actualizar yt-dlp
### Windows — WinGet
```powershell
winget upgrade yt-dlp
```
### macOS — Homebrew
```bash
brew upgrade yt-dlp
```
### Linux — pip
```bash
python3 -m pip install -U "yt-dlp[default]"
```
### Binario oficial
```bash
yt-dlp -U
```
---
# 4. spotDL
Documentación:
https://spotdl.github.io/spotify-downloader/
Repositorio:
https://github.com/spotDL/spotify-downloader
spotDL requiere Python 3.10–3.14 y FFmpeg. En Windows puede ser necesario el Visual C++ Redistributable.
## 4.1 Windows
### Instalar Python
Descarga Python desde:
https://www.python.org/downloads/windows/
Durante la instalación activa:
```text
☑ Add Python to PATH
```
Comprobar:
```powershell
python --version
```
### Instalar FFmpeg
Con WinGet:
```powershell
winget install -e --id Gyan.FFmpeg
```
Comprobar:
```powershell
ffmpeg -version
```
### Instalar spotDL
```powershell
python -m pip install spotdl
```
Comprobar:
```powershell
spotdl --version
```
Si el comando no funciona:
```powershell
python -m spotdl --version
```
### Instalar Deno
```powershell
spotdl --download-deno
```
---
## 4.2 macOS
Comprobar Python:
```bash
python3 --version
```
Si hace falta:
```bash
brew install python
```
Instalar FFmpeg:
```bash
brew install ffmpeg
```
Instalar spotDL:
```bash
python3 -m pip install spotdl
```
Comprobar:
```bash
spotdl --version
```
Instalar Deno:
```bash
spotdl --download-deno
```
---
## 4.3 Linux
### Ubuntu / Debian
```bash
sudo apt update
sudo apt install python3 python3-pip ffmpeg
```
Comprobar:
```bash
python3 --version
ffmpeg -version
```
Instalar spotDL:
```bash
python3 -m pip install spotdl
```
### Alternativa con pipx
Si la distribución impide instalar paquetes Python directamente en el sistema:
```bash
sudo apt install pipx
pipx ensurepath
```
Reinicia la terminal y ejecuta:
```bash
pipx install spotdl
```
Comprobar:
```bash
spotdl --version
```
Instalar Deno:
```bash
spotdl --download-deno
```
---
## 4.4 Uso básico
```bash
spotdl "URL_DE_SPOTIFY"
```
También:
```bash
spotdl download "URL_DE_SPOTIFY"
```
La operación `download` es la predeterminada.
---
## 4.5 Canciones, álbumes y playlists
### Canción
```bash
spotdl "https://open.spotify.com/track/XXXXXXXX"
```
### Álbum
```bash
spotdl "https://open.spotify.com/album/XXXXXXXX"
```
### Playlist
```bash
spotdl "https://open.spotify.com/playlist/XXXXXXXX"
```
---
## 4.6 Organización y metadatos
Por defecto, spotDL utiliza la carpeta desde la que se ejecuta.
Linux/macOS:
```bash
cd ~/Music
spotdl "URL"
```
Windows:
```powershell
cd "C:\Users\TuUsuario\Music"
spotdl "URL"
```
Una biblioteca puede organizarse como:
```text
Music/
├── Artista/
│ ├── Album/
│ │ ├── 01 - Cancion.mp3
│ │ ├── 02 - Cancion.mp3
│ │ └── 03 - Cancion.mp3
```
spotDL puede incorporar información como:
- Artista.
- Título.
- Álbum.
- Número de pista.
- Año.
- Carátula.
- Otros metadatos disponibles.
Consultar opciones:
```bash
spotdl --help
```
---
## 4.7 Actualizar spotDL
Windows:
```powershell
python -m pip install --upgrade spotdl
```
macOS/Linux:
```bash
python3 -m pip install --upgrade spotdl
```
Con pipx:
```bash
pipx upgrade spotdl
```
---
# 5. FFmpeg
FFmpeg permite, entre otras cosas:
- Combinar vídeo y audio.
- Extraer audio.
- Convertir formatos.
- Convertir a MP3.
- Procesar archivos multimedia.
### Windows
```powershell
winget install -e --id Gyan.FFmpeg
```
### macOS
```bash
brew install ffmpeg
```
### Ubuntu/Debian
```bash
sudo apt update
sudo apt install ffmpeg
```
### Arch Linux
```bash
sudo pacman -S ffmpeg
```
Comprobar:
```bash
ffmpeg -version
```
---
# 6. Deno
Deno es recomendable para spotDL porque se utiliza junto con yt-dlp en determinados flujos de descarga.
La instalación sencilla mediante spotDL es:
```bash
spotdl --download-deno
```
Comprobar:
```bash
deno --version
```
---
# 7. Configuración recomendada
## yt-dlp
Crear una carpeta para vídeos:
```text
~/Videos/YouTube/
```
o:
```text
~/Downloads/YouTube/
```
Organizar por canal:
```bash
yt-dlp \
-o "%(channel)s/%(title)s.%(ext)s" \
"URL"
```
Organizar playlists:
```bash
yt-dlp \
-o "%(playlist_title)s/%(playlist_index)02d - %(title)s.%(ext)s" \
"URL"
```
### Audio MP3 con metadatos
```bash
yt-dlp \
-x \
--audio-format mp3 \
--audio-quality 0 \
--embed-thumbnail \
--embed-metadata \
"URL"
```
El resultado de los metadatos depende de la información disponible en la fuente.
---
# 8. Solución de problemas
## `command not found: yt-dlp`
Linux/macOS:
```bash
which yt-dlp
```
o:
```bash
command -v yt-dlp
```
Si utilizaste pip:
```bash
python3 -m pip show yt-dlp
```
Windows:
```powershell
where.exe yt-dlp
```
---
## `command not found: spotdl`
Linux/macOS:
```bash
python3 -m spotdl --version
```
Windows:
```powershell
python -m spotdl --version
```
Si funciona mediante Python pero no como comando, comprueba el `PATH`.
---
## `ffmpeg not found`
Comprueba:
```bash
ffmpeg -version
```
Si no está disponible, instala FFmpeg según tu sistema operativo.
---
## Una descarga de YouTube deja de funcionar
Actualiza yt-dlp.
Windows:
```powershell
winget upgrade yt-dlp
```
macOS:
```bash
brew upgrade yt-dlp
```
Linux/Python:
```bash
python3 -m pip install -U "yt-dlp[default]"
```
Comprueba:
```bash
yt-dlp --version
```
---
## spotDL no encuentra una canción
Comprueba que yt-dlp funciona correctamente y actualiza spotDL:
```bash
yt-dlp --version
```
```bash
python3 -m pip install -U spotdl
```
Después:
```bash
spotdl --download-deno
```
---
# 9. Resumen de comandos
## yt-dlp
### Vídeo
```bash
yt-dlp "URL"
```
### Mejor vídeo + audio
```bash
yt-dlp -f "bv*+ba/b" "URL"
```
### MP4
```bash
yt-dlp -f "bv*+ba/b" --merge-output-format mp4 "URL"
```
### MP3
```bash
yt-dlp -x --audio-format mp3 "URL"
```
### Ver formatos
```bash
yt-dlp -F "URL"
```
### Playlist
```bash
yt-dlp "URL_PLAYLIST"
```
### Subtítulos
```bash
yt-dlp --write-subs --sub-langs "es" "URL"
```
### Actualizar
```bash
yt-dlp -U
```
---
## spotDL
### Canción
```bash
spotdl "URL_SPOTIFY"
```
### Álbum
```bash
spotdl "URL_ALBUM"
```
### Playlist
```bash
spotdl "URL_PLAYLIST"
```
### Ayuda
```bash
spotdl --help
```
### Actualizar
```bash
python3 -m pip install --upgrade spotdl
```
### Instalar Deno
```bash
spotdl --download-deno
```
---
# 10. Consideraciones legales
Estas herramientas son software de descarga y procesamiento multimedia. Su utilización debe respetar:
- Los derechos de autor.
- Los términos de servicio de las plataformas.
- Las leyes aplicables en tu país.
- Los derechos del propietario del contenido.
Una descarga puede ser técnicamente posible y, aun así, no estar autorizada para determinados contenidos.
Utilízalas con contenido propio, contenido con licencia adecuada, dominio público o contenido cuya descarga esté permitida.
---
# Referencias oficiales
- **yt-dlp:** https://github.com/yt-dlp/yt-dlp
- **Instalación de yt-dlp:** https://github.com/yt-dlp/yt-dlp/wiki/Installation
- **spotDL:** https://github.com/spotDL/spotify-downloader
- **Documentación de spotDL:** https://spotdl.github.io/spotify-downloader/
- **FFmpeg:** https://ffmpeg.org/
- **Python:** https://www.python.org/
- **Deno:** https://deno.com/
---
# Atajo: instalación completa
## Windows
```powershell
winget install yt-dlp
winget install -e --id Gyan.FFmpeg
```
Instala Python desde:
https://www.python.org/downloads/windows/
Después:
```powershell
python -m pip install spotdl
spotdl --download-deno
```
## macOS
```bash
brew install yt-dlp
brew install ffmpeg
brew install python
python3 -m pip install spotdl
spotdl --download-deno
```
## Ubuntu/Debian
```bash
sudo apt update
sudo apt install yt-dlp ffmpeg python3 python3-pip
python3 -m pip install spotdl
spotdl --download-deno
```
## Comprobación final
```bash
yt-dlp --version
ffmpeg -version
spotdl --version
deno --version
```
Si los cuatro comandos devuelven una versión, tienes instalada la cadena completa:
```text
┌─────────────┐
│ Spotify │
└──────┬──────┘
│
▼
┌───────┐
│ spotDL│
└───┬───┘
│
▼
┌──────────┐
│ yt-dlp │
└────┬─────┘
│
▼
┌──────────┐
│ FFmpeg │
└────┬─────┘
│
▼
Archivo local
```
> **Nota:** spotDL utiliza fuentes externas para obtener el audio; no convierte las descargas offline de Spotify en archivos MP3.