jschafer

Joined 1 year ago

Karma
119
Submissions
4
Member since
Dec 23
Running route based rain forecast regenampel.de for german cyclists.
View on Hacker News

Recent submissions

Comment · 1 year ago
Yes exactly, I was really excited when I found out that you do not need a FFT to do speech processing.

If you look at the code of (phone/voice) codecs GSM/Speex/Opus you can see that you can estimate the spectral envelope (or the configuration of a physical tube model for the vocal tract) in time domain with linear prediction coefficients (LPC).

And it is simple, e.g. the often used Levinson-Durbin algorithm is just 22 lines of C code. It is an interesting exercise to build your own vocoder from scratch that fits in a single screen page.

Many of the code snippets I have seen (which likely have already processed your voice) are just translations of the Fortran code of the book "Linear Prediction of Speech" by Markel and Gray (1976).

Comment · 1 year ago
SQLite only knows nested loop joins and the bloom filter can just tell us "no need to do a join, there is definitely no matching entry".

If it has a false positive all the time (the worst case) then the performance is the same as before the bloom filter optimization was implemented (besides the small bloom filter overhead).

As the bloom filter size in SQLite directly depends on the table size I estimated a false positive rate of 63.2% due to this bug, while it could have been just 11.75%.

Comment · 1 year ago
Comment · 1 year ago
Note that the measurements in the paper were made before they fixed a bug where they confused bits and bytes. So SQLite only used 1/8 of the reserved bloom filter space, thus increasing the false positive rate significantly:

https://sqlite.org/src/info/56d9bb7aa63043f5

I found and reported the bug because I wanted to know how the bloom filters work in SQLite for my uni seminar paper. Still wondering if one can find those kind of bugs with test cases.

Live from the official Hacker News API

A modern reader for Hacker News · SvelteKit + Skeleton