diff --git a/source-code/source/plugins/DivaSound/src/dllmain.cpp b/source-code/source/plugins/DivaSound/src/dllmain.cpp index d90cf4d..3203dee 100644 --- a/source-code/source/plugins/DivaSound/src/dllmain.cpp +++ b/source-code/source/plugins/DivaSound/src/dllmain.cpp @@ -296,7 +296,7 @@ bool maInit() deviceConfig = ma_device_config_init(ma_device_type_playback); deviceConfig.playback.channels = nChannels; deviceConfig.sampleRate = 44100; - deviceConfig.bufferSizeInMilliseconds = requestBuffer; // actual result may be larger + deviceConfig.periodSizeInMilliseconds = requestBuffer; // actual result may be larger deviceConfig.periods = nPeriods; deviceConfig.dataCallback = audioCallback; deviceConfig.pUserData = NULL; @@ -462,11 +462,11 @@ void hookedAudioInit(initClass *cls, uint64_t unk, uint64_t unk2) if (device.playback.internalSampleRate) { - maInternalBufferSizeInMilliseconds = device.playback.internalBufferSizeInFrames * 1000 / device.playback.internalSampleRate; // because miniaudio doesn't seem to have this - printf("[DivaSound] Output buffer size: %d (%dms at %dHz)\n", device.playback.internalBufferSizeInFrames, maInternalBufferSizeInMilliseconds, device.playback.internalSampleRate); + maInternalBufferSizeInMilliseconds = device.playback.internalPeriodSizeInFrames * 1000 / device.playback.internalSampleRate; // because miniaudio doesn't seem to have this + printf("[DivaSound] Output buffer size: %d (%dms at %dHz)\n", device.playback.internalPeriodSizeInFrames, maInternalBufferSizeInMilliseconds, device.playback.internalSampleRate); printf("[DivaSound] Buffer periods: %d\n", device.playback.internalPeriods); - divaBufSizeInFrames = device.playback.internalBufferSizeInFrames * device.sampleRate / device.playback.internalSampleRate; // +128; // 128 is just a bit extra in case resampling needs it or something. idk + divaBufSizeInFrames = device.playback.internalPeriodSizeInFrames * device.sampleRate / device.playback.internalSampleRate; // +128; // 128 is just a bit extra in case resampling needs it or something. idk divaBufSizeInMilliseconds = divaBufSizeInFrames * 1000 / device.sampleRate; printf("[DivaSound] PDAFT buffer size: %d (%dms at %dHz)\n", divaBufSizeInFrames, divaBufSizeInMilliseconds, device.sampleRate); } @@ -474,11 +474,11 @@ void hookedAudioInit(initClass *cls, uint64_t unk, uint64_t unk2) { printf("[DivaSound] Unable to determine output sample rate. Assuming 44100Hz.\n"); - maInternalBufferSizeInMilliseconds = device.playback.internalBufferSizeInFrames * 1000 / 44100; // because miniaudio doesn't seem to have this - printf("[DivaSound] Output buffer size: %d (%dms at %dHz)\n", device.playback.internalBufferSizeInFrames, maInternalBufferSizeInMilliseconds, 44100); + maInternalBufferSizeInMilliseconds = device.playback.internalPeriodSizeInFrames * 1000 / 44100; // because miniaudio doesn't seem to have this + printf("[DivaSound] Output buffer size: %d (%dms at %dHz)\n", device.playback.internalPeriodSizeInFrames, maInternalBufferSizeInMilliseconds, 44100); printf("[DivaSound] Buffer periods: %d\n", device.playback.internalPeriods); - divaBufSizeInFrames = device.playback.internalBufferSizeInFrames * device.sampleRate / 44100; + divaBufSizeInFrames = device.playback.internalPeriodSizeInFrames * device.sampleRate / 44100; divaBufSizeInMilliseconds = divaBufSizeInFrames * 1000 / device.sampleRate; printf("[DivaSound] PDAFT buffer size: %d (%dms at %dHz)\n", divaBufSizeInFrames, divaBufSizeInMilliseconds, device.sampleRate); }