Swiftfin/Shared/Objects/MediaComponents/SubtitleFormat.swift
Joe Kribs adec8de122
Some checks are pending
Build 🔨 / Build 🔨 (Swiftfin tvOS) (push) Waiting to run
Build 🔨 / Build 🔨 (Swiftfin) (push) Waiting to run
[Meta] 2025 Disclaimer (#1381)
2025-01-02 16:05:15 -07:00

83 lines
1.8 KiB
Swift

//
// Swiftfin is subject to the terms of the Mozilla Public
// License, v2.0. If a copy of the MPL was not distributed with this
// file, you can obtain one at https://mozilla.org/MPL/2.0/.
//
// Copyright (c) 2025 Jellyfin & Jellyfin Contributors
//
import Defaults
import JellyfinAPI
enum SubtitleFormat: String, CaseIterable, Codable, Displayable, Defaults.Serializable {
case ass
case cc_dec
case dvdsub
case dvbsub
case jacosub
case libzvbi_teletextdec
case mov_text
case mpl2
case pjs
case pgssub
case realtext
case sami
case ssa
case subrip
case subviewer
case subviewer1
case text
case ttml
case vplayer
case vtt
case xsub
var displayTitle: String {
switch self {
case .ass:
return "ASS"
case .cc_dec:
return "EIA-608"
case .dvdsub:
return "DVD Subtitle"
case .dvbsub:
return "DVB Subtitle"
case .jacosub:
return "Jacosub"
case .libzvbi_teletextdec:
return "DVB Teletext"
case .mov_text:
return "MPEG-4 Timed Text"
case .mpl2:
return "MPL2"
case .pjs:
return "Phoenix Subtitle"
case .pgssub:
return "PGS Subtitle"
case .realtext:
return "RealText"
case .sami:
return "SMI"
case .ssa:
return "SSA"
case .subrip:
return "SRT"
case .subviewer:
return "SubViewer"
case .subviewer1:
return "SubViewer1"
case .text:
return "TXT"
case .ttml:
return "TTML"
case .vplayer:
return "VPlayer"
case .vtt:
return "WebVTT"
case .xsub:
return "XSUB"
}
}
}