From 4e06fea1353b349084f3cb9ded80e0e93444c194 Mon Sep 17 00:00:00 2001 From: Dmitry Tretyakov <76806170+tretdm@users.noreply.github.com> Date: Thu, 25 Apr 2024 16:44:55 +0700 Subject: [PATCH] Fix --- .../uk/openvk/android/legacy/utils/media/OvkMediaPlayer.java | 4 +++- ndk-modules/ovkmplayer/decoders/audiodec.cpp | 2 +- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/app/src/main/java/uk/openvk/android/legacy/utils/media/OvkMediaPlayer.java b/app/src/main/java/uk/openvk/android/legacy/utils/media/OvkMediaPlayer.java index 846921c9a..49acc1b0d 100644 --- a/app/src/main/java/uk/openvk/android/legacy/utils/media/OvkMediaPlayer.java +++ b/app/src/main/java/uk/openvk/android/legacy/utils/media/OvkMediaPlayer.java @@ -280,7 +280,7 @@ private void renderAudio(final byte[] buffer, final int length) { audio_track = new AudioTrack(AudioManager.STREAM_MUSIC, (int) track.sample_rate, ch_config, - AudioFormat.ENCODING_PCM_16BIT, length * 2, AudioTrack.MODE_STREAM); + AudioFormat.ENCODING_PCM_16BIT, length, AudioTrack.MODE_STREAM); minAudioBufferSize = AudioRecord.getMinBufferSize( (int) (track.sample_rate), @@ -352,6 +352,8 @@ private void renderVideo(final byte[] buffer, final int length) { } else { Log.d(MPLAY_TAG, "Video frame buffer is null"); } + + Thread.sleep((long) (800 / track.frame_rate)); } catch (Exception ex) { ex.printStackTrace(); } catch (OutOfMemoryError oom) { diff --git a/ndk-modules/ovkmplayer/decoders/audiodec.cpp b/ndk-modules/ovkmplayer/decoders/audiodec.cpp index 2d7a25d02..63e5c5d81 100644 --- a/ndk-modules/ovkmplayer/decoders/audiodec.cpp +++ b/ndk-modules/ovkmplayer/decoders/audiodec.cpp @@ -67,7 +67,7 @@ void *AudioDecoder::decodeInThread() { ); memcpy(gBuffer, buffer, dataSize); av_free(buffer); - gInterface->onStreamDecoding((uint8_t*)gBuffer, dataSize / 2, gStreamIndex); + gInterface->onStreamDecoding((uint8_t*)gBuffer, dataSize, gStreamIndex); } } // Free the packet that was allocated by av_read_frame