Pole-Zero analysis in Python with SciPy
-- Jul 19, 2024

I’m currently working on Introduction to Digital Filters By Julios O. Smit III. There’s some Matlab code for pole-zero analysis and plotting. I don’t think it makes a lot of sense to convert this to Python though, so this is me investigating what is available in SciPy. Continuous-time Linear Systems This part of the scipy.signal module seems to be where the interesting stuff is happening. There is an lti base class which can be instantiated with a different number of arguments:

Simulated Sine-Wave Analysis
-- May 28, 2024

This is based on the scripts from Introduction to Digital Filters.

Let’s figure out the frequency response of the simplest lowpass filter:

$$ y(n) = x(n) + x(n-1),\quad n=1,2,…,N $$

We do this using simulated sine-wave analysis. This approach complements the analytical approach from the book.

"Simplest Lowpass Filter" in Python
-- May 15, 2024

I'm currently working my way through Introduction to Digital Filters with Audio Applications by Julius O. Smith III. The first section deals with what the book calls the simplest lowpass filter. After the initial mathematical introduction (both via tedious trigonometry and a complex approach) there's an actual implementation. The book uses Matlab, but I much prefer Python for this type of job even though I should probably use GNU Octave for this job but I really prefer Python. These are the notes I took when converting that initial script.

FFT in C
-- Mar 31, 2024

I've been on a deep dive into DSP (Digital Signal Processing). Mainly because I want to know how audio effects work. I started with a book about programming VST (Virtual Studio Technology) plugins. Though I quickly found out that the DSP course I took at university was a bit too long ago, so I had to go back to basics.

New Years Resolutions
-- Jan 31, 2024

The new year is already well underway and I've got a couple of things I want to accomplish this year. Usually I just maintain this list in my head, but this year I figured I'd write them down and make the Internet my accountability buddy. Technological projects I've recently had a pretty big change at work, moving into the role of software architect. This means I spend a lot more time in meetings and way less time actually in the driver seat doing some coding.

Compile-time git version info using CMake
-- Apr 6, 2023

I recently found myself wanting to get some insight into what exactly went into a given binary that we deployed on an embedded system. As a first step I wanted to get the commit hash for the HEAD of the branch from which it was built.