Wiki » History » Version 3

« Previous - Version 3/14 (diff) - Next » - Current version
Redmine Admin, 2012-08-15 03:07 PM


Wiki

Requirements

Third day of a three-day Software Carpentry bootcamp. Hours are 0900-1630 approx.

Should consist of working through introductory examples of audio processing techniques in Python, with small-group exercises for self-guided learning (helpers should be available in the room). Topics of interest should include reading audio data from files, synthesising signals and playing them, saving results back to audio files, simple filters, simple analysis techniques, and interactive plotting.

The material will need to follow from the subjects covered in the first two days of the bootcamp, such as unit testing and test-driven development, writing readable code, use of version control (we'll be using Mercurial in the bootcamp but the principles should mostly be general ones), selection and use of the most appropriate existing Python modules, etc.

Related Links

Open questions

Can we come up with some good examples of simple audio processing problems that readily admit test-driven solutions? I think there will be a lot of interest in the question of how to apply automated testing and unit tests to audio research software.

Any examples we use will need to be simple enough to be worked through by people who have not necessarily worked on that specific aspect of audio programming before, but relevant enough that they give a clue about where to begin when working on their own problems subsequently.

Here is an example with some basic unit tests for a peak interpolation method (in C++ with Boost) -- I think we can do better, but with what?