Settings for iOS/macOS

This commit is contained in:
Arkadiusz Fal
2021-09-25 10:18:22 +02:00
parent 433725c5e8
commit a7da3b9468
64 changed files with 1998 additions and 665 deletions

31
Model/PlaybackModel.swift Normal file
View File

@@ -0,0 +1,31 @@
import CoreMedia
import Foundation
final class PlaybackModel: ObservableObject {
@Published var live = false
@Published var stream: Stream?
@Published var time: CMTime?
var aspectRatio: Double? {
let tracks = stream?.videoAsset.tracks(withMediaType: .video)
guard tracks != nil else {
return nil
}
let size: CGSize! = tracks!.first.flatMap {
tracks!.isEmpty ? nil : $0.naturalSize.applying($0.preferredTransform)
}
guard size != nil else {
return nil
}
return size.width / size.height
}
func reset() {
stream = nil
time = nil
}
}