Итак, я работал с БПФ, и в настоящее время я пытаюсь получить форму звуковой волны из файла с помощью БПФ, (изменить его в конце концов ), но затем выведите этот измененный сигнал обратно в файл. Я получил БПФ звуковой волны, а затем применил к ней обратную функцию БПФ, но выходной файл звучит совсем не так. Я не делал никаких фильтров на волновой форме -Я просто проверяю получение данных о частоте, а затем помещаю их обратно в файл -это должно звучать так же, но звучит совершенно по-другому. Любые идеи?
--РЕДАКТИРОВАТЬ--
С тех пор я немного работал над этим проектом, но еще не получил желаемых результатов. Выведенный звуковой файл шумный (как более громкий, так и лишний шум, которого не было в исходном файле ), и звук из одного канала просачивался в другой канал (, который ранее был тихим ). ]. Входной звуковой файл представляет собой стереофонический 2-канальный -файл со звуком, исходящим только из одного канала. Вот мой код:
import scipy
import wave
import struct
import numpy
import pylab
from scipy.io import wavfile
rate, data = wavfile.read('./TriLeftChannel.wav')
filtereddata = numpy.fft.rfft(data, axis=0)
print (data)
filteredwrite = numpy.fft.irfft(filtereddata, axis=0)
print (filteredwrite)
wavfile.write('TestFiltered.wav', rate, filteredwrite)
Я не совсем понимаю, почему это не работает...?
РЕДАКТИРОВАТЬ :Я заархивировал проблемный файл.py и аудиофайл, если это поможет решить проблему здесь .