DirectSound, CreateSoundBuffer => E_INVALIDARG



  • Hi,

    immer wenn ich einen sekundären Soundbuffer per CreateSoundBuffer erstellen möchte gibt mir die Methode E_INVALIDARG zurück. Worin liegt das Problem??! Stehe momentan wirklich an...

    LPDIRECTSOUNDBUFFER dsBuffer=0;
    DSBUFFERDESC dsBufferDesc;
    WAVEFORMATEX waveform;
    
    dsBufferDesc.dwFlags = DSBCAPS_STICKYFOCUS;
    dsBufferDesc.dwBufferBytes = 640;
    init_waveformat(&waveform);
    dsBufferDesc.lpwfxFormat = &waveform;
    dsBufferDesc.dwSize = sizeof(dsBufferDesc);
    
    HRESULT hr = dsDSound->CreateSoundBuffer((LPCDSBUFFERDESC)&dsBufferDesc,&dsBuffer,NULL);
    

    hr ist imme E_INVALIDARG.

    waveform ist 16000Hz, 16bit/sample, mono. dsDSound ist der Pointer zum DirectSound Interface einer Engine. Diese benutzt DirectSound 7.

    Danke für eure Hilfe!


Anmelden zum Antworten