let backendFormat: OutputFormatSetting
let backend: URL?
let shouldKeepLocalFiles: Bool
-
+ let x: Int?
+ let y: Int?
+ let width: Int?
+ let height: Int?
+ let preventMove: Bool
+ let preventResize: Bool
+ let autoStart: Bool
+ let maxLength: Int
+
init(
frameRate: Int? = nil,
outputFormats: OutputFormatSetting? = nil,
self.backendFormat = backendFormat ?? CapturaSettings.backendFormat
self.backend = backend ?? CapturaSettings.backend
self.shouldKeepLocalFiles = shouldKeepLocalFiles ?? CapturaSettings.shouldKeepLocalFiles
+ x = nil
+ y = nil
+ width = nil
+ height = nil
+ preventMove = false
+ preventResize = false
+ autoStart = false
+ maxLength = 300
+ }
+
+ init(from action: RecordAction) {
+ self.frameRate = action.fps ?? CapturaSettings.frameRate
+ self.outputFormats = action.outputs ?? CapturaSettings.outputFormats
+ self.backendFormat = action.backendOutput ?? CapturaSettings.backendFormat
+ if action.skipBackend {
+ self.backend = nil
+ } else {
+ self.backend = action.backend ?? CapturaSettings.backend
+ }
+ self.shouldKeepLocalFiles = action.keepLocalFiles ?? CapturaSettings.shouldKeepLocalFiles
+ self.x = action.x
+ self.y = action.y
+ self.width = action.width
+ self.height = action.height
+ preventMove = action.preventMove ?? false
+ preventResize = action.preventResize ?? false
+ autoStart = action.autoStart ?? false
+ maxLength = action.maxLength ?? 300
}
-
+
var shouldSaveMp4: Bool {
outputFormats.shouldSaveMp4() || (shouldUseBackend && shouldUploadMp4)
}
-
+
var shouldSaveGif: Bool {
outputFormats.shouldSaveGif() || (shouldUseBackend && shouldUploadGif)
}
-
+
var shouldUploadGif: Bool {
backendFormat.shouldSaveGif()
}
-
+
var shouldUploadMp4: Bool {
backendFormat.shouldSaveMp4()
}
-
+
var shouldUseBackend: Bool {
backend != nil
}