1. Kamere
  2. Avto avdio in elektronika
  3. Domači avdio
  4. Osebni avdio
  5. Televizorji
  6. Pametni dom
  >> Elektronska Tehnologija >  >> Domači avdio >> Gramofoni

Kako lahko ustvarim zvočni valovanje iz zvoka?

Ne morete neposredno * ustvariti * zvočnega vala iz zvoka; Zvok * je * Soundwave (ali bolje rečeno, digitalna predstavitev tega). Kar lahko storite, je * vizualizirajte * Soundwave iz zvočne datoteke. To vključuje pridobivanje amplitudnih podatkov iz zvoka in nato narisati.

Takole lahko to storite z različnimi programskimi jeziki in knjižnicami:

1. Uporaba Pythona z librozo in matplotlib:

To je priljubljena in razmeroma preprosta metoda.

`` `Python

uvoz Librosa

uvoz librosa.display

uvozite matplotlib.pyplot kot plt

Naložite zvočno datoteko

file_path ='your_audio_file.wav' # Zamenjajte s svojo potjo datoteke

y, sr =librosa.load (datoteka_path)

Prikažite valovno obliko

plt.Figure (slsize =(14, 5))

librosa.display.waveShow (y, sr =sr)

plt.title ('valovna oblika')

PLT.XLABEL ('Čas (s)')

plt.ylabel ('amplituda')

plt.show ()

po želji shranite sliko:

plt.Savefig ('valform.png')

`` `

Ta koda naredi naslednje:

* Uvozi potrebne knjižnice: `Librosa` za obdelavo zvoka in` matplotlib 'za načrtovanje.

* naloži zvok: `librOsa.load ()` bere zvočno datoteko in vrne zvočne podatke (`y`) in hitrost vzorca (` sr`).

* prikazuje valovno obliko: `librbosa.display.waveShow ()` ustvari zaplet. Samodejno obravnava časovno skaliranje glede na hitrost vzorca.

2. Uporaba Pythona s Scipy in Matplotlib:

Ta pristop uporablja knjižnice nižje stopnje, kar vam daje več nadzora, vendar zahteva malo več kode:

`` `Python

uvoz scipy.io.wavfile

uvozite matplotlib.pyplot kot plt

uvozi numpy kot np

Naložite zvočno datoteko

hitrost, podatki =scipy.io.wavfile.read ('your_audio_file.wav')

Narišite valovno obliko

plt.Figure (slsize =(14, 5))

Plt.plot (podatki)

plt.title ('valovna oblika')

PLT.XLABEL ('vzorec')

plt.ylabel ('amplituda')

plt.show ()

za stereo zvok narišite vsak kanal ločeno

Če data.Dim ==2:

plt.Figure (slsize =(14, 5))

plt.plot (podatki [:, 0], nalepka ='Left Channel')

plt.plot (podatki [:, 1], nalepka ='desni kanal')

plt.legend ()

plt.title ('valovna oblika (stereo)')

PLT.XLABEL ('vzorec')

plt.ylabel ('amplituda')

plt.show ()

`` `

Ta koda:

* Za branje datoteke wav uporablja `scipy.io.wavfile`. Upoštevajte, da bo to naložilo surove zvočne podatke; Morda boste morali ravnati z različnimi podatkovnimi vrstami (npr. Pretvorba v plavajoče točke).

* Podatke nariše neposredno z `matplotlib.pyplot.plot ()`. Os X predstavlja vzorčno številko, ne čas (za razliko od primera Librosa).

Preden zaženete katero koli kodo:

* Namestite potrebne knjižnice: Morali boste namestiti `Librosa`,` matplotlib`, `scipy` in` numpy`. To lahko storite s pomočjo pip:`pip namestite librlosa matplotlib scipy numpy`

* Zamenjajte `'your_audio_file.wav'` z dejansko potjo do zvočne datoteke. Prepričajte se, da je datoteka datoteka WAV; Drugi formati bodo morda zahtevali dodatne knjižnice ali korake pretvorbe.

Ne pozabite, da te metode vizualizirajo Soundwave. Dejanski zvočni valovanje je fizični pojav sprememb zračnega tlaka; Vizualizacija je grafična predstavitev digitalnih podatkov, ki predstavljajo te različice.

  • --热点Elektronske tehnologije Online
  1. Kako Prilagodite fundacije za Vrtljive
  2. Records Vs . Kasete
  3. Shranjevanje Record Igralci
  4. Kako narediti domač Turntable
  5. Kako narediti Crosley Fonograf Turntable Turn