Remove best resolution setting

This commit is contained in:
Arkadiusz Fal 2022-08-15 00:16:02 +02:00
parent 409b229dc8
commit d2cecf164d
3 changed files with 6 additions and 14 deletions

View File

@ -4,7 +4,7 @@ import Foundation
struct QualityProfile: Hashable, Identifiable, Defaults.Serializable {
static var bridge = QualityProfileBridge()
static var defaultProfile = Self(id: "default", backend: .mpv, resolution: .hd720p60, formats: [.stream])
static var highQualityProfile = Self(id: "highQuality", backend: .mpv, resolution: .best, formats: [.webm, .mp4, .av1, .avc1])
static var highQualityProfile = Self(id: "highQuality", backend: .mpv, resolution: .hd2160p60, formats: [.webm, .mp4, .av1, .avc1])
enum Format: String, CaseIterable, Identifiable, Defaults.Serializable {
case hls
@ -65,7 +65,7 @@ struct QualityProfile: Hashable, Identifiable, Defaults.Serializable {
return true
}
let resolutionMatch = !stream.resolution.isNil && (resolution == .best || (resolution.value >= stream.resolution))
let resolutionMatch = !stream.resolution.isNil && resolution.value >= stream.resolution
if resolutionMatch, formats.contains(.stream), stream.kind == .stream {
return true

View File

@ -120,7 +120,6 @@ extension Defaults.Keys {
}
enum ResolutionSetting: String, CaseIterable, Defaults.Serializable {
case best
case hd2160p60
case hd2160p30
case hd1440p60
@ -134,19 +133,12 @@ enum ResolutionSetting: String, CaseIterable, Defaults.Serializable {
case sd240p30
case sd144p30
var value: Stream.Resolution {
switch self {
case .best:
return .hd2160p60
default:
return Stream.Resolution(rawValue: rawValue)!
}
var value: Stream.Resolution! {
.init(rawValue: rawValue)
}
var description: String {
switch self {
case .best:
return "Best available quality"
case .hd2160p60:
return "4K, 60fps"
case .hd2160p30:

View File

@ -11,7 +11,7 @@ struct QualityProfileForm: View {
@State private var name = ""
@State private var backend = PlayerBackendType.mpv
@State private var resolution = ResolutionSetting.best
@State private var resolution = ResolutionSetting.hd1080p60
@State private var formats = [QualityProfile.Format]()
var qualityProfile: QualityProfile! {
@ -270,7 +270,7 @@ struct QualityProfileForm: View {
func isResolutionDisabled(_ resolution: ResolutionSetting) -> Bool {
guard backend == .appleAVPlayer else { return false }
return resolution != .best && resolution.value.height > 720
return resolution.value.height > 720
}
func initializeForm() {