[y,fs]=wavread('pavarotti.wav');
%wavplay(y); %ez rossz segességgel, leállíthatatlanul... 
%wavplay(y,fs,'async'); %na igen, ezt nem lehet leállítani...
%soundsc(y,fs) %ez sem állítható le ...
%
%soundview(y,fs);
%soundview(y,2*fs) %ez gyors, de rövid

plot(y), title('Idõfüggvény'), shg
Amps=sort(unique(y));
delta=min(diff(Amps));
B=ceil(log2((max(y)-min(y))/delta));
[y,fs,bits]=wavread('pavarotti.wav'); bits

yr=y(6e5+[1:44100*20]); N=length(yr); L=2^8; M=floor(N/(L));
fmult=2; %frekvencianövelés

ym=zeros(size(yr));
for ii=1:M
  yi=yr((ii-1)*(L)+[1:L]);
  Yi=fft([yi]);
  Yi2=Yi([1:floor(L/2/fmult),L-floor(L/2/fmult)+1:end]);
	if (fmult==1)&(max(abs(Yi-Yi2))>0), error('Something is fishy'), end
	yi2=[real(ifft(Yi2)),real(ifft(Yi2))];
	ym((ii-1)*(L)+[1:2*floor((L)/2/fmult)])=yi2([1:2*floor((L)/2/fmult)]);
end
soundview(ym,fs);

%II. lehetõség (ismétlés 0-k beszúrásával a spektrumba)
if 0
	y2=yr;
	for ii=1:M
		yi=yr((ii-1)*L+[1:L]);
		Yi=[fft(yi);zeros(size(yi))]; Yi=Yi(:);
		yi2=real(ifft(Yi([1:round(L/2/fmult),L-round(L/2/fmult)+1:end])));
		yi2=[yi2;yi2]';
		y2((ii-1)*L+[1:L])=yi2(1:L)';
	end
	soundview(y2,fs);
end
