
K4Guitune
Source (link to git-repo or to original if based on someone elses unmodified work):
Available as/for:
Description:The pitch detection algorithm is based on finding the first peak in the autocorrelation of the input signal.
K4Guitune offers:
* two systems of musical tuning: equal temperament and just intonation;
* three reference pitches: normal (440 Hz), French (435 Hz) and scientific (430.54 Hz);
* three sets of note names: English, German and Italian.
It's a port to KDE4 of K3Guitune.
The estimated pitch is displayed on a bar (1). The detected pitch is shown by two triangles (2), showing whether the estimated pitch is lower or higher than the correct one. When they are both shown, as in the current example, the note is perfectly in tune (error < 2.5 cents).
Detailed information about the pitch detection are shown on the left: the estimated frequency (3) is shown above and the estimated pitch (4) is shown below. The program doesn't require to select the note to tune manually, but it will be found automatically.
The waveform of the input signal is plotted over a time scale of 20 milliseconds (5). The autocorrelation of the signal is displayed (6), with a red bar showing the estimated frequency (7).
The tuner uses the default OSS audio device. The desired recording source and the signal recording levels can be adjusted using a sound mixer.
Version 1.1.0
* Initial release
Version 1.1.1
* Fixed a crash when /dev/dsp is already in use. Now an error messagebox is displayed.
* Fixed a bug that caused settings to be changed only after application restart and not immediately after that change.
*
Ratings & Comments
13 Comments
Thanks for the port, I use K3guitune as an oscilloscope for analog data (not musical instruments) under Fedora14-KDE4 and it works an is able to autodetect my sound card (since i use ALSA+Pulseaudio, and don't have the /dev/dsp file). However, your ports could not find the sound card so I used the PulseAudio OSS Wrapper "padsp" to emulate the /dev/dsp. like this "padsp k4guitune" Now it opens, but no signals :( I have used "padsp" with other applications and it works but not sure why this one does not. Could you please help...
Update: The K3Guitune I use is packaged for fedora and it includes the patch for fftw library and also some other sound server fixes by fedora people, so that could be the reason why it works with ALSA server, not sure if these are also there in the original 1.01 code since I did not compile the source.
Good work! Added to Archlinux AUR: http://aur.archlinux.org/packages.php?ID=39261 Thanks
Application: K4Guitune (k4guitune), signal: Aborted [KCrash Handler] #7 0xffffe424 in __kernel_vsyscall () #8 0xb5f41471 in *__GI_raise (sig=6) at ../nptl/sysdeps/unix/sysv/linux/raise.c:64 #9 0xb5f42bb2 in *__GI_abort () at abort.c:92 #10 0xb6d030cc in qt_message_output (msgType=QtFatalMsg, buf=0x9a7a9d0 "Unable to open audio device /dev/dsp: \320\243\321\201\321\202\321\200\320\276\320\271\321\201\321\202\320\262\320\276 \320\270\320\273\320\270 \321\200\320\265\321\201\321\203\321\200\321\201 \320\267\320\260\320\275\321\217\321\202\320\276") at global/qglobal.cpp:2271 #11 0xb6d0327a in qt_message (msgType=<value optimized out>, msg=0x8060b68 "Unable to open audio device %s: %s", ap=0xbf884bf4 "\213\v\006\bB\026P\265") at global/qglobal.cpp:2317 #12 0xb6d03389 in qFatal (msg=0x8060b68 "Unable to open audio device %s: %s") at global/qglobal.cpp:2500 #13 0x080549b7 in AudioProcessor (this=0x9a78f30, parent=0x0) at /var/tmp/portage/media-sound/k4guitune-1.1.0/work/k4guitune/src/audioprocessor.cpp:75 #14 0x080512f4 in K4GuituneView (this=0x9a78d40) at /var/tmp/portage/media-sound/k4guitune-1.1.0/work/k4guitune/src/k4guituneview.cpp:31 #15 0x08050b1d in K4Guitune (this=0x9a74480, __in_chrg=<value optimized out>, __vtt_parm=<value optimized out>) at /var/tmp/portage/media-sound/k4guitune-1.1.0/work/k4guitune/src/k4guitune.cpp:32 #16 0x080506ff in main (argc=1, argv=0xbf884e24) at /var/tmp/portage/media-sound/k4guitune-1.1.0/work/k4guitune/src/main.cpp:124 K4Guitune crashed when I started it with 'arecord | aplay' running. I think program shouldn't call qFatal in this case. It must try opening audio device till it can do it, or just show simple error dialog (but not crash :)
Hi, you are more than right =) I have fixed it in the svn repository and in the tar.gz attached here. Now an error messagebox is displayed and the application with a description of the problem Thanks for pointing that out! Bye william
Hi! I Have a problem during the compilation: -- Performing Test __KDE_HAVE_GCC_VISIBILITY - Success -- Found KDE 4.3 include dir: /usr/include -- Found KDE 4.3 library dir: /usr/lib -- Found the KDE4 kconfig_compiler preprocessor: /usr/bin/kconfig_compiler -- Found automoc4: /usr/bin/automoc4 CMake Error: The following variables are used in this project, but they are set to NOTFOUND. Please set them or make sure they are set and tested correctly in the CMake files: FFTW3_LIBRARY linked by target "k4guitune" in directory /home/lorenzo/k4guitune/src -- Configuring incomplete, errors occurred! I installed libfftw3 but the error continues to be I'm on kubuntu 9.10 with kde 4.3.4
Hi, have you installed libfftw3-dev? If you have it, then there must be some error in the cmake module that detects FFTW3... Let me know (so that I can fix it if needed) Thanks and bye William
I would add this dependency to the README file. It's not obvious what package is required, having the variable name only.
Thanks a lot to the guys who have made packages for K4Guitune!! They will be helpful to many users!!
here is a rpm for mandriva i586 http://www.mandrivalinux.gr/rpm/2010.0/i586/k4guitune-1.1.0-1mgr2010.0.i586.rpm
> the estimated frequency (3) is shown above and the estimated pitch (4) is shown below. English is not my native lang... Can you explain what's the difference between "frequency" and "pitch" here? 10x in advance.
Hi mityukov, and neither my language!! I'm not sure if the naming I have chosen is the best one. Anyway this is what I mean - the estimated frequency is the result of the estimation done on the audio input - the estimated pitch is the actual note which is closest to the estimated frequency. It is the note shown in the bar Maybe an example can make things clearer For example, you are tuning the A string of a guitar (which is A2 --> 110.00 Hz) and you are quite close to the correct tuning. The estimated pitch will be 110.00 Hz (A2) and the estimated frequency will around this number. For example 109.75 Hz if the string is a little below the correct tuning. When you turn the string knob to fasten it, the estimated frequency will increase and your goal is to have as close as possible to the estimated pitch Hope this helped a little bit =) Bye William
Thanks. This is now media-sound/k4guitune in Gentoo's Portage. Marked k3guitune for removal while at it. ;-)