val zenTone = ZenTone()ZenTone accepts 3 arguments, each having a sensible default:
sampleRate: Int = 44100encoding: Int = AudioFormat.ENCODING_PCM_16BITchannelMask: Int = AudioFormat.CHANNEL_OUT_MONO
based on your requirement, you can pass a different value when instantiating ZenTone i.e
val zenTone = ZenTone(channelMask = AudioFormat.CHANNEL_OUT_STEREO)zenTone.play(frequency = 400f, volume = 2)play() accepts 3 arguments:
frequency: Floatvolume: Int. It ranges from 0 to 100, where 0 is no audio and 100 is full volume.waveByteArrayGenerator: WaveByteArrayGenerator = SineWaveGenerator, hereSineWaveGeneratoris a sensible default.- POssible options are
SineWaveGenerator,SquareWaveGeneratorandTriangleWaveGenerator
- POssible options are
based on your requirement, you can pass a different value when calling play() i.e
zenTone.play(frequency = 440f,
volume = 10,
waveByteArrayGenerator = SquareWaveGenerator)zenTone.stop()To release resources held by ZenTone i.e release mic, you can call release() function.
Usually you'll need to call this in onDestroy():
override fun onDestroy() {
super.onDestroy()
zenTone.release()
}val isPlaying = zenTone.isPlayingzenTone.togglePlayback(frequency = 440f, volume = 10)togglePlayback() accepts 3 arguments:
frequency: Floatvolume: Int. It ranges from 0 to 100, where 0 is no audio and 100 is full volume.