Audio library for beginners?

Hi people, I want to make a program for a project in my uni, like a simple synth. First of all, I want to make it synthetize notes with different wave forms. Once that is achieved (I think it will be the easiest part), I'll try to make it compatible to a midi keyboard, add filters and envelopes, and more complex stuff. My professor recommended Processing (Actually, it was a Delphi course, but for the final project we are not tied to Pascal). I've been searching and there are some powerful libraries like minim, beads, sonia, jsyn, but I dont know exactly what are the pros and cons of each one. So, what library would you suggest me?



  • Do you have to code everything from scratch? If so then you might be best not using a library ... You can work on raw sample data and just write it to java line out?

  • @hudson_m4000 not necessarily, I can use code someone already did. What do you mean? Base my synthesis in .wav files?

  • What I mean, for example, is if you are going to write your own routines to create square, sine, triangle wavs etc , then the easiest way to hear them is to send those as a byte output stream using a java line. In Android there is an AudioTrack class. This gives you full control. A library will remove the need to code your own waveforms and makes playback a bit more straight forward. Adding fx willl also be easy with a library, but if you are expected to code your own low pass filter, for example, then that will need access to the data which is usually hidden away when using a library.

  • @hudson_m4000 hmmm gonna have that in mind, I have the whole (austral) summer, thanks for the answer!

  • I'll post a bit of starter code for you later ..

  • I dont know exactly what are the pros and cons of each one.

    Try them out. Make a little "hello world" sketch for each library, and see which one you like best.

  • latency is also a detail. I've been messing with minim and I get kinda decent latency when the sample rate is set to 512, but quality is lost

Sign In or Register to comment.