Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

I want to design a software for my musical instrument which is a rhythmic one (there is no melody). All I want these software to do is :

  1. make the user able to compose music

  2. play what user has composed

for that purpose I need to record diffrent sounds of that instrument and match each sign with the appropriate sound .

Which programming language is adequate for this purpose ?

share|improve this question
    
Have you looked at existing software that will meet your needs? –  Bernard Apr 26 '12 at 17:42
    
there is no free form with the performance I want it to have in Iran –  Negin Apr 26 '12 at 18:38

3 Answers 3

up vote 17 down vote accepted

Read about these languages and decide which one suits your need:

SuperCollider

SuperCollider is an environment and programming language for real time audio synthesis and algorithmic composition. It provides an interpreted object-oriented language which functions as a network client to a state of the art, realtime sound synthesis serve

Pure Data

Pd (aka Pure Data) is a real-time graphical programming environment for audio, video, and graphical processing. It is the third major branch of the family of patcher programming languages known as Max (Max/FTS, ISPW Max, Max/MSP, jMax, etc.)

ChucK

is a new (and developing) audio programming language for real-time synthesis, composition, performance, and now, analysis - fully supported on MacOS X, Windows, and Linux. ChucK presents a new time-based, concurrent programming model that's highly precise and expressive (we call this strongly-timed), as well as dynamic control rates, and the ability to add and modify code on-the-fly. In addition, ChucK supports MIDI, OSC, HID device, and multi-channel audio. It's fun and easy to learn, and offers composers, researchers, and performers a powerful programming tool for building and experimenting with complex audio synthesis/analysis programs, and real-time interactive control.

share|improve this answer

You should probably check out Overtone:

Overtone is an open source audio environment being created to explore musical ideas from synthesis and sampling to instrument building, live-coding and collaborative jamming. We use the SuperCollider synth server as the audio engine, with Clojure being used to develop the APIs and the application. Synthesizers, effects, analyzers and musical generators can be programmed in Clojure.

There's a nice video demonstration of Overtone being used for live-coding music and instrument synthesis.

Overtone uses SuperCollider under the hood.

One of the nice things about Overtone is that while it provides an environment for music programming, the language used (Clojure) is a general purpose language. So you aren't forced to learn a new language which is only useful for the music parts.

share|improve this answer

If you want to combine sound with a user interface of your own design (possibly even your own hardware), take a look at Processing. It's a media-rich language that's meant to be easy to pick up, and the culture that's grown up around the language seems to encourage beautiful projects. Take a look at some of the things people have created, many of which involve sound.

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.