Inizia subitoInizia gratis

Divisione di audio stereo in mono con PyDub

Se stai cercando di trascrivere chiamate telefoniche, è possibile che siano state registrate in formato stereo, con un interlocutore per ciascun canale.

Come hai visto, è difficile trascrivere un file audio con più di un parlante. Una soluzione è dividere il file audio con più voci in singoli file, ognuno con un solo parlante.

La funzione split_to_mono() di PyDub può aiutarti in questo. Quando viene chiamata su un AudioSegment registrato in stereo, restituisce un elenco di due AudioSegment separati in formato mono, uno per ciascun canale.

In questo esercizio, farai pratica dividendo questa registrazione telefonica stereo (stereo_phone_call.wav) nel canale 1 e nel canale 2. In questo modo separi i due parlanti, facilitando la trascrizione.

Questo esercizio fa parte del corso

Elaborazione del linguaggio parlato in Python

Visualizza corso

Istruzioni dell'esercizio

  • Importa AudioSegment da pydub.
  • Crea un'istanza di AudioSegment stereo_phone_call con stereo_phone_call.wav.
  • Dividi stereo_phone_call in channels usando split_to_mono() e verifica i canali dell'output risultante.
  • Salva ciascun canale in nuove variabili, phone_call_channel_1 e phone_call_channel_2.

esercizio interattivo pratico

Prova questo esercizio completando questo codice di esempio.

# 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 = ____
Modifica ed esegui il codice