Subject: Re: [linux-audio-dev] java 1.3 sound capabilities
From: Matthias Pfisterer (Matthias.Pfisterer_AT_gmx.de)
Date: Fri Jul 07 2000 - 03:47:25 EEST
leaf_AT_babble.vibrant.org wrote:
>
> I was at the javaone night sessions where the Tritonus guys demoed their
> implementation... it seemed to work fine, audio played normally and
> midi as well...
Well, we used the Sun jdk for the demonstration at JavaOne. The resons
were
- we did not have enough time to install Linux on the laptop we used
- the laptop had no hardware synthesizer and Tritonus currently has no
software sythesizer. So to demonstrate MIDI playback there was no choice
anyway.
(And note that the goal of the session was to show general programming
techniques, not to explicitely show Tritonus.)
> do you know if java can provide tight timing though? i left javaone with
> the impression that java might be great for games but not have the timing
> for pro-audio...
With Tritonus, the situation is as follows: It mainly relies on the ALSA
sequencer. For playback, the scheduling is done by the ALSA sequencer.
For recording, the events get timestamped by the ALSA sequencer. So the
critical things are done there, non-critical things are done Java. You
can even set up routes from MIDI in to MIDI out or to the HW synth with
the routing done completely natively, not touching the Java VM. So for
these uses, the performance/latency depends on ALSA and the Linux
kernel.
The situation changes if you want to do some real-time processing of
MIDI events in Java. Here, events have to be routed from the ALSA
sequencer to the Java VM and back. So in this case, Java thread
scheduling becomes an issue.
Matthias
-- Matthias Pfisterer <mailto:Matthias.Pfisterer_AT_gmx.de>Share your knowledge. It's a way to achieve immortality.
(from a nepalese mantra)
Java Sound Examples: http://rupert.informatik.uni-stuttgart.de/~pfistere/jsexamples/ Tritonus, the open source implementation of the Java Sound API: http://tritonus.sourceforge.net/ --------------------------------------------------------------
This archive was generated by hypermail 2b28 : Fri Jul 07 2000 - 04:41:37 EEST