diff --git a/moonlight-common/src/main/jni/moonlight-core/callbacks.c b/moonlight-common/src/main/jni/moonlight-core/callbacks.c index 531386c7..a03fc8db 100644 --- a/moonlight-common/src/main/jni/moonlight-core/callbacks.c +++ b/moonlight-common/src/main/jni/moonlight-core/callbacks.c @@ -8,8 +8,6 @@ #include #include -#define PCM_FRAME_SIZE 240 - static OpusMSDecoder* Decoder; static OPUS_MULTISTREAM_CONFIGURATION OpusConfig; @@ -226,7 +224,7 @@ int BridgeArInit(int audioConfiguration, POPUS_MULTISTREAM_CONFIGURATION opusCon } // We know ahead of time what the buffer size will be for decoded audio, so pre-allocate it - DecodedAudioBuffer = (*env)->NewGlobalRef(env, (*env)->NewByteArray(env, opusConfig->channelCount * PCM_FRAME_SIZE * sizeof(short))); + DecodedAudioBuffer = (*env)->NewGlobalRef(env, (*env)->NewByteArray(env, opusConfig->channelCount * opusConfig->samplesPerFrame * sizeof(short))); } return err; @@ -279,7 +277,7 @@ void BridgeArDecodeAndPlaySample(char* sampleData, int sampleLength) { (const unsigned char*)sampleData, sampleLength, (opus_int16*)decodedData, - PCM_FRAME_SIZE, + OpusConfig.samplesPerFrame, 0); if (decodeLen > 0) { // We must release the array elements first to ensure the data is copied before the callback diff --git a/moonlight-common/src/main/jni/moonlight-core/moonlight-common-c b/moonlight-common/src/main/jni/moonlight-core/moonlight-common-c index a7d45372..59481c08 160000 --- a/moonlight-common/src/main/jni/moonlight-core/moonlight-common-c +++ b/moonlight-common/src/main/jni/moonlight-core/moonlight-common-c @@ -1 +1 @@ -Subproject commit a7d4537274f42f30d48a7a09876d9ec4a0f70813 +Subproject commit 59481c085a7f774c5d30374636f8bc75da7c676c