Need a really simple library for playing sounds and music? Try TinySound.

Don’t want to be a party pooper, but you don’t know what you’re talking about! :stuck_out_tongue:

There are bits of JavaSound that are really bad, but the direct audio mixers are OK, and about the most low-level way you can interact with the soundcard. Open device, stream bytes - that’s it! To say that TinySound just wraps JavaSound is rubbish - it provides a range of higher-level functionality on top of the usable low-level bits of JavaSound.

If you’re going to suggest OpenAL as a “nice alternative”, then to TinySound maybe, but not the JavaSound direct mixers - OpenAL is a higher level API - you could write a pure-Java equivalent outputting via the JavaSound direct mixers!

[quote]it provides a range of higher-level functionality on top of the usable low-level bits of JavaSound.
[/quote]
Isn’t this what wrapping means…?

[quote]it provides a range of higher-level functionality on top of the usable low-level bits of JavaSound.
[/quote]
Isn’t this what wrapping means…?

Isn’t this what wrapping means…?
[/quote]
Not sure why you felt the need to reopen that discussion?! Wrapper isn’t that well defined, but it’s normally understood as a means of providing an alternative API, wrapping a native library or (possibly) some minimal additional functionality. Taking your argument to its illogical conclusion would suggest that games are just wrappers for the JRE! :stuck_out_tongue:

I thought by saying “only wraps Javasound” @Cero was belittling what @kuusisto has actually provided in this library, and also showed a lack of understanding of what is and isn’t useful / usable in JavaSound - the low-level Mixers, which are wrappers to the soundcard driver, are not too bad (though aren’t necessarily mixers in the normal audio sense of the word).

Isn’t this what wrapping means…?
[/quote]
Not sure why you felt the need to reopen that discussion?! Wrapper isn’t that well defined, but it’s normally understood as a means of providing an alternative API, wrapping a native library or (possibly) some minimal additional functionality. Taking your argument to its illogical conclusion would suggest that games are just wrappers for the JRE! :stuck_out_tongue:

I thought by saying “only wraps Javasound” @Cero was belittling what @kuusisto has actually provided in this library, and also showed a lack of understanding of what is and isn’t useful / usable in JavaSound - the low-level Mixers, which are wrappers to the soundcard driver, are not too bad (though aren’t necessarily mixers in the normal audio sense of the word).

<3 I got it working in 20 mins, from not knowing anything about sound.

<3 I got it working in 20 mins, from not knowing anything about sound.

Nice library, but I have a little problem. I am writing an app that will do something similar as piano, but much simpler. It will have 4 tones, that can overlap. I did


        Sound h0 = TinySound.loadSound("1-H0.wav");
        Sound d1 = TinySound.loadSound("2-d1.wav");
        Sound fis1 = TinySound.loadSound("3-fis1.wav");
        Sound a1 = TinySound.loadSound("4-a1.wav");

but if I play them one after another so that they overlap digital clipping can be heard. What can I do to get rid of that awful clipping when files are overlapping? Also, is there a way to change volume for individual file?
Thank you!

Nice library, but I have a little problem. I am writing an app that will do something similar as piano, but much simpler. It will have 4 tones, that can overlap. I did


        Sound h0 = TinySound.loadSound("1-H0.wav");
        Sound d1 = TinySound.loadSound("2-d1.wav");
        Sound fis1 = TinySound.loadSound("3-fis1.wav");
        Sound a1 = TinySound.loadSound("4-a1.wav");

but if I play them one after another so that they overlap digital clipping can be heard. What can I do to get rid of that awful clipping when files are overlapping? Also, is there a way to change volume for individual file?
Thank you!