!7 // Original source: AudioLoop from jsresources.org static int DEFAULT_INTERNAL_BUFSIZ = 40960, DEFAULT_EXTERNAL_BUFSIZ = 40960; p { new AudioLoop(javaSound_cdQuality(), DEFAULT_INTERNAL_BUFSIZ, DEFAULT_EXTERNAL_BUFSIZ).start(); } sclass AudioLoop extends Thread { TargetDataLine in; SourceDataLine out; new Flag stopFlag; int externalBufferSize; *(AudioFormat format, int internalBufferSize, int *externalBufferSize) { out = javaSound_outputLine(format, internalBufferSize); } public void start { out.start°; super.start°; } void stopRecording { out.close°; stopFlag.raise°; } // "stop()" was taken public void run° { out. javaSound_streamFromLineToLine(in, out, externalBufferSize, stopFlag); } }