iki.fi/o

Created by Olli Niemitalo on 2009-08-28, last modified 2015-05-03

Olli's portrait, 2013

2014

My name is Olli Niemitalo. I live in Oulu, Finland.

You can reach me at o@iki.fi.

I write here of technical and creative things that I am doing.


rick

Enumeration of functions

I am interested in an enumeration of functions that starts with simple functions and progresses to more computationally expensive functions. Such an enumeration would enable to systematically try all useful functions for some task. For efficiency, it would be nice if the enumeration did not contain duplicate copies of the ...
Read More
SGI DLS80-1022 Dial box (Photo CC BY-SA 3.0 Tpikonen)

Dial boxes

I obtained a few Silicon Graphics (SGI) dial boxes. They have RS-232 serial port interfaces. I figured out the pinouts based on the circuit boards and plan to use these as controllers for some audio generators. Some of the PCB is blank and could be removed to clear room for buttons ...
Read More
aigo

Aigo GE-5 Driver

I bought an Aigo GE-5 microscope years ago. If someone needs, here is the driver for it. GE5-mikroskooppi.zip Thanks to Pauli for salvaging this from the CD my CD drive could no longer read ...
Read More
Webroot claims my site is infected.

Is this site safe?

As far as I know, yehar.com is safe to visit. But I've had some problems with anti-malware or Internet security companies categorizing yehar.com as malicious. So far these have been false alerts. McAfee Currently I have no problems with McAfee's SiteAdvisor. I recall I had to ask ...
Read More
Action! Just for the sparks.

Microwave oven spot welder

I made a spot welder out of a microwave oven transformer and a starter cable. Those are quite popular actually. They use a solid state relay to switch the transformer on and off. I use a Fotek SSR-40DA DC-controlled 40 A AC-zero-crossing-switching solid state relay. It was only 4 ...
Read More
xxx

Ellipse–circle and ellipse–ellipse collision detection

Closed-form solution To detect ellipse–circle collision (intersection or one being inside another), the point on the ellipse can be found from which a line perpendicular to the ellipse tangent at that point goes through the circle center. The point on the side closer to the circle center should be taken, ...
Read More
dyerslist

On DyersLIST

P.S. DyersLIST no longer exists. DyersLIST is "an internet mailing list intended for the discussion of technical questions, problems and information related to immersion dyeing and to the surface application of synthetic dyes, textile pigments and related chemicals, to fabric and fiber" (list.emich.edu) owned by East Michigan University ...
Read More
IMG_6460_crop_crop

Kantele

These are building instructions for a modern variant of a 5-string kantele, a traditional Finnish folk-musical instrument. Raw sound samples of the instrument (download for higher fidelity): I built a kantele for my Russian friend Dmitry, who during his visit lusted after the rather crude but acceptable-sounding kantele I had ...
Read More
wurst

Bytebeat

Bytebeat is a music synthesis technique that was discovered by Ville-Matias Heikkilä (viznut/pwp). Kragen Javier Sitaker has a good writeup on the subject. The way it works is that you generate a stream ...
Read More
rna

DNA- ja RNA-laskenta

Laskentaa DNA- ja RNA-molekyyleillä (docx, pdf), Olli Niemitalo, 7.12.2011 Deoksiribonukleiinihappo- (DNA) ja ribonukleiinihappomolekyyleille (RNA) on hahmoteltu käyttötapoja laskuvälineinä. Tämän kirjallisuustutkielman tarkoitus on selvittää, miten DNA- ja RNA-laskennan menetelmät toimivat ja mihin niitä voi käyttää. Tutkimusala lähti liikkeelle toivosta siitä, että molekyylien välisiin vuorovaikutuksiin perustuvat tietokoneet voisivat ratkaista suuria ...
Read More
Rotolaserator 2. It's a red laser, not a pink laser, which is an impossibility. My camera thinks it's pink.

Rotolaserator

2011-10-26 I'm going to call this musical instrument (or rather a tone generator) Rotolaserator: Here's how it sounds like, with reverb, gating and echo added: And here it is giving the bassline to music (in the first half there's also the softer bassline from Korg Monotron, look for the "power-line-like" ...
Read More
Power transistors of the inverter replaced with similar compoents from a PC main board

LCD inverter repair

2011-10-25 I found from a dumpster a Hyundai L17T LCD TV, pretty much a monitor with an analog TV tuner. I tried to turn it on, but the power indicator light was simply flickering slowly, indicating a short circuit somewhere. Nothing on the screen. The monitor was trying to power ...
Read More
History of ratings of recent movies to reach top 30 of IMDb top 250. The rating is the weighted rating from IMDb top 250.

About IMDb Top 250

2011-04-07 The Internet Movie Database (IMDb) offers their Top 250 list of movies. The list consists of movies that have been received the highest rating from IMDb users. The ratings by which the list is sorted are weighted by the number of votes in a Bayesian ...
Read More
Black Deck

Black Deck

  Black Deck EP: Tech demo: During the Christmas holidays of 2005, I started to build Black Deck, an opto-electric musical instrument that superficially resembles a record player. The name Black Deck comes from a philosophy of recycling and a Black & Decker name plate I had lying around. I ...
Read More
0neironaut

Oneironaut

I partook in the music project Oneironaut during 2010-2011 (and more rarely in 2012), playing Black Deck and more rarely other instruments, and doing video editing. "Oneironaut mixes various sound sources and effects to create music both for dancing and for private listening.  Oneironaut's music is a ...
Read More
The rack on the wall with some cables hung from it

Cable hanger

This is how one can construct a rather useful cable hanger from some random stuff. The spring is from an old Hewlett-Packard scanner, where its function was to guide and protect cables running inside it. The function of the cotton string is to pull the spring against the moulding, so ...
Read More
xxx

Sound Blaster amplifiers

For a project of mine, I needed a stereo amplifier. I had some old Sound Blaster ISA cards (and later got more, which are also now listed here), with different amplifiers: card name model number year amplifier IC Power output Sound Blaster 16 CT2290 1994 TEA2025B 2 x 2.4 ...
Read More
Square wave approximated by 5 phased caussian components of infinite spatial scale of the magnitude part.

Circularly symmetric convolution and lens blur

This article describes approaches for efficient isotropic two-dimensional convolution with disc-like and arbitrary circularly symmetric convolution kernels, and also discusses lens blur effects. Keywords: depth of field, circle of confusion, bokeh, circular blur, lens blur, hexagonal blur, octagonal blur, real-time, DOF Gaussian function approach The circularly symmetric 2-d Gaussian ...
Read More
Kekkonen with a sinusoidal halftone pattern

Raster!

2010-09-06 I have a problem with the halftone patterns that have recently become fashionable: They are not made correctly. For example, have a look at this detail from an image made using Rasterbator (v1.2 or earlier): Or any of these random examples from various sources: What you see in ...
Read More
A potfull of colorful mushrooms

Natural dyes

Bilberry I have started eperimenting with natural dyes to be used in a CD cover art project. The first one of vegetable dyes is bilberry juice (Vaccinium myrtillus, maybe you know it as mustikka or blueberry). It seems quite versatile! I knew from beforehand that the color of ...
Read More
The Master Control for Wireless Radios Switch

Disabling the ThinkPad X200 master control for wireless radios switch

2010-08-18 I became very annoyed by the reoccurring disturbances to Internet connectivity by the overly sensitive master control for wireless radios switch of my ThinkPad X200 laptop. So I superglued it to ON position. No help. The glitches were still there, shutting down WLAN randomly and whenever I pressed my ...
Read More
sine

Sine wave look-up table generation

2010-03-05 Here is a method for generating a sine look-up table in case you have little (a few kilobytes of) program memory. The idea goes like this: Let's say you have a sine wave lookup table of length 1024 with a 24-bit amplitude range. If you take the difference between ...
Read More
SSL10962

Photos: Kilpisjärvi, 2006

Teksti: Antti Mehtomaa. Muutama kuva on muiden kuin itseni ottama. 1.4.2006 ja kello löi 8 aamulla. Neljä (takaisin) luontoon haluavaa miestä saapui oulun bussiasemalle. Tästä siis lähdettiin ja mukana oli Antti (möylä), Mursu, Aarni (Junnu) ja Olli. Bussi oli ihan täynnä porukkaa ja tavaratilakin oikein odotti meidän rinkkoja ...
Read More
juicemaking

Cider

2009-11-30 After the first snow had fallen, me and my colleague Fumi were given permission to pick the apples of the botanical garden at our university. There were about 30 kg of them. That yielded 14 half a litre bottles of cider (batch 2009/1). I used a centrifuge-type juicer from ...
Read More
dreadtool7

Dreadlock tool

2009/11/23 When I had my dreadlocks made, I had little idea how to take care of them. I tried different things. By now, I have a routine. I wash the dreadlocks with water every morning and after sports. Once a week, I wash them with non-silicone shampoo, twice at a ...
Read More
yö_etu

Misc

Miscellaneous works and designs 2008-08-08 This was sold along with tickets for Histoni's NED parties. The stuff in the tube is a combination of glue and a phosphorescent powder intended for fish lures. 2008-01 For the shirt I used a coat as a model for the pieces. 2007-09-19 2003-12-25 ...
Read More
Interleaving the balanced ternary trits of a pair of integers gives a fractal structure.

Marginal notes

These are miscellaneous notes and recipes. Mapping a pair of integers to an integer 2011-05-26 How to map from a pair of integers to an integer? Negative or positive, independent of the size of the two integers, you can convert them into balanced ternary to get rid of the ...
Read More
Interface_of_FastTracker_2

Older, mostly tracked music

Here is a collection of "early" music by me in mp3, ogg, and tracker formats. Some of my songs have probably got lost forever due to hard disk failures, but most of the nicer ones have continued to live thanks to the safe haven that is the Internet. I made ...
Read More
tuna10

Tuna pie

2009/4/28 This is how to make tuna pie. Heat oven to 225 °C (200 °C is better if you can wait longer). Take a plate. Take a can of tuna. Do not discard the oil! Spread the oily tuna on the plate ...
Read More
A poster for a scientific meeting

Posters

2009/12/05 2009/01/23 2008/09/04 2008/03/13 ...
Read More
pink

Polynomial interpolation

Polynomial Interpolators for High-Quality Resampling of Oversampled Audio Revised version (October 2001): deip.pdf (501 KiB) Abstract: "This paper discusses piece-wise polynomial interpolators used in audio resampling and presents new low-order designs that are optimized for high-quality resampling of oversampled audio. Source code and useful tables for using the interpolators ...
Read More
adjustablestroke

Ideas

Sometimes I get an idea that I think may be worth something, maybe not much, but something. But then I forget it. Better write it down, here. 2013-11-29 Fractal spring reverb  Similar to fractal antennas, springs in a spring reverb could be arranged so that the frequency response is self-similar ...
Read More
Correction of spectral image geometry

Imaging spectrophotometer

2009/07/03 OK, I have an idea: A spectrophotometer that can take 2D-images, like a normal camera, but from each pixel you get a complete visible spectrum instead of just red, green, and blue intensities. Pictured is one possible way to construct an imaging spectrophotometer. An image of a subject is ...
Read More
Mössöä paahtoleivän päällä ja välissä. Vihannekset ois voinu jättää vähän isommiksi kuin kuvassa näkyy.

Savulohimössö

2009/07/14 Tällä ohjeella tulee 1,5 L raikasta savulohi-vihannesmössöä, jota voi laittaa vaikka kolmioleipiin. 1 L maustamatonta jugurttia (tein vähälaktoosisesta UHT-kevytmaidosta, juurena bulgarianjugurtti) 800 g savustettua lohta (3/4 kokonaisesta 2 kg lohesta) 1 kurkku 7 retiisiä 2 punasipulia 1 ruukullinen tuoretta persiljaa 2 rkl viinietikkaa 2 tlk sitruunamehua Valuta jugurtista nestettä ...
Read More
ym3812_id2

Adlib / OPL2 / YM3812

This page is devoted to the classic PC soundcard, Adlib, and compatibles. Reverse-engineering report 2008-04-20 Me and Matthew Gambrell reverse-engineered the YM3812/YMF262 ROM tables. These are the pictures we took: The bits of dirt are ...
Read More
scr1

Screen printing 2

2008/12/01 My second screen printing project. I found some burgundy bedsheets on sale in Anttila, and made a blanket cover from them for my mmmmmm-so-warm camel hair blanket from Lidl. (Thanks to Tiina for helping out with sewing!) I started to think that a subtle silvery plant pattern ...
Read More
kkk1

Screen printing 1

2008/11/21 My first screen printing project, logo patches for our football team shirts. Evolution of the logo: Real silk! ...and photoresist. Exposed by ultraviolet light through two duplicate layers of photocopier transparencies. The frames are hardwood photo frames that were on sale, 2 EUR each. Not perfect registration of the ...
Read More
cheby

One-sided Chebyshev-type inequalities for bounded probability distributions

2007-12-14 Chebyshev's inequality states that, for any probability distribution, at most 1/k^2 of the area of the probability density function lies more than k standard deviations away from the mean. We can do better, if we know that the distribution is bounded and we know the bounds. Let X be ...
Read More
Figure 1. A cheap and lousy balance scale. Yes, I know it looks suspicious :-)

Euro coins as standard weights

What if you suddenly need a scale, accurate to one gram? Here is the solution, in case you live in the euro zone. (Something like this has actually been done before!) The physical mass of each euro coin is actually standardized. So they can be used to measure ...
Read More
screenshot

Dye Mixer v1.1 (java)

2006/08/10 [APPLET HERE] Problems running Java applets? If you have Windows 7, go to Control Panel, search for Java, go to Java Control Panel tab Java, change Java Runtime Environments settings by adding [crayon-5566ab1d4b7c1/] to the runtime parameters. Or try this alternative page of Dye Mixer. Introduction Hello, fellow ...
Read More
neloflat

Impulse response measurements

2006/08/10 To measure the impulse response of a noisy system, you don't want to just send an impulse and see what comes out. Instead, you will play a signal that has succifiently high energy (long instead of loud), record the outcome and deconvolve from it your original signal, giving you ...
Read More
optim

Evolutionary real variable optimization in C++

2006/08/10 If you have a problem where you need to find the optimal values for a set of real variables, try this library written by Magnus Jonsson and me. opti.cpp opti.hpp- Optimization library MersenneTwister.h - Mersenne Twister random number generator required by the library (by Rick ...
Read More
15

DIY Canon EOS 300D AC adapter

2005-08-26 Doing the following will void the warranty of your camera and also might destroy your camera, although I don't think that should happen. If this is OK with you, please read on! Introduction A network adapter will be handy for a camera if you intend to take ...
Read More
hilbert7

Hilbert transform

This is probably the most efficient structure for implementing a Hilbert transform. Actually, it's not a Hilbert transform, but two all-pass IIR filters whose phase difference is approximately 90 degrees over a range of frequencies symmetric around Nyquist/2. Laurent de Soras uses these kind of filters in his HIIR ...
Read More
dsp

Digital sound processing tutorial for the braindead!

In 1998, I had some extra time while others were reading for final exams of the senior high school, and got into digital signal processing. I wrote as I learned, and here is the result. It is not entirely accurate in places but may serve as a nice tutorial into ...
Read More
crap

The #musicdsp adventures

2001/10/27 I have occasionally been a regular on the EFNet #musicdsp IRC channel. This ASCII art comic is my perverted view of some of the #musicdsp characters. ___ __ _ _ _ _ __ | | | | _|__|_ |\ /| | | / \ | / ` | \ ...
Read More
testpage

C++ EPS plotting library

2001/08/09 epsplot.zip - simple C++ EPS plotting library With this simple library you can plot Encapsulated PostScript files straight from your C++ program. Nearly all the pictures in Polynomial Interpolators for High-Quality Resampling of Oversampled Audio were generated with this ...
Read More

16 Comments »

  1. Great blog :D

    Comment by joxer — 2010-01-26 @ 22:40

  2. Hi Olli,
    I have just started on the maddening journey into audio/dsp programming and came across this link from Tobybear.
    He notes it as a must read for this kinda journeys start, but alas I don't find the destination...
    http://www.student.oulu.fi/~oniemita/DSP/DSPSTUFF.TXT
    Any help would be most welcome
    Colin

    Comment by colin — 2010-09-27 @ 07:02

  3. Colin,

    Thanks for pointing this out! The article had disappeared from the right hand menu due to a bug. Now it's back in there. A direct link: http://yehar.com/blog/?p=121

    Comment by Olli Niemitalo — 2010-09-27 @ 09:24

  4. Hi Olli
    Last night I asked for info on where to find "www.student.oulu.fi/~oniemita
    /DSP/DSPSTUFF.TXT"...I was directed to you from Tobybear.
    Well I also downloaded his flex filter explorer, and within was said document...
    So I have it and have just started to read...A very good place to start so it appears
    AND a very big thanx for putting it together,
    Colin

    Comment by colin — 2010-09-27 @ 15:54

  5. I was so keen to get into it , I made this comment b4 reading the comments.
    So big thanx 4 getting back so quick...am well impressed.
    Cheers, now to twist my poor ragged brain cell some more..ha!

    Comment by Olli — 2010-09-27 @ 15:58

  6. Hey Olli! Just wanted to thank you for your easily readable work. Better than uni courses. ;) I'm enjoying reading your interpolation paper over and over at the moment.
    I've just started started coding DSP - and it's so much fun i forget to make music. :)

    Comment by Dennis Tapper — 2010-12-09 @ 15:43

  7. Thanks Dennis! By the way, I have enjoyed listening to your music in a few occasions over the years as well. :-)

    Comment by Olli Niemitalo — 2010-12-10 @ 14:59

  8. The resampling paper on this site is incredibly useful. Thanks for making it available!

    Comment by Evan Balster — 2011-08-19 @ 08:17

  9. I found your re-sampling paper very interesting, and I wanted to know if your algorithms have ever been adopted in any products that I might have heard of?...

    Comment by Richard Murison — 2011-11-17 @ 21:54

  10. Richard: An early version of Fruity Loops used a resonant lowpass filter from me. Of others I don't know.

    Comment by Olli Niemitalo — 2011-11-18 @ 00:25

  11. How would the SRC algorithm in your paper rate against popular algorithms like those found in iZotope and SoX?

    Comment by Tim — 2012-01-13 @ 02:54

  12. Tim, I'm guessing your question is about the maximum achievable quality. I don't give a single algorithm or complete sample rate converter implementations, but properly implemented in a sample rate converter some of the algorithms in the paper would give better than "good enough" results. Also iZotope and SoX are better than "good enough". To go further in the comparison of maximum quality achievable would not make practical sense.

    Comment by Olli Niemitalo — 2012-01-13 @ 03:57

  13. Have you ever looked at the challenge of DSD-to-PCM conversion? Do you have any special insights into that problem?

    Comment by Richard — 2012-02-20 @ 21:55

  14. Richard: No, I haven't done anything related to DSD

    Comment by Olli Niemitalo — 2012-02-20 @ 23:02

  15. hey Olli. just discovered your site (you were the yehar guy?) didn't you used to have a SHARCPAGE or something?

    good to see you at the dsp.stackexchange .

    L8r,

    r b-j

    Comment by robert bristow-johnson — 2015-04-14 @ 20:21

  16. Yep Robert, that's me! I don't think I had a SHARC page, but I did have a collection of SHARC documents at the past ee.oulu.fi/~ollinie.

    Comment by Olli Niemitalo — 2015-05-02 @ 12:54

RSS feed for comments on this post. TrackBack URL

Leave a comment

Powered by WordPress – Hosted by Iggo