From 1d3d88d912440853f7872480ffe5e6e95197d6f2 Mon Sep 17 00:00:00 2001 From: Roman Herbstmann Date: Fri, 11 Sep 2026 16:15:04 +0200 Subject: [PATCH] fix: keep encoders running in stopStream while a recording is starting or paused Co-authored-by: Cursor --- library/src/main/java/com/pedro/library/base/Camera1Base.java | 2 +- library/src/main/java/com/pedro/library/base/Camera2Base.java | 2 +- library/src/main/java/com/pedro/library/base/DisplayBase.java | 2 +- library/src/main/java/com/pedro/library/base/FromFileBase.java | 2 +- library/src/main/java/com/pedro/library/base/OnlyAudioBase.java | 2 +- 5 files changed, 5 insertions(+), 5 deletions(-) diff --git a/library/src/main/java/com/pedro/library/base/Camera1Base.java b/library/src/main/java/com/pedro/library/base/Camera1Base.java index 55095cb2e3..af7dd04026 100644 --- a/library/src/main/java/com/pedro/library/base/Camera1Base.java +++ b/library/src/main/java/com/pedro/library/base/Camera1Base.java @@ -766,7 +766,7 @@ public void stopStream() { streaming = false; stopStreamImp(); } - if (!recordController.isRecording()) { + if (!recordController.isRunning()) { if (audioInitialized) microphoneManager.stop(); if (glInterface != null && Build.VERSION.SDK_INT >= 18) { glInterface.removeMediaCodecSurface(); diff --git a/library/src/main/java/com/pedro/library/base/Camera2Base.java b/library/src/main/java/com/pedro/library/base/Camera2Base.java index c66dfc4ac3..b54cf08fc2 100644 --- a/library/src/main/java/com/pedro/library/base/Camera2Base.java +++ b/library/src/main/java/com/pedro/library/base/Camera2Base.java @@ -776,7 +776,7 @@ public void stopStream() { streaming = false; stopStreamImp(); } - if (!recordController.isRecording()) { + if (!recordController.isRunning()) { onPreview = !isBackground; if (audioInitialized) microphoneManager.stop(); glInterface.removeMediaCodecSurface(); diff --git a/library/src/main/java/com/pedro/library/base/DisplayBase.java b/library/src/main/java/com/pedro/library/base/DisplayBase.java index cabae172ad..9ad3dd008b 100644 --- a/library/src/main/java/com/pedro/library/base/DisplayBase.java +++ b/library/src/main/java/com/pedro/library/base/DisplayBase.java @@ -430,7 +430,7 @@ public void stopStream() { streaming = false; stopStreamImp(); } - if (!recordController.isRecording()) { + if (!recordController.isRunning()) { if (audioInitialized) microphoneManager.stop(); if (mediaProjection != null) { mediaProjection.stop(); diff --git a/library/src/main/java/com/pedro/library/base/FromFileBase.java b/library/src/main/java/com/pedro/library/base/FromFileBase.java index ac742c7c06..a9292616e1 100644 --- a/library/src/main/java/com/pedro/library/base/FromFileBase.java +++ b/library/src/main/java/com/pedro/library/base/FromFileBase.java @@ -483,7 +483,7 @@ public void stopStream() { streaming = false; stopStreamImp(); } - if (!recordController.isRecording()) { + if (!recordController.isRunning()) { if (glInterface != null) { glInterface.removeMediaCodecSurface(); glInterface.stop(); diff --git a/library/src/main/java/com/pedro/library/base/OnlyAudioBase.java b/library/src/main/java/com/pedro/library/base/OnlyAudioBase.java index dcf4b7c12b..46aafa933c 100644 --- a/library/src/main/java/com/pedro/library/base/OnlyAudioBase.java +++ b/library/src/main/java/com/pedro/library/base/OnlyAudioBase.java @@ -208,7 +208,7 @@ public void stopStream() { streaming = false; stopStreamImp(); } - if (!recordController.isRecording()) { + if (!recordController.isRunning()) { microphoneManager.stop(); audioEncoder.stop(); recordController.resetFormats();