Installation: ------------- This document has nothing to do with installation. If you are installing right now using the windows installer, and wish to go on, just click "Next". If you are installing from source code read the file INSTALL in this directory. This file is "README.txt" that you can access later from the either the source code directory, program directory, or startup menu. Description: ------------ DansTuner is a program to tell you if you are playing a pitch in tune. It * takes audio from the default device * if it is above a background noise level, detects the pitch * takes the difference between that pitch and an "ideal" (equal-tempered) pitch, and shows you that difference * plays a guide tone along with you to help you tune I hope it is straightforward to use. Just run it, and start playing or singing into your computer microphone. When it detects audio above background level, the input level will turn green, the needle will move and the in-tune arrows will light red or green. If you are playing in tune, the needle will be close to the center, and the in-tune arrows will be green. If you are not in tune, the needle will be towards the left (flat) or towards the right (sharp), and there will be one in-tune arrow directing you towards in-tune (the center). Also, it plays a guide tone with you, to help you tune to it. I wrote it because I play trumpet, and so I want to tune lots of different notes on the fly. There are free tuners out there, but many are "guitar" tuners, and you must first tell them which few notes you are trying to tune. Controls: --------- There is a "Play volume" slider to adjust the volume of the guide tone. If you don't like the guide tone, simply slide the play volume all the way to the left. Personally, I find it useful. This "play volume" is entirely separate from and will not affect your system volume. There is an "Input level" displayed. That level looks black if it is below background noise level, and green if it is above that level. Use the "Background level" to change the level used for detecting whether you are making a pitch. If you are not playing and the background level is very low, sometimes the guide tone will wack out and squeak and squawk because it is detecting pitch from random noise around the room. If that happens, turn the background level up until background noise does not cause pitch to be detected, or try hitting the "Calibrate" button again-- perhaps the level was calibrated too low. Tuning: ------- Tuning summary: I picked "in-tune" to mean close to an equal-tempered scale. However, in some cases this may be confusing or incorrect, depending on your situation. Tuning is full of rich history and humanity. Our ear finds two notes consonant (in tune, free of dissonance or tension) if their frequencies are in a simple ratio. A standard A440 has a frequency of 440 cycles per second (or Hertz, abbreviated Hz). A440 and the note an octave below it have a ratio of 2:1, so the octave below has a frequency of 220 Hz. Two notes in the ratio of a "pure" (also called Pythagorean) fifth are 3:2, a "pure" fourth 4:3, and so on. Now, if you align a scale around a single note so that it exhibits all of the simple ratios from that note, that is called a "just" tuning, and sounds very nice-- for that scale. However, if you play chords from a harmony not based on that scale (which we do all the time in modern music), it may sound bewilderingly sour. (See, for example, JavaTuner, at http://pages.globetrotter.net/roule/accord.htm, to play with different tunings.) Thus, most Western musicians have agreed to use a scale modified so that it is symmetric, or equally tuned no matter which note you start on. This is done by picking a reference note (A440 in our case), picking the number of steps you want in the scale (12 in our case), and multiplying the frequency by 2^(1/steps) to go up a half step (or 2^(-1/steps) to go down a half step). If you multiply X by 2^(1/steps) "steps" times, you get 2X, so this gets us up an octave in the right number of steps. But how about our fifth? Since a fifth is 7 steps (called "half-steps" for historical reasons), we have 440 * 2^(7/12) = 659.2551138257398 440 * 3/2 = 660 So we're pretty darn close, but if you tune strings by ear to a Just tuning, simply listening for beats, your fifth might be 0.744 Hz off of an equal-tempered tuning. For more information on tunings (to which there is pleasing music history), do a Google search, or see, for example, http://www.ixpres.com/interval/dict/12-eq.htm). The mystery of the wandering guide tone: ---------------------------------------- Since the guide tone comes from a guess at the pitch "heard" through the microphone, you would think that if the background level is low and DansTuner is tuning to itself, it would be perfectly in tune. Not so!! Not only is it rarely in tune, on the contrary, on my machine it will waver entire half-steps or more, sometimes climbing chromatically, sometimes descending chromatically, until it hits a fairly stable note. This seems bad. Perhaps the pitch detection algorithm is not working correctly? Perhaps my soundcard's recording and playback clocks are somehow not in sync? I don't know. I have not yet tested this program with a commercially available tuner, so I cannot rule out that it is actually advising me of the wrong pitch! That's because this is alpha software, as indicated by the version number being lower than 1. Alpha software means it ain't been tested much yet! If you have any guidance or thoughts on the mystery of the wandering guide tone, I'd love to hear about it! Perhaps you've tried your commercial tuner tone (or tuning fork) on this program, and you have verified that it really is in tune for you. Or maybe you know why it wanders. Whatever. Tell me. Feedback: --------- This program is my first graphical application! That's exciting for me. I DID IT FOR THE GLORY, SO THAT ALL SHALL REMEMBER DAN FRANKOWSKI. Will it work? Naw, probably a bunch of people will download it without caring who wrote it. Still, I'll take whatever glory I can get. Email me (dfrankow@winternet.com) and tell me if you like DansTuner, don't like it, are using it, suggestions for improvements, your favorite color, whatever. Getting feedback is one of the best rewards for putting out free software. Anyway, I saved at least $20 (the cost of other tuning software or hardware) by devoting only a couple of weeks of my life to writing this program. ************************************************** Credits: -------- This program is based in large part on source code or libraries from * Audacity: A Free, Cross-Platform Digital Audio Editor, Version 0.97 http://audacity.sourceforge.net/ Primary author: Dominic Mazzoni (Dominic Mazzoni said to credit his implementation of pitch-finding to Tolonen and Karjalainen.) * PortAudio Portable Real-Time Audio Library, V17 http://www.portaudio.com Copyright (c) 1999-2000 Ross Bencina and Phil Burk * wxWindows 2.2.7, a cross-platform C++ framework for writing GUI applications using (where possible) the native controls. http://www.wxwindows.org Primary author: Julian Smart Also, the development was made possible by * Cygwin, a UNIX environment for Windows. http://sources.redhat.com/cygwin Many authors * gcc 2.95.3-4, the GNU Compiler Collection (came with Cygwin install) http://gcc.gnu.org/ Many authors * emacs 20.6.1 for Windows, a venerable text editor http://www.gnu.org/software/emacs/windows/ntemacs.html Many authors * IconEdit32 1.0.0.0, a free editor for Windows icon files From PC magazine, available via www.shareware.com and others Neil J. Rubenking Finally, the Windows installer was made using: * Inno Setup 2.0.18, a free installer generator for Windows. http://www.jrsoftware.org/ Author: Jordan Russell * ScriptMaker 2.0.10, a graphical front-end to Inno Setup. http://www.tafweb.com/scriptmaker.html Author: Terry Franks Sadly, the ScriptMaker web page says it will no longer be supported due to personal reasons ************************************************** Source code: ------------ I have not distributed the source code in the this installation package. However, you can get it from me-- just ask. You may email me at dfrankow@winternet.com. ************************************************** Legal stuff: ------------ DansTuner, copyright (C) 2002 Dan Frankowski. This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA The GNU General Public License should be in a file called gpl.txt included with this distribution.