Python'da bir grafik spektrum analizörü oluşturmaya çalışıyorum.
Şu anda 16 bit çift kanallı 44,100 Hz örnek hızındaki ses akışının 1024 baytını okuyorum ve 2 kanalın genliğinin ortalamasını alıyorum. Şimdi 256 imzalı şortum var. Şimdi, numpy gibi bir modül kullanarak bu dizide bir fft önceden oluşturmak ve sonucu, başlangıçta sadece 32 bar olacak grafik spektrum analizörünü oluşturmak için kullanmak istiyorum.
Hızlı Fourier Dönüşümü ve Ayrık Fourier Dönüşümü hakkındaki Wikipedia makalelerini okudum, ancak ortaya çıkan dizinin neyi temsil ettiğinden hala emin değilim. Numpy kullanarak dizimde bir fft oluşturduktan sonra dizi şöyle görünür:
[ -3.37260500e+05 +0.00000000e+00j 7.11787022e+05 +1.70667403e+04j
4.10040193e+05 +3.28653370e+05j 9.90933073e+04 +1.60555003e+05j
2.28787050e+05 +3.24141951e+05j 2.09781047e+04 +2.31063376e+05j
-2.15941453e+05 +1.63773851e+05j -7.07833051e+04 +1.52467334e+05j
-1.37440802e+05 +6.28107674e+04j -7.07536614e+03 +5.55634993e+03j
-4.31009964e+04 -1.74891657e+05j 1.39384348e+05 +1.95956947e+04j
1.73613033e+05 +1.16883207e+05j 1.15610357e+05 -2.62619884e+04j
-2.05469722e+05 +1.71343186e+05j -1.56779748e+04 +1.51258101e+05j
-2.08639913e+05 +6.07372799e+04j -2.90623668e+05 -2.79550838e+05j
-1.68112214e+05 +4.47877871e+04j -1.21289916e+03 +1.18397979e+05j
-1.55779104e+05 +5.06852464e+04j 1.95309737e+05 +1.93876325e+04j
-2.80400414e+05 +6.90079265e+04j 1.25892113e+04 -1.39293422e+05j
3.10709174e+04 -1.35248953e+05j 1.31003438e+05 +1.90799303e+05j...
Bu sayıların tam olarak neyi temsil ettiğini ve bu sayıları 32 çubuğun her biri için bir yükseklik yüzdesine nasıl dönüştüreceğimi merak ediyorum. Ayrıca, 2 kanalın ortalamasını birlikte almalı mıyım?