LibBWEntrainment is a Free and Open Source Brainwave Entrainment Library for Java.
The library is very flexible, allowing different types of renderers as well as multiple output devices (speakers, file, socket, ...), and it can easily be ported to other languages because it doesn't use any proprietary Java feature.
SINE Isochronic Entrainer is based on this library.
Java SE (most features require Java 6, MP3 support requires Java 7)
Android (4.0.3 and up, all architectures)