Skip to content

Instantly share code, notes, and snippets.

@Bougakov
Last active May 22, 2023 12:33
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save Bougakov/c9bfadd34d3e75b5ffb0c1616485f8ed to your computer and use it in GitHub Desktop.
Save Bougakov/c9bfadd34d3e75b5ffb0c1616485f8ed to your computer and use it in GitHub Desktop.
как расшифровывать аудио на маке

Скачиваем Whisper.cpp (https://github.com/ggerganov/whisper.cpp):

cd /tmp
brew install gh

(если эта команда дала ошибку, у вас не установлен https://brew.sh)

gh repo clone ggerganov/whisper.cpp
cd whisper.cpp
bash ./models/download-ggml-model.sh base
bash ./models/download-ggml-model.sh medium
make

Скачаем с Ютуба ролик в качестве примера для распознавания русской речи. Для этого берём короткий ролик Екатерины Шульман на пару минут, id = f0RCGMCphUM , и выцепляем из него аудиодорожку в формате WAV:

brew install yt-dlp ffmpeg
yt-dlp -x --audio-format wav -o test.wav -- f0RCGMCphUM

Конвертируем аудиофайл в формат 16 bit WAV:

ffmpeg -i test.wav -ar 16000 -ac 1 -c:a pcm_s16le test_16bit.wav

Запускаем распознавание полученного файла test_16bit.wav (используем модель medium, если охота - можно base, она попроще, но качество распознавания на сложной речи будет хуже)

./main -f test_16bit.wav -l ru -m models/ggml-medium.bin 

Оно задумывается и начинает выплёвывать:

main: processing 'test_16bit.wav' (1990600 samples, 124.4 sec), 4 threads, 1 processors, lang = ru, task = transcribe, timestamps = 1 ...
[00:00:00.000 --> 00:00:03.440]   приправим нашу беседу, цитата Бродского.
[00:00:03.440 --> 00:00:05.440]   Вот что он писал.
[00:00:05.440 --> 00:00:08.400]   Вот смотрите, кот.
[00:00:08.400 --> 00:00:12.720]   Коту совершенно наплевать, существует ли общество память
[00:00:12.720 --> 00:00:15.480]   или отдел идеологии при ЦК.
[00:00:15.480 --> 00:00:19.160]   Также, впрочем, ему безразличный президент США,
[00:00:19.160 --> 00:00:20.520]   его наличие или отсутствие.
[00:00:20.520 --> 00:00:23.800]   А чем я хуже этого кота?
[00:00:23.800 --> 00:00:28.120]   Вот как вы думаете, если бы сделать так,
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment