
How to use JEsd
====================================================================
Last modified: Mon Sep 11 09:14:38 UTC 2000


SUPPORTED PLATFORMS
===================
JEsd includes a daemon program, which corresponds to
'esd' and classes for communicating with 'esd', which
correspond to 'libesd'.
That daemon program is implemented with JavaTM Sound API.
So, it will be available on any platform, which support that API.
At present, it seems that JavaTM Sound API is only available in
Java2(JDK 1.3beta or later).
Here, we list supported platforms, which we have confirmed already.

- Windows 98

On the other hand, client side codes will be available on JDK 1.0* or later.

REQUIREMENTS:
=============

The following softwares are required to use the audio server
functionality.

- JDK 1.3beta or later
- esd compliant applications, for example x11amp, xmms, etc,. 


USAGE:
======
Before running an audio server, confirm you have already 
installed JDK 1.3beta or later. Then type,
     
       javac -O -g:none com/jcraft/jesd/*.java
       java com.jcraft.jesd.Daemon

The audio server will wait for connections at port 16001.

To use this daemon, just specify a location, where JEsd is running, 
to esd compatible applications.
Suppose that an audio server is running on some machine, named 'foo',
and you have Un*x machine, named 'bar'. Try next commands on machine 'bar'

       export ESPEAKER=foo
       x11amp

Concerning the usage of client side library,
we have tried to mimic APIs of 'libesd' and
some sample programs in an 'examples' directory will be
helpful for understanding it. At present, documents for that
library has not been written. Please bear with us.


Ogg Vorbis Support:
===================
Since 0.0.6, JEsd's audio server has supported the Ogg Vorbis.
In this support, you can enjoy Ogg Vorbis bit-streams, which will be
sent via EsounD protocol. To use this functionality, you need
pure Java Ogg Vorbis decoder(JOrbis) and its source code and binaries are
available at http://www.jcraft.com/joribs/ .

1. Download a JOrbis archive from http://www.jcraft.com/joribs/ and
   make it to be accessible through the CLASSAPTH.

2. Run the audio server,
       java com.jcraft.jesd.DaemonWithVorbis

3. Suppose that the audio server is running on some machine, named 'foo',
   and you have Redhat box, named 'bar'. Try next commands on machine 'bar'

   $ cat foo.ogg | esdcat -s foo
   $ esdloop -s foo  bar.ogg
   $ esdsample -s foo -d bar.ogg
Note 1. foo.ogg and bar.ogg are Ogg files and bar.ogg must be small.
Note 2. 'esdplay' will not work, because 'esdplay' uses some API, which
        checks a file format if it is WAV or not.

4. Of course, you can enjoy WAV files on this new audio server seamlessly,
   $ cat foo.wav | esdcat -s foo

Ogg files are available at http://vorbis.com/listen.html
and if you have Ogg Vorbis CODEC from xiph.org, you can make ogg files 
by your self.
