Skip to content Mastodon

Notes and Tones

A profound identity in signal processing

Arguably one of the most important identities in signal processing is the following theorem.

The identity is known as Moreau's decomposition and instantiates into useful applications for variational analysis, convex optimization and signal processing. This post will explain the symbolic meaning and implication of this theorem for signal processing.

Building standalone model binaries for audio inference

For a recent problem I had to crawl and categorize a large number of audio files from the internet. As the bottleneck was deemed to be downstream link I decided to use a pre-trained event classification model and run inference on the CPU.

Another requirement was that the crawler were running on multiple server and consistent for several weeks. My choice of language for such infrastructure heavy task is Rust and I looked into ways how to deploy an inference model.

It turned out that the process for creating a standalone binary in Rust is pretty simple. Even better, wrapping a model pre-trained on a large event classification dataset is possible. This means that in the end I could just copy the binary to any x86 machines and run them, without the need to setup virtual environments or install any packages.

In this post I will demonstrate how to convert a pre-trained model to ONNX and put it into a binary. Our goal is to create a standalone executable taking samples from stdin and classifying them into 527 known audio classes.

Reading and writing the web with Vim

Two features of the Tridactyl extension makes reading/writing the web much more relaxing for me. The most common element of Vim like extensions is link following with highlighted key-codes. This makes mouse pointing unecessary and reading workflow easier. (also don't forget to use the g<f|F> chain) But I find the visualized style of many websites too distracting and use Vim in those cases to construct an answer or dissect a thread.

Preview unread/total number of emails in i3status

I recently added a small section to my i3status bar with the number of unread emails and total emails. In order to avoid having thunderbird open all the time, I also added a wrapper which puts it into headless mode.

Some of my favorite choreos

Dancing was one of the things that kept me mentally sane in 2020. Because Lindy Hop is not possible at the moment, we shifted to choreographies and friends organized weekly meetings where we could meet online and learn them together.

Reading the vim help files

I thought that I should improve my vim skills this morning and started by reading the vim help pages. I skimmed them in the past a couple of times, but actually learned most of the keys by doing.

Hello World!

This is the first post on a new blog I'm starting. The previous, purely technical, one is moved to a different URL and the focus of this one is on more personal stuff I'm interested in.