Phase Vocoder w/Transient Handling (Audio Examples and Free Software Download)

I've improved my transient detection algorithm (original version described here) and have now included it in my Phase Vocoder application (original version of my Phase Vocoder described here). I'm pretty happy with the quality. Here's an audio example:


As mentioned in my previous blog po

Date: April 19th, 2017 at 4:42pm
Author: Terence Darwen
Tags: Audio Software, Cross-Platform Development, Phase Vocoder, Transient Detection, Digital Signal Processing, DSP, C++, Sabbatical

Detecting Audio Transients (Example and Free Cross-Platform Software)

Wikipedia defines an audio transient as "a high amplitude, short-duration sound at the beginning of a waveform that occurs in phenomena such as musical sounds, noises or speech". Here's an example that points out the transients in a short snippet of audio:

Waveform with Transients Annotated

So, a transient is just a peak that occur…

Date: March 11th, 2017 at 11:02am
Author: Terence Darwen
Tags: Audio Software, Cross-Platform Development, Transient Detection, Digital Signal Processing, DSP, C++, Sabbatical

My Awesome Phase Vocoder (Audio Examples and Free Software Download)

In the spirit of the blog post I wrote on Alternative Music Production Software a few weeks ago, I've been spending a good amount of time working on a phase vocoder lately. I'm happy to say I have an early working demo version that sounds quite good.

Piano Waveform Stretched and Compressed

The phase vocoder allows for stretching and com…

Date: February 14th, 2017 at 9:42pm
Author: Terence Darwen
Tags: Audio Software, Cross-Platform Development, Phase Vocoder, Digital Signal Processing, DSP, C++, Sabbatical

A Close Look at a Visual Studio 2015 Generated V-Table (C++)

As I mentioned in an earlier blog post on analyzing disassembly, it's sometimes really helpful to know what exactly is happening at the machine level of C++ code I write. This includes knowing how the vtable works.

Here's a really simple class structure for the sake of investigation. We have an in…

Date: January 17th, 2017 at 3:44pm
Author: Terence Darwen
Tags: C++, virtual function table, vtable, Visual Studio 2015, Sabbatical

Rereading Classic C++ Books

Last month I'd been looking for books to help me get better at C++ template metaprogramming. The book "Modern C++ Design" by Andrei Alexandrescu continually came up in searches. I originally passed on it since it was written in 2001.

I was hoping to find a book written post-C++11; a book that inco…

Date: January 8th, 2017 at 9:33pm
Author: Terence Darwen
Tags: Book Review, C++, Reading Material, Sabbatical