From d6958ff0ce44d70b8dc199999028a399fb70c516 Mon Sep 17 00:00:00 2001 From: Brage Date: Mon, 25 Mar 2024 14:04:37 +0100 Subject: [PATCH] Adding fields --- .../converter/convert/Converter.kt | 18 +++++++++++++++++- .../dto/events_result/ConvertWorkerRequest.kt | 12 ++++++++++-- 2 files changed, 27 insertions(+), 3 deletions(-) diff --git a/apps/converter/src/main/kotlin/no/iktdev/mediaprocessing/converter/convert/Converter.kt b/apps/converter/src/main/kotlin/no/iktdev/mediaprocessing/converter/convert/Converter.kt index 5d11e19e..c4f95680 100644 --- a/apps/converter/src/main/kotlin/no/iktdev/mediaprocessing/converter/convert/Converter.kt +++ b/apps/converter/src/main/kotlin/no/iktdev/mediaprocessing/converter/convert/Converter.kt @@ -9,6 +9,7 @@ import no.iktdev.library.subtitle.reader.BaseReader import no.iktdev.library.subtitle.reader.Reader import no.iktdev.mediaprocessing.converter.ConverterEnv import no.iktdev.mediaprocessing.shared.kafka.dto.events_result.ConvertWorkerRequest +import no.iktdev.mediaprocessing.shared.kafka.dto.events_result.SubtitleFormats import java.io.File import kotlin.jvm.Throws @@ -46,7 +47,22 @@ class Converter(val referenceId: String, val eventId: String, val data: ConvertW val syncOrNotSync = syncDialogs(filtered) val exporter = Export(file, File(data.outDirectory), data.outFileBaseName) - return exporter.write(syncOrNotSync) + + return if (data.outFormats.isEmpty()) { + exporter.write(syncOrNotSync) + } else { + val exported = mutableListOf() + if (data.outFormats.contains(SubtitleFormats.SRT)) { + exported.add(exporter.writeSrt(syncOrNotSync)) + } + if (data.outFormats.contains(SubtitleFormats.SMI)) { + exported.add(exporter.writeSmi(syncOrNotSync)) + } + if (data.outFormats.contains(SubtitleFormats.VTT)) { + exported.add(exporter.writeVtt(syncOrNotSync)) + } + exported + } } diff --git a/shared/kafka/src/main/kotlin/no/iktdev/mediaprocessing/shared/kafka/dto/events_result/ConvertWorkerRequest.kt b/shared/kafka/src/main/kotlin/no/iktdev/mediaprocessing/shared/kafka/dto/events_result/ConvertWorkerRequest.kt index 43b01fb0..3e9f5205 100644 --- a/shared/kafka/src/main/kotlin/no/iktdev/mediaprocessing/shared/kafka/dto/events_result/ConvertWorkerRequest.kt +++ b/shared/kafka/src/main/kotlin/no/iktdev/mediaprocessing/shared/kafka/dto/events_result/ConvertWorkerRequest.kt @@ -12,5 +12,13 @@ data class ConvertWorkerRequest( val inputFile: String, val allowOverwrite: Boolean, val outFileBaseName: String, - val outDirectory: String -): MessageDataWrapper(status) \ No newline at end of file + val outDirectory: String, + val outFormats: List = listOf() +): MessageDataWrapper(status) + +enum class SubtitleFormats { + ASS, + SRT, + VTT, + SMI +} \ No newline at end of file