Download A Spectrogram in Haskell

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts

Mathematics of radio engineering wikipedia , lookup

Transcript
A Spectrogram in Haskell
Anthony Assi
Chris Egan
Remy Pham
Objective
●
Create a visual representation of a WAV file to be analyzed
○
a spectrogram
What is a spectrogram?
●
a visual representation of a wave form, displaying different values on a graph
○
○
○
●
x axis - time
y axis - frequency
color gradient - intensity
Can be used for many analytical and creative purposes
○
○
distinguishing specific sounds based on sonic properties, such as words or animal calls
assess placement of a waveform in the sonic spectrum (mixing, mastering, etc)
Example Spectrogram
Spectrogram of the human voice
Methodology
●
●
●
Explore Haskell’s mathematical capabilities
Use FFT to decompose audio signal into frequencies with which it is
composed
Potentially use audio-related Haskell libraries
Timeline
Week 5: Research sound libraries for Haskell audio
Week 6: Transform raw WAV audio data into a clean and usable Haskell data
format
Week 7: Research background information and sound libraries for FFT.
Week 8: Apply Fourier Transforms to the imported audio data
Week 9: Export data in a meaningful way, (potentially a list of 3-duples, time
frequency, and intensity)
Week 10: Visualize data with Haskell/another tool/language
Risks
●
●
●
Understanding and implementing Fourier Transforms (FFT)
Building the spectrogram with a Haskell GUI or building it externally
Difficulty with representation of audio data and applying it to the FFT