Joal FAQ

From JogampWiki
Jump to: navigation, search

What is the History of JOAL?

What OpenAL platforms / Operating Systems / JDKs are supported?

OpenAL Platforms:

  • all of them. We are testing every build (in fact every commit) using OpenAL-soft.
  • If you are running on a different platform or would like to provide a build server, please let us know.

Operating Systems:

  • Linux 32/64, Mac OS, Windows 32/64, Android
  • Building JOAL on other systems is easy provided that a OpenAL implementation for that system.
    • OpenAL-soft is easily portable to systems where no OpenAL drivers exist.

Java Runtime Environments:

  • We are testing on Oracle JDK and OpenJDK
  • Java 5+ is required to run JOAL.

OpenAL on Mobile ARM SoC

Android

JogAmp provide OpenAL bindings using the JOAL .apk files on Android.

Since Android do not support J2SE users may have to implement their own classes to unpack audio formats. https://jogamp.org/bugzilla/show_bug.cgi?id=684 - Make JOAL Platform Agnostic for non J2SE VMs (Remove use of javax.sound; Replace WaveLoader code, ..)

GNU/Linux

JogAmp provide OpenAL bindings using the JOAL jar for use on ARM GNU/Linux systems, we support both the soft-float and hard-float ABI.

JogAmp JOAL bundle OpenAL-soft drivers in order to make JOAL usefull out of the box.

How do I get the Source Code?

The project repository is located on jogamp,

You can create a local copy/branch of the git repository, either anonymous from jogamp:

or github, e.g.:

.. etc ..

or via SSH and your user credential, so you can easily push back your changes to the github server:

  • git clone git@github.com:username/gluegen.git gluegen
  • git clone git@github.com:username/joal.git joal
  • git clone git@github.com:username/joal-demos.git joal-demos

What are the Build Dependencies?

JOAL depends on GlueGen

JDK6 and ANT 1.8 or later. JUnit tests require OpenAL capable hardware and OpenAL drivers.

I have all the Sourcecode, how do I build it?

cd joal/make

  1. Then run the matching build script for your platform

sh scripts/scripts/make.joal.all.linux-x86_64.sh

What files do I need at Runtime?

JOAL consists of four files:

  • joal.jar and gluegen-rt.jar
    • You only need to include these two jars in to the classpath of your application.
  • and one set of system dependent native jar's (e.g joal-natives-linux-i586.jar and gluegen-rt-natives-linux-i586.jar ..).
    • joal and gluegen-rt expect to find the system dependent native jar's next to the joal.jar and gluegen-rt.jar URL. The native jars will be found automatically at runtime.

How do I Get Started?

How can I test if OpenAL is properly set up on my system?

note1: replace ':' with ';' on windows

Is it possible to run JOAL based app without JOGL?

Yes. JOAL is independent from JOGL and can be used without JOGL in the classpath.