1. Fotoaparati
  2. Auto audio i elektronika
  3. Kućni audio
  4. Osobni audio
  5. Televizori
  6. Pametna kuća

Kako mogu stvoriti grafiku zvučnog vala pomoću generatora?

Ne možete izravno stvoriti grafiku * True * Zvučnog vala koristeći jednu funkciju generatora na način na koji možda razmišljate (poput jedne Python funkcije koja generira PNG). Zvučni valovi su inherentno vremenski podaci (promjene tlaka tijekom vremena). Grafika je prostorni prikaz. Morate *generirati podatke zvučnog vala *, a zatim *obraditi te podatke da biste stvorili vizualni prikaz *.

Evo kako to možete učiniti pomoću Pythona, korištenja knjižnica za stvaranje zvuka i stvaranja slike:

1. Generirati podatke o zvučnom valu:

Ovaj dio stvara numeričke podatke koji predstavljaju zvučni val. Koristit ćemo `numpy` za numeričko računanje i` scipy` za generiranje različitih valnih oblika.

`` `Python

Uvoz numpi kao NP

uvoz matplotlib.pyplot kao plt

uvoz scipy.io.wavfile kao wav

od scipy.signal uvoza Sawtooth, kvadrat

Parametri

Frekvencija =440 # Hz (napomena A4)

Trajanje =2 # sekunde

uzorak_rate =44100 # Hz (standardna brzina zvuka)

amplituda =0,8 # Drži ga ispod 1 kako biste izbjegli rezanje

Vremenski vektor

t =np.linspace (0, trajanje, int (uzorak_rate * trajanje), krajnja točka =lažno)

Odaberite valni oblik (sine, kvadrat, pile itd.)

#waveform =np.sin (2 * np.pi * frekvencija * t) * amplituda # sine val

#waveform =kvadrat (2 * np.pi * frekvencija * t) * amplituda # kvadratni val

valni oblik =sawtooth (2 * np.pi * frekvencija * t) * amplituda # SawTooth val

#Option:Dodajte malo buke

buka =np.random.normal (0, 0,1, len (valni oblik))

valni oblik +=buka

Normalizirajte kako biste izbjegli rezanje (važno za izlaz zvuka)

Valni oblik =valni oblik / np.max (np.abs (valni oblik))

#Option:Spremi kao WAV datoteku

wav.write ("output.wav", Sample_rate, WaveForm.astype (np.float32))

`` `` ``

2. Stvorite grafiku:

Ovaj dio uzima generirane podatke zvučnog vala i crta ih pomoću `matplotlib`.

`` `Python

Nacrtajte valni oblik

plt.Figure (figsize =(10, 4))

plt.plot (t, valni oblik)

plt.xlabel ("Vrijeme (i)")

plt.Ylabel ("Amplituda")

plt.title ("Oblik zvučnog vala")

plt.Grid (istina)

plt.savefig ("sound_wave.png") #save kao PNG

plt.show ()

`` `` ``

Kompletni kod:

`` `Python

Uvoz numpi kao NP

uvoz matplotlib.pyplot kao plt

uvoz scipy.io.wavfile kao wav

od scipy.signal uvoza Sawtooth, kvadrat

Parametri

Frekvencija =440 # Hz (napomena A4)

Trajanje =2 # sekunde

uzorak_rate =44100 # Hz (standardna brzina zvuka)

amplituda =0,8 # Drži ga ispod 1 kako biste izbjegli rezanje

Vremenski vektor

t =np.linspace (0, trajanje, int (uzorak_rate * trajanje), krajnja točka =lažno)

Odaberite valni oblik

valni oblik =sawtooth (2 * np.pi * frekvencija * t) * amplituda

#Option:Dodajte malo buke

buka =np.random.normal (0, 0,1, len (valni oblik))

valni oblik +=buka

Normalizirajte kako biste izbjegli rezanje

Valni oblik =valni oblik / np.max (np.abs (valni oblik))

#Option:Spremi kao WAV datoteku

wav.write ("output.wav", Sample_rate, WaveForm.astype (np.float32))

Nacrtajte valni oblik

plt.Figure (figsize =(10, 4))

plt.plot (t, valni oblik)

plt.xlabel ("Vrijeme (i)")

plt.Ylabel ("Amplituda")

plt.title ("Oblik zvučnog vala")

plt.Grid (istina)

plt.savefig ("sound_wave.png")

plt.show ()

`` `` ``

Ovaj kôd će:

1. Generirajte val Sawtooth -a (to lako možete promijeniti u sinusne, kvadratne ili druge valne oblike pomoću funkcija `scipy.signal`).

2. Po želji dodajte buku kako biste je učinili realnijom.

3. Normalizirajte valni oblik kako biste spriječili rezanje.

4. Po želji spremite ga kao WAV datoteku.

5. Stvorite i spremite PNG sliku amplitude zvučnog vala s vremenom.

Ne zaboravite instalirati potrebne biblioteke:`numpy`,` matplotlib` i `Scipy`. Možete ih instalirati pomoću PIP:`PIP UGRADNJI NUMPY MATPLOTLIB SCIPY`

  1. Kako staviti glazbu na Sony Net MD Walkman
  2. Kako instalirati HP pisač bez diska
  3. Je li RCA izumio prvi kompaktni disk?
  4. Kako napraviti video s jednom slikom sa zvukom na Macu koristeći iMovie?
  5. Gdje mogu kupiti rio mp3 player?