Найти в Дзене
Аналитика данных

Установка FFmpeg на Windows для транскрибации аудио в Jupyter Notebook

При работе с аудио файлами локально на python в Jupyter Notebook часто требуется бибилотека FFmpeg. FFmpeg – это набор open source-библиотек, для конвертации, записи и передачи диджитал аудио/видео в разных форматах.

Также эта либа может пригодится, например для расшифровки речи из mp3-файла в текст через библиотеку Vosk или через языковую модель Whisper от OpenAi или любую другую. Чтобы команды вызова FFmpeg корректно отрабатывались в ноутбуке, необходимо скачать библиотеку и прописать пути (PATH) в настройке Windows – «Переменные среды» (англ. environment variable). Приступаем…

Шаг №1. Заходим на сайт ffmpeg.org и переходим в раздел Download: ffmpeg.org/download.html

Сайт ffmpeg.org
Сайт ffmpeg.org

Шаг №2. Далее жмём на иконку с Windows и переходим на страницу для скачивания версий FFmpeg, например сюда: gyan.dev

Сайт gyan.dev
Сайт gyan.dev

Шаг №3. На сайте gyan.dev заходим в раздел release builds, т.е. туда, где хранятся стабильные, проверенные версии. И качаем архив latest release

Latest release
Latest release

Шаг №4. После скачивания, у вас будет файл с архивом такого типа "ffmpeg-NUM_VER-full_build.7z". Вместо "NUM_VER" будет стоять номер скачанной версии.

Шаг №5. Этот файл нужно распаковать, например в корень диска "С:/", в папку "ffmpeg", хотя папку можно назвать как вам хочется и распаковать тоже можно в другое место, например в "Program Files".

Шаг №6. Запускаем командную строку с правами администратора. Для этого находим в меню пуск пункт «Терминал» или «Командная строка», жмём на этом пункте правой кнопкой мыши и в контекстном меню жмём на «Запуск от имени администратора». В появившемся терминале набираем команду:

setx /m PATH "C:\ffmpeg\bin;%PATH%"
Терминал
Терминал

Эта команда пропишет вашу библиотеку ffmpeg в переменные Windows и теперь при вызове команд связанных с ffmpeg у вас всё будет работать. При успешном выполнении команды, в терминале выведется сообщение:

Успех. Указанное значение сохранено

Шаг №7. Проверяем что библиотека установилась через терминал

Для проверки того, что всё установлено корректно, необходимо перезапустить терминал и выполнить команду:

ffmpeg -version

Причём терминал можно запускать уже не под администратором, а под обычным пользователем.

Вывод версии ffmpeg
Вывод версии ffmpeg

Если вывелась информация подобно этой (см. ниже), то всё нормально.

ffmpeg version 7.0.2-full_build-www.gyan.dev Copyright (c) 2000-2024 the FFmpeg developers
built with gcc 13.2.0 (Rev5, Built by MSYS2 project)
configuration: --enable-gpl --enable-version3 --enable-static --disable-w32threads --disable-autodetect --enable-fontconfig --enable-iconv --enable-gnutls --enable-libxml2 --enable-gmp --enable-bzlib --enable-lzma --enable-libsnappy --enable-zlib --enable-librist --enable-libsrt --enable-libssh --enable-libzmq --enable-avisynth --enable-libbluray --enable-libcaca --enable-sdl2 --enable-libaribb24 --enable-libaribcaption --enable-libdav1d --enable-libdavs2 --enable-libuavs3d --enable-libxevd --enable-libzvbi --enable-librav1e --enable-libsvtav1 --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxavs2 --enable-libxeve --enable-libxvid --enable-libaom --enable-libjxl --enable-libopenjpeg --enable-libvpx --enable-mediafoundation --enable-libass --enable-frei0r --enable-libfreetype --enable-libfribidi --enable-libharfbuzz --enable-liblensfun --enable-libvidstab --enable-libvmaf --enable-libzimg --enable-amf --enable-cuda-llvm --enable-cuvid --enable-dxva2 --enable-d3d11va --enable-d3d12va --enable-ffnvcodec --enable-libvpl --enable-nvdec --enable-nvenc --enable-vaapi --enable-libshaderc --enable-vulkan --enable-libplacebo --enable-opencl --enable-libcdio --enable-libgme --enable-libmodplug --enable-libopenmpt --enable-libopencore-amrwb --enable-libmp3lame --enable-libshine --enable-libtheora --enable-libtwolame --enable-libvo-amrwbenc --enable-libcodec2 --enable-libilbc --enable-libgsm --enable-libopencore-amrnb --enable-libopus --enable-libspeex --enable-libvorbis --enable-ladspa --enable-libbs2b --enable-libflite --enable-libmysofa --enable-librubberband --enable-libsoxr --enable-chromaprint
libavutil 59. 8.100 / 59. 8.100
libavcodec 61. 3.100 / 61. 3.100
libavformat 61. 1.100 / 61. 1.100
libavdevice 61. 1.100 / 61. 1.100
libavfilter 10. 1.100 / 10. 1.100
libswscale 8. 1.100 / 8. 1.100
libswresample 5. 1.100 / 5. 1.100
libpostproc 58. 1.100 / 58. 1.100

Шаг №8. Проверяем корректность установки в настройках Windows

Для этого заходим в параметры Windows, далее в «Изменение системных переменных среды»:

Изменение системных переменных среды
Изменение системных переменных среды

В появившемся окне жмём внизу справа на «Переменные среды». В следующем окне обращаем внимание на список в нижней части. Ищем строчку, в которой слева в колонке «Переменная» написано Path, а в колонке «Значение» – длинная строка. В этой строке должна быть написана та, команда, которую мы выполнили в терминале:

C:\ffmpeg\bin;
Переменные среды
Переменные среды

На этом всё. Теперь в вашем Jupyter Notebook будет выполнятся код:

pip install ffmpeg

И теперь можно приступить, к транскрибации аудио файлов. А это другая история.