Today marks version 3.1 of the audio time-stretching and pitch-shifting library Rubber Band. This release focuses primarily on performance improvements. In version 3.0 we introduced a totally new, higher-quality processing engine, which I'll refer to as the R3 engine. The older one is still included, and I'll call that R2. Although the output of R3… Continue reading Performance improvements in Rubber Band Library
Tag: c++
Repoint: A manager for checkouts of third-party source code dependencies
I've just tagged v1.0 of Repoint, a tool for managing library source code in a development project. Conceptually it sits somewhere between Mercurial/Git submodules and a package manager like npm. It is intended for use with languages or environments that don't have a favoured package manager, or in situations where the dependent libraries themselves aren't… Continue reading Repoint: A manager for checkouts of third-party source code dependencies
What does a convolutional neural net actually do when you run it?
Convolutional neural networks (or convnets or CNNs) are a staple of "deep learning". There are many tutorials available that describe what they do, either mathematically or via quasi-mystical appeals to intuition, and introduce how to train and use them, often with image classification examples. This post has a narrower focus. As a programmer, I am… Continue reading What does a convolutional neural net actually do when you run it?
Notes from the Audio Developer Conference
I've spent the last couple of days at the 2017 Audio Developer Conference organised by ROLI. This is a get-together and technical conference for people who work on audio software and software-driven-hardware, in practice mostly people working on music applications. I don't go to many conferences these days, despite working in academia. I don't co-write… Continue reading Notes from the Audio Developer Conference
C++17 destructuring bind
I know very little about C++17, but I attended a talk about it this morning and the syntax for destructuring bind caught my attention. This is a feature widely supported in other languages, where you assign a complex type to another complex declaration with individual names in it that match the original type, and you… Continue reading C++17 destructuring bind
Undergraduate programming languages
I read two quite different articles about programming in academia today. I don't know Yossi Kreinin, and when his piece Why bad scientific code beats code following "best practices" appeared on the Hacker News front page, I guessed that I probably wouldn't agree with it. I'm a programmer working in academia who has spent some… Continue reading Undergraduate programming languages