JOAL Update ...

classic Classic list List threaded Threaded
4 messages Options
Reply | Threaded
Open this post in threaded view
|

JOAL Update ...

Sven Gothel
Administrator
README/index.html: Update Web resources & URLs, add details about audio-backens per platform and contained openal-soft library
, see
- https://jogamp.org/joal/www/
- https://jogamp.org/cgit/joal.git/about/

Promoted ALAudioSink to JOAL from JOGL, while pushing the general interfaces to (err) GlueGen,
yeah .. but didn't wanted to create another module.

ALAudioSink got some fixes for performance/low-latency
as tested and evaluated with a simple synthesizer
https://jogamp.org/cgit/joal.git/tree/src/test/com/jogamp/openal/test/manual/Synth02AL.java

This might be useful for other projects and I may push it in JOAL's util package
to easily produce sounds and change frequency + amplitude on the fly.
However, there are better full feature synthesizers like JSyn,
and we might want to discuss adding JOAL to its backends?

I also validated details of ALAudioSink and realized AL_SOFT_buffer_samples
is gone since openal-soft 1.18.0.
Hence I patched it accordingly and tested w/ GLMediaPlayer and 4-6 channel audio, working again.

OpenAL-Soft v1.23.1 and our builds have the following backends:

* Windows:
  -- OpenAL Soft: Audio-Backends: WinMM, DirectSound, WASAPI, WaveFile, Null

* GNU/Linux:
  -- OpenAL Soft: OpenAL: PipeWire, PulseAudio, ALSA, OSS, SndIO (linked), WaveFile, Null

* Android/Linux:
  -- OpenAL Soft: Audio-Backends: PipeWire, OpenSL, WaveFile, Null

* OSX
  -- OpenAL Soft: Audio-Backends: CoreAudio, WaveFile, Null


Will be released w/ JogAmp v2.5.0 and is contained in the RC builds.
Reply | Threaded
Open this post in threaded view
|

Re: JOAL Update ...

Sven Gothel
Administrator
OK, I have finalized the AudioFormat/AudioSink promotion to GlueGen
and ALAudioSink to JOAL, working well w/ our JOAL test cases, and our ffmpeg media player.

As visible, I added extracting certain OpenAL (or better openal-soft) specifics
like latency and available source-count to mix.

Also brushed up the README.md and web face a little :)

I also added a device implementation for JSyn (output only for now),
which I have forked here for now https://github.com/sgothel/jsyn
I will push my JSyn changes when the next aggregated JogAmp build is ready,
allowing the work to be validated.

....
Reply | Threaded
Open this post in threaded view
|

Re: JOAL Update ...

Sven Gothel
Administrator
I modded the Sound3D OO wrapper once more, see https://jogamp.org/cgit/joal.git/commit/?id=afb386e13fd00fde1401d4551ee4790b1f6d5e09

AudioSink has been refined, see
- https://jogamp.org/cgit/gluegen.git/commit/?id=c04726720a57f8db42f2621ad58ff3bd42006c63
- https://jogamp.org/cgit/gluegen.git/commit/?id=6a74d16a805a4204093972bb91361b2aa633065c

all to condense for ALAudioSink
- https://jogamp.org/cgit/joal.git/commit/?id=44ed86045ee1fc8a91fa2902196e9ddaf53242ca

.. and GLMediaPlayer
- https://jogamp.org/cgit/jogl.git/commit/?id=b294b6e4f9a3dc24bcdce28f0a9c45eda8755f1f

The SimpleSineSynth in JOAL has also been promoted,
so users can have a simple synthetic sound source.
https://jogamp.org/cgit/joal.git/commit/?id=1a4305bbfd4f091fe8d57aa35a76de14ee83383c

xxxx

All of the above to use audio w/ JOAL/OpenAL more easily incl. 3D spatial effect,
which requires a mono source. For the latter the audio channels can be limited
and has been in the demo (MediaButton).

GraphUI demo
https://jogamp.org/cgit/jogl.git/commit/?id=aea2254d1226b9471893113bde2bf1e54c24b14c

.. will produce another little demo video soon, showing results.

And this shall have completed my little journey into sound :)
Reply | Threaded
Open this post in threaded view
|

Re: JOAL Update ...

Sven Gothel
Administrator
My JOAL/OpenAL integration into jsyn ..
https://jogamp.org/cgit/jsyn.git/log/