The Guitar Tuner application can be used to tune guitar strings by analysing the audio recorded by the device microphone. Guitar Tuner can also be used in listening mode, where it will play the audio of a given frequency, and the user can tune the guitar by ear.
This example application demonstrates:
- The audio-in and audio-out interfaces of QtMobility::QtMultimediaKit.
- Integrating Qt code to the Qt Quick UI.
This example is hosted in GitHub: https://github.com/nokia-developer/guitar-tuner
For more information on the implementation, visit the wiki pages: https://github.com/nokia-developer/guitar-tuner/wiki
The project structure has been fully refactored in version 2.0. The C++ implementation is now wrapped in the QML plug-in "GuitarTuner 1.0". In addition, the communication model has been improved; the QML UI is logically controlling the application engine.
Guitar Tuner is used to tune the strings of a guitar. Two modes are provided: input mode and voice mode.
In input mode, the microphone is used to analyse the frequency of the recorded audio and show the frequency via a graph. The desired string can be chosen with the note buttons. The selected note will also be highlighted under the graph. When the recorded frequency is very close to the right tuning, the needle will be positioned exactly in the centre of the graph, and the note under the graph will be highlighted with a glow. When the needle is all the way to the left or right side of the graph, the note is 12 halfnotes (or more) too low or too high. If Auto-note is selected, the application will try to determine the note by itself. The recording sensitivity can be adjusted with the volume slider at the bottom of the view.
In voice mode, the application will play the selected note via the speakers of the device. The output volume can be adjusted with the volume slider at the bottom of the view. The output volume can also be muted by tapping the microphone icon located on the left side of the volume slider.
- Symbian devices with Qt 4.7.4 and Qt Mobility 1.2.1.
- Nokia N9 (MeeGo 1.2 Harmattan)
Tested to work on:
- Nokia 701
- Nokia N8-00
- Nokia E7-00
- Nokia C6-01
- Nokia N9
Developed with Qt SDK 1.2.1.
UserEnvironment capability in Symbian. The application can be self signed.
In Harmattan the position of the slider knob is not initialised properly when the application is launched.
In listening mode, the audio of the lowest strings cannot be heard properly via device speakers. The device speakers are not capable of playing such low frequency audio.
Check that you have the latest Qt SDK installed in the development environment and the latest Qt version on the device.
You can install and run the application on the device by using the Qt SDK. Open the project in the SDK, set up the correct target (depending on the device platform), and click the Run button. For more details about this approach, visit the Qt Getting Started section at Nokia Developer (http://www.developer.nokia.com/Develop/Qt/Getting_started/).
Make sure your device is connected to your computer. Locate the .sis installation file and open it with Nokia Suite. Accept all requests from Nokia Suite and the device. Note that you can also install the application by copying the installation file onto your device and opening it with the Symbian File Manager application.
After the application is installed, locate the application icon from the application menu and launch the application by tapping the icon.
Copy the application Debian package onto the device. Locate the file with the device and run it; this will install the application. Note that you can also use the terminal application and install the application by typing the command 'dpkg -i .deb' on the command line. To install the application using the terminal application, make sure you have the right privileges to do so (e.g., root access).
Once the application is installed, locate the application icon from the application menu and launch the application by tapping the icon.
See the license text file delivered with this project. The license file is also available online at https://github.com/nokia-developer/guitar-tuner/blob/master/Licence.txt
v2.0 Complete refactoring, application engine code isolation in QML plug-in. v1.3.1 Fixed build issues for Windows and Simulator. v1.3 Added support for MeeGo 1.2 Harmattan. v1.2 Fixed a crash bug. Added Windows support. Compatible with Qt 4.7.2. v1.1 Initial version published in Forum Nokia Projects only.