Без лишних предисловий – к делу.

Задача:

Упростить конспектирование видео с ютуба

Можно по 10 раз пересматривать и перематывать видео, а можно воспользоваться последними достижениями науки и техники.

Установка

Ставим питон 3.10. Рекомендую ставить через pyenv.

Ставим ffmpeg и yt-dlp. Команды пишу под мак.

# ffmpeg
brew install ffmpeg
# yt-dlp
wget https://github.com/yt-dlp/yt-dlp/releases/latest/download/yt-dlp_macos
chmod +x yt-dlp_macos
sudo mv yt-dlp_macos /usr/local/bin/yt-dlp

Ставим whisper. Желательно, в папку с virtualenv:

pip install -U openai-whisper

Использование

Качаем видео в формате аудио. ba == bestaudio.

yt-dlp -f "ba" -o "to_transcribe.%(ext)s" "https://youtube.com/watch?v=6VhD5QyDEh4"

Если скачался webm, конвертим в aac:

ffmpeg -y -i "to_transcribe.webm"  "to_transcribe.aac"

Подставляем в whisper:

python -m whisper --model medium to_transcribe.aac

Если у вас больше 10G оперативы или памяти на GPU, можно менять модель model с medium на large. Но и результата придётся ждать в два раза дольше.

Наслаждаемся результатом. Пользуясь случаем, рекомендую утилиту bat:

cat to_transcribe.txt

На 4 ядрах при 8 потоках (i3-10105, 3.7 ГГц) и 8гб оперативы, заняло 16 минут на видео из примера.

Из полученного текста куда проще слепить конспект.