You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
37 lines
1.0 KiB
37 lines
1.0 KiB
import DesignSystem
|
|
import NDIKit
|
|
import OSLog
|
|
import SwiftUI
|
|
|
|
@main
|
|
struct MusubiApp: App {
|
|
@State private var sourceList = SourceListModel()
|
|
@State private var coordinator: Coordinator = {
|
|
MainActor.assumeIsolated {
|
|
Coordinator(settings: AppSettings(), outputs: OutputController(), audio: AudioController())
|
|
}
|
|
}()
|
|
|
|
var body: some SwiftUI.Scene {
|
|
Window("Musubi", id: "main") {
|
|
ContentView(sourceList: sourceList, coordinator: coordinator)
|
|
.preferredColorScheme(.dark)
|
|
.task {
|
|
sourceList.start()
|
|
await coordinator.start()
|
|
}
|
|
}
|
|
.defaultSize(width: 960, height: 600)
|
|
|
|
Settings {
|
|
SettingsView(coordinator: coordinator)
|
|
.preferredColorScheme(.dark)
|
|
}
|
|
}
|
|
}
|
|
|
|
enum Log {
|
|
static let ndi = Logger(subsystem: "studio.zielke.musubi", category: "ndi")
|
|
static let audio = Logger(subsystem: "studio.zielke.musubi", category: "audio")
|
|
}
|