Как бесплатно расшифровать аудио и видео в текст
Если требуется превратить в текст аудио- или видеофайл или ролик с Ютуба, можно воспользоваться ИИ-моделью Whisper от OpenAI — это бесплатно и работает прямо в браузере, с помощью Google Colab.
Google Colab — это бесплатный облачный сервис для работы с кодом на Python. Работает в облаке Google и не требует установки дополнительного программного обеспечения на локальный компьютер — достаточно браузера и Google-аккаунта.
У предлагаемого подхода есть несколько неоспоримых плюсов:
- это бесплатно,
- не требуется мощный компьютер;
- не нужно устанавливать никакое ПО;
- настройка занимает буквально несколько минут;
- поддерживается множество языков (99!).
Но, конечно, есть и минусы, куда же без них:
- работает довольно быстро, но не молниеносно;
- все данные через 12 часов удаляются (если нет платной подписки);
- бесплатные вычислительные ресурсы ограничены (может быть медленно, а если файл очень большой, возможны сбои);
- при каждом перезапуске придется заново скачивать модель (что-то около трех гигабайт, но скачивается быстро).
Тем не менее, это бесплатно, удобно и относительно быстро. А значит — почему бы не воспользоваться. Итак:
Whisper в браузере
1. Создаем в Google Colab новый блокнот.
Для этого можно просто перейти по ссылке (требуется вход в учетную запись Google).
2. Задействуем графический ускоритель.
Можно и без него, но так будет существенно быстрее. См. скриншоты.
3. Устанавливаем Whisper и другие необходимые зависимости
Скопируйте код ниже в пустое поле (см. скриншот, поз. 1) и нажмите кнопку "Выполнить" слева от поля (см. скриншот, поз. 2) или Ctrl+Enter.
Код (выделяйте целиком, копируйте и вставляйте):
# установка оригинального whisper !pip install git+https://github.com/openai/whisper.git
# установка ffmpeg !sudo apt update && sudo apt install ffmpeg
# установка whisper-ctranslate2 !pip install -U whisper-ctranslate2
# установка yt-dlp для сохранения видео с Ютуба !pip install yt-dlp
Примечание: если планируете расшифровывать локальный файл, а не ролик с Ютуба, то yt-dlp можно не устанавливать.
Дождитесь окончания выполнения команд.
4. Расшифровываем ролик с Ютуба
Расшифровка ролика с Ютуба проходит в три этапа: скачиваем с Ютуба звуковую дорожку в формате mp3 (см. п. 4.2) → расшифровываем ее (п. 4.3) → скачиваем текстовый файл (п. 4.4).
4.1. Добавим еще одно поле для ввода кода:
4.2. Скопируем туда следующий код:
!yt-dlp -x --audio-format mp3 -o ./rolik.mp3 -- XXXXX
... и нажмем кнопку "Выполнить" слева от поля или Ctrl+Enter. Вместо rolik можно выбрать любое другое имя файла, но не потеряйте слеш перед именем файла и точку после него! Символы XXXXX нужно заменить на ID ролика с Ютуба, копируем его из адресной строки браузера:
Копируем то, что после знака равенства, но не включая его. Дождемся окончания скачивания ролика. В результате выполнения этой команды в корне сессионного хранилища появится mp3-файл, содержащий звуковую дорожку нашего ролика. Можно приступать к расшифровке этой звуковой дорожки в текст.
4.3. Расшифровываем звуковую дорожку в текст
Добавим еще одно поле для ввода кода (см. п. 4.1) и скопируем туда следующий код:
!whisper-ctranslate2 "rolik.mp3" --language Russian -o ./result --model large-v2 --model_dir ./model
Вместо rolik укажите имя файла, выбранное вами на предыдущем шаге. Если язык ролика не русский, напишите вместо Russian название этого языка (например, English). Нажмите кнопку "Выполнить" слева от поля или Ctrl+Enter. Google Colab сначала скачает модель Whisper (чуть больше трех гигабайт), а затем начнется процесс распознавания. Дождитесь его окончания.
4.4. Скачиваем текстовую расшифровку аудио
Текстовая расшифровка нашего ролика в различных форматах находится в папке result. Откройте панель хранилища файлов (см. скриншот, поз. 1), откройте папку result (поз. 2), нажмите на три точки справа от нужного файла (поз. 3) и выберите "Скачать".
4. Расшифровываем локальные файлы
Расшифровка локальных файлов (например, .mp3, .mp4) делается аналогичным образом, только мы не скачиваем ролик с Ютуба, а загружаем файл в Google Colab. Для этого откройте панель хранилища файлов (см. скриншот, поз. 1), нажмите на пиктограмму со стрелкой (поз. 2) и выберите нужный файл. А можно просто перетащить файл на панель.
Примечание: поскольку имя файла придется вводить в команду, имеет смысл после загрузки в Colab дать ему более короткое имя. Например, "d5.mp3" вводить куда удобнее, чем "Dialogue 5 Discussing Open-source Software.mp3". Для переименования файла нажмите на три точки справа от него.
Далее добавляем поле для ввода кода (п. 4.1), расшифровываем файл (п. 4.3, не забудьте указать имя файла и язык) и скачиваем результат (п. 4.4).
В заключение хотелось бы подчеркнуть, что все команды нужно вводить очень внимательно: все черточки, точечки, слеши, пробелы, запятые и т.д. должны оставаться на своих местах!