Remove Enable DASH setting; make DASH a last-resort format

Drop the dashEnabled toggle and its plumbing. Stream auto-selection now
keeps DASH as a candidate but ranks it strictly below progressive and
HLS formats, so DASH is only chosen when it is the only format available
(including live-stream fallback after HLS). The manual quality selector
hides DASH entirely on iOS/tvOS/macOS. Reconciles BackendSwitcher, which
previously treated HLS/DASH equally, to use the same DASH-last ranking.
This commit is contained in:
Arkadiusz Fal
2026-05-20 07:14:31 +02:00
parent 88fafc5ada
commit 6dfa63c263
9 changed files with 39 additions and 59 deletions

View File

@@ -20,7 +20,6 @@ enum SettingsKey: String, CaseIterable {
case cellularQuality
case autoplay
case backgroundPlayback
case dashEnabled
case preferredAudioLanguage
case preferredSubtitlesLanguage
case resumeAction

View File

@@ -70,19 +70,6 @@ extension SettingsManager {
}
}
/// Whether DASH streams are enabled (MPV only).
/// Disabled by default as DASH can be unreliable with some Invidious instances.
var dashEnabled: Bool {
get {
if let cached = _dashEnabled { return cached }
return bool(for: .dashEnabled, default: false)
}
set {
_dashEnabled = newValue
set(newValue, for: .dashEnabled)
}
}
var allowSoftwareDecodedFormats: Bool {
get {
if let cached = _allowSoftwareDecodedFormats { return cached }