Tôi đang cố gắng tạo một bộ phân tích phổ đồ họa trong python.Phân tích âm thanh bằng Fast Fourier Transform
Tôi hiện đang đọc 1024 byte của kênh âm thanh tốc độ mẫu kênh 16,100 Hz kênh đôi 16 bit và tính trung bình biên độ của 2 kênh với nhau. Vì vậy, bây giờ tôi có một loạt 256 quần short đã ký. Bây giờ tôi muốn tạo thành một fft trên mảng đó, sử dụng một mô-đun như numpy, và sử dụng kết quả để tạo ra các phân tích phổ đồ họa, trong đó, để bắt đầu sẽ chỉ là 32 thanh.
Tôi đã đọc các bài viết wikipedia về Chuyển đổi Fourier nhanh và Biến đổi Fourier rời rạc nhưng tôi vẫn chưa rõ những gì mảng kết quả đại diện. Đây là những gì các mảng trông giống như sau khi tôi phôi một FFT trên mảng của tôi sử dụng NumPy:
[ -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...
tôi tự hỏi chính xác những gì những con số đại diện và làm thế nào tôi sẽ chuyển đổi những con số này thành một tỷ lệ phần trăm của một chiều cao cho mỗi 32 vạch. Ngoài ra, tôi có nên tính trung bình 2 kênh với nhau không?
+1 cho câu trả lời tuyệt vời và làm cho tôi tìm hiểu một thành ngữ mới, như Tôi không phải là người nói tiếng Anh bản địa.;) – macbirdie
+1 Tuyệt vời, điều này đã giúp tôi hiểu những gì tôi đã làm sai. – Davido
+1 - Mặc dù tôi đã biết về FFTs - một trong những giải thích tiếng Anh đơn giản nhất trên web. – OldTinfoil