diff --git a/apps/processer/src/main/kotlin/no/iktdev/mediaprocessing/processer/ffmpeg/FfmpegWorker.kt b/apps/processer/src/main/kotlin/no/iktdev/mediaprocessing/processer/ffmpeg/FfmpegWorker.kt index 76ff8f6e..fab7eea3 100644 --- a/apps/processer/src/main/kotlin/no/iktdev/mediaprocessing/processer/ffmpeg/FfmpegWorker.kt +++ b/apps/processer/src/main/kotlin/no/iktdev/mediaprocessing/processer/ffmpeg/FfmpegWorker.kt @@ -5,6 +5,7 @@ import com.github.pgreze.process.process import com.google.gson.Gson import kotlinx.coroutines.Dispatchers import kotlinx.coroutines.withContext +import mu.KotlinLogging import no.iktdev.exfl.coroutines.Coroutines import no.iktdev.exfl.using import no.iktdev.mediaprocessing.processer.ProcesserEnv @@ -15,6 +16,8 @@ class FfmpegWorker(val referenceId: String, val eventId: String, val info: Ffmpe val scope = Coroutines.io() val decoder = FfmpegProgressDecoder() private val outputCache = mutableListOf() + private val log = KotlinLogging.logger {} + val logFile = logDir.using("$eventId-=-${File(info.outFile).nameWithoutExtension}.log") val getOutputCache = outputCache.toList() @@ -62,17 +65,12 @@ class FfmpegWorker(val referenceId: String, val eventId: String, val info: Ffmpe stdout = Redirect.CAPTURE, stderr = Redirect.CAPTURE, consumer = { + //log.info { it } onOutputChanged(it) }, destroyForcibly = true) val result = processOp - println(Gson().toJson(result)) - if (outputCache.isEmpty()) { - result.output.forEach { - onOutputChanged(it) - } - } onOutputChanged("Received exit code: ${result.resultCode}") if (result.resultCode != 0) { listener.onError(info, result.output.joinToString("\n")) @@ -90,7 +88,7 @@ class FfmpegWorker(val referenceId: String, val eventId: String, val info: Ffmpe fun writeToLog(line: String) { logFile.printWriter().use { - it.println(line) + it.appendLine(line) } } diff --git a/shared/common/src/main/kotlin/no/iktdev/mediaprocessing/shared/common/Preference.kt b/shared/common/src/main/kotlin/no/iktdev/mediaprocessing/shared/common/Preference.kt index 62bc938a..e5d21734 100644 --- a/shared/common/src/main/kotlin/no/iktdev/mediaprocessing/shared/common/Preference.kt +++ b/shared/common/src/main/kotlin/no/iktdev/mediaprocessing/shared/common/Preference.kt @@ -38,9 +38,11 @@ class Preference { if (!prefFile.exists()) { log.info("Preference file: ${prefFile.absolutePath} does not exists...") log.info("Using default configuration") - val gson = GsonBuilder().setPrettyPrinting().create() - SharedConfig.preference.printWriter().use { out -> - out.print(gson.toJson(PreferenceDto())) + silentTry { + val gson = GsonBuilder().setPrettyPrinting().create() + SharedConfig.preference.printWriter().use { out -> + out.print(gson.toJson(PreferenceDto())) + } } return null } diff --git a/shared/common/src/main/kotlin/no/iktdev/mediaprocessing/shared/common/Utils.kt b/shared/common/src/main/kotlin/no/iktdev/mediaprocessing/shared/common/Utils.kt index 0e66bad0..ba4dbe49 100644 --- a/shared/common/src/main/kotlin/no/iktdev/mediaprocessing/shared/common/Utils.kt +++ b/shared/common/src/main/kotlin/no/iktdev/mediaprocessing/shared/common/Utils.kt @@ -64,4 +64,10 @@ fun getComputername(): String { ) return (envs + netHostname).firstOrNull() ?: "UNKNOWN_SYSTEM" +} + +fun silentTry(code: () -> Unit) { + try { + code.invoke() + } catch (_: Exception) {} } \ No newline at end of file