Si queres hacer un resumen de un video podes descargar los subtítulos y copiar y pegar por partes en Grok, ChatGPT o NotebookLM.

yt-dlp --ignore-config --no-write-subs --write-auto-sub --sub-lang en --sub-format "srt" --skip-download https://www.youtube.com/watch?v=VIDEO_ID -o '%(autonumber)s%(id)s.%(ext)s'

yt-dlp --ignore-config --write-subs --write-auto-sub --sub-lang en --sub-format "srt" --skip-download https://www.youtube.com/watch?v=VIDEO_ID -o '%(autonumber)%(id)s.%(ext)s'

sed -E '/^[0-9]+$|^$/d; /^[0-9]{2}:/d' *.en.srt > subtitles.txt

Estaba descargando los subtitulos de un canal (los subtitulos generados automaticamente) pero en vez de bajar los subtitulos generados auomaticamente me genero los subtitulos que tenia el video que eran del chat de twitch, no quiero eso. Como hago para que forzar subtitulos automaticos no los manuales con yt-dlp

VTT y sin subtitulos manuales (mejor usa srt).


yt-dlp --ignore-config --no-write-subs --write-auto-sub --sub-lang en --sub-format "vtt" --skip-download "https://www.youtube.com/channel/UCwgKmJM4ZJQRJ-U5NjvR2dg"  -o '%(autonumber)s%(id)s.%(ext)s'

# Para que no repita los subtitulos.

sed -E '/^WEBVTT$/d; /^Kind:/d; /^Language:/d; /^[0-9]+$/d; /^$/d; /^[0-9]{2}:[0-9]{2}:[0-9]{2}\.[0-9]{3} -->/d; s/<[^>]+>//g' video.en.vtt | uniq > subtitles.txt


sed -E '/^WEBVTT$/d; /^Kind:/d; /^Language:/d; /^[0-9]+$/d; /^$/d; /^[0-9]{2}:[0-9]{2}:[0-9]{2}\.[0-9]{3} -->/d; s/<[^>]+>//g' video.en.vtt > subtitles.txt

Con yt-dlp podés forzar los subtítulos automáticos con estas opciones:

Opción 1: Usar --write-auto-subs y excluir los manuales

yt-dlp --write-auto-subs --no-write-subs --sub-langs "es" URL
  • --write-auto-subs → descarga solo los automáticos
  • --no-write-subs → ignora los manuales (como el chat de Twitch)

Opción 2: Si querés ver qué subtítulos están disponibles primero

yt-dlp --list-subs URL

Esto te muestra todos los disponibles y podés ver cuáles son automáticos ([automatic]) y cuáles manuales.


Opción 3: Especificar idioma exacto

yt-dlp --write-auto-subs --no-write-subs --sub-langs "es,es-419" URL

Para español de latinoamérica el código suele ser es-419.


Nota importante

El problema que tuviste seguramente fue usar --write-subs sin --no-write-subs. Cuando un video tiene subtítulos manuales, yt-dlp los prefiere por defecto sobre los automáticos. La clave es siempre combinar --write-auto-subs con --no-write-subs para que no tome los manuales.

Separar los archivos para cumplir con limites de ChatGPT

split -d -C 15000 subtitles.txt parte_chatgpt_ && for f in parte_chatgpt_*; do mv "$f" "${f}.txt"; done