ПочатиПочніть безкоштовно

Розділення стереоаудіо на моно за допомогою PyDub

Якщо ви намагаєтеся транскрибувати телефонні дзвінки, існує ймовірність, що їх записано у стереоформаті, з одним співрозмовником на кожному каналі.

Як ви вже бачили, складно транскрибувати аудіофайл із більш ніж одним мовцем. Один із варіантів — розділити аудіофайл з кількома мовцями на окремі файли з індивідуальними мовцями.

Функція split_to_mono() з PyDub може в цьому допомогти. Якщо викликати її для AudioSegment, записаного в стерео, вона повертає список із двох окремих AudioSegment у моноформаті — по одному для кожного каналу.

У цій вправі ви потренуєтеся, розділивши запис цього стереодзвінка (stereo_phone_call.wav) на канал 1 і канал 2. Це відокремлює двох співрозмовників і спрощує подальшу транскрипцію.

Ця вправа є частиною курсу

Обробка усного мовлення в Python

Переглянути курс

Інструкції до вправи

  • Імпортуйте AudioSegment з pydub.
  • Створіть екземпляр AudioSegmentstereo_phone_call — з stereo_phone_call.wav.
  • Розділіть stereo_phone_call на channels за допомогою 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 = ____
Редагувати та запускати код