Files
JaySynth/matlab/osc/blep/eval_minblep_pre.m
T
2025-08-21 07:27:52 +02:00

33 lines
540 B
Matlab
Executable File

function eval_minblep_pre()
f = 440;
N = 4000;
t = (-N/2:N/2-1)/N;
x = sin(t*f*pi)./sin(t*pi);% .* kaiser(N, 8)';
x(find(isnan(x))) = f;
%x = x / f;
% Real cepstrum
x_rc = real(ifft(log(abs(fft(x)))));
w = [1; 2*ones(N/2-1,1); ones(1 - rem(N,2),1); zeros(N/2-1,1)]';
y = real(ifft(exp(fft(w.*x_rc))));
xi = cumsum(x)/N;
yi = cumsum(y)/N;
close all;
subplot(2, 1, 1)
plot(t, x/f, t, xi, 'r'); grid;
subplot(2, 1, 2)
plot(0:N-1, y/f, 0:N-1, yi, 'r'); grid;
figure;
plot(t, xi); grid;
figure;
plot(t, yi); grid;
figure;
plot(w); grid;