From 0ae1a3b452a987940196fc6d5a5865ff05293e89 Mon Sep 17 00:00:00 2001 From: reusedname <155286845+reusedname@users.noreply.github.com> Date: Sat, 15 Feb 2025 15:15:12 +0500 Subject: [PATCH] Dirty fix for OutOfMemory errors Limit segment queue to 50 segments. This keeps memory consumption down in case of too low disk IO speed at the expense of recordings restarting and unwritten segments getting dropped. --- .../ctbrec/recorder/download/hls/MergedFfmpegHlsDownload.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/common/src/main/java/ctbrec/recorder/download/hls/MergedFfmpegHlsDownload.java b/common/src/main/java/ctbrec/recorder/download/hls/MergedFfmpegHlsDownload.java index afba7a28..5bea39db 100644 --- a/common/src/main/java/ctbrec/recorder/download/hls/MergedFfmpegHlsDownload.java +++ b/common/src/main/java/ctbrec/recorder/download/hls/MergedFfmpegHlsDownload.java @@ -30,7 +30,7 @@ public class MergedFfmpegHlsDownload extends AbstractHlsDownload { protected FFmpeg ffmpeg; protected Process ffmpegProcess; protected OutputStream ffmpegStdIn; - protected BlockingQueue> queue = new LinkedBlockingQueue<>(); + protected BlockingQueue> queue = new LinkedBlockingQueue<>(50); protected Lock ffmpegStreamLock = new ReentrantLock(); public String getStats() {