НачатьНачать бесплатно

Разделение стереозвука на моно с помощью PyDub

Если вы транскрибируете телефонные звонки, они могут быть записаны в стереоформате — с одним говорящим на каждом канале.

Как вы уже видели, транскрибировать аудиофайл с несколькими говорящими непросто. Один из способов решить эту задачу — разбить такой файл на отдельные файлы, каждый из которых содержит голос одного участника разговора.

Функция split_to_mono() из библиотеки PyDub позволяет сделать именно это. При вызове на стереофоническом AudioSegment она возвращает список из двух отдельных AudioSegment в монофоническом формате — по одному на каждый канал.

В этом упражнении вы потренируетесь разделять стереозапись телефонного звонка (stereo_phone_call.wav) на канал 1 и канал 2. Это позволит разделить двух говорящих и значительно упростит транскрибирование.

Это упражнение является частью курса

Обработка устной речи на Python

Посмотреть курс

Инструкции к упражнению

  • Импортируйте AudioSegment из pydub.
  • Создайте экземпляр AudioSegment с именем stereo_phone_call, загрузив файл stereo_phone_call.wav.
  • Разделите stereo_phone_call на каналы с помощью split_to_mono() и проверьте каналы полученного результата.
  • Сохраните каждый канал в новые переменные: phone_call_channel_1 и phone_call_channel_2.

Интерактивное практическое упражнение

Попробуйте выполнить это упражнение, дополнив этот пример кода.

# Import AudioSegment
from ____ import ____

# Import stereo audio file and check channels
stereo_phone_call = AudioSegment.from_file(____)
print(f"Stereo number channels: {stereo_phone_call.channels}")

# Split stereo phone call and check channels
channels = stereo_phone_call.____
print(f"Split number channels: {channels[0].____}, {channels[1].____}")

# Save new channels separately
phone_call_channel_1 = channels[0]
phone_call_channel_2 = ____
Редактировать и запускать код