From 844fe63fca341e980159cc14d5fefd0ff57301c7 Mon Sep 17 00:00:00 2001 From: 0xb00bface <0xboobface@gmail.com> Date: Sat, 13 Feb 2021 18:22:12 +0100 Subject: [PATCH 1/3] Reduce some log levels --- client/src/main/resources/logback.xml | 1 + common/src/main/java/ctbrec/recorder/FFmpeg.java | 6 +++--- .../ctbrec/recorder/postprocessing/CreateContactSheet.java | 4 ++-- server/src/main/resources/logback.xml | 1 + 4 files changed, 7 insertions(+), 5 deletions(-) diff --git a/client/src/main/resources/logback.xml b/client/src/main/resources/logback.xml index edb143fe..56b66ab0 100644 --- a/client/src/main/resources/logback.xml +++ b/client/src/main/resources/logback.xml @@ -43,6 +43,7 @@ + diff --git a/common/src/main/java/ctbrec/recorder/FFmpeg.java b/common/src/main/java/ctbrec/recorder/FFmpeg.java index 2fa42f2a..f44c0ae6 100644 --- a/common/src/main/java/ctbrec/recorder/FFmpeg.java +++ b/common/src/main/java/ctbrec/recorder/FFmpeg.java @@ -46,7 +46,7 @@ public class FFmpeg { } public void exec(String[] cmdline, String[] env, File executionDir) throws IOException, InterruptedException { - LOG.debug("FFmpeg command line: {}", Arrays.toString(cmdline)); + LOG.trace("FFmpeg command line: {}", Arrays.toString(cmdline)); process = Runtime.getRuntime().exec(cmdline, env, executionDir); afterStart(); int exitCode = process.waitFor(); @@ -59,7 +59,7 @@ public class FFmpeg { } private void afterExit(int exitCode) throws IOException { - LOG.debug("FFmpeg exit code was {}", exitCode); + LOG.trace("FFmpeg exit code was {}", exitCode); ffmpegLogStream.flush(); ffmpegLogStream.close(); stdoutRedirector.setKeepGoing(false); @@ -79,7 +79,7 @@ public class FFmpeg { if (ffmpegLog == null) { ffmpegLog = File.createTempFile("ffmpeg_", ".log"); } - LOG.debug("Logging FFmpeg output to {}", ffmpegLog); + LOG.trace("Logging FFmpeg output to {}", ffmpegLog); ffmpegLog.deleteOnExit(); ffmpegLogStream = new FileOutputStream(ffmpegLog); } else { diff --git a/common/src/main/java/ctbrec/recorder/postprocessing/CreateContactSheet.java b/common/src/main/java/ctbrec/recorder/postprocessing/CreateContactSheet.java index 7ec798d2..fc85404f 100644 --- a/common/src/main/java/ctbrec/recorder/postprocessing/CreateContactSheet.java +++ b/common/src/main/java/ctbrec/recorder/postprocessing/CreateContactSheet.java @@ -78,7 +78,7 @@ public class CreateContactSheet extends AbstractPlaceholderAwarePostProcessor { output.getCanonicalPath() }; String[] cmdline = OS.getFFmpegCommand(args); - LOG.debug("Executing {} in working directory {}", Arrays.toString(cmdline), executionDir); + LOG.trace("Executing {} in working directory {}", Arrays.toString(cmdline), executionDir); File ffmpegLog = new File(System.getProperty("java.io.tmpdir"), "create_contact_sheet_" + rec.getId() + ".log"); FFmpeg ffmpeg = new FFmpeg.Builder() .logOutput(config.getSettings().logFFmpegOutput) @@ -135,7 +135,7 @@ public class CreateContactSheet extends AbstractPlaceholderAwarePostProcessor { output.getCanonicalPath() }; String[] cmdline = OS.getFFmpegCommand(args); - LOG.info("Executing {} in working directory {}", Arrays.toString(cmdline), executionDir); + LOG.trace("Executing {} in working directory {}", Arrays.toString(cmdline), executionDir); FFmpeg ffmpeg = new FFmpeg.Builder() .logOutput(config.getSettings().logFFmpegOutput) diff --git a/server/src/main/resources/logback.xml b/server/src/main/resources/logback.xml index 4fd07352..63cb0866 100644 --- a/server/src/main/resources/logback.xml +++ b/server/src/main/resources/logback.xml @@ -37,6 +37,7 @@ + From 7e3ceb29f4e5cdac6fccfcfad0057ba664c979c1 Mon Sep 17 00:00:00 2001 From: 0xb00bface <0xboobface@gmail.com> Date: Sat, 13 Feb 2021 19:50:18 +0100 Subject: [PATCH 2/3] Suppress log statement for Stream Closed --- common/src/main/java/ctbrec/io/ProcessStreamRedirector.java | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/common/src/main/java/ctbrec/io/ProcessStreamRedirector.java b/common/src/main/java/ctbrec/io/ProcessStreamRedirector.java index 2b68b8c8..61486ad4 100644 --- a/common/src/main/java/ctbrec/io/ProcessStreamRedirector.java +++ b/common/src/main/java/ctbrec/io/ProcessStreamRedirector.java @@ -4,6 +4,7 @@ import static java.util.concurrent.TimeUnit.*; import java.io.InputStream; import java.io.OutputStream; +import java.util.Objects; import java.util.concurrent.ScheduledExecutorService; import org.slf4j.Logger; @@ -37,7 +38,9 @@ public class ProcessStreamRedirector implements Runnable { executor.schedule(this, 100, MILLISECONDS); } } catch (Exception e) { - LOG.debug("Error while reading from process output stream: {}", e.getLocalizedMessage()); + if (!Objects.equals(e.getMessage(), "Stream Closed")) { + LOG.debug("Error while reading from process output stream: {}", e.getLocalizedMessage(), e); + } keepGoing = false; } } From 303485a315ee7ab84b672aaf9e2577bf2946142f Mon Sep 17 00:00:00 2001 From: 0xb00bface <0xboobface@gmail.com> Date: Sat, 13 Feb 2021 19:50:48 +0100 Subject: [PATCH 3/3] Introduce config setting for contact sheet timestamp style --- common/src/main/java/ctbrec/Settings.java | 1 + .../ctbrec/recorder/postprocessing/CreateContactSheet.java | 4 ++-- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/common/src/main/java/ctbrec/Settings.java b/common/src/main/java/ctbrec/Settings.java index 9fb7a42a..ef2a7b79 100644 --- a/common/src/main/java/ctbrec/Settings.java +++ b/common/src/main/java/ctbrec/Settings.java @@ -56,6 +56,7 @@ public class Settings { public String colorBase = "#FFFFFF"; public int concurrentRecordings = 0; public boolean confirmationForDangerousActions = false; + public String contactsheetTimestampLook = "font=sans-serif:fontcolor=white:fontsize=60:box=1:boxcolor=black@0.5:boxborderw=5"; public boolean determineResolution = false; public List disabledSites = new ArrayList<>(); public String downloadFilename = "${modelSanitizedName}-${localDateTime}"; diff --git a/common/src/main/java/ctbrec/recorder/postprocessing/CreateContactSheet.java b/common/src/main/java/ctbrec/recorder/postprocessing/CreateContactSheet.java index fc85404f..5459dcdc 100644 --- a/common/src/main/java/ctbrec/recorder/postprocessing/CreateContactSheet.java +++ b/common/src/main/java/ctbrec/recorder/postprocessing/CreateContactSheet.java @@ -102,6 +102,7 @@ public class CreateContactSheet extends AbstractPlaceholderAwarePostProcessor { int numberOfThumbs = rows * cols; long lengthInSeconds = rec.getLength().getSeconds(); double thumbnailInterval = lengthInSeconds / (double)numberOfThumbs; + String timestampLook = config.getSettings().contactsheetTimestampLook; NumberFormat nf = new DecimalFormat("000"); for (int i = 0; i < numberOfThumbs; i++) { @@ -114,8 +115,7 @@ public class CreateContactSheet extends AbstractPlaceholderAwarePostProcessor { int minutes = (int) (startTimeInSeconds % 3600 / 60); int seconds = (int) (startTimeInSeconds % 60); String timestamp = String.format("%02d\\:%02d\\:%02d", hours, minutes, seconds); - videoFilter += ",drawtext='text=" + timestamp - + ":fontcolor=white:fontsize=48:box=1:boxcolor=black@0.5:boxborderw=5:x=(w-text_w-20):y=(h-text_h-20)'"; + videoFilter += ",drawtext='text=" + timestamp + ":" + timestampLook + ":x=(w-text_w-20):y=(h-text_h-20)'"; } File input = getInputFile(rec);