Problem with OpenAL - WaveData NullPointer

Hello,

Today i’ve started to do some things with OpenAL and i want to load a Wave-File, but if i try to load one with the WaveData Class (org.lwjgl.util.WaveData) the returned WaveData Object is a NullPointer.

Here’s my code:


package com.iceengine.audio.sound;

/**
 *
 * @author penguin
 */
import org.lwjgl.util.WaveData;
import org.lwjgl.openal.AL10;
import org.lwjgl.openal.AL;

import java.nio.IntBuffer;
import org.lwjgl.BufferUtils;
public class WaveSound implements Sound {
    private WaveData myData;
    private IntBuffer alBuffer = BufferUtils.createIntBuffer(1);
    private IntBuffer alSource = BufferUtils.createIntBuffer(1);

    public void setListener(float[] Position, float[] Velocity, float[] Orientation)
    {
        AL10.alListener3f(AL10.AL_POSITION, Position[0], Position[1], Position[2]);
        AL10.alListener3f(AL10.AL_VELOCITY, Velocity[0], Velocity[1], Velocity[2]);
        AL10.alListener3f(AL10.AL_ORIENTATION, Orientation[0], Orientation[1], Orientation[2]);
    }
    public void loadSound(String Path)
    {
        myData = WaveData.create(Path);
        AL10.alGenBuffers(alBuffer);
        System.out.println(alBuffer + " " + myData);
        System.out.println(alBuffer + " " + myData.format + " " + myData.data + " " + myData.samplerate);
        AL10.alBufferData(alBuffer.get(0), myData.format, myData.data, myData.samplerate);
        myData.dispose();
    }
    public void genSources(float[] sourcePos, float[] sourceVelocity)
    {
        AL10.alGenSources(alSource);
        AL10.alSourcei(alSource.get(0), AL10.AL_BUFFER, alBuffer.get(0));
        AL10.alSourcef(alSource.get(0), AL10.AL_PITCH, 1.0f);
        AL10.alSourcef(alSource.get(0), AL10.AL_GAIN, 1.0f);
        AL10.alSource3f(alSource.get(0), AL10.AL_POSITION, sourcePos[0], sourcePos[1], sourcePos[2]);
        AL10.alSource3f(alSource.get(0), AL10.AL_VELOCITY, sourceVelocity[0], sourceVelocity[1], sourceVelocity[2]);
    }

    public void killSource()
    {
        AL10.alDeleteBuffers(alBuffer.get(0));
        AL10.alDeleteSources(alSource.get(0));
    }

    public void init()
    {
        try {
            AL.create();
        } catch (Exception e)
        {

        }
    }
    public void startPlay()
    {
        AL10.alSourcePlay(alSource.get(0));
    }
    public void stopPlay()
    {
        AL10.alSourcePause(alSource.get(0));
    }
    public void haltPlay()
    {
        AL10.alSourceStop(alSource.get(0));
    }
}

Here’s the code how i use my class:


          WaveSound mySound = new WaveSound();
          mySound.init();
          float[] tmp = {0.0f, 0.0f, 0.0f};
          mySound.setListener(tmp, tmp, tmp);
          mySound.loadSound("hell.wav"); // hell.wav exists in Project folder, also tried with absolute path, but don't work.
          mySound.genSources(tmp, tmp);
          mySound.startPlay();

I hope someone can help me and, btw sorry for my bad english (I’m German).

Regards,
Penguin