// // 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) 2024 Jellyfin & Jellyfin Contributors // import Defaults enum AudioCodec: String, CaseIterable, Codable, Displayable, Defaults.Serializable { case aac case ac3 case amr_nb case amr_wb case dts case dts_hd case eac3 case flac case alac case mlp case mp1 case mp2 case mp3 case nellymoser case opus case pcm_alaw case pcm_bluray case pcm_dvd case pcm_mulaw case pcm_s16be case pcm_s16le case pcm_s24be case pcm_s24le case pcm_u8 case speex case truehd case vorbis case wavpack case wmalossless case wmapro case wmav1 case wmav2 var displayTitle: String { switch self { case .aac: return "AAC" case .ac3: return "AC-3" case .amr_nb: return "AMR-NB" case .amr_wb: return "AMR-WB" case .dts: return "DTS" case .dts_hd: return "DTS-HD" case .eac3: return "E-AC-3" case .flac: return "FLAC" case .alac: return "ALAC" case .mlp: return "MLP" case .mp1: return "MP1" case .mp2: return "MP2" case .mp3: return "MP3" case .nellymoser: return "Nellymoser" case .opus: return "Opus" case .pcm_alaw: return "PCM ALAW" case .pcm_bluray: return "PCM Bluray" case .pcm_dvd: return "PCM DVD" case .pcm_mulaw: return "PCM MULAW" case .pcm_s16be: return "PCM S16BE" case .pcm_s16le: return "PCM S16LE" case .pcm_s24be: return "PCM S24BE" case .pcm_s24le: return "PCM S24LE" case .pcm_u8: return "PCM U8" case .speex: return "Speex" case .truehd: return "TrueHD" case .vorbis: return "Vorbis" case .wavpack: return "WavPack" case .wmalossless: return "WMA Lossless" case .wmapro: return "WMA Pro" case .wmav1: return "WMA V1" case .wmav2: return "WMA V2" } } }