Phase Vocoder Report for Audio Signal Processing. Gerald Leung V

Size: px
Start display at page:

Download "Phase Vocoder Report for Audio Signal Processing. Gerald Leung V"

Transcription

1 Phase Vocoder Report for Audio Signal Processing Gerald Leung V

2 Table of Contents 1. Windowed Overlapping Segments Verifying Windowed Overlapping Segments... 3 a. Plotting a 3D spectrogram Phase Response... 5 a. Matlab Implementation Effects of Cyclic Shift Implementation of Phase Vocoder and Audio Effects... 9 a. Time Stretch... 9 b. Pitch Shift...11 c. Robotize...13 d. Whisperization...14 e. Stable and unstable transients...15 f. De-noising Audio Compression...19 a. Frequency Threshold b. Retaining strongest N Frequencies... 20

3 1. Windowed Overlapping Segments This project is based on the implementation of window overlap segments based from assignment Verifying Windowed Overlapping Segments The Fast Fourier Transform (FFT) is an algorithm that determines the magnitude and phase of a signal in the frequency domain. Fourier states that any periodic signal can be re-constructed using a weighted sum of sinusoids. The magnitude and phase can be determined based on the amplitude and phase of each sinusoid. In audio signal processing, processing segments of data at a time is a common practice, especially in real-time audio applications. The audio segment taken is most likely non-periodic; therefore, when performing FFT operations on a non-periodic waveform, the frequency response doesn t give an accurate representation of the actual frequency response. This error is also known as leakage. a. Plotting a 3D spectrogram A 3D spectrogram displays the time-frequency contents of a signal. This is accomplished by taking the Short Time Fourier Transform (STFT) of each window segment and plotting the frequency response for each window. Each STFT of a window segment corresponds to a line in the time axis on the 3D graph. The following graph is a spectrogram of a simple non-periodic cosine function with no window overlapping that illustrates the effects of leakage. Normally, we would expect a clean spike at the frequency of the cosine wave. To rectify this problem, a window overlap operation is used to enforce each segment of the audio signal to be periodic. The following figures illustrate 6 test cases to verify that the leakage effect is rectified.

4 A cosine of 1 Hz was used to construct the window. From the above graph, it can clearly be seen that the leakage affect has been rectified except for the 0.75 Hz cosine signal. This is because the FFT resolution is not sufficient enough to reconstruct the signal. These are the implications of discrete time and frequency computation. Notice that there are also signal artifacts in the 200 Hz and 1 Hz signal. This is due most likely due to again, the limitations of frequency resolution in the window function.

5 3. Phase Response The phase spectrogram was constructed by taking the angle of each FFT bin and plotting their values versus time. The following graph is the result of a 3D phase spectrogram for a 200 Hz cosine wave. The FFT operation provides a set of real and imaginary values. These values correspond to the magnitude and phase at a particular frequency. The FFT time vector starts in the left of the window. This suggests that a pulse in the middle of a window has a phase of 0, pi, 0, -pi... since the components of the cosine signal is 0, +1, 0, This causes the phase to unwrap in opposite directions for even and odd FFT bins.

6 a. Matlab Implementation The following is the code implementation of plotting a 3D Magnitude and phase Spectrogram. The following code is the implementation of a Magnitude 3D spectrogram %PHASE VOCODER Summary of this function goes here % Detailed explanation goes here clear all; close all; % Input % fs = 44100; A = wavread('flute.wav'); A=A'; halfsignal =1:2048; Y2 =.5*(1-cos(2*pi*halfSignal*1/(2048))); % Fixed window size = 2048 windowsize = 2048; output2 = A(1:windowSize).*Y2; hopsize = windowsize/2; out=zeros(1,length(a)); for d=1 : length(a)/hopsize-1 %In time domain wa = A((d-1)*hopSize+1: (d-1)*hopsize+windowsize); wx = Y2.*wA; specsegment = wx; %In frequency domain Wx=fft(wX); %To get the mangnitude and put it in Wxmag array. Wxmag(d) = abs(wx(d)); %In time domain YY = ifft(wx); fft_x = ifft(wx); out((d-1)*hopsize+1: (d-1)*hopsize+windowsize)=real(yy)+out((d-1)*hopsize+1: (d-1)*hopsize+windowsize); %calculate the spectrogram magnitude for the window segment specmag(1:windowsize,d) = 20*log10(abs(fft(specSegment))); %set the spectrogram axis X = 1:length(A)/hopSize-1; Y = 1:windowSize/2; Z = specmag(1:windowsize/2, 1:length(A)/hopSize-1); %plot it figure(1) surf(x, Y, Z); title('3d spectrogram');

7 Similar to the magnitude spectrogram, the phase spectrogram is plotted by obtaining the angle of all the FFT bins in each window segment. Each window corresponds to a line on the spectrogram. The following is the matlab code and 3D phase spectrogram results using flute.wav as a simple test input file. %PHASE VOCODER Summary of this function goes here % Detailed explanation goes here clear all; close all; % Input % fs = 44100; A = wavread('flute.wav'); windowsize = 2048; A=A'; halfsignal =1:2048; Y2 =.5*(1-cos(2*pi*halfSignal*1/(2048))); % Fixed window size = 2048 windowsize = 2048; output2 = A(1:windowSize).*Y2; hopsize = windowsize/2; out=zeros(1,length(a)); for d=1 : length(a)/hopsize-1 %In time domain wa = A((d-1)*hopSize+1: (d-1)*hopsize+windowsize); wx = Y2.*wA; specsegment = wx; %In frequency domain Wx=fft(wX); %To get the mangnitude and put it in Wxmag array. Wxmag(d) = abs(wx(d)); %In time domain YY = ifft(wx); fft_x = ifft(wx); out((d-1)*hopsize+1: (d-1)*hopsize+windowsize)=real(yy)+out((d-1)*hopsize+1: (d-1)*hopsize+windowsize); %calculate the spectrogram magnitude for the window segment specmag(1:windowsize,d) = 20*log10(abs(fft(specSegment))); specphase(1:windowsize,d) = angle(fft(specsegment)); %set the magnitude spectrogram axis X = 1:length(A)/hopSize-1; Y = 1:windowSize/2; Z = specmag(1:windowsize/2, 1:length(A)/hopSize-1); %plot it figure(1) surf(x, Y, Z); title('3d spectrogram'); Z = specphase(1:windowsize/2, 1:length(A)/hopSize-1); figure(2) surf(x, Y, Z); title('3d Phase Spectrogram');

8 4. Effects of Cyclic Shift The FFT operation provides a set of real and imaginary values. These values correspond to the magnitude and phase at a particular frequency. The FFT time vector starts in the left of the window. This suggests that a pulse in the middle of a window has a phase of 0, pi, 0, -pi... since the components of the cosine signal is 0, +1, 0, This causes the phase to unwrap in opposite directions for even and odd FFT bins. We can obtain a simpler phase relationship by performing a circular shift operation before taking the FFT operation. The following graph illustrates the effect on phase with and without circular shift.

9 5. Implementation of Phase Vocoder and Audio Effects The implementation of the phase vocoder was successfully verified using the provided.wav file from the DAFX web source using Tom_diner.wav. Each audio grain was multiplied by the user-defined window function, whose FFT was taken. The IFFT and overlap add was then performed to re-construct the original audio signal. Phase unwrapping needed to be performed in order to find the phase difference between FFT bins of the same frequencies. If the angular phase of the entire range is from 0 to 360 degrees. If the phase difference is to be calculated between, for example, from 330 degrees to 30 degrees (390 degrees) we would obtain a negative and incorrect phase difference. To rectify this issue, we must unwrap the phase from 30 degrees to 390 degrees. This would give us the correct phase difference of degrees, which yields a phase difference of 60 degrees. The following figure illustrates the effect of phase unwrapping: a. Time Stretch Time stretch was performed in the frequency spectrum manipulation of the phase vocoder. The FFT magnitude and phase are first taken for each window segment. The magnitude and phase increment are then calculated and interpolated using linear interpolation based on the time stretch ratio. Because FFT is a summation of sinusoids, the time-stretched audio signal in the time domain can be re-constructed by summing all of the sinusoids based on the interpolated phase and magnitude. This procedure is repeated for all the windows in the audio signal and overlap add is performed The following matlab code is an implementation of time stretch using a phase vocoder. Refer to timestretch.wav for results. function [ output_args ] = time_stretch( input_args ) %TIME_STRETCH Summary of this function goes here % Detailed explanation goes here %window grain size n1 = 256; %time stretched window grain size

10 n2 = 3*1024; %window length WLen = 2048; w1 = hanning(wlen); w2 = w1; [in_signal, FS] = wavread('redwheel.wav'); L = length(in_signal); in_signal = [zeros(wlen, 1); in_signal; zeros(wlen-mod(l, n1),1)] / max(abs(in_signal)); stretch_factor = n2/n1; out_signal = zeros(wlen + ceil(length(in_signal)*stretch_factor), 1); grain = zeros(wlen, 1); ll = WLen/2; omega = 2*pi*n1*[0:ll-1]'/WLen; phi0 = zeros(ll, 1); r0 = zeros(ll, 1); psi = zeros(ll, 1); res = zeros(n2, 1); pin = 0; pout = 0; p = length(in_signal)-wlen; %iterate through the audio file while pin<p %multiply audio segment with window function grain = in_signal(pin+1:pin+wlen).*w1; %take the fft fc = fft(fftshift(grain)); %get the magnitude and phase f = fc(1:ll); r = abs(f); phi = angle(f); %phase unwrap delta_phi = omega + princarg(phi - phi0-omega); delta_r = (r-r0)/n2; delta_psi = delta_phi/n1; %reconstruct the audio signal from interpolated phase and mag. for k = 1:n2 r0 = r0 + delta_r; psi = psi + delta_psi; res(k) = r0'*cos(psi); phi0 = phi; r0 = r; psi = princarg(psi); out_signal(pout+1:pout + n2) = res; pin = pin + n1; pout = pout + n2; soundsc(out_signal, FS); out_signal = out_signal./max(out_signal); wavwrite(out_signal, FS, 'time_stretch.wav');

11 b. Pitch Shift Similar to time stretch, pitch shift was performed in the frequency spectrum manipulation of the phase vocoder. The FFT magnitude and phase are first taken for each window segment. The phase is computed from each FFT bin and is then multiplied by a pitch shift ratio to obtain a pitch effect. Based on the modified phase of each FFT bin, the audio signal is re-constructed. The final result is a pitch effect on the input audio signal based on the pitch shift ratio. The following matlab code is an implementation of time stretch using a phase vocoder. Refer to pitch_shift.wav for results. function [ output_args ] = pitch_shift( input_args ) %PITCH_SHIFT Summary of this function goes here % Detailed explanation goes herefunction [ output_args ] = time_stretch( input_args ) %TIME_STRETCH Summary of this function goes here % Detailed explanation goes here n1 = 256; %pitch shift ratio pit_ratio = 1.4; WLen = 2048; w1 = hanning(wlen); w2 = w1; [in_signal, FS] = wavread('redwheel.wav'); soundsc(in_signal, FS); L = length(in_signal); in_signal = [zeros(wlen, 1); in_signal; zeros(wlen-mod(l, n1),1)] / max(abs(in_signal)); out_signal = zeros(length(in_signal), 1); grain = zeros(wlen, 1); ll = WLen/2; omega = 2*pi*n1*[0:ll-1]'/WLen; phi0 = zeros(ll, 1); r0 = zeros(ll, 1); psi = zeros(ll, 1); res = zeros(n1, 1); pin = 0; pout = 0; p = length(in_signal)-wlen; while pin<p %multiply audio segment with window function grain = in_signal(pin+1:pin+wlen).*w1; %compute magnitude and phase of FFT fc = fft(fftshift(grain)); f = fc(1:ll); r = abs(f); phi = angle(f); %unwrap phase to get phase increment delta_phi = omega + princarg(phi - phi0-omega); delta_r = (r-r0)/n1; %multiply the phase with the pitch ratio factor delta_psi = pit_ratio*delta_phi/n1; %reconstruct the audio signal for k = 1:n1 r0 = r0 + delta_r; psi = psi + delta_psi; res(k) = r0'*cos(psi); phi0 = phi; r0 = r; psi = princarg(psi);

12 out_signal(pout+1:pout+n1) = out_signal(pout+1:pout+n1)+res; pin = pin + n1; pout = pout + n1; %Normalize output signal %out_signal = out_signal(wlen/2 + n1 + 1:length(out_signal))/max(abs(out_signal)); soundsc(out_signal, FS); out_signal = out_signal./max(out_signal); wavwrite(out_signal, FS, 'pitch_shift.wav');

13 c. Robotize In order to create a robotize audio effect, the phase of all the FFT bins taken in the window grain are simply set to zero. The IFFT is then performed using the absolute value of the original FFT while setting the phase for all FFT bins to zero. Overlap add is then performed on all the window segments to re-construct the audio signal. The window length must be well defined such that the window only segments the audio pitch frequency. The following matlab code is an implementation of robotize effect using a phase vocoder. Refer to robotize.wav for results. function [ output_args ] = robotize( input_args ) %PHASE VOCODER Summary of this function goes here % Detailed explanation goes here clear all; close all; % Input % [A fs] = wavread('redwheel.wav'); windowsize = 2048; A=A'; % Fixed window size = 2048 windowsize = 256; halfsignal =1:windowSize; %define window functino Y2 =.5*(1-cos(2*pi*halfSignal*1/(2048))); %initialization output2 = A(1:windowSize).*Y2; hopsize = windowsize/2; out=zeros(1,length(a)); for d=1 : length(a)/hopsize-1 %In time domain wa = A((d-1)*hopSize+1: (d-1)*hopsize+windowsize); wx = Y2.*wA; %wx = wa; specsegment = wx; %In frequency domain Wx=fft(wX); %take ifft of absolute value of FFT only YY = ifft(abs(wx)); %overlap add to reconstruct the audio signal out((d-1)*hopsize+1: (d-1)*hopsize+windowsize)=yy+out((d-1)*hopsize+1: (d-1)*hopsize+windowsize); soundsc(out, 44100); %normalize out = out./ max(out); wavwrite(out, 44100, 'robotize.wav');

14 d. Whisperization Similarly to robotize effect, to create a whisperization effect, the phase of each FFT bin is set to a random number in the range from 0 to 2pi for each window grain. The IFFT is then performed for each window grain and overlap add is performed to re-construct the whisperized audio signal. The following matlab code is an implementation of whisperization effect using a phase vocoder. Refer to whisperize.wav for results. function [ output_args ] = phase_vocoder( input_args ) %PHASE VOCODER Summary of this function goes here % Detailed explanation goes here clear all; close all; % Input % [A fs] = wavread('redwheel.wav'); A=A'; % Fixed window size windowsize = 128; halfsignal =1:windowSize; Y2 =.5*(1-cos(2*pi*halfSignal*1/(windowSize))); output2 = A(1:windowSize).*Y2; hopsize = windowsize/2; out=zeros(1,length(a)); for d=1 : length(a)/hopsize-1 %In time domain wa = A((d-1)*hopSize+1: (d-1)*hopsize+windowsize); wx = Y2.*wA; %In frequency domain Wx=fft(wX); r = abs(wx); phi = 2*pi*rand(1,length(Wx)); Wx = r.*exp(i*phi); YY = real(ifft(wx)); fft_x = ifft(wx); out((d-1)*hopsize+1: (d-1)*hopsize+windowsize)=yy+out((d-1)*hopsize+1: (d-1)*hopsize+windowsize); soundsc(out, fs); %Normalizing out = out./ max(out); wavwrite(out, fs, 'whisperize.wav');

15 e. Stable and unstable transients The stable and unstable transients of a signal can be extracted by comparing the phase difference between successive FFT bins. For stable transients, only the phase differences between successive FFT bins are kept. The opposite case applies for unstable transients. Any FFT bins that violate this condition are set to 0. The signal is then re-constructed back using the modified FFT. The following matlab code is an implementation. Refer to stable.wav and unstable.wav for results. %=====NEEEEEEED TO WORK ON! %===== this program extracts the stable components of a signal %===== w1 and w2: windows (analysis and synthesis) %===== WLen: is the length of the windows %===== n1 and n2: steps (in samples) for the analysis and synthesis %=====NEEEEEEED TO WORK ON! close all; clear all; % INPUT [INPUT,fs] = wavread('gavot.wav'); % INPUT test = 1; % 0.5 % 1 n1 = 200; %256 n2 = n1; windowlength = 2048; halfsignal = 1:windowLength; w1 =.5*(1 - cos(2*pi*(halfsignal)'/(windowlength))); w2 = w1; inputlength = length(input); INPUT = [zeros(windowlength, 1); INPUT; zeros(windowlength-mod(inputlength,n1),1)] / max(abs(input)); %----- initializations ratio = n2/n1 OUTPUT = zeros(windowlength+ceil(length(input)*ratio),1); pin = 0; pout = 0; p = length(input)-windowlength; count = 0; %----- initializations devcent = 2*pi*n1/windowLength; vtest = test*devcent DAFx_out = zeros(length(input),1); grain = zeros(windowlength,1); theta1 = zeros(windowlength,1); theta2 = zeros(windowlength,1); while pin < p newpin = pin+windowlength; %segment mupltiplied by window segment = INPUT(pin+1:newPin).* w1; % circular shifting by fftshift f = fft(fftshift(segment)); r = abs(f); theta = angle(f); dev = princarg(theta-2*theta1+theta2); ft= f.*(abs(dev)<vtest) %%%%%%???? grain=fftshift(real(ifft(ft))).*w2; theta2 = theta1; theta1 = theta;

16 % circular shifting by fftshift and back in time domain segment = fftshift(real(ifft(r))).*w2; newpout=pout+windowlength; OUTPUT(pout+1:newPout)=OUTPUT(pout+1:newPout) + segment; pin = pin + n1; pout = pout + n2; specsegment = r; count = count + 1; smallsegment= segment; fftsmall = fft(smallsegment); realfftsmall = abs(fftsmall); smallmag(1:windowlength, count)=20*log10(realfftsmall); % OutputPLOT % % %OUTPUT PLOT % X = 1:count; % Y = 1:max(n2,n1); % Z = smallmag(y,x); % surf(x,y,z); % shading interp; % % %INPUT PLOT % figure(2); % [S,F,T,P] = spectrogram(input,2048); % surfc(t,f,20*log10(p)); % shading interp % Output % OUTPUT = OUTPUT(windowLength+1:length(OUTPUT))/max(abs(OUTPUT)); soundsc(output, fs); wavwrite(output, fs, 'stable.wav');

17 f. De-noising De-noising an audio signal emphasizes or maintains specific areas of a frequency spectrum and lowers the noise within the sound. This can be accomplished by performing non-linear spectral subtraction. In practical terms, we can de-noise a signal by keeping the phase of the FFT and manipulating the magnitude to maintain the higher levels and attenuating the lower levels of the audio signal. The following non-linear function is applied for the implementation of the de-noise algorithm: ( ) = or ( ) = The constant: c can be used to adjust the sharpness of the attenuation curve. The smaller the value, the sharper the attenuation curve will be. The following graph is the non-linear function that will be used to attenuate any signal below a given threshold with c = The following graph illustrates the attenuation effect of the audio signal in both signal and gain and in db:

18 The following is the matlab code for implementing the de-noise algorithm. function [ output_args ] = denoise( input_args ) %DE-NOISE Summary of this function goes here % Detailed explanation goes here n1 = 512; n2 = n1; WLen = 2048; w1 = hanning(wlen); w2 = w1; [in_signal, FS] = wavread('denoise_input.wav'); in_signal = in_signal(1:length(in_signal), 1) L = length(in_signal); in_signal = [zeros(wlen, 1); in_signal; zeros(wlen-mod(l, n1),1)] / max(abs(in_signal)); WLen2 = WLen/2; coef = 0.01; freq = (0:1:299)/WLen*FS; out_signal = zeros(length(in_signal), 1); pin = 0; pout = 0; p = length(in_signal)-wlen; while pin<p grain = in_signal(pin+1:pin+wlen).*w1; f = fft(grain); r = abs(f); ft = f.*r.^2./(r+coef); grain = real(ifft(ft)).*w2; out_signal(pout+1:pout + WLen) = out_signal(pout+1:pout + WLen) + grain; pin = pin + n1; pout = pout + n2; %Normalize output signal %out_signal = out_signal(wlen/2 + n1 + 1:length(out_signal))/max(abs(out_signal)); soundsc(out_signal, FS); out_signal = out_signal./max(out_signal); wavwrite(out_signal, FS, 'denoise.wav');

19 6. Audio Compression a. Frequency Threshold This experiment involves setting all frequency components below a threshold to zero. The higher the threshold, the fewer frequency components will be retained. An instrumental and voice sound clip were used to experiment with setting frequency thresholds. This effect dampens the sound. The higher the frequency threshold, the more damping is applied to the sound. The frequency threshold is particularly more sensitive in frequencies close to the window length. The following is the matlab code for implanting audio compression: WLen = 2048; w1 = hanning(wlen); w2 = w1; freq_threshold = 1090; [in_signal, FS] = wavread('redwheel.wav'); in_signal = in_signal(1:length(in_signal), 1); L = length(in_signal); max_sample = max(in_signal); in_signal = [zeros(wlen, 1); in_signal; zeros(wlen-mod(l, n1),1)] / max(abs(in_signal)); WLen2 = WLen/2; coef = 0.01; freq = (0:1:299)/WLen*FS; out_signal = zeros(length(in_signal), 1); pin = 0; pout = 0; p = length(in_signal)-wlen; max_mag = max(abs(fft(in_signal))); while pin<p grain = in_signal(pin+1:pin+wlen).*w1; f = fft(grain); r = abs(f); for i = 1 : freq_threshold f(i) = 0; grain = real(ifft(f)).*w2; out_signal(pout+1:pout + WLen) = out_signal(pout+1:pout + WLen) + grain; pin = pin + n1; pout = pout + n2; %Normalize output signal %out_signal = out_signal(wlen/2 + n1 + 1:length(out_signal))/max(abs(out_signal)); % soundsc(in_signal, FS); soundsc(out_signal, FS); out_signal = out_signal./max(out_signal); wavwrite(out_signal, FS, 'compression.wav'); Refer to the compression.wav sound file for results

20 b. Retaining strongest N Frequencies This audio effect involves choosing the strongest N frequency components, and setting all others to zero. This was accomplished by determining the maximum FFT magnitude of all the window segments. An iteration is then performed to set all frequency components whose magnitude are below a percentage threshold of the maximum FFT magnitude to 0. For example, if the maximum FFT magnitude s 100, we can set all frequency components below 80% of the maximum magnitude to 0. This has close to the same effect as setting a frequency threshold. The sound begins to dampen when the percentage threshold is set to 5%. However, setting all FFT components below 1% of the maximum FFT magnitude results in an audibly identical. Setting the percentage threshold really high results in the FFT containing the strongest frequency sinusoid. As a result, you will only hear a beep, which corresponds to what a sinusoidal signal sounds like. The following matlab code is the implementation of retaining the strongest N frequencies. n1 = 512; n2 = n1; WLen = 2048; w1 = hanning(wlen); w2 = w1; freq_threshold = 1090; %400hz threshold [in_signal, FS] = wavread('redwheel.wav'); in_signal = in_signal(1:length(in_signal), 1); L = length(in_signal); max_sample = max(in_signal); in_signal = [zeros(wlen, 1); in_signal; zeros(wlen-mod(l, n1),1)] / max(abs(in_signal)); WLen2 = WLen/2; coef = 0.01; freq = (0:1:299)/WLen*FS; out_signal = zeros(length(in_signal), 1); pin = 0; pout = 0; p = length(in_signal)-wlen; max_mag = 0; while pin<p grain = in_signal(pin+1:pin+wlen).*w1; f = fft(grain); r = abs(f); %find the maximum FFT magnitude if(max_mag < max(r)) max_mag = max(r); grain = real(ifft(f)).*w2; pin = pin + n1; pout = pout + n2; %now set all FFT components below a threshold to 0 pin = 0; pout = 0; p = length(in_signal)-wlen;

21 while pin<p grain = in_signal(pin+1:pin+wlen).*w1; f = fft(grain); r = abs(f); for i = 1 : WLen if(abs(f(i)) < max_mag*0.01) f(i) = 0; grain = real(ifft(f)).*w2; out_signal(pout+1:pout + WLen) = out_signal(pout+1:pout + WLen) + grain; pin = pin + n1; pout = pout + n2; plot(20*log10(abs(fft(out_signal)))); soundsc(out_signal, FS); out_signal = out_signal./max(out_signal); wavwrite(out_signal, FS, 'compression.wav');

Fourier Series and Gibbs Phenomenon

Fourier Series and Gibbs Phenomenon Fourier Series and Gibbs Phenomenon University Of Washington, Department of Electrical Engineering This work is produced by The Connexions Project and licensed under the Creative Commons Attribution License

More information

Discrete Fourier Transform (DFT)

Discrete Fourier Transform (DFT) Amplitude Amplitude Discrete Fourier Transform (DFT) DFT transforms the time domain signal samples to the frequency domain components. DFT Signal Spectrum Time Frequency DFT is often used to do frequency

More information

Lecture 5: Sinusoidal Modeling

Lecture 5: Sinusoidal Modeling ELEN E4896 MUSIC SIGNAL PROCESSING Lecture 5: Sinusoidal Modeling 1. Sinusoidal Modeling 2. Sinusoidal Analysis 3. Sinusoidal Synthesis & Modification 4. Noise Residual Dan Ellis Dept. Electrical Engineering,

More information

Biomedical Signals. Signals and Images in Medicine Dr Nabeel Anwar

Biomedical Signals. Signals and Images in Medicine Dr Nabeel Anwar Biomedical Signals Signals and Images in Medicine Dr Nabeel Anwar Noise Removal: Time Domain Techniques 1. Synchronized Averaging (covered in lecture 1) 2. Moving Average Filters (today s topic) 3. Derivative

More information

Lab 4 Fourier Series and the Gibbs Phenomenon

Lab 4 Fourier Series and the Gibbs Phenomenon Lab 4 Fourier Series and the Gibbs Phenomenon EE 235: Continuous-Time Linear Systems Department of Electrical Engineering University of Washington This work 1 was written by Amittai Axelrod, Jayson Bowen,

More information

EE 464 Short-Time Fourier Transform Fall and Spectrogram. Many signals of importance have spectral content that

EE 464 Short-Time Fourier Transform Fall and Spectrogram. Many signals of importance have spectral content that EE 464 Short-Time Fourier Transform Fall 2018 Read Text, Chapter 4.9. and Spectrogram Many signals of importance have spectral content that changes with time. Let xx(nn), nn = 0, 1,, NN 1 1 be a discrete-time

More information

SAMPLING THEORY. Representing continuous signals with discrete numbers

SAMPLING THEORY. Representing continuous signals with discrete numbers SAMPLING THEORY Representing continuous signals with discrete numbers Roger B. Dannenberg Professor of Computer Science, Art, and Music Carnegie Mellon University ICM Week 3 Copyright 2002-2013 by Roger

More information

FFT analysis in practice

FFT analysis in practice FFT analysis in practice Perception & Multimedia Computing Lecture 13 Rebecca Fiebrink Lecturer, Department of Computing Goldsmiths, University of London 1 Last Week Review of complex numbers: rectangular

More information

Laboratory Assignment 4. Fourier Sound Synthesis

Laboratory Assignment 4. Fourier Sound Synthesis Laboratory Assignment 4 Fourier Sound Synthesis PURPOSE This lab investigates how to use a computer to evaluate the Fourier series for periodic signals and to synthesize audio signals from Fourier series

More information

Signal segmentation and waveform characterization. Biosignal processing, S Autumn 2012

Signal segmentation and waveform characterization. Biosignal processing, S Autumn 2012 Signal segmentation and waveform characterization Biosignal processing, 5173S Autumn 01 Short-time analysis of signals Signal statistics may vary in time: nonstationary how to compute signal characterizations?

More information

Lab P-4: AM and FM Sinusoidal Signals. We have spent a lot of time learning about the properties of sinusoidal waveforms of the form: ) X

Lab P-4: AM and FM Sinusoidal Signals. We have spent a lot of time learning about the properties of sinusoidal waveforms of the form: ) X DSP First, 2e Signal Processing First Lab P-4: AM and FM Sinusoidal Signals Pre-Lab and Warm-Up: You should read at least the Pre-Lab and Warm-up sections of this lab assignment and go over all exercises

More information

Lab S-8: Spectrograms: Harmonic Lines & Chirp Aliasing

Lab S-8: Spectrograms: Harmonic Lines & Chirp Aliasing DSP First, 2e Signal Processing First Lab S-8: Spectrograms: Harmonic Lines & Chirp Aliasing Pre-Lab: Read the Pre-Lab and do all the exercises in the Pre-Lab section prior to attending lab. Verification:

More information

MUS421/EE367B Applications Lecture 9C: Time Scale Modification (TSM) and Frequency Scaling/Shifting

MUS421/EE367B Applications Lecture 9C: Time Scale Modification (TSM) and Frequency Scaling/Shifting MUS421/EE367B Applications Lecture 9C: Time Scale Modification (TSM) and Frequency Scaling/Shifting Julius O. Smith III (jos@ccrma.stanford.edu) Center for Computer Research in Music and Acoustics (CCRMA)

More information

Experiment 1 Introduction to MATLAB and Simulink

Experiment 1 Introduction to MATLAB and Simulink Experiment 1 Introduction to MATLAB and Simulink INTRODUCTION MATLAB s Simulink is a powerful modeling tool capable of simulating complex digital communications systems under realistic conditions. It includes

More information

Sound Synthesis Methods

Sound Synthesis Methods Sound Synthesis Methods Matti Vihola, mvihola@cs.tut.fi 23rd August 2001 1 Objectives The objective of sound synthesis is to create sounds that are Musically interesting Preferably realistic (sounds like

More information

DSP First Lab 03: AM and FM Sinusoidal Signals. We have spent a lot of time learning about the properties of sinusoidal waveforms of the form: k=1

DSP First Lab 03: AM and FM Sinusoidal Signals. We have spent a lot of time learning about the properties of sinusoidal waveforms of the form: k=1 DSP First Lab 03: AM and FM Sinusoidal Signals Pre-Lab and Warm-Up: You should read at least the Pre-Lab and Warm-up sections of this lab assignment and go over all exercises in the Pre-Lab section before

More information

Topic 2. Signal Processing Review. (Some slides are adapted from Bryan Pardo s course slides on Machine Perception of Music)

Topic 2. Signal Processing Review. (Some slides are adapted from Bryan Pardo s course slides on Machine Perception of Music) Topic 2 Signal Processing Review (Some slides are adapted from Bryan Pardo s course slides on Machine Perception of Music) Recording Sound Mechanical Vibration Pressure Waves Motion->Voltage Transducer

More information

Signal Processing First Lab 20: Extracting Frequencies of Musical Tones

Signal Processing First Lab 20: Extracting Frequencies of Musical Tones Signal Processing First Lab 20: Extracting Frequencies of Musical Tones Pre-Lab and Warm-Up: You should read at least the Pre-Lab and Warm-up sections of this lab assignment and go over all exercises in

More information

Princeton ELE 201, Spring 2014 Laboratory No. 2 Shazam

Princeton ELE 201, Spring 2014 Laboratory No. 2 Shazam Princeton ELE 201, Spring 2014 Laboratory No. 2 Shazam 1 Background In this lab we will begin to code a Shazam-like program to identify a short clip of music using a database of songs. The basic procedure

More information

Multirate Signal Processing Lecture 7, Sampling Gerald Schuller, TU Ilmenau

Multirate Signal Processing Lecture 7, Sampling Gerald Schuller, TU Ilmenau Multirate Signal Processing Lecture 7, Sampling Gerald Schuller, TU Ilmenau (Also see: Lecture ADSP, Slides 06) In discrete, digital signal we use the normalized frequency, T = / f s =: it is without a

More information

EEO 401 Digital Signal Processing Prof. Mark Fowler

EEO 401 Digital Signal Processing Prof. Mark Fowler EEO 41 Digital Signal Processing Prof. Mark Fowler Note Set #17.5 MATLAB Examples Reading Assignment: MATLAB Tutorial on Course Webpage 1/24 Folder Navigation Current folder name here Type commands here

More information

Objectives. Abstract. This PRO Lesson will examine the Fast Fourier Transformation (FFT) as follows:

Objectives. Abstract. This PRO Lesson will examine the Fast Fourier Transformation (FFT) as follows: : FFT Fast Fourier Transform This PRO Lesson details hardware and software setup of the BSL PRO software to examine the Fast Fourier Transform. All data collection and analysis is done via the BIOPAC MP35

More information

EE482: Digital Signal Processing Applications

EE482: Digital Signal Processing Applications Professor Brendan Morris, SEB 3216, brendan.morris@unlv.edu EE482: Digital Signal Processing Applications Spring 2014 TTh 14:30-15:45 CBC C222 Lecture 12 Speech Signal Processing 14/03/25 http://www.ee.unlv.edu/~b1morris/ee482/

More information

ADSP ADSP ADSP ADSP. Advanced Digital Signal Processing (18-792) Spring Fall Semester, Department of Electrical and Computer Engineering

ADSP ADSP ADSP ADSP. Advanced Digital Signal Processing (18-792) Spring Fall Semester, Department of Electrical and Computer Engineering ADSP ADSP ADSP ADSP Advanced Digital Signal Processing (18-792) Spring Fall Semester, 201 2012 Department of Electrical and Computer Engineering PROBLEM SET 5 Issued: 9/27/18 Due: 10/3/18 Reminder: Quiz

More information

THE HONG KONG POLYTECHNIC UNIVERSITY Department of Electronic and Information Engineering. EIE2106 Signal and System Analysis Lab 2 Fourier series

THE HONG KONG POLYTECHNIC UNIVERSITY Department of Electronic and Information Engineering. EIE2106 Signal and System Analysis Lab 2 Fourier series THE HONG KONG POLYTECHNIC UNIVERSITY Department of Electronic and Information Engineering EIE2106 Signal and System Analysis Lab 2 Fourier series 1. Objective The goal of this laboratory exercise is to

More information

LAB 2 Machine Perception of Music Computer Science 395, Winter Quarter 2005

LAB 2 Machine Perception of Music Computer Science 395, Winter Quarter 2005 1.0 Lab overview and objectives This lab will introduce you to displaying and analyzing sounds with spectrograms, with an emphasis on getting a feel for the relationship between harmonicity, pitch, and

More information

Frequency Domain Representation of Signals

Frequency Domain Representation of Signals Frequency Domain Representation of Signals The Discrete Fourier Transform (DFT) of a sampled time domain waveform x n x 0, x 1,..., x 1 is a set of Fourier Coefficients whose samples are 1 n0 X k X0, X

More information

Signal Processing. Introduction

Signal Processing. Introduction Signal Processing 0 Introduction One of the premiere uses of MATLAB is in the analysis of signal processing and control systems. In this chapter we consider signal processing. The final chapter of the

More information

Introduction to Wavelets. For sensor data processing

Introduction to Wavelets. For sensor data processing Introduction to Wavelets For sensor data processing List of topics Why transform? Why wavelets? Wavelets like basis components. Wavelets examples. Fast wavelet transform. Wavelets like filter. Wavelets

More information

Advanced Audiovisual Processing Expected Background

Advanced Audiovisual Processing Expected Background Advanced Audiovisual Processing Expected Background As an advanced module, we will not cover introductory topics in lecture. You are expected to already be proficient with all of the following topics,

More information

EE 215 Semester Project SPECTRAL ANALYSIS USING FOURIER TRANSFORM

EE 215 Semester Project SPECTRAL ANALYSIS USING FOURIER TRANSFORM EE 215 Semester Project SPECTRAL ANALYSIS USING FOURIER TRANSFORM Department of Electrical and Computer Engineering Missouri University of Science and Technology Page 1 Table of Contents Introduction...Page

More information

Encoding a Hidden Digital Signature onto an Audio Signal Using Psychoacoustic Masking

Encoding a Hidden Digital Signature onto an Audio Signal Using Psychoacoustic Masking The 7th International Conference on Signal Processing Applications & Technology, Boston MA, pp. 476-480, 7-10 October 1996. Encoding a Hidden Digital Signature onto an Audio Signal Using Psychoacoustic

More information

Lab S-7: Spectrograms of AM and FM Signals. 2. Study the frequency resolution of the spectrogram for two closely spaced sinusoids.

Lab S-7: Spectrograms of AM and FM Signals. 2. Study the frequency resolution of the spectrogram for two closely spaced sinusoids. DSP First, 2e Signal Processing First Lab S-7: Spectrograms of AM and FM Signals Pre-Lab: Read the Pre-Lab and do all the exercises in the Pre-Lab section prior to attending lab. Verification: The Exercise

More information

Filter Banks I. Prof. Dr. Gerald Schuller. Fraunhofer IDMT & Ilmenau University of Technology Ilmenau, Germany. Fraunhofer IDMT

Filter Banks I. Prof. Dr. Gerald Schuller. Fraunhofer IDMT & Ilmenau University of Technology Ilmenau, Germany. Fraunhofer IDMT Filter Banks I Prof. Dr. Gerald Schuller Fraunhofer IDMT & Ilmenau University of Technology Ilmenau, Germany 1 Structure of perceptual Audio Coders Encoder Decoder 2 Filter Banks essential element of most

More information

ROBUST PITCH TRACKING USING LINEAR REGRESSION OF THE PHASE

ROBUST PITCH TRACKING USING LINEAR REGRESSION OF THE PHASE - @ Ramon E Prieto et al Robust Pitch Tracking ROUST PITCH TRACKIN USIN LINEAR RERESSION OF THE PHASE Ramon E Prieto, Sora Kim 2 Electrical Engineering Department, Stanford University, rprieto@stanfordedu

More information

LABORATORY - FREQUENCY ANALYSIS OF DISCRETE-TIME SIGNALS

LABORATORY - FREQUENCY ANALYSIS OF DISCRETE-TIME SIGNALS LABORATORY - FREQUENCY ANALYSIS OF DISCRETE-TIME SIGNALS INTRODUCTION The objective of this lab is to explore many issues involved in sampling and reconstructing signals, including analysis of the frequency

More information

Laboratory Assignment 5 Amplitude Modulation

Laboratory Assignment 5 Amplitude Modulation Laboratory Assignment 5 Amplitude Modulation PURPOSE In this assignment, you will explore the use of digital computers for the analysis, design, synthesis, and simulation of an amplitude modulation (AM)

More information

Kate Allstadt s final project for ESS522 June 10, The Hilbert transform is the convolution of the function f(t) with the kernel (- πt) - 1.

Kate Allstadt s final project for ESS522 June 10, The Hilbert transform is the convolution of the function f(t) with the kernel (- πt) - 1. Hilbert Transforms Signal envelopes, Instantaneous amplitude and instantaneous frequency! Kate Allstadt s final project for ESS522 June 10, 2010 The Hilbert transform is a useful way of looking at an evenly

More information

Discrete Fourier Transform

Discrete Fourier Transform 6 The Discrete Fourier Transform Lab Objective: The analysis of periodic functions has many applications in pure and applied mathematics, especially in settings dealing with sound waves. The Fourier transform

More information

Converting Speaking Voice into Singing Voice

Converting Speaking Voice into Singing Voice Converting Speaking Voice into Singing Voice 1 st place of the Synthesis of Singing Challenge 2007: Vocal Conversion from Speaking to Singing Voice using STRAIGHT by Takeshi Saitou et al. 1 STRAIGHT Speech

More information

VIBRATO DETECTING ALGORITHM IN REAL TIME. Minhao Zhang, Xinzhao Liu. University of Rochester Department of Electrical and Computer Engineering

VIBRATO DETECTING ALGORITHM IN REAL TIME. Minhao Zhang, Xinzhao Liu. University of Rochester Department of Electrical and Computer Engineering VIBRATO DETECTING ALGORITHM IN REAL TIME Minhao Zhang, Xinzhao Liu University of Rochester Department of Electrical and Computer Engineering ABSTRACT Vibrato is a fundamental expressive attribute in music,

More information

Figure 1: Block diagram of Digital signal processing

Figure 1: Block diagram of Digital signal processing Experiment 3. Digital Process of Continuous Time Signal. Introduction Discrete time signal processing algorithms are being used to process naturally occurring analog signals (like speech, music and images).

More information

Timbral Distortion in Inverse FFT Synthesis

Timbral Distortion in Inverse FFT Synthesis Timbral Distortion in Inverse FFT Synthesis Mark Zadel Introduction Inverse FFT synthesis (FFT ) is a computationally efficient technique for performing additive synthesis []. Instead of summing partials

More information

ECEn 487 Digital Signal Processing Laboratory. Lab 3 FFT-based Spectrum Analyzer

ECEn 487 Digital Signal Processing Laboratory. Lab 3 FFT-based Spectrum Analyzer ECEn 487 Digital Signal Processing Laboratory Lab 3 FFT-based Spectrum Analyzer Due Dates This is a three week lab. All TA check off must be completed by Friday, March 14, at 3 PM or the lab will be marked

More information

Notes on Fourier transforms

Notes on Fourier transforms Fourier Transforms 1 Notes on Fourier transforms The Fourier transform is something we all toss around like we understand it, but it is often discussed in an offhand way that leads to confusion for those

More information

International Journal of Modern Trends in Engineering and Research e-issn No.: , Date: 2-4 July, 2015

International Journal of Modern Trends in Engineering and Research   e-issn No.: , Date: 2-4 July, 2015 International Journal of Modern Trends in Engineering and Research www.ijmter.com e-issn No.:2349-9745, Date: 2-4 July, 2015 Analysis of Speech Signal Using Graphic User Interface Solly Joy 1, Savitha

More information

BIOE 198MI Biomedical Data Analysis. Spring Semester Lab6: Signal processing and filter design

BIOE 198MI Biomedical Data Analysis. Spring Semester Lab6: Signal processing and filter design BIOE 198MI Biomedical Data Analysis. Spring Semester 2018. Lab6: Signal processing and filter design Problem Statement: In this lab, we are considering the problem of designing a window-based digital filter

More information

Problem Set 1 (Solutions are due Mon )

Problem Set 1 (Solutions are due Mon ) ECEN 242 Wireless Electronics for Communication Spring 212 1-23-12 P. Mathys Problem Set 1 (Solutions are due Mon. 1-3-12) 1 Introduction The goals of this problem set are to use Matlab to generate and

More information

Linguistic Phonetics. Spectral Analysis

Linguistic Phonetics. Spectral Analysis 24.963 Linguistic Phonetics Spectral Analysis 4 4 Frequency (Hz) 1 Reading for next week: Liljencrants & Lindblom 1972. Assignment: Lip-rounding assignment, due 1/15. 2 Spectral analysis techniques There

More information

speech signal S(n). This involves a transformation of S(n) into another signal or a set of signals

speech signal S(n). This involves a transformation of S(n) into another signal or a set of signals 16 3. SPEECH ANALYSIS 3.1 INTRODUCTION TO SPEECH ANALYSIS Many speech processing [22] applications exploits speech production and perception to accomplish speech analysis. By speech analysis we extract

More information

Chapter 4. Digital Audio Representation CS 3570

Chapter 4. Digital Audio Representation CS 3570 Chapter 4. Digital Audio Representation CS 3570 1 Objectives Be able to apply the Nyquist theorem to understand digital audio aliasing. Understand how dithering and noise shaping are done. Understand the

More information

6.02 Practice Problems: Modulation & Demodulation

6.02 Practice Problems: Modulation & Demodulation 1 of 12 6.02 Practice Problems: Modulation & Demodulation Problem 1. Here's our "standard" modulation-demodulation system diagram: at the transmitter, signal x[n] is modulated by signal mod[n] and the

More information

Fourier transforms, SIM

Fourier transforms, SIM Fourier transforms, SIM Last class More STED Minflux Fourier transforms This class More FTs 2D FTs SIM 1 Intensity.5 -.5 FT -1.5 1 1.5 2 2.5 3 3.5 4 4.5 5 6 Time (s) IFT 4 2 5 1 15 Frequency (Hz) ff tt

More information

G(f ) = g(t) dt. e i2πft. = cos(2πf t) + i sin(2πf t)

G(f ) = g(t) dt. e i2πft. = cos(2πf t) + i sin(2πf t) Fourier Transforms Fourier s idea that periodic functions can be represented by an infinite series of sines and cosines with discrete frequencies which are integer multiples of a fundamental frequency

More information

Lab 3 FFT based Spectrum Analyzer

Lab 3 FFT based Spectrum Analyzer ECEn 487 Digital Signal Processing Laboratory Lab 3 FFT based Spectrum Analyzer Due Dates This is a three week lab. All TA check off must be completed prior to the beginning of class on the lab book submission

More information

Signal Analysis. Young Won Lim 2/9/18

Signal Analysis. Young Won Lim 2/9/18 Signal Analysis Copyright (c) 2016 2018 Young W. Lim. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later

More information

Introduction to Wavelet Transform. Chapter 7 Instructor: Hossein Pourghassem

Introduction to Wavelet Transform. Chapter 7 Instructor: Hossein Pourghassem Introduction to Wavelet Transform Chapter 7 Instructor: Hossein Pourghassem Introduction Most of the signals in practice, are TIME-DOMAIN signals in their raw format. It means that measured signal is a

More information

The Discrete Fourier Transform. Claudia Feregrino-Uribe, Alicia Morales-Reyes Original material: Dr. René Cumplido

The Discrete Fourier Transform. Claudia Feregrino-Uribe, Alicia Morales-Reyes Original material: Dr. René Cumplido The Discrete Fourier Transform Claudia Feregrino-Uribe, Alicia Morales-Reyes Original material: Dr. René Cumplido CCC-INAOE Autumn 2015 The Discrete Fourier Transform Fourier analysis is a family of mathematical

More information

Quantification of glottal and voiced speech harmonicsto-noise ratios using cepstral-based estimation

Quantification of glottal and voiced speech harmonicsto-noise ratios using cepstral-based estimation Quantification of glottal and voiced speech harmonicsto-noise ratios using cepstral-based estimation Peter J. Murphy and Olatunji O. Akande, Department of Electronic and Computer Engineering University

More information

SPEECH TO SINGING SYNTHESIS SYSTEM. Mingqing Yun, Yoon mo Yang, Yufei Zhang. Department of Electrical and Computer Engineering University of Rochester

SPEECH TO SINGING SYNTHESIS SYSTEM. Mingqing Yun, Yoon mo Yang, Yufei Zhang. Department of Electrical and Computer Engineering University of Rochester SPEECH TO SINGING SYNTHESIS SYSTEM Mingqing Yun, Yoon mo Yang, Yufei Zhang Department of Electrical and Computer Engineering University of Rochester ABSTRACT This paper describes a speech-to-singing synthesis

More information

ADDITIVE SYNTHESIS BASED ON THE CONTINUOUS WAVELET TRANSFORM: A SINUSOIDAL PLUS TRANSIENT MODEL

ADDITIVE SYNTHESIS BASED ON THE CONTINUOUS WAVELET TRANSFORM: A SINUSOIDAL PLUS TRANSIENT MODEL ADDITIVE SYNTHESIS BASED ON THE CONTINUOUS WAVELET TRANSFORM: A SINUSOIDAL PLUS TRANSIENT MODEL José R. Beltrán and Fernando Beltrán Department of Electronic Engineering and Communications University of

More information

Sound is the human ear s perceived effect of pressure changes in the ambient air. Sound can be modeled as a function of time.

Sound is the human ear s perceived effect of pressure changes in the ambient air. Sound can be modeled as a function of time. 2. Physical sound 2.1 What is sound? Sound is the human ear s perceived effect of pressure changes in the ambient air. Sound can be modeled as a function of time. Figure 2.1: A 0.56-second audio clip of

More information

Identification of Nonstationary Audio Signals Using the FFT, with Application to Analysis-based Synthesis of Sound

Identification of Nonstationary Audio Signals Using the FFT, with Application to Analysis-based Synthesis of Sound Identification of Nonstationary Audio Signals Using the FFT, with Application to Analysis-based Synthesis of Sound Paul Masri, Prof. Andrew Bateman Digital Music Research Group, University of Bristol 1.4

More information

SINUSOIDAL MODELING. EE6641 Analysis and Synthesis of Audio Signals. Yi-Wen Liu Nov 3, 2015

SINUSOIDAL MODELING. EE6641 Analysis and Synthesis of Audio Signals. Yi-Wen Liu Nov 3, 2015 1 SINUSOIDAL MODELING EE6641 Analysis and Synthesis of Audio Signals Yi-Wen Liu Nov 3, 2015 2 Last time: Spectral Estimation Resolution Scenario: multiple peaks in the spectrum Choice of window type and

More information

Lecture 3, Multirate Signal Processing

Lecture 3, Multirate Signal Processing Lecture 3, Multirate Signal Processing Frequency Response If we have coefficients of an Finite Impulse Response (FIR) filter h, or in general the impulse response, its frequency response becomes (using

More information

ECE 201: Introduction to Signal Analysis

ECE 201: Introduction to Signal Analysis ECE 201: Introduction to Signal Analysis Prof. Paris Last updated: October 9, 2007 Part I Spectrum Representation of Signals Lecture: Sums of Sinusoids (of different frequency) Introduction Sum of Sinusoidal

More information

Lecture 7 Frequency Modulation

Lecture 7 Frequency Modulation Lecture 7 Frequency Modulation Fundamentals of Digital Signal Processing Spring, 2012 Wei-Ta Chu 2012/3/15 1 Time-Frequency Spectrum We have seen that a wide range of interesting waveforms can be synthesized

More information

Audio Signal Compression using DCT and LPC Techniques

Audio Signal Compression using DCT and LPC Techniques Audio Signal Compression using DCT and LPC Techniques P. Sandhya Rani#1, D.Nanaji#2, V.Ramesh#3,K.V.S. Kiran#4 #Student, Department of ECE, Lendi Institute Of Engineering And Technology, Vizianagaram,

More information

Signal Analysis. Young Won Lim 2/10/18

Signal Analysis. Young Won Lim 2/10/18 Signal Analysis Copyright (c) 2016 2018 Young W. Lim. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later

More information

DSP First. Laboratory Exercise #11. Extracting Frequencies of Musical Tones

DSP First. Laboratory Exercise #11. Extracting Frequencies of Musical Tones DSP First Laboratory Exercise #11 Extracting Frequencies of Musical Tones This lab is built around a single project that involves the implementation of a system for automatically writing a musical score

More information

DFT: Discrete Fourier Transform & Linear Signal Processing

DFT: Discrete Fourier Transform & Linear Signal Processing DFT: Discrete Fourier Transform & Linear Signal Processing 2 nd Year Electronics Lab IMPERIAL COLLEGE LONDON Table of Contents Equipment... 2 Aims... 2 Objectives... 2 Recommended Textbooks... 3 Recommended

More information

COMPUTATIONAL RHYTHM AND BEAT ANALYSIS Nicholas Berkner. University of Rochester

COMPUTATIONAL RHYTHM AND BEAT ANALYSIS Nicholas Berkner. University of Rochester COMPUTATIONAL RHYTHM AND BEAT ANALYSIS Nicholas Berkner University of Rochester ABSTRACT One of the most important applications in the field of music information processing is beat finding. Humans have

More information

University of Southern Queensland Faculty of Health, Engineering & Sciences. Investigation of Digital Audio Manipulation Methods

University of Southern Queensland Faculty of Health, Engineering & Sciences. Investigation of Digital Audio Manipulation Methods University of Southern Queensland Faculty of Health, Engineering & Sciences Investigation of Digital Audio Manipulation Methods A dissertation submitted by B. Trevorrow in fulfilment of the requirements

More information

ESE 150 Lab 04: The Discrete Fourier Transform (DFT)

ESE 150 Lab 04: The Discrete Fourier Transform (DFT) LAB 04 In this lab we will do the following: 1. Use Matlab to perform the Fourier Transform on sampled data in the time domain, converting it to the frequency domain 2. Add two sinewaves together of differing

More information

Sampling and Reconstruction

Sampling and Reconstruction Experiment 10 Sampling and Reconstruction In this experiment we shall learn how an analog signal can be sampled in the time domain and then how the same samples can be used to reconstruct the original

More information

When and How to Use FFT

When and How to Use FFT B Appendix B: FFT When and How to Use FFT The DDA s Spectral Analysis capability with FFT (Fast Fourier Transform) reveals signal characteristics not visible in the time domain. FFT converts a time domain

More information

Armstrong Atlantic State University Engineering Studies MATLAB Marina Sound Processing Primer

Armstrong Atlantic State University Engineering Studies MATLAB Marina Sound Processing Primer Armstrong Atlantic State University Engineering Studies MATLAB Marina Sound Processing Primer Prerequisites The Sound Processing Primer assumes knowledge of the MATLAB IDE, MATLAB help, arithmetic operations,

More information

ESE 150 Lab 04: The Discrete Fourier Transform (DFT)

ESE 150 Lab 04: The Discrete Fourier Transform (DFT) LAB 04 In this lab we will do the following: 1. Use Matlab to perform the Fourier Transform on sampled data in the time domain, converting it to the frequency domain 2. Add two sinewaves together of differing

More information

Signal Processing for Digitizers

Signal Processing for Digitizers Signal Processing for Digitizers Modular digitizers allow accurate, high resolution data acquisition that can be quickly transferred to a host computer. Signal processing functions, applied in the digitizer

More information

Department of Electronic Engineering NED University of Engineering & Technology. LABORATORY WORKBOOK For the Course SIGNALS & SYSTEMS (TC-202)

Department of Electronic Engineering NED University of Engineering & Technology. LABORATORY WORKBOOK For the Course SIGNALS & SYSTEMS (TC-202) Department of Electronic Engineering NED University of Engineering & Technology LABORATORY WORKBOOK For the Course SIGNALS & SYSTEMS (TC-202) Instructor Name: Student Name: Roll Number: Semester: Batch:

More information

Fourier Transform. Any signal can be expressed as a linear combination of a bunch of sine gratings of different frequency Amplitude Phase

Fourier Transform. Any signal can be expressed as a linear combination of a bunch of sine gratings of different frequency Amplitude Phase Fourier Transform Fourier Transform Any signal can be expressed as a linear combination of a bunch of sine gratings of different frequency Amplitude Phase 2 1 3 3 3 1 sin 3 3 1 3 sin 3 1 sin 5 5 1 3 sin

More information

Applications of Linear Algebra in Signal Sampling and Modeling

Applications of Linear Algebra in Signal Sampling and Modeling Applications of Linear Algebra in Signal Sampling and Modeling by Corey Brown Joshua Crawford Brett Rustemeyer and Kenny Stieferman Abstract: Many situations encountered in engineering require sampling

More information

Lecture 9: Time & Pitch Scaling

Lecture 9: Time & Pitch Scaling ELEN E4896 MUSIC SIGNAL PROCESSING Lecture 9: Time & Pitch Scaling 1. Time Scale Modification (TSM) 2. Time-Domain Approaches 3. The Phase Vocoder 4. Sinusoidal Approach Dan Ellis Dept. Electrical Engineering,

More information

Sampling and Reconstruction of Analog Signals

Sampling and Reconstruction of Analog Signals Sampling and Reconstruction of Analog Signals Chapter Intended Learning Outcomes: (i) Ability to convert an analog signal to a discrete-time sequence via sampling (ii) Ability to construct an analog signal

More information

Digital Signal Processing. VO Embedded Systems Engineering Armin Wasicek WS 2009/10

Digital Signal Processing. VO Embedded Systems Engineering Armin Wasicek WS 2009/10 Digital Signal Processing VO Embedded Systems Engineering Armin Wasicek WS 2009/10 Overview Signals and Systems Processing of Signals Display of Signals Digital Signal Processors Common Signal Processing

More information

THE CITADEL THE MILITARY COLLEGE OF SOUTH CAROLINA. Department of Electrical and Computer Engineering. ELEC 423 Digital Signal Processing

THE CITADEL THE MILITARY COLLEGE OF SOUTH CAROLINA. Department of Electrical and Computer Engineering. ELEC 423 Digital Signal Processing THE CITADEL THE MILITARY COLLEGE OF SOUTH CAROLINA Department of Electrical and Computer Engineering ELEC 423 Digital Signal Processing Project 2 Due date: November 12 th, 2013 I) Introduction In ELEC

More information

CHAPTER 4 IMPLEMENTATION OF ADALINE IN MATLAB

CHAPTER 4 IMPLEMENTATION OF ADALINE IN MATLAB 52 CHAPTER 4 IMPLEMENTATION OF ADALINE IN MATLAB 4.1 INTRODUCTION The ADALINE is implemented in MATLAB environment running on a PC. One hundred data samples are acquired from a single cycle of load current

More information

Pitch Shifting Using the Fourier Transform

Pitch Shifting Using the Fourier Transform Pitch Shifting Using the Fourier Transform by Stephan M. Bernsee, http://www.dspdimension.com, 1999 all rights reserved * With the increasing speed of todays desktop computer systems, a growing number

More information

Waveshaping Synthesis. Indexing. Waveshaper. CMPT 468: Waveshaping Synthesis

Waveshaping Synthesis. Indexing. Waveshaper. CMPT 468: Waveshaping Synthesis Waveshaping Synthesis CMPT 468: Waveshaping Synthesis Tamara Smyth, tamaras@cs.sfu.ca School of Computing Science, Simon Fraser University October 8, 23 In waveshaping, it is possible to change the spectrum

More information

EE228 Applications of Course Concepts. DePiero

EE228 Applications of Course Concepts. DePiero EE228 Applications of Course Concepts DePiero Purpose Describe applications of concepts in EE228. Applications may help students recall and synthesize concepts. Also discuss: Some advanced concepts Highlight

More information

Electrical & Computer Engineering Technology

Electrical & Computer Engineering Technology Electrical & Computer Engineering Technology EET 419C Digital Signal Processing Laboratory Experiments by Masood Ejaz Experiment # 1 Quantization of Analog Signals and Calculation of Quantized noise Objective:

More information

From Fourier Series to Analysis of Non-stationary Signals - VII

From Fourier Series to Analysis of Non-stationary Signals - VII From Fourier Series to Analysis of Non-stationary Signals - VII prof. Miroslav Vlcek November 23, 2010 Contents Short Time Fourier Transform 1 Short Time Fourier Transform 2 Contents Short Time Fourier

More information

Chapter 1: Introduction to audio signal processing

Chapter 1: Introduction to audio signal processing Chapter 1: Introduction to audio signal processing KH WONG, Rm 907, SHB, CSE Dept. CUHK, Email: khwong@cse.cuhk.edu.hk http://www.cse.cuhk.edu.hk/~khwong/cmsc5707 Audio signal proce ssing Ch1, v.3c 1 Reference

More information

FFT Analyzer. Gianfranco Miele, Ph.D

FFT Analyzer. Gianfranco Miele, Ph.D FFT Analyzer Gianfranco Miele, Ph.D www.eng.docente.unicas.it/gianfranco_miele g.miele@unicas.it Introduction It is a measurement instrument that evaluates the spectrum of a time domain signal applying

More information

Time- frequency Masking

Time- frequency Masking Time- Masking EECS 352: Machine Percep=on of Music & Audio Zafar Rafii, Winter 214 1 STFT The Short- Time Fourier Transform (STFT) is a succession of local Fourier Transforms (FT) Time signal Real spectrogram

More information

Fourier Transform. Prepared by :Eng. Abdo Z Salah

Fourier Transform. Prepared by :Eng. Abdo Z Salah Fourier Transform Prepared by :Eng. Abdo Z Salah What is Fourier analysis?? Fourier Analysis is based on the premise that any arbitrary signal can be constructed using a bunch of sine and cosine waves.

More information

Linear Frequency Modulation (FM) Chirp Signal. Chirp Signal cont. CMPT 468: Lecture 7 Frequency Modulation (FM) Synthesis

Linear Frequency Modulation (FM) Chirp Signal. Chirp Signal cont. CMPT 468: Lecture 7 Frequency Modulation (FM) Synthesis Linear Frequency Modulation (FM) CMPT 468: Lecture 7 Frequency Modulation (FM) Synthesis Tamara Smyth, tamaras@cs.sfu.ca School of Computing Science, Simon Fraser University January 26, 29 Till now we

More information

DCSP-10: DFT and PSD. Jianfeng Feng. Department of Computer Science Warwick Univ., UK

DCSP-10: DFT and PSD. Jianfeng Feng. Department of Computer Science Warwick Univ., UK DCSP-10: DFT and PSD Jianfeng Feng Department of Computer Science Warwick Univ., UK Jianfeng.feng@warwick.ac.uk http://www.dcs.warwick.ac.uk/~feng/dcsp.html DFT Definition: The discrete Fourier transform

More information

ME scope Application Note 01 The FFT, Leakage, and Windowing

ME scope Application Note 01 The FFT, Leakage, and Windowing INTRODUCTION ME scope Application Note 01 The FFT, Leakage, and Windowing NOTE: The steps in this Application Note can be duplicated using any Package that includes the VES-3600 Advanced Signal Processing

More information

Additive Synthesis OBJECTIVES BACKGROUND

Additive Synthesis OBJECTIVES BACKGROUND Additive Synthesis SIGNALS & SYSTEMS IN MUSIC CREATED BY P. MEASE, 2011 OBJECTIVES In this lab, you will construct your very first synthesizer using only pure sinusoids! This will give you firsthand experience

More information