Kom igångKom igång gratis

Från bytes till heltal

Du har sett hur man importerar och läser en ljudfil med Pythons wave-modul och metoden readframes(). Det resulterar dock i en array av bytes.

För att omvandla bytes till något mer användbart använder vi NumPys metod frombuffer().

Genom att skicka in ljudvågornas bytes till frombuffer() och ange dtype som 'int16' kan vi konvertera bytes till heltal. Heltal är mycket enklare att arbeta med än bytes.

Pythons wave-bibliotek har redan importerats tillsammans med ljudfilen good_morning.wav audio file.

Den här övningen är en del av kursen

Taligenkänning i Python

Visa kurs

Övningsinstruktioner

  • Importera paketet numpy med dess vanliga alias np.
  • Öppna och läs in ljudfilen för god morgon.
  • Konvertera bytes i signal_gm till heltal av typen int16.
  • Visa de första 10 ljudvågsvärdena.

Interaktiv övning med praktiskt arbete

Testa den här övningen genom att slutföra den här exempelkoden.

import ____ as ____

# Open good morning sound wave and read frames as bytes
good_morning = wave.open(____, 'r')
signal_gm = good_morning.readframes(-1)

# Convert good morning audio bytes to integers
soundwave_gm = np.frombuffer(____, dtype=_____)

# View the first 10 sound wave values
print(soundwave_gm[:____])
Redigera och kör kod