update for schema 10.8.8

This commit is contained in:
Ethan Pippin 2022-12-06 21:20:52 -07:00
parent 40fca849e7
commit 16fff605bb
14 changed files with 102 additions and 117 deletions

View File

@ -270,7 +270,7 @@ public struct BaseItemDto: Codable, Identifiable {
public var timerID: String?
/// Gets or sets the trailer count.
public var trailerCount: Int32?
/// Gets or sets the type.
/// The base item kind.
public var type: BaseItemKind?
/// Gets or sets the user data for this item based on the user it's being requested for.
public var userData: UserItemDataDto?

View File

@ -12,17 +12,7 @@ import Foundation
public struct ClientCapabilitiesDto: Codable {
/// Gets or sets the app store url.
public var appStoreURL: String?
/// A MediaBrowser.Model.Dlna.DeviceProfile represents a set of metadata which determines which content a certain device is able to play.
///
/// <br />
///
/// Specifically, it defines the supported <see cref="P:MediaBrowser.Model.Dlna.DeviceProfile.ContainerProfiles">containers</see> and
///
/// <see cref="P:MediaBrowser.Model.Dlna.DeviceProfile.CodecProfiles">codecs</see> (video and/or audio, including codec profiles and levels)
///
/// the device is able to direct play (without transcoding or remuxing),
///
/// as well as which <see cref="P:MediaBrowser.Model.Dlna.DeviceProfile.TranscodingProfiles">containers/codecs to transcode to</see> in case it isn't.
/// Gets or sets the device profile.
public var deviceProfile: DeviceProfile?
/// Gets or sets the icon url.
public var iconURL: String?

View File

@ -26,7 +26,7 @@ public struct DisplayPreferencesDto: Codable, Identifiable {
public var isRememberIndexing: Bool?
/// Gets or sets a value indicating whether [remember sorting].
public var isRememberSorting: Bool?
/// Gets or sets the scroll direction.
/// An enum representing the axis that should be scrolled.
public var scrollDirection: ScrollDirection?
/// Gets or sets a value indicating whether to show backdrops on this item.
public var isShowBackdrop: Bool?
@ -34,7 +34,7 @@ public struct DisplayPreferencesDto: Codable, Identifiable {
public var isShowSidebar: Bool?
/// Gets or sets the sort by.
public var sortBy: String?
/// Gets or sets the sort order.
/// An enum representing the sorting order.
public var sortOrder: SortOrder?
/// Gets or sets the type of the view.
public var viewType: String?

View File

@ -14,4 +14,5 @@ public enum MediaStreamType: String, Codable, CaseIterable {
case video = "Video"
case subtitle = "Subtitle"
case embeddedImage = "EmbeddedImage"
case data = "Data"
}

View File

@ -12,17 +12,7 @@ import Foundation
public struct OpenLiveStreamDto: Codable {
/// Gets or sets the audio stream index.
public var audioStreamIndex: Int32?
/// A MediaBrowser.Model.Dlna.DeviceProfile represents a set of metadata which determines which content a certain device is able to play.
///
/// <br />
///
/// Specifically, it defines the supported <see cref="P:MediaBrowser.Model.Dlna.DeviceProfile.ContainerProfiles">containers</see> and
///
/// <see cref="P:MediaBrowser.Model.Dlna.DeviceProfile.CodecProfiles">codecs</see> (video and/or audio, including codec profiles and levels)
///
/// the device is able to direct play (without transcoding or remuxing),
///
/// as well as which <see cref="P:MediaBrowser.Model.Dlna.DeviceProfile.TranscodingProfiles">containers/codecs to transcode to</see> in case it isn't.
/// Gets or sets the device profile.
public var deviceProfile: DeviceProfile?
/// Gets or sets the device play protocols.
public var directPlayProtocols: [MediaProtocol]?

View File

@ -18,17 +18,7 @@ public struct PlaybackInfoDto: Codable {
public var audioStreamIndex: Int32?
/// Gets or sets a value indicating whether to auto open the live stream.
public var isAutoOpenLiveStream: Bool?
/// A MediaBrowser.Model.Dlna.DeviceProfile represents a set of metadata which determines which content a certain device is able to play.
///
/// <br />
///
/// Specifically, it defines the supported <see cref="P:MediaBrowser.Model.Dlna.DeviceProfile.ContainerProfiles">containers</see> and
///
/// <see cref="P:MediaBrowser.Model.Dlna.DeviceProfile.CodecProfiles">codecs</see> (video and/or audio, including codec profiles and levels)
///
/// the device is able to direct play (without transcoding or remuxing),
///
/// as well as which <see cref="P:MediaBrowser.Model.Dlna.DeviceProfile.TranscodingProfiles">containers/codecs to transcode to</see> in case it isn't.
/// Gets or sets the device profile.
public var deviceProfile: DeviceProfile?
/// Gets or sets a value indicating whether to enable direct play.
public var enableDirectPlay: Bool?

View File

@ -12,7 +12,7 @@ import Foundation
public struct QueueRequestDto: Codable {
/// Gets or sets the items to enqueue.
public var itemIDs: [String]?
/// Enum GroupQueueMode.
/// Gets or sets the mode in which to add the new items.
public var mode: GroupQueueMode?
public init(itemIDs: [String]? = nil, mode: GroupQueueMode? = nil) {

View File

@ -33,9 +33,7 @@ public struct SessionInfo: Codable, Identifiable {
public var lastActivityDate: Date?
/// Gets or sets the last playback check in.
public var lastPlaybackCheckIn: Date?
/// This is strictly used as a data transfer object from the api layer.
///
/// This holds information about a BaseItem in a format that is convenient for the client.
/// Gets or sets the now playing item.
public var nowPlayingItem: BaseItemDto?
public var nowPlayingQueue: [QueueItem]?
public var nowPlayingQueueFullItems: [BaseItemDto]?

View File

@ -10,7 +10,7 @@ import Foundation
/// Class SetRepeatModeRequestDto.
public struct SetRepeatModeRequestDto: Codable {
/// Enum GroupRepeatMode.
/// Gets or sets the repeat mode.
public var mode: GroupRepeatMode?
public init(mode: GroupRepeatMode? = nil) {

View File

@ -10,7 +10,7 @@ import Foundation
/// Class SetShuffleModeRequestDto.
public struct SetShuffleModeRequestDto: Codable {
/// Enum GroupShuffleMode.
/// Gets or sets the shuffle mode.
public var mode: GroupShuffleMode?
public init(mode: GroupShuffleMode? = nil) {

View File

@ -0,0 +1,37 @@
//
// jellyfin-sdk-swift 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) 2022 Jellyfin & Jellyfin Contributors
//
import Foundation
public enum TranscodeReason: String, Codable, CaseIterable {
case containerNotSupported = "ContainerNotSupported"
case videoCodecNotSupported = "VideoCodecNotSupported"
case audioCodecNotSupported = "AudioCodecNotSupported"
case subtitleCodecNotSupported = "SubtitleCodecNotSupported"
case audioIsExternal = "AudioIsExternal"
case secondaryAudioNotSupported = "SecondaryAudioNotSupported"
case videoProfileNotSupported = "VideoProfileNotSupported"
case videoLevelNotSupported = "VideoLevelNotSupported"
case videoResolutionNotSupported = "VideoResolutionNotSupported"
case videoBitDepthNotSupported = "VideoBitDepthNotSupported"
case videoFramerateNotSupported = "VideoFramerateNotSupported"
case refFramesNotSupported = "RefFramesNotSupported"
case anamorphicVideoNotSupported = "AnamorphicVideoNotSupported"
case interlacedVideoNotSupported = "InterlacedVideoNotSupported"
case audioChannelsNotSupported = "AudioChannelsNotSupported"
case audioProfileNotSupported = "AudioProfileNotSupported"
case audioSampleRateNotSupported = "AudioSampleRateNotSupported"
case audioBitDepthNotSupported = "AudioBitDepthNotSupported"
case containerBitrateExceedsLimit = "ContainerBitrateExceedsLimit"
case videoBitrateNotSupported = "VideoBitrateNotSupported"
case audioBitrateNotSupported = "AudioBitrateNotSupported"
case unknownVideoStreamInfo = "UnknownVideoStreamInfo"
case unknownAudioStreamInfo = "UnknownAudioStreamInfo"
case directPlayError = "DirectPlayError"
case videoRangeTypeNotSupported = "VideoRangeTypeNotSupported"
}

View File

@ -19,38 +19,10 @@ public struct TranscodingInfo: Codable {
public var height: Int32?
public var isAudioDirect: Bool?
public var isVideoDirect: Bool?
public var transcodeReasons: TranscodeReasons?
public var transcodeReasons: [TranscodeReason]?
public var videoCodec: String?
public var width: Int32?
public enum TranscodeReasons: String, Codable, CaseIterable {
case containerNotSupported = "ContainerNotSupported"
case videoCodecNotSupported = "VideoCodecNotSupported"
case audioCodecNotSupported = "AudioCodecNotSupported"
case subtitleCodecNotSupported = "SubtitleCodecNotSupported"
case audioIsExternal = "AudioIsExternal"
case secondaryAudioNotSupported = "SecondaryAudioNotSupported"
case videoProfileNotSupported = "VideoProfileNotSupported"
case videoLevelNotSupported = "VideoLevelNotSupported"
case videoResolutionNotSupported = "VideoResolutionNotSupported"
case videoBitDepthNotSupported = "VideoBitDepthNotSupported"
case videoFramerateNotSupported = "VideoFramerateNotSupported"
case refFramesNotSupported = "RefFramesNotSupported"
case anamorphicVideoNotSupported = "AnamorphicVideoNotSupported"
case interlacedVideoNotSupported = "InterlacedVideoNotSupported"
case audioChannelsNotSupported = "AudioChannelsNotSupported"
case audioProfileNotSupported = "AudioProfileNotSupported"
case audioSampleRateNotSupported = "AudioSampleRateNotSupported"
case audioBitDepthNotSupported = "AudioBitDepthNotSupported"
case containerBitrateExceedsLimit = "ContainerBitrateExceedsLimit"
case videoBitrateNotSupported = "VideoBitrateNotSupported"
case audioBitrateNotSupported = "AudioBitrateNotSupported"
case unknownVideoStreamInfo = "UnknownVideoStreamInfo"
case unknownAudioStreamInfo = "UnknownAudioStreamInfo"
case directPlayError = "DirectPlayError"
case videoRangeTypeNotSupported = "VideoRangeTypeNotSupported"
}
public init(
audioChannels: Int32? = nil,
audioCodec: String? = nil,
@ -62,7 +34,7 @@ public struct TranscodingInfo: Codable {
height: Int32? = nil,
isAudioDirect: Bool? = nil,
isVideoDirect: Bool? = nil,
transcodeReasons: TranscodeReasons? = nil,
transcodeReasons: [TranscodeReason]? = nil,
videoCodec: String? = nil,
width: Int32? = nil
) {
@ -93,7 +65,7 @@ public struct TranscodingInfo: Codable {
self.height = try values.decodeIfPresent(Int32.self, forKey: "Height")
self.isAudioDirect = try values.decodeIfPresent(Bool.self, forKey: "IsAudioDirect")
self.isVideoDirect = try values.decodeIfPresent(Bool.self, forKey: "IsVideoDirect")
self.transcodeReasons = try values.decodeIfPresent(TranscodeReasons.self, forKey: "TranscodeReasons")
self.transcodeReasons = try values.decodeIfPresent([TranscodeReason].self, forKey: "TranscodeReasons")
self.videoCodec = try values.decodeIfPresent(String.self, forKey: "VideoCodec")
self.width = try values.decodeIfPresent(Int32.self, forKey: "Width")
}

View File

@ -52,7 +52,7 @@ public struct UserPolicy: Codable {
public var maxParentalRating: Int32?
public var passwordResetProviderID: String?
public var remoteClientBitrateLimit: Int32?
/// Gets or sets a value indicating what SyncPlay features the user can access.
/// Enum SyncPlayUserAccessType.
public var syncPlayAccess: SyncPlayUserAccessType?
public init(

View File

@ -2,8 +2,8 @@
"openapi": "3.0.1",
"info": {
"title": "Jellyfin API",
"version": "10.8.4",
"x-jellyfin-version": "10.8.4"
"version": "10.8.8",
"x-jellyfin-version": "10.8.8"
},
"servers": [
{
@ -24228,7 +24228,7 @@
"security": [
{
"CustomAuthentication": [
"DefaultAuthorization"
"RequiresElevation"
]
}
]
@ -45013,7 +45013,7 @@
"$ref": "#/components/schemas/BaseItemKind"
}
],
"description": "Gets or sets the type."
"description": "The base item kind."
},
"People": {
"type": "array",
@ -46365,7 +46365,7 @@
"$ref": "#/components/schemas/DeviceProfile"
}
],
"description": "A MediaBrowser.Model.Dlna.DeviceProfile represents a set of metadata which determines which content a certain device is able to play.\r\n<br />\r\nSpecifically, it defines the supported <see cref=\"P:MediaBrowser.Model.Dlna.DeviceProfile.ContainerProfiles\">containers</see> and\r\n<see cref=\"P:MediaBrowser.Model.Dlna.DeviceProfile.CodecProfiles\">codecs</see> (video and/or audio, including codec profiles and levels)\r\nthe device is able to direct play (without transcoding or remuxing),\r\nas well as which <see cref=\"P:MediaBrowser.Model.Dlna.DeviceProfile.TranscodingProfiles\">containers/codecs to transcode to</see> in case it isn't.",
"description": "Gets or sets the device profile.",
"nullable": true
},
"AppStoreUrl": {
@ -47230,7 +47230,7 @@
"$ref": "#/components/schemas/ScrollDirection"
}
],
"description": "Gets or sets the scroll direction."
"description": "An enum representing the axis that should be scrolled."
},
"ShowBackdrop": {
"type": "boolean",
@ -47246,7 +47246,7 @@
"$ref": "#/components/schemas/SortOrder"
}
],
"description": "Gets or sets the sort order."
"description": "An enum representing the sorting order."
},
"ShowSidebar": {
"type": "boolean",
@ -49788,7 +49788,8 @@
"Audio",
"Video",
"Subtitle",
"EmbeddedImage"
"EmbeddedImage",
"Data"
],
"type": "string",
"description": "Enum MediaStreamType."
@ -50692,7 +50693,7 @@
"$ref": "#/components/schemas/DeviceProfile"
}
],
"description": "A MediaBrowser.Model.Dlna.DeviceProfile represents a set of metadata which determines which content a certain device is able to play.\r\n<br />\r\nSpecifically, it defines the supported <see cref=\"P:MediaBrowser.Model.Dlna.DeviceProfile.ContainerProfiles\">containers</see> and\r\n<see cref=\"P:MediaBrowser.Model.Dlna.DeviceProfile.CodecProfiles\">codecs</see> (video and/or audio, including codec profiles and levels)\r\nthe device is able to direct play (without transcoding or remuxing),\r\nas well as which <see cref=\"P:MediaBrowser.Model.Dlna.DeviceProfile.TranscodingProfiles\">containers/codecs to transcode to</see> in case it isn't.",
"description": "Gets or sets the device profile.",
"nullable": true
},
"DirectPlayProtocols": {
@ -50972,7 +50973,7 @@
"$ref": "#/components/schemas/DeviceProfile"
}
],
"description": "A MediaBrowser.Model.Dlna.DeviceProfile represents a set of metadata which determines which content a certain device is able to play.\r\n<br />\r\nSpecifically, it defines the supported <see cref=\"P:MediaBrowser.Model.Dlna.DeviceProfile.ContainerProfiles\">containers</see> and\r\n<see cref=\"P:MediaBrowser.Model.Dlna.DeviceProfile.CodecProfiles\">codecs</see> (video and/or audio, including codec profiles and levels)\r\nthe device is able to direct play (without transcoding or remuxing),\r\nas well as which <see cref=\"P:MediaBrowser.Model.Dlna.DeviceProfile.TranscodingProfiles\">containers/codecs to transcode to</see> in case it isn't.",
"description": "Gets or sets the device profile.",
"nullable": true
},
"EnableDirectPlay": {
@ -51855,7 +51856,7 @@
"$ref": "#/components/schemas/GroupQueueMode"
}
],
"description": "Enum GroupQueueMode."
"description": "Gets or sets the mode in which to add the new items."
}
},
"additionalProperties": false,
@ -53217,7 +53218,7 @@
"$ref": "#/components/schemas/BaseItemDto"
}
],
"description": "This is strictly used as a data transfer object from the api layer.\r\nThis holds information about a BaseItem in a format that is convenient for the client.",
"description": "Gets or sets the now playing item.",
"nullable": true
},
"FullNowPlayingItem": {
@ -53413,7 +53414,7 @@
"$ref": "#/components/schemas/GroupRepeatMode"
}
],
"description": "Enum GroupRepeatMode."
"description": "Gets or sets the repeat mode."
}
},
"additionalProperties": false,
@ -53428,7 +53429,7 @@
"$ref": "#/components/schemas/GroupShuffleMode"
}
],
"description": "Enum GroupShuffleMode."
"description": "Gets or sets the shuffle mode."
}
},
"additionalProperties": false,
@ -54327,6 +54328,36 @@
},
"additionalProperties": false
},
"TranscodeReason": {
"enum": [
"ContainerNotSupported",
"VideoCodecNotSupported",
"AudioCodecNotSupported",
"SubtitleCodecNotSupported",
"AudioIsExternal",
"SecondaryAudioNotSupported",
"VideoProfileNotSupported",
"VideoLevelNotSupported",
"VideoResolutionNotSupported",
"VideoBitDepthNotSupported",
"VideoFramerateNotSupported",
"RefFramesNotSupported",
"AnamorphicVideoNotSupported",
"InterlacedVideoNotSupported",
"AudioChannelsNotSupported",
"AudioProfileNotSupported",
"AudioSampleRateNotSupported",
"AudioBitDepthNotSupported",
"ContainerBitrateExceedsLimit",
"VideoBitrateNotSupported",
"AudioBitrateNotSupported",
"UnknownVideoStreamInfo",
"UnknownAudioStreamInfo",
"DirectPlayError",
"VideoRangeTypeNotSupported"
],
"type": "string"
},
"TranscodeSeekInfo": {
"enum": [
"Auto",
@ -54394,34 +54425,10 @@
"nullable": true
},
"TranscodeReasons": {
"enum": [
"ContainerNotSupported",
"VideoCodecNotSupported",
"AudioCodecNotSupported",
"SubtitleCodecNotSupported",
"AudioIsExternal",
"SecondaryAudioNotSupported",
"VideoProfileNotSupported",
"VideoLevelNotSupported",
"VideoResolutionNotSupported",
"VideoBitDepthNotSupported",
"VideoFramerateNotSupported",
"RefFramesNotSupported",
"AnamorphicVideoNotSupported",
"InterlacedVideoNotSupported",
"AudioChannelsNotSupported",
"AudioProfileNotSupported",
"AudioSampleRateNotSupported",
"AudioBitDepthNotSupported",
"ContainerBitrateExceedsLimit",
"VideoBitrateNotSupported",
"AudioBitrateNotSupported",
"UnknownVideoStreamInfo",
"UnknownAudioStreamInfo",
"DirectPlayError",
"VideoRangeTypeNotSupported"
],
"type": "string"
"type": "array",
"items": {
"$ref": "#/components/schemas/TranscodeReason"
}
}
},
"additionalProperties": false
@ -55163,7 +55170,7 @@
"$ref": "#/components/schemas/SyncPlayUserAccessType"
}
],
"description": "Gets or sets a value indicating what SyncPlay features the user can access."
"description": "Enum SyncPlayUserAccessType."
}
},
"additionalProperties": false