updating jme's lwjgl libs to version 2.3
http://lwjgl.org/forum/index.php?topic=3212
new files added are:
liblwjgl64.so
jinput-dx8_64.dll
jinput-raw_64.dll
the other jars/native libs will be updated.
The new libs are committed, but after some more testing i noticed, that TestMusicPlayer/TestDynamicJMESound throws a 'ByteBuffer is not direct' error.
java.lang.IllegalArgumentException: ByteBuffer is not direct
at org.lwjgl.BufferChecks.checkDirect(BufferChecks.java:98)
at org.lwjgl.openal.AL10.alBufferData(AL10.java:1042)
at com.jmex.audio.openal.OpenALStreamedAudioPlayer.stream(OpenALStreamedAudioPlayer.java:320)
Would be great if a few more people could update from svn and verify that error.
indirect buffer support is removed in lwjgl, see following threads for more info
http://lwjgl.org/forum/index.php/topic,3172.0.html
http://lwjgl.org/forum/index.php/topic,3189.0.html
Fixes for TestDynamicJMESound / TestMusicPlayer to use direct buffer.
Those seem pretty much to be the only places where createByteBufferOnHeap() was used.
Index: src/com/jmex/audio/openal/OpenALStreamedAudioPlayer.java
===================================================================
--- src/com/jmex/audio/openal/OpenALStreamedAudioPlayer.java (revision 4832)
+++ src/com/jmex/audio/openal/OpenALStreamedAudioPlayer.java (working copy)
@@ -59,7 +59,7 @@
private static int BUFFER_SIZE = 256 * 1024; // 256 KB
private int BUFFER_COUNT = 4; // 4 * 256 is ca. 1 MB in total
- private ByteBuffer dataBuffer = BufferUtils.createByteBufferOnHeap(BUFFER_SIZE);
+ private ByteBuffer dataBuffer = BufferUtils.createByteBuffer(BUFFER_SIZE);
private IntBuffer buffers = BufferUtils.createIntBuffer(BUFFER_COUNT);
private IntBuffer idBuffer = BufferUtils.createIntBuffer(1);
Index: src/com/jmex/audio/util/AudioLoader.java
===================================================================
--- src/com/jmex/audio/util/AudioLoader.java (revision 4832)
+++ src/com/jmex/audio/util/AudioLoader.java (working copy)
@@ -158,7 +158,7 @@
}
} while ( bytesRead > 0 );
int bytes = byteOut.size();
- ByteBuffer data = BufferUtils.createByteBufferOnHeap(bytes);
+ ByteBuffer data = BufferUtils.createByteBuffer(bytes);
data.put(byteOut.toByteArray());
data.flip();
return data;