aboutsummaryrefslogtreecommitdiffstats
path: root/make
Commit message (Collapse)AuthorAgeFilesLines
* TestGLContextSurfaceLockNEWT: Add GLWindow destroy @ test endSven Gothel2012-05-131-1/+1
|
* GLContext*: Remove '[set/is]Synchronized(..)' - Defaults to wait for locks: ↵Sven Gothel2012-05-131-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | 1. Drawable, 2. GLContext Remove deadlock situation where thread-1 (Animator Thread) holds the GLContext-Lock and acquires the Surface-Lock, while thread-2 (UI/Main/EDT) holds the Surface-Lock and attempts to create the GLContext and hence acquires the GLContext-Lock. A GLContext-Lock and hence makeing the GLContext current requires to hold the Surface-Lock. The prev. code acquired the locks in reverse order and allowed the deadlock as described above. This fix acquires the locks in the proper natural order 1 - Surface-Lock 2 - GLContext-Lock This fix also renders the use of the non-synchronized behavior invalid, since it is bogus not to wait for the GLContext lock where it waits for the Surface lock. It also seems nonsense not to wait for any of both locks and our code always waited for both (synchronized := true). The GLContext [set/is]Synchronized(..) methods are removed and waiting for the lock per default is the correct behavior.
* GLContext/Surface Deadlock: Add unit test, provoking deadlock w/ 2 threads, ↵glctx_deadlockSven Gothel2012-05-131-1/+2
| | | | one holding the surfaceLock acquiring ctxLock where ctx acquires the surfaceLock
* Add unit tests for gluUnProject fix (commit ↵Sven Gothel2012-05-121-1/+2
| | | | cbc77718f01a8190e1a8aa0e9afdc2a3a3403358)
* Fix regression of commit de2b129a56335262a44a05541a3ab2e35668cc6e: ↵Sven Gothel2012-05-111-1/+3
| | | | | | | | | | | | | | | ProjectFloat Matrix Multiplication of gluUnProject(..) impl. ProjectFloat's previous gluMultMatricesf(..) used row-major order, but the replacement multMatrixf(..) uses column-major order (like OpenGL, ..). Note: The replaced 'gluMultMatrixVecf' by multMatrixVecf() already used column-major order. Fix: Reverse the arguments of matrix multiplication m1 x m2 -> m2 x m1 Added proper API documentation in FloatUtil -> Column Major Order of Linear Matrix Layout
* Android: Bump version.code: 914010Sven Gothel2012-05-091-1/+1
|
* Android: Bump version.code to 0914009Sven Gothel2012-05-091-1/+1
|
* Android: Add xhdpi iconSven Gothel2012-05-092-0/+0
|
* Android: proper version.code and test manifestSven Gothel2012-05-043-3/+27
|
* Android: Cleanup Manifest, don't require touch .., Bump version.code: 4Sven Gothel2012-05-043-3/+12
|
* Bump Android version.code: 2Sven Gothel2012-05-041-1/+1
|
* Android: Fix JOGL's (NEWT) Version activity: Use Launcher, show GL versionSven Gothel2012-05-042-3/+3
|
* APK version code = 1Sven Gothel2012-05-031-1/+1
|
* Reduce APK version name to 30 charsSven Gothel2012-05-031-1/+1
|
* Android Unit Test (incomplete): Manually test new GlueGen's MainLauncherSven Gothel2012-05-032-12/+21
|
* Test script: Add commented-out CLASSPATH and cmd-line args for Broadcom testsSven Gothel2012-05-021-2/+5
|
* NEWT/OSX: Fix occasional crash 'free of non allocated object' - change ↵v2.0-rc8Sven Gothel2012-05-021-2/+2
| | | | window order on main-thread.
* test scriptsSven Gothel2012-04-271-3/+5
|
* Completing swap-interval implementation for OSX's CALayer usage. Closing Bug 555Sven Gothel2012-04-222-5/+7
| | | | | | | | | | | | - Based on Andres Colubri's initiative and commit 218d67fc0222d7709b21c45792d44501351939c4. - Reading real screen refresh rate ('stolen' from NEWT) - Properly handling swap-interval and vsync-to in native code - Increasing accuracy vsync-to to microseconds Tested manually w/ TestGearsES2AWT.
* Test: Added commented-out hacks for gdb invocation, OSX NSZombieEnabled env, ↵Sven Gothel2012-04-213-0/+7
| | | | and custom lib path; MovieCube: '-wait' to wait for debugger.
* Linux ARMel eabi: Use armv6t, soft-float - low profile to target more ↵Sven Gothel2012-04-182-1/+3
| | | | devices. Our ARMhf build is high profile.
* Adding initial Libav/FFMpeg GLMediaPlayer implementationSven Gothel2012-04-163-19/+31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | The Java classes already slipped through in commit 10935e1ec0d8ed677bc3fddfaa8cd73898a3bcbf - oops. Since we cannot provide a Libav binary (even though Google does in Android and Chrome) due to legal uncertainities .. we dynamically link to an existing Libav / FFmpeg library in a 'relaxed' manner. Ie. we allow certain recent functions to be absent to be able to run on a wider range of Libav versions. Currently tested on Debian Linux and Windows7 64bit/32bit Binaries for Win/OSX: - Windows http://ffmpeg.zeranoe.com/builds/ - OSX http://www.ffmpegx.com/ Features: - Dynamic relaxed linking to Libav (see above) - YUV420P texture lookup function shader stub (conversion to RGB) - 1-copy only (decoder buffer to texture) - simple - uses libavformat's network streaming - fixes some odd PTS values TODO: - Audio output (Should use OpenAL, duh) - Seek works poorly - Offthread multi-texture fetching for smoother animation - Maybe more pixelformat conversions
* TextureSequence Shader Support; GLMediaPlayer uses 'int' where possible; ↵Sven Gothel2012-04-163-3/+11
| | | | | | | | | | | | | General enhancments. For details about TextureSequence/GLMediaPlayer shader collaboration w/ your own shader source, see TextureSequence and TexCubeES2 / MovieSimple demo. TextureSequence allows implementations to provide their own texture lookup function which may provide color space conversion (YUV) .. or other runtime hw-accel features. Have a look at the next commit, which provides an Libav/FFMpeg implementation w/ YUV/RGB shader conversion. MovieCube adds keyboard control (Android: firm touch on display to launch keyboard, don't break it though :)
* Adding libav (ffmpeg) header file, allowing upcoming dynamic linked ↵Sven Gothel2012-04-1648-0/+13480
| | | | | | | | | | | GLMediaPlayer impl. to be compiled (LGPL terms) Libav header: libavutil 51.22.1 libavformat 53.21.0 libavcodec 53.35.0 .. just to ease our compile time setup.
* Refine GLMediaPlayer/TextureSequence, add MovieCube demo, fix minor bug in ↵Sven Gothel2012-04-114-6/+19
| | | | | | | | | | | | | | | | | | | | Texture - Add TextureSequence, base interface of GLMediaPlayer to genralize texture streams - TextureSequence / GLMediaPlayer: Use inner classes for event and texture data - getLastTexture() shall never return 'null', initialization of TextureSequence (initGLStream(..), etc) shall provide a TextureFrame w/ the stream's dimension. - GLMediaPlayerImpl.createTexImageImpl() y-flip defaults to 'false' impl. shall define y-flip, if required. - Added MovieCube demo - Fix Texture: initialize aspectRation for 'wrapping' ctor -
* Move ProjectFloat back to private, exposing basic math in FloatUtilSven Gothel2012-04-091-1/+1
| | | | | | | | - Partially reverting commit de2b129a56335262a44a05541a3ab2e35668cc6e - ProjectFloat and FloatUtil must reside in core, not util - Moved slice2float -> GlueGen's Buffers
* Adding assets-test/placeholder.txtSven Gothel2012-04-091-0/+1
|
* Fix EGL/ES types GLeglImageOES, EGLImageKHR & EGLClientBuffer - and ↵Sven Gothel2012-04-097-14/+19
| | | | | | | | | | functions: eglCreateImageKHR, eglCreatePbufferFromClientBuffer Unique typedef for: EGLConfig, EGLContext, EGLDisplay, EGLSurface, EGLNativeDisplayType, EGLNativeWindowType, EGLNativePixmapType, EGLImageKHR, GLeglImageOES and EGLSyncKHR allowing to render them individually opaque (long) and keep EGLClientBuffer as NIO buffer.
* TextureIO: Add PNG TextureProvider and TextureWriter for RGB[A]/BGR[A] - ↵Sven Gothel2012-04-073-2/+17
| | | | incl. unit tests; Test/Demos: Use PNG snapshots.
* Merge PNGJ 0.85 into namespaceSven Gothel2012-04-075-0/+338
| | | | | | | | | | | | | | | | | PNGJ Version 0.85 (1 April 2012) Apache 2.0 License http://code.google.com/p/pngj/ Merged code: - Changed namespace ar.com.hjg.pngj -> jogamp.opengl.util.pngj to avoid collision when using a different version of PNGJ. - Removed test and lossy packages and helper classes to reduce footprint. License information is added in main LICENSE.txt file.
* Remove tga textureSven Gothel2012-04-071-0/+0
|
* NullGLMediaPlayer: Use low-res PNG instead of TGA texture to save footprint. ↵Sven Gothel2012-04-075-4/+4
| | | | Move texture to jogl jar/apk for accessibility.
* GLMediaPlayer: Add (c) tag; Add NullGLMediaPlayer (dummy texture);Sven Gothel2012-04-063-1/+5
| | | | | - Factory falls back to NullGLMediaPlayer allowing to test on platforms where no player is available. - MovieSimple (c) to JogAmp since it is no more derived from the old project.
* Android MovieSimple Split: zoom and orig size for performance analysisSven Gothel2012-04-062-8/+30
|
* Split Android MovieSimple Launcher to 3Sven Gothel2012-04-042-3/+25
| | | | | | | | 00: One movie view, centered, no effects 01: Two movie views (Main + HUD) using same GLMediaPlayer [texture] and stream 02: Two movie views (Main + HUD) each using own GLMediaPlayer and stream
* Add Android API 14 GLMediaPlayer demo: MovieSimpleSven Gothel2012-04-033-0/+15
| | | | | | | | | | | | | | | | | Activity adds 2 NEWT GLWindow's in a ViewGroup, one main view and one small HUD view. Both GLWindow contain one GLEventListener playing the same stream using GLMediaPlayer one with no effect, one w/ a gradient color effect. The stream's URL is currently hardcoded 'file:///mnt/sdcard/Movies/BigBuckBunny_320x180.mp4'. Upper half of main window: - click start/pause video - drag rotate video Lower half of main window: - drag bwd/fwd in the stream (seek)
* Ant Build: Split 2nd pass in android and non-android builds. The former uses ↵Sven Gothel2012-04-032-2/+28
| | | | the Android API JAR for android specifics.
* Fix commit de2b129a56335262a44a05541a3ab2e35668cc6e - Relocation/Exposure of ↵Sven Gothel2012-04-021-0/+1
| | | | ProjectFloat
* Initial commit for AudioVideo (com.jogamp.opengl.av) rework, introducing ↵Sven Gothel2012-04-023-8/+40
| | | | | | | | Android API 14 MediaPlayer impl of GLMediaPlayer. Android API 14 MediaPlayer allows usage of OMX AL direct decode to texture via libstagefright (OMX AL usage included). Status: Untested, not working - Need to fix native OMX IL (stream detect and split) and/or GStreamer implementation.
* Remote unit tests: Include AWT unit testsSven Gothel2012-03-281-1/+1
|
* Add armhf cross build/test scriptsSven Gothel2012-03-283-0/+65
|
* minor edits: test.sh and android cross build scriptSven Gothel2012-03-272-3/+5
|
* NIODirectOnly: Remove invalid comment 'where a Buffer argument shall hold ↵Sven Gothel2012-03-261-8/+8
| | | | | | | return values', glGetPointerv, .. The PrimitiveArrayCritical JNI code takes care of copy back the primitive array data if pinpoint is not available.
* Fix EGLConfig re-use w/ different EGLDisplay handle (Triggered w/ Mesa EGL/ES)Sven Gothel2012-03-251-2/+2
| | | | | | | | | Reusing the native EGLConfig handle of another EGLDisplay is invalid, hence the EGLCapabilities cfg-handle value shall be 'refreshed' using the immutable cfg-id and the new EGLDisplay. Also fix EGLError value in createSurface() exception and don't override EGLCapabilities transparency value for a given EGLConfig ID.
* edit tests.shSven Gothel2012-03-251-5/+5
|
* X11GLXContext: Remove DEBUG_GLX_MAKECURRENTSven Gothel2012-03-251-5/+2
|
* Enhance and generalize AWT Threading* implementation; Minor changes ..Sven Gothel2012-03-251-6/+20
| | | | | | | | | | | | | | | | | | | | | | | | | Threading*: - add invoke(..) generalizing the Therading decision GLCanvas: - remove 'manual' Threading decision, simply call Threading.invoke(..) - use anonymous Runnable instances - remove drawable lock, drawable is volatile instead GLJPanel: - remove 'manual' Threading decision, simply call Threading.invoke(..) - use anonymous Runnable instances - DEBUG: Use getThreadName() prefix GLContextImpl: - Remove GLWorkerThread idle command on makeCurrent(), no holding of context in worker thread while idle. - DEBUG: Use getThreadName() prefix X11GLXContext: - DEBUG: Use getThreadName() prefix TODO: Validate whether it's OK for GLCanvas and GLJPanel to set Threading.Mode.MT as the default mode!
* Reviewed JOGL GlueGen Tags: NIODirectOnly - Removed where not technically ↵Sven Gothel2012-03-222-31/+29
| | | | | | | required. Added comment reasoning NIODirectOnly. Impacts code generation for the relaxed methods where NIODirectOnly tag is removed, i.e. it allows an array-backed Buffer object to be passed.
* Adding unit test to validate proper X11 Display closing (Bug 565)Sven Gothel2012-03-191-1/+3
| | | | | Modified Daniel Balog's unit tests, covering GLWindow (NEWT), GLCanvas (AWT) and GLPBuffer to fail immediatly when more than 1 open X11 Display is open.
* Android Tests: Using JogAmp's ActivityLauncher (gluegen commit: ↵Sven Gothel2012-03-1419-260/+176
| | | | | | | | 0cfc7847c58b51c9a26b50d905b592d1fc4c8578) - Remove jogl.android-launcher.apk in favor of generic jogamp.android-launcher.apk - All Android test code resides in jogl.test.apk (initial launcher and delegated 'real' one)