Open Multi-State (Audio Engine)

C++. I improved this interactive music class (all in one object) from my previous closed single state engine by using FMOD low level API. Its play state algorithm is an open nested loop system in […]


Playing From Resource (Visual Studio)

C++. If needed to play audio files from resource in Visual Studio (not to directly provide audio files), process would be a little bit different.  When upload files to resource, firstly you create .rc file, […]


Closed Single State (Audio Engine)

C++. I wrote this interactive music class (all in one object) with FMOD low level API. Its play state algorithm is a closed nested loop system. That means you can not command it from outside […]


Play with Crossfade (Audio Engine)

C++. It is a simple audio engine for music loading and playing functions by using FMOD low level API. Under main music channel attached to the master bus, there are two music sub-channels so that […]


Melody Analyser (slow single line)

Matlab. I developed a melody analyser that detects frequencies with their attack time. It only works with slow passages in which the notes are separable from each other. I wrote its algorithms by taking reference […]


Smoothing Power Spectral Density

Matlab. Having influenced by signal smoothing algorithms like moving average algorithm, I experimentally developed a smoothing algorithm for total of power spectral density. My purpose was to smooth delusive sharp variations in the graph so […]


Pitch Detection by Harmonics

Matlab. This is my pitch detection algorithm. It takes mono wav. file as an input, and checks its fundamental and next three harmonics. Firstly, a threshold value is determined after finding the maximum peak by […]


Parabolic Peak Interpolation

Matlab. I applied interpolation technique to the spectral peak based on fundamental frequency after FFT was taken. It is basically to find a better estimation of the peak by using the max spectral bin (of […]


Hamming, Blackman, and Blackman-Harris

Python. This is my implementation for some of windows used in audio applications. I chose Hamming, Blackman, and Blackman-Harris window functions. Instead of using FFT pack, I directly applied DFT since the DFT size is […]


Discrete Fourier Transform

Python. This is my DFT implementation to test a wav file. It only accepts mono wav files with 44100 Hz sample rate. I used 32 floating point (with max 23 mantissa) in the range -1 […]