import numpy as np
from numpy.linalg import inv
from scipy import signal
import matplotlib.pyplot as plt
from sound import sound, wavwrite
import scipy.io.wavfile as wav
fs, snd = wav.read('Track32.wav')
snd=snd[:,1]
N=8
xm = np.reshape(snd,(-1,N)) #blocks
N=8
T=np.zeros((8,8))
for n in range (8):
for k in range (8):
T[n,k]=np.cos((np.pi/N)*(n+0.5)*(k+0.5))*np.sqrt(2.0/N)
Tinv=inv(T) ### T inverse equal to transform
blDFT=np.dot(xm,T)
recBlocks=np.dot(blDFT,Tinv)
recon=np.reshape(recBlocks,(-1,N)) # ???????
#sound(recon,fs)
#############Setting 2################
## five bands are set to zero
T[:,3] = np.zeros(np.size(T[:,3]))
T[:,4] = np.zeros(np.size(T[:,4]))
T[:,5] = np.zeros(np.size(T[:,5]))
T[:,6] = np.zeros(np.size(T[:,6]))
T[:,7] = np.zeros(np.size(T[:,7]))
blDFT2=np.dot(xm,T)
recBlocks=np.dot(blDFT2,Tinv)
#sound(snd, fs)
#sound(blDFT2, fs)