Стенограмма YouTube-видео локально на Windows через yt-dlp и Whisper от OpenAI
17 Мар 2026
Понадобилось получить обычный текст из YouTube-видео. Встроенная стенограмма есть не у каждого ролика, поэтому решил сделать всё локально: скачать аудиодорожку через yt-dlp, затем прогнать её через Whisper от OpenAI.
Цепочка получилась довольно короткой.
Скачиваем аудио через yt-dlp
yt-dlp удобно поставить через winget:
winget install --source winget --id yt-dlp.yt-dlp
В моём случае вместе с ним установился и FFmpeg, который нужен для работы с аудио.
После установки PowerShell нужно открыть заново, потому что установщик меняет PATH.
Проверяем:
yt-dlp --version
ffmpeg -version
Лучше сразу перейти в обычную рабочую папку:
cd $HOME\Downloads
Аудиодорожку можно забрать без лишнего перекодирования:
yt-dlp -x "https://www.youtube.com/watch?v=VIDEO_ID"
Формат зависит от исходного видео. Например, у меня получился .m4a, который Whisper принимает напрямую.
Если нужен именно MP3:
yt-dlp -x --audio-format mp3 "https://www.youtube.com/watch?v=VIDEO_ID"
Иногда YouTube просит подтвердить, что запрос идёт не от бота. В таком случае yt-dlp умеет использовать cookies из браузера:
yt-dlp --cookies-from-browser chrome -x "https://www.youtube.com/watch?v=VIDEO_ID"
Если Chrome блокирует базу cookies, стоит полностью закрыть браузер и повторить команду. При ошибке расшифровки cookies этого недостаточно: можно попробовать cookies из Firefox или экспортировать их в файл и передать через --cookies.
Whisper и Python
Для установки и запуска Whisper понадобится Python.
Ставим Python:
winget install --id Python.Python
После установки снова открываем PowerShell и проверяем:
python --version
Ставим Whisper:
python -m pip install --upgrade pip
python -m pip install -U openai-whisper
FFmpeg к этому моменту уже установлен вместе с yt-dlp.
Получаем стенограмму
У меня исходная аудиодорожка называется videoplayback.m4a.
Первый прогон:
cd $HOME\Downloads
whisper ".\videoplayback.m4a" `
--language Russian `
--task transcribe `
--model small `
--output_format txt
После обработки рядом с аудиодорожкой появился текстовый файл:
videoplayback.txt
Специально конвертировать .m4a в MP3 не понадобилось.
Если нужно качество повыше, можно использовать medium:
whisper ".\videoplayback.m4a" `
--language Russian `
--task transcribe `
--model medium `
--output_format txt
При первом запуске Whisper скачивает выбранную модель.
Если кроме обычного текста нужны субтитры и таймкоды:
whisper ".\videoplayback.m4a" `
--language Russian `
--task transcribe `
--model medium `
--output_format all
Тогда рядом появятся .txt, .srt, .vtt, .tsv и .json.
Для обычной стенограммы рабочая цепочка в итоге сводится примерно к этому:
yt-dlp --cookies-from-browser chrome -x "https://www.youtube.com/watch?v=VIDEO_ID"
whisper ".\полученный-файл.m4a" `
--language Russian `
--model medium `
--output_format txt