Skip to content

Commit

Permalink
Expanded the readme file.
Browse files Browse the repository at this point in the history
  • Loading branch information
JorenSix committed Dec 15, 2011
1 parent b7b1a8e commit b760af1
Showing 1 changed file with 17 additions and 6 deletions.
23 changes: 17 additions & 6 deletions README.textile
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
h1. TarsosDSP

TarsosDSP is a collection of classes to do simple audio processing. It features an implementation of a percussion onset detector and two pitch detection algorithms: Yin and the Mcleod Pitch method.
TarsosDSP is a collection of classes to do simple audio processing. It features an implementation of a percussion onset detector and two pitch detection algorithms: Yin and the Mcleod Pitch method. Also included is a Goertzel DTMF(Dual tone multi frequency) decoding algorithm.

Its aim is to provide a simple interface to some audio (signal) processing algorithms implemented in JAVA. Some "TarsosDSP example applications":http://tarsos.0110.be/artikels/lees/TarsosDSP%253A_a_small_JAVA_audio_processing_library are available.
Its aim is to provide a simple interface to some audio (signal) processing algorithms implemented in pure JAVA. Some "TarsosDSP example applications":http://tarsos.0110.be/artikels/lees/TarsosDSP%253A_a_small_JAVA_audio_processing_library are available.

The following example filters a band of frequencies of an input file @testFile@. It keeps the frequencies form @startFrequency@ to @stopFrequency@.

Expand All @@ -17,13 +17,24 @@ dispatcher.run();
</code></pre>

The source tree is divided in three directories:
* @src@ contains the core class files.
* @examples@ contains a couple of examples with a user interface.
* @test@ contains unit tests.
* @src@ contains the source files of the core DSP libraries.
* @test@ contains unit tests for some of the DSP functionality.
* @build@ contains ANT build files. Either to build Java documentation or runnable JAR-files for the example applications.
* @examples@ contains a couple of example applications with a Java Swing user interface:
** "SoundDetector":http://tarsos.0110.be/artikels/lees/TarsosDSP%253A_a_small_JAVA_audio_processing_library show how you loudness calculations can be done. When input sound is over a defined limit an event is fired.
** "PitchDetector":http://tarsos.0110.be/artikels/lees/TarsosDSP%253A_a_small_JAVA_audio_processing_library this demo application shows real-time pitch detection. When pitch is detected the hertz value is printed together with a probability.
** "PercussionDetector":http://tarsos.0110.be/artikels/lees/TarsosDSP%253A_a_small_JAVA_audio_processing_library show the percussion (onset) dectection. Clapping your hands causes an event. This demo application also shows the influence of the two parameters on the algorithm.
** "UtterAsterisk":http://tarsos.0110.be/artikels/lees/TarsosDSP_sample_application%253A_Utter_Asterisk a game with the goal to sing as close to a melody a possible. Technically it shows real-time pitch detection with YIN or MPM.
** "Goertzel DTMF(Dual tone multi frequency) decoding":http://tarsos.0110.be/artikels/lees/Dual-Tone_Multi-Frequency_%2528DTMF%2529_Decoding_with_the_Goertzel_Algorithm_in_Java an implementation of the Goertzel Algorithm. A fancy user interface shows what goes on under the hood.



h2. Credits

"Tarsos":http://tarsos.0110.be and TarsosDSP is developed at University College Ghent, Faculty of Music
"Tarsos":http://tarsos.0110.be and "TarsosDSP":http://tarsos.0110.be/tag/TarsosDSP are developed at University College Ghent, Faculty of Music
"http://cons.hogent.be":http://cons.hogent.be

The onset detector implementation is based on a "VAMP plugin example":http://vamp-plugins.org/code-doc/PercussionOnsetDetector_8cpp-source.html by Chris Cannam at Queen Mary, London.

For the implementation of the YIN pitch tracking algorithm. Both the "the YIN paper":http://recherche.ircam.fr/equipes/pcm/cheveign/ps/2002_JASA_YIN_proof.pdf and the "aubio implementation":http://aubio.org were used as a reference.

0 comments on commit b760af1

Please sign in to comment.