В этой статье мы рассмотрим, как создавать образцы аудио для обучения приложений преобразования текста в речь (TTS) с использованием Python.

Я расскажу обо всем процессе, от загрузки видео с YouTube до извлечения аудио и его разделения на несколько частей. Чтобы упростить весь рабочий процесс, я создал серию простых скриптов Python, которыми я поделюсь ниже.

Предварительные условия (установлены на вашем компьютере):

  • Гит
  • Питон

TLDR для разработчиков, которые хотят сразу перейти к исходному коду:

Если вы нашли это руководство полезным и интересным, пожалуйста, выразите свою признательность, отметив мой репозиторий GitHub звездочкой. Спасибо! Теперь о хорошем…

Скачивание видео с YouTube

В своем стремлении собрать видеоконтент для получения аудиосэмплов я, как и вы, опасался использовать сомнительные сайты YouTube для MP4 или MP3. К счастью, я наткнулся на библиотеку Python pytube, которая оказалась простым и надежным решением.

Просто выполните следующие действия:

  1. Клонируйте скрипт python здесь
git clone https://github.com/nc1z/youtube-video-downloader.git

2. Перейдите в каталог

cd youtube-video-downloader/

3. Установите питуб

pip install pytube

4. Запустите команду

python main.py

5. Введите URL-адрес YouTube (также работает с короткометражками YouTube)

6. Видео будет сгенерировано как .mp4 в корне проекта.

Преобразование .mp4 в .mp3

Имея в своем распоряжении коллекцию загруженных видео, следующим шагом будет извлечение звука из каждого видео. Для этого мы воспользуемся мощной moviepyбиблиотекой Python.

Просто выполните следующие действия:

  1. Клонируйте скрипт python здесь
git clone https://github.com/nc1z/audio-extraction-tool.git

2. Перейдите в каталог

cd audio-extraction-tool/

3. Установите фильм

pip install moviepy

5. Поместите свои видео в формате mp4 в ./input

6. Запустите команду

python main.py

7. Извлеченные аудиофайлы будут найдены в ./output

Создание сэмплов

Чтобы обучить или клонировать звук с помощью TORTOISE-TTS, вы можете разбить его на более мелкие части. Чем больше аудиосэмплов, тем лучше.

С тем же audio-extraction-tool

  1. Установите num_parts в split-audio-sampling.py на желаемое количество семплов

2. Запустите команду

$ python split-audio-sampling.py

3. Теперь вы получите образцы аудио в ./output_samples/.

Заключение

Имея на руках аудиосэмплы, теперь вы можете передать их в TORTOISE-TTS, чтобы клонировать несколько потрясающих голосов.

Если вы нашли это руководство полезным и интересным, пожалуйста, выразите свою признательность, отметив мой репозиторий GitHub звездочкой. Ваша поддержка вдохновит меня на создание более проницательных учебных пособий и предоставление сообществу инновационных решений.

Удачного кодирования!