UnstableChanges

Summary

  1. Bug 927 - Multithreading (MT) issues libav/ffmpeg (details)
  2. Bug 927 - Multithreading (MT) issues ALAudioSink (details)
  3. ALAudioSink: Add thread-name to exceptions; stopImpl shall not throw an (details)
  4. Bug 927 - Multithreading (MT) - GLMediaPlayer.GLMediaEventListener: (details)
Commit b9e89c35dac3c19e026d2a0161649a065b3dceee by Sven Gothel
Bug 927 - Multithreading (MT) issues libav/ffmpeg

FFMPEG Natives:

  - Move 'mutex_avcodec_openclose' to local static and initialize at initSymbols0

  - setStream0:
    - Add another locked mutex block around:
       - [ sp_avformat_open_input .. sp_avformat_find_stream_info ]

  This solves the issue of:

    [NULL @ 0x89d20c60] insufficient thread locking around avcodec_open/close()
The file was modifiedsrc/jogl/classes/jogamp/opengl/util/av/impl/FFMPEGv08Natives.java (diff)
The file was modifiedsrc/jogl/native/libav/ffmpeg_tool.h (diff)
The file was modifiedsrc/jogl/classes/jogamp/opengl/util/av/impl/FFMPEGNatives.java (diff)
The file was modifiedsrc/jogl/classes/jogamp/opengl/util/av/impl/FFMPEGv09Natives.java (diff)
The file was modifiedsrc/jogl/classes/jogamp/opengl/util/av/impl/FFMPEGv10Natives.java (diff)
The file was modifiedsrc/jogl/native/libav/ffmpeg_impl_template.c (diff)
Commit 13d850c7bf93648dc24e3f01f6f8c9550fba0d97 by Sven Gothel
Bug 927 - Multithreading (MT) issues ALAudioSink

Add global synchronization around ALAudioSink constructor code,
which 'magically' solves the openal-soft multithreading issues ..

This is a workaround.
The file was modifiedsrc/jogl/classes/jogamp/opengl/openal/av/ALAudioSink.java (diff)
Commit c4368e89c0fc3ee4de659cd760bc812092bba054 by Sven Gothel
ALAudioSink: Add thread-name to exceptions; stopImpl shall not throw an exception at destroy
The file was modifiedsrc/jogl/classes/jogamp/opengl/openal/av/ALAudioSink.java (diff)
Commit c67de337a8aaf52e36104c3f13e273aa19d21f1f by Sven Gothel
Bug 927 - Multithreading (MT) - GLMediaPlayer.GLMediaEventListener: Remind that commands shall be off-loaded on another thread!
The file was modifiedsrc/test/com/jogamp/opengl/test/junit/jogl/demos/es2/av/MovieCube.java (diff)
The file was modifiedsrc/test/com/jogamp/opengl/test/junit/jogl/demos/es2/av/MovieSimple.java (diff)
The file was modifiedmake/scripts/tests.sh (diff)
The file was modifiedsrc/test/com/jogamp/opengl/test/junit/jogl/demos/es2/av/CrossFadePlayer.java (diff)
The file was modifiedsrc/jogl/classes/com/jogamp/opengl/util/av/GLMediaPlayer.java (diff)
The file was modifiedsrc/jogl/classes/com/jogamp/opengl/util/texture/TextureSequence.java (diff)