Drone Instrument - Sruti Box

Posted 8 January 2005, 13:28

Description

A realtime Csound instrument with a graphical interface, intended for use in live performance with other instruments (acoustic and/or electronic). For use with CsoundAV (and Csound5, once it is released).

Features:

Performance Notes

Screenshot - click for full size

The are four drones, each one arranged in a column. The button at the top turns the drone on or off. The two controls belows the on/off button are the numerator and denominator that specify the tuning ratio for the drone. For example, for the interval 2/1 (octave), set the upper control to 2 and the lower one to 1. The small arrow changes the setting by 1; the double arraw changes the setting by 10. The ratio control will accept any whole number up to 1500.

The next control down sets the octave displacement of the drone relative to the base pitch: 0 means that the drone is in the same octave as the base pitch, 1 means one octave up, -1 means one octave down, etc. Under the octave control is a “mute” switch, so that you can exclude one or more drones, which is useful if you want to turn them on or off as a group.

In the middle is control that sets the frequency of the base pitch against which the drones are tuned. The single arrow moves in increments of .05 Hz; the double arrow is in increments of 5 Hz. (If you would like a version with finer-grained control, let me know.)

The next set of buttons selects the waveform that will be used by all the drones. See the next section for details.

The bottom row contains the Play and Stop buttons, which turn all (unmuted) drones on or off, respectively.

Finally, the Harmonic arpeggio control activates the Risset effect that is described in the next section.

Background & Technical Details

Since I don’t own or have regular access to a tamboura, and have been dissatisfied so far with the reed-and-bellows or electronic sruti boxes I’ve tried, I decided to make one of my own. As a student of just intonation, I decided to make the drones tunable using ratios. The default settings match one of the typical tamboura tunings: 1/1 (Sa), 3/2 (Pa), 2/1 (Sa’), 2/1 (Sa’), but of course you are free to use whatever ratios you wish. For example, a very nice set of ratios incorporating the septimal seventh is 1/1, 3/2, 7/4, 2/1. Or replace the 2/1 with a septimal whole tone (8/7) or a major whole tone (9/8). The possibilities are endless.

I’ve included a range of waveforms. The sawtooth and square waves are probably the closest to most existing electronic sruti boxes. The “prime” wave is a waveform built up prime-numbered partials through 23; the “Fibonacci” wave is built up from partials in the Fibonacci sequence through 89. The sawtooth, square, prime and Fibonacci waves have two variants each. In the first instance of each wave, the strengths of the partials are calculated as 1/n (where n is the partial number). The alternative versions use the formula 1/n + 1/(n-1), which results in slightly richer harmonic content.

The optional Risset harmonic arpeggio effect is a technique discovered by the pioneering electronic composer Jean-Claude Risset. By combining an oscillator with eight other oscillators at slight frequency offsets, a complex interference pattern is created that sweeps through the component harmonics of the original waveform. This is the best way I’ve found so far to produce a sound that suggests the characteristic buzzing sound of a tamboura string.

I will likely revise this instrument over time with different effects, waveforms, and controls, possibly even a “rhythmic” version that simulates a plucked tamboura. I am certainly open to suggestions, so please add a comment to this page or send me email if you have any ideas, requests, or bug reports.

This is dedicated to Art Hunkins, from whom I have been learning a lot about realtime Csound, including some techniques that greatly improved the design of this instrument.

Copyright & Licensing

Copyright © 2005, Dave Seidel. Some rights reserved. This work is licensed under a Creative Commons Attribution License.

Files

Csound unified score file (text, 14KB)

Tags

Comments

  1. Excellent work! I noticed that changes I make while a sound i splaying do not kick in until I stop and Play again – is that the correct behavior?
    Best,
    Dennis
    — Dennis Miller    8 January 2005, 23:39    #
  2. Thanks, Dennis. Yes, that’s the expected behavior, it would be much more complex to code otherwise. Remember that you can start/stop individual drones as well, you don’t have to do all of them at once. So you can make changes one drone at a time while the others are playing.
    Dave Seidel    8 January 2005, 23:44    #
  3. I keep getting this message when I try to play the sruti box:”could not find indefinitely playing instr 4”. How do I fix this?
    — David Williams    23 July 2005, 21:59    #
  4. Dear Dave,
    Your electronic sruti box looks very useful. Is it for sale?
    Also, pardon my ignorance, but could you explain what it means that it uses CSound? Do I need MIDI equipment to use it, or it that just an explanation of its internal workings?
    Andrew
    — Andrew Kohn    5 August 2005, 06:21    #
  5. I’d like to download the Sruti box drone file but cant figure out how to on this site. Please help!
    — Fretless    26 November 2005, 16:49    #
  6. sounds like a great box
    may i try it with a download?
    — christiaan cruz    6 February 2006, 20:38    #
  7. The download link is above under “Files”. You will also need CsoundAV (there’s a link near the top of the page) in order to run my file. If you haven’t used Csound before, it is a programming language for music, and CsoundAV is a version that is specifically meant for real-time performance. You use CsoundAV to run my file, and this creates the drone instrument.
    Dave    6 February 2006, 20:43    #
  8. I’d really like to have a drone on a CD or mp3 player for just intonation practice.

    Any easy ideas about how I could record the output so that it would be easy to put it on a CD or convert to mp3? I’m running windows XP. The doc for CSoundAV (and CSound) looks fairly intimidating. I managed to get some sort of output file created but evidently its in a file format that is not a standard windows wav. Any help would be appreciated, since this is a great little program but I’d rather not be tethered to a computer to use it. Thanks!


    — Tony    14 November 2006, 12:33    #
  9. Hi
    I have a Dwarkin harmonium which is bulky to carry around. My Saarang electronic tambura has quit working. I am planning to buy a regular Sruti box to teach Carnatic music to little kids here.
    I also have CSound. How do I download your application? It sounds interesting. What is the cost?
    Thanks,
    Parvathy


    — Parvathy Hadley    28 August 2007, 12:15    #
  10. @Parvathy: To use the app, download SrutiDrone.csd.txt (above, under Files), rename it to SrutiDrone.csd, then run it like “csound SrutiDrone.csd”.

    @Tony: I should have answered you question when you posted it, but to tell Csound to output a WAV file you must use the -W commandline switch.


    Dave    3 September 2007, 10:26    #
Name
E-mail
http://
Message
  Textile Help