- What project you want to do
I want to build a tanpura player for desktop written in C++ using the Cinder Audio Api. https://libcinder.org/docs/reference/audio.html
2, What background knowledge do you have on this kind of project, and why do you want to do this project? (Put another way, in what way will you be motivated to see this project to completion?)
I am an Indian classical music student who has used a wide variety of tanpura apps throughout my training and I have a pretty good idea of what basic functionality would be required to have a functional tanpura app. I'm pretty sure that there are no widely used tanpura players available for desktop computers of any operating system and this could be helpful to people when they don't have their phone or if they need to record things and are using their phone for that process (instead of a laptop) having a tanpura player on a laptop could be helpful. It could also help composers if they need an all in one solution to help them brainstorm melodies that are based on classical raags.
- A rough timeline of what will get accomplished and when (e.g, "By the end of Week 2, I will have implemented XYZ and will start working on ABC")
- Find tanpura samples that are available for public use on the internet.
- Clean up the samples and get the sample files to loop properly.
- Get familiar with Cinder's Audio API
- Start trying to get sounds to play at certain intervals/loop
Code:
- get the tanpura loop to function properly.
Visualizer:
- Play and pause the tanpura from the visualizer.
Code:
- Look into changing pitch and/or
- Changing the notes that play in the tanpura and implement that (saPaPasa vs saMaMaSa) (not implementing this b/c would need more sound files)
Visualizer:
- Add buttons for changing what notes play in the tanpura or what pitch it is.
- If you were to finish the project early, what extra "stretch goals" could you implement?
Stretch Goals: In no particular order--
- Allow users to edit the second string pitch
- Vary pluck speed
- Support two tanpuras playing simultaneously
- support 6 beat pluck mode
- support dual octave tanpuras
- allow users to change tuning from the 440hz standard
- presets for different raags.