// // VideosAPI.swift // // Generated by swagger-codegen // https://github.com/swagger-api/swagger-codegen // import Foundation import Alamofire open class VideosAPI { /** Removes alternate video sources. - parameter itemId: (path) The item id. - parameter completion: completion handler to receive the data and the error objects */ open class func deleteAlternateSources(itemId: UUID, completion: @escaping ((_ data: Void?,_ error: Error?) -> Void)) { deleteAlternateSourcesWithRequestBuilder(itemId: itemId).execute { (response, error) -> Void in if error == nil { completion((), error) } else { completion(nil, error) } } } /** Removes alternate video sources. - DELETE /Videos/{itemId}/AlternateSources - - API Key: - type: apiKey X-Emby-Authorization - name: CustomAuthentication - parameter itemId: (path) The item id. - returns: RequestBuilder */ open class func deleteAlternateSourcesWithRequestBuilder(itemId: UUID) -> RequestBuilder { var path = "/Videos/{itemId}/AlternateSources" let itemIdPreEscape = "\(itemId)" let itemIdPostEscape = itemIdPreEscape.addingPercentEncoding(withAllowedCharacters: .urlPathAllowed) ?? "" path = path.replacingOccurrences(of: "{itemId}", with: itemIdPostEscape, options: .literal, range: nil) let URLString = SwaggerClientAPI.basePath + path let parameters: [String:Any]? = nil let url = URLComponents(string: URLString) let requestBuilder: RequestBuilder.Type = SwaggerClientAPI.requestBuilderFactory.getNonDecodableBuilder() return requestBuilder.init(method: "DELETE", URLString: (url?.string ?? URLString), parameters: parameters, isBody: false) } /** Gets additional parts for a video. - parameter itemId: (path) The item id. - parameter userId: (query) Optional. Filter by user id, and attach user data. (optional) - parameter completion: completion handler to receive the data and the error objects */ open class func getAdditionalPart(itemId: UUID, userId: UUID? = nil, completion: @escaping ((_ data: BaseItemDtoQueryResult?,_ error: Error?) -> Void)) { getAdditionalPartWithRequestBuilder(itemId: itemId, userId: userId).execute { (response, error) -> Void in completion(response?.body, error) } } /** Gets additional parts for a video. - GET /Videos/{itemId}/AdditionalParts - - API Key: - type: apiKey X-Emby-Authorization - name: CustomAuthentication - examples: [{contentType=application/json, example={ "TotalRecordCount" : 7, "StartIndex" : 5, "Items" : [ { "SeasonName" : "SeasonName", "PremiereDate" : "2000-01-23T04:56:07.000+00:00", "CriticRating" : 9.018348, "AirTime" : "AirTime", "Studios" : [ { "Id" : "046b6c7f-0b8a-43b9-b35d-6489e6daee91", "Name" : "Name" }, { "Id" : "046b6c7f-0b8a-43b9-b35d-6489e6daee91", "Name" : "Name" } ], "CameraMake" : "CameraMake", "Aperture" : 1.041444916118296, "ChannelPrimaryImageTag" : "ChannelPrimaryImageTag", "ExtraType" : "ExtraType", "ParentBackdropItemId" : "ParentBackdropItemId", "Etag" : "Etag", "ParentLogoImageTag" : "ParentLogoImageTag", "ExposureTime" : 6.628464275087742, "IsoType" : "", "MediaType" : "MediaType", "Tags" : [ "Tags", "Tags" ], "ImageBlurHashes" : { "Art" : { "key" : "Art" }, "Banner" : { "key" : "Banner" }, "Thumb" : { "key" : "Thumb" }, "Chapter" : { "key" : "Chapter" }, "BoxRear" : { "key" : "BoxRear" }, "Box" : { "key" : "Box" }, "Profile" : { "key" : "Profile" }, "Logo" : { "key" : "Logo" }, "Disc" : { "key" : "Disc" }, "Primary" : { "key" : "Primary" }, "Screenshot" : { "key" : "Screenshot" }, "Backdrop" : { "key" : "Backdrop" }, "Menu" : { "key" : "Menu" } }, "Status" : "Status", "IndexNumberEnd" : 6, "ArtistItems" : [ null, null ], "MediaSources" : [ { "EncoderPath" : "EncoderPath", "RequiredHttpHeaders" : { "key" : "RequiredHttpHeaders" }, "RunTimeTicks" : 5, "MediaStreams" : [ { "VideoRange" : "VideoRange", "CodecTimeBase" : "CodecTimeBase", "ColorSpace" : "ColorSpace", "Index" : 7, "ColorRange" : "ColorRange", "localizedForced" : "localizedForced", "BitDepth" : 9, "Channels" : 4, "Profile" : "Profile", "SupportsExternalStream" : true, "localizedDefault" : "localizedDefault", "DeliveryUrl" : "DeliveryUrl", "Codec" : "Codec", "ColorPrimaries" : "ColorPrimaries", "SampleRate" : 7, "Language" : "Language", "IsTextSubtitleStream" : true, "IsAnamorphic" : true, "NalLengthSize" : "NalLengthSize", "Height" : 1, "PixelFormat" : "PixelFormat", "RefFrames" : 3, "IsAVC" : true, "Width" : 1, "TimeBase" : "TimeBase", "ColorTransfer" : "ColorTransfer", "CodecTag" : "CodecTag", "IsDefault" : true, "Path" : "Path", "Comment" : "Comment", "DeliveryMethod" : "", "IsExternalUrl" : true, "DisplayTitle" : "DisplayTitle", "IsForced" : true, "ChannelLayout" : "ChannelLayout", "localizedUndefined" : "localizedUndefined", "PacketLength" : 2, "Title" : "Title", "RealFrameRate" : 6.846853, "AspectRatio" : "AspectRatio", "AverageFrameRate" : 1.4894159, "Type" : "", "Score" : 1, "IsExternal" : true, "IsInterlaced" : true, "Level" : 4.965218492984954, "BitRate" : 7 }, { "VideoRange" : "VideoRange", "CodecTimeBase" : "CodecTimeBase", "ColorSpace" : "ColorSpace", "Index" : 7, "ColorRange" : "ColorRange", "localizedForced" : "localizedForced", "BitDepth" : 9, "Channels" : 4, "Profile" : "Profile", "SupportsExternalStream" : true, "localizedDefault" : "localizedDefault", "DeliveryUrl" : "DeliveryUrl", "Codec" : "Codec", "ColorPrimaries" : "ColorPrimaries", "SampleRate" : 7, "Language" : "Language", "IsTextSubtitleStream" : true, "IsAnamorphic" : true, "NalLengthSize" : "NalLengthSize", "Height" : 1, "PixelFormat" : "PixelFormat", "RefFrames" : 3, "IsAVC" : true, "Width" : 1, "TimeBase" : "TimeBase", "ColorTransfer" : "ColorTransfer", "CodecTag" : "CodecTag", "IsDefault" : true, "Path" : "Path", "Comment" : "Comment", "DeliveryMethod" : "", "IsExternalUrl" : true, "DisplayTitle" : "DisplayTitle", "IsForced" : true, "ChannelLayout" : "ChannelLayout", "localizedUndefined" : "localizedUndefined", "PacketLength" : 2, "Title" : "Title", "RealFrameRate" : 6.846853, "AspectRatio" : "AspectRatio", "AverageFrameRate" : 1.4894159, "Type" : "", "Score" : 1, "IsExternal" : true, "IsInterlaced" : true, "Level" : 4.965218492984954, "BitRate" : 7 } ], "Size" : 5, "Video3DFormat" : "", "BufferMs" : 2, "Timestamp" : "", "Name" : "Name", "RequiresOpening" : true, "SupportsDirectStream" : true, "VideoType" : "", "RequiresClosing" : true, "Container" : "Container", "IsoType" : "", "LiveStreamId" : "LiveStreamId", "RequiresLooping" : true, "Protocol" : "", "DefaultSubtitleStreamIndex" : 8, "GenPtsInput" : true, "IsInfiniteStream" : true, "Path" : "Path", "IsRemote" : true, "EncoderProtocol" : "", "IgnoreIndex" : true, "SupportsDirectPlay" : true, "TranscodingSubProtocol" : "TranscodingSubProtocol", "Formats" : [ "Formats", "Formats" ], "AnalyzeDurationMs" : 9, "Bitrate" : 9, "OpenToken" : "OpenToken", "SupportsProbing" : true, "Type" : "", "MediaAttachments" : [ { "CodecTag" : "CodecTag", "Comment" : "Comment", "DeliveryUrl" : "DeliveryUrl", "Codec" : "Codec", "FileName" : "FileName", "Index" : 5, "MimeType" : "MimeType" }, { "CodecTag" : "CodecTag", "Comment" : "Comment", "DeliveryUrl" : "DeliveryUrl", "Codec" : "Codec", "FileName" : "FileName", "Index" : 5, "MimeType" : "MimeType" } ], "ReadAtNativeFramerate" : true, "ETag" : "ETag", "TranscodingContainer" : "TranscodingContainer", "IgnoreDts" : true, "TranscodingUrl" : "TranscodingUrl", "Id" : "Id", "SupportsTranscoding" : true, "DefaultAudioStreamIndex" : 6 }, { "EncoderPath" : "EncoderPath", "RequiredHttpHeaders" : { "key" : "RequiredHttpHeaders" }, "RunTimeTicks" : 5, "MediaStreams" : [ { "VideoRange" : "VideoRange", "CodecTimeBase" : "CodecTimeBase", "ColorSpace" : "ColorSpace", "Index" : 7, "ColorRange" : "ColorRange", "localizedForced" : "localizedForced", "BitDepth" : 9, "Channels" : 4, "Profile" : "Profile", "SupportsExternalStream" : true, "localizedDefault" : "localizedDefault", "DeliveryUrl" : "DeliveryUrl", "Codec" : "Codec", "ColorPrimaries" : "ColorPrimaries", "SampleRate" : 7, "Language" : "Language", "IsTextSubtitleStream" : true, "IsAnamorphic" : true, "NalLengthSize" : "NalLengthSize", "Height" : 1, "PixelFormat" : "PixelFormat", "RefFrames" : 3, "IsAVC" : true, "Width" : 1, "TimeBase" : "TimeBase", "ColorTransfer" : "ColorTransfer", "CodecTag" : "CodecTag", "IsDefault" : true, "Path" : "Path", "Comment" : "Comment", "DeliveryMethod" : "", "IsExternalUrl" : true, "DisplayTitle" : "DisplayTitle", "IsForced" : true, "ChannelLayout" : "ChannelLayout", "localizedUndefined" : "localizedUndefined", "PacketLength" : 2, "Title" : "Title", "RealFrameRate" : 6.846853, "AspectRatio" : "AspectRatio", "AverageFrameRate" : 1.4894159, "Type" : "", "Score" : 1, "IsExternal" : true, "IsInterlaced" : true, "Level" : 4.965218492984954, "BitRate" : 7 }, { "VideoRange" : "VideoRange", "CodecTimeBase" : "CodecTimeBase", "ColorSpace" : "ColorSpace", "Index" : 7, "ColorRange" : "ColorRange", "localizedForced" : "localizedForced", "BitDepth" : 9, "Channels" : 4, "Profile" : "Profile", "SupportsExternalStream" : true, "localizedDefault" : "localizedDefault", "DeliveryUrl" : "DeliveryUrl", "Codec" : "Codec", "ColorPrimaries" : "ColorPrimaries", "SampleRate" : 7, "Language" : "Language", "IsTextSubtitleStream" : true, "IsAnamorphic" : true, "NalLengthSize" : "NalLengthSize", "Height" : 1, "PixelFormat" : "PixelFormat", "RefFrames" : 3, "IsAVC" : true, "Width" : 1, "TimeBase" : "TimeBase", "ColorTransfer" : "ColorTransfer", "CodecTag" : "CodecTag", "IsDefault" : true, "Path" : "Path", "Comment" : "Comment", "DeliveryMethod" : "", "IsExternalUrl" : true, "DisplayTitle" : "DisplayTitle", "IsForced" : true, "ChannelLayout" : "ChannelLayout", "localizedUndefined" : "localizedUndefined", "PacketLength" : 2, "Title" : "Title", "RealFrameRate" : 6.846853, "AspectRatio" : "AspectRatio", "AverageFrameRate" : 1.4894159, "Type" : "", "Score" : 1, "IsExternal" : true, "IsInterlaced" : true, "Level" : 4.965218492984954, "BitRate" : 7 } ], "Size" : 5, "Video3DFormat" : "", "BufferMs" : 2, "Timestamp" : "", "Name" : "Name", "RequiresOpening" : true, "SupportsDirectStream" : true, "VideoType" : "", "RequiresClosing" : true, "Container" : "Container", "IsoType" : "", "LiveStreamId" : "LiveStreamId", "RequiresLooping" : true, "Protocol" : "", "DefaultSubtitleStreamIndex" : 8, "GenPtsInput" : true, "IsInfiniteStream" : true, "Path" : "Path", "IsRemote" : true, "EncoderProtocol" : "", "IgnoreIndex" : true, "SupportsDirectPlay" : true, "TranscodingSubProtocol" : "TranscodingSubProtocol", "Formats" : [ "Formats", "Formats" ], "AnalyzeDurationMs" : 9, "Bitrate" : 9, "OpenToken" : "OpenToken", "SupportsProbing" : true, "Type" : "", "MediaAttachments" : [ { "CodecTag" : "CodecTag", "Comment" : "Comment", "DeliveryUrl" : "DeliveryUrl", "Codec" : "Codec", "FileName" : "FileName", "Index" : 5, "MimeType" : "MimeType" }, { "CodecTag" : "CodecTag", "Comment" : "Comment", "DeliveryUrl" : "DeliveryUrl", "Codec" : "Codec", "FileName" : "FileName", "Index" : 5, "MimeType" : "MimeType" } ], "ReadAtNativeFramerate" : true, "ETag" : "ETag", "TranscodingContainer" : "TranscodingContainer", "IgnoreDts" : true, "TranscodingUrl" : "TranscodingUrl", "Id" : "Id", "SupportsTranscoding" : true, "DefaultAudioStreamIndex" : 6 } ], "GenreItems" : [ null, null ], "OfficialRating" : "OfficialRating", "ProgramCount" : 7, "ProgramId" : "ProgramId", "Longitude" : 9.132027271330688, "LockData" : true, "FocalLength" : 4.258773108174356, "IsNews" : true, "ShutterSpeed" : 4.678947989005849, "Id" : "046b6c7f-0b8a-43b9-b35d-6489e6daee91", "IsFolder" : true, "SeriesTimerId" : "SeriesTimerId", "SeriesId" : "046b6c7f-0b8a-43b9-b35d-6489e6daee91", "MediaStreams" : [ null, null ], "IsPlaceHolder" : true, "CanDownload" : true, "SeriesCount" : 8, "IsMovie" : true, "DateLastMediaAdded" : "2000-01-23T04:56:07.000+00:00", "ParentArtImageTag" : "ParentArtImageTag", "PlayAccess" : "", "SeriesStudio" : "SeriesStudio", "IsLive" : true, "Width" : 4, "ExternalUrls" : [ { "Url" : "Url", "Name" : "Name" }, { "Url" : "Url", "Name" : "Name" } ], "RecursiveItemCount" : 6, "Path" : "Path", "ParentId" : "046b6c7f-0b8a-43b9-b35d-6489e6daee91", "MusicVideoCount" : 3, "ScreenshotImageTags" : [ "ScreenshotImageTags", "ScreenshotImageTags" ], "EpisodeCount" : 3, "IsSeries" : true, "ProductionLocations" : [ "ProductionLocations", "ProductionLocations" ], "ParentPrimaryImageItemId" : "ParentPrimaryImageItemId", "EndDate" : "2000-01-23T04:56:07.000+00:00", "SeriesPrimaryImageTag" : "SeriesPrimaryImageTag", "ParentThumbItemId" : "ParentThumbItemId", "PreferredMetadataLanguage" : "PreferredMetadataLanguage", "Type" : "Type", "BackdropImageTags" : [ "BackdropImageTags", "BackdropImageTags" ], "ParentBackdropImageTags" : [ "ParentBackdropImageTags", "ParentBackdropImageTags" ], "AirsBeforeEpisodeNumber" : 1, "ChildCount" : 3, "Audio" : "", "Artists" : [ "Artists", "Artists" ], "ChannelType" : "", "RunTimeTicks" : 6, "AlbumPrimaryImageTag" : "AlbumPrimaryImageTag", "Video3DFormat" : "", "CumulativeRunTimeTicks" : 3, "SourceType" : "SourceType", "CanDelete" : true, "PlaylistItemId" : "PlaylistItemId", "DisplayPreferencesId" : "DisplayPreferencesId", "Album" : "Album", "Latitude" : 7.260521264802104, "SortName" : "SortName", "ArtistCount" : 5, "Name" : "Name", "StartDate" : "2000-01-23T04:56:07.000+00:00", "Container" : "Container", "ProductionYear" : 1, "SeriesName" : "SeriesName", "ParentArtItemId" : "ParentArtItemId", "AlbumId" : "046b6c7f-0b8a-43b9-b35d-6489e6daee91", "SupportsSync" : true, "LocalTrailerCount" : 5, "IndexNumber" : 2, "CompletionPercentage" : 0.5199002018724985, "Genres" : [ "Genres", "Genres" ], "SeasonId" : "046b6c7f-0b8a-43b9-b35d-6489e6daee91", "LockedFields" : [ "Cast", "Cast" ], "ParentPrimaryImageTag" : "ParentPrimaryImageTag", "ProviderIds" : { "key" : "ProviderIds" }, "RemoteTrailers" : [ { "Url" : "Url", "Name" : "Name" }, { "Url" : "Url", "Name" : "Name" } ], "MediaSourceCount" : 7, "CustomRating" : "CustomRating", "AirsAfterSeasonNumber" : 6, "AirDays" : [ "Sunday", "Sunday" ], "ParentLogoItemId" : "ParentLogoItemId", "PartCount" : 0, "ChannelName" : "ChannelName", "EpisodeTitle" : "EpisodeTitle", "IsoSpeedRating" : 9, "CommunityRating" : 6.4384236, "Software" : "Software", "Chapters" : [ { "StartPositionTicks" : 6, "ImageTag" : "ImageTag", "ImageDateModified" : "2000-01-23T04:56:07.000+00:00", "ImagePath" : "ImagePath", "Name" : "Name" }, { "StartPositionTicks" : 6, "ImageTag" : "ImageTag", "ImageDateModified" : "2000-01-23T04:56:07.000+00:00", "ImagePath" : "ImagePath", "Name" : "Name" } ], "SongCount" : 3, "Taglines" : [ "Taglines", "Taglines" ], "AirsBeforeSeasonNumber" : 0, "PreferredMetadataCountryCode" : "PreferredMetadataCountryCode", "CameraModel" : "CameraModel", "ChannelNumber" : "ChannelNumber", "UserData" : "", "TimerId" : "TimerId", "DateCreated" : "2000-01-23T04:56:07.000+00:00", "HasSubtitles" : true, "ParentThumbImageTag" : "ParentThumbImageTag", "IsSports" : true, "ChannelId" : "046b6c7f-0b8a-43b9-b35d-6489e6daee91", "ParentIndexNumber" : 6, "VideoType" : "", "AlbumArtists" : [ null, null ], "ServerId" : "ServerId", "Number" : "Number", "AlbumCount" : 7, "IsRepeat" : true, "CollectionType" : "CollectionType", "PrimaryImageAspectRatio" : 7.143538047012306, "Height" : 0, "IsKids" : true, "DisplayOrder" : "DisplayOrder", "IsHD" : true, "EnableMediaSourceDisplay" : true, "SeriesThumbImageTag" : "SeriesThumbImageTag", "MovieCount" : 4, "People" : [ { "Role" : "Role", "Type" : "Type", "PrimaryImageTag" : "PrimaryImageTag", "Id" : "Id", "Name" : "Name", "ImageBlurHashes" : { "Art" : { "key" : "Art" }, "Banner" : { "key" : "Banner" }, "Thumb" : { "key" : "Thumb" }, "Chapter" : { "key" : "Chapter" }, "BoxRear" : { "key" : "BoxRear" }, "Box" : { "key" : "Box" }, "Profile" : { "key" : "Profile" }, "Logo" : { "key" : "Logo" }, "Disc" : { "key" : "Disc" }, "Primary" : { "key" : "Primary" }, "Screenshot" : { "key" : "Screenshot" }, "Backdrop" : { "key" : "Backdrop" }, "Menu" : { "key" : "Menu" } } }, { "Role" : "Role", "Type" : "Type", "PrimaryImageTag" : "PrimaryImageTag", "Id" : "Id", "Name" : "Name", "ImageBlurHashes" : { "Art" : { "key" : "Art" }, "Banner" : { "key" : "Banner" }, "Thumb" : { "key" : "Thumb" }, "Chapter" : { "key" : "Chapter" }, "BoxRear" : { "key" : "BoxRear" }, "Box" : { "key" : "Box" }, "Profile" : { "key" : "Profile" }, "Logo" : { "key" : "Logo" }, "Disc" : { "key" : "Disc" }, "Primary" : { "key" : "Primary" }, "Screenshot" : { "key" : "Screenshot" }, "Backdrop" : { "key" : "Backdrop" }, "Menu" : { "key" : "Menu" } } } ], "Overview" : "Overview", "SpecialFeatureCount" : 3, "ImageOrientation" : "", "AlbumArtist" : "AlbumArtist", "ImageTags" : { "key" : "ImageTags" }, "AspectRatio" : "AspectRatio", "TrailerCount" : 0, "OriginalTitle" : "OriginalTitle", "ForcedSortName" : "ForcedSortName", "CurrentProgram" : "", "LocationType" : "", "IsPremiere" : true, "Altitude" : 0.8774076871421566 }, { "SeasonName" : "SeasonName", "PremiereDate" : "2000-01-23T04:56:07.000+00:00", "CriticRating" : 9.018348, "AirTime" : "AirTime", "Studios" : [ { "Id" : "046b6c7f-0b8a-43b9-b35d-6489e6daee91", "Name" : "Name" }, { "Id" : "046b6c7f-0b8a-43b9-b35d-6489e6daee91", "Name" : "Name" } ], "CameraMake" : "CameraMake", "Aperture" : 1.041444916118296, "ChannelPrimaryImageTag" : "ChannelPrimaryImageTag", "ExtraType" : "ExtraType", "ParentBackdropItemId" : "ParentBackdropItemId", "Etag" : "Etag", "ParentLogoImageTag" : "ParentLogoImageTag", "ExposureTime" : 6.628464275087742, "IsoType" : "", "MediaType" : "MediaType", "Tags" : [ "Tags", "Tags" ], "ImageBlurHashes" : { "Art" : { "key" : "Art" }, "Banner" : { "key" : "Banner" }, "Thumb" : { "key" : "Thumb" }, "Chapter" : { "key" : "Chapter" }, "BoxRear" : { "key" : "BoxRear" }, "Box" : { "key" : "Box" }, "Profile" : { "key" : "Profile" }, "Logo" : { "key" : "Logo" }, "Disc" : { "key" : "Disc" }, "Primary" : { "key" : "Primary" }, "Screenshot" : { "key" : "Screenshot" }, "Backdrop" : { "key" : "Backdrop" }, "Menu" : { "key" : "Menu" } }, "Status" : "Status", "IndexNumberEnd" : 6, "ArtistItems" : [ null, null ], "MediaSources" : [ { "EncoderPath" : "EncoderPath", "RequiredHttpHeaders" : { "key" : "RequiredHttpHeaders" }, "RunTimeTicks" : 5, "MediaStreams" : [ { "VideoRange" : "VideoRange", "CodecTimeBase" : "CodecTimeBase", "ColorSpace" : "ColorSpace", "Index" : 7, "ColorRange" : "ColorRange", "localizedForced" : "localizedForced", "BitDepth" : 9, "Channels" : 4, "Profile" : "Profile", "SupportsExternalStream" : true, "localizedDefault" : "localizedDefault", "DeliveryUrl" : "DeliveryUrl", "Codec" : "Codec", "ColorPrimaries" : "ColorPrimaries", "SampleRate" : 7, "Language" : "Language", "IsTextSubtitleStream" : true, "IsAnamorphic" : true, "NalLengthSize" : "NalLengthSize", "Height" : 1, "PixelFormat" : "PixelFormat", "RefFrames" : 3, "IsAVC" : true, "Width" : 1, "TimeBase" : "TimeBase", "ColorTransfer" : "ColorTransfer", "CodecTag" : "CodecTag", "IsDefault" : true, "Path" : "Path", "Comment" : "Comment", "DeliveryMethod" : "", "IsExternalUrl" : true, "DisplayTitle" : "DisplayTitle", "IsForced" : true, "ChannelLayout" : "ChannelLayout", "localizedUndefined" : "localizedUndefined", "PacketLength" : 2, "Title" : "Title", "RealFrameRate" : 6.846853, "AspectRatio" : "AspectRatio", "AverageFrameRate" : 1.4894159, "Type" : "", "Score" : 1, "IsExternal" : true, "IsInterlaced" : true, "Level" : 4.965218492984954, "BitRate" : 7 }, { "VideoRange" : "VideoRange", "CodecTimeBase" : "CodecTimeBase", "ColorSpace" : "ColorSpace", "Index" : 7, "ColorRange" : "ColorRange", "localizedForced" : "localizedForced", "BitDepth" : 9, "Channels" : 4, "Profile" : "Profile", "SupportsExternalStream" : true, "localizedDefault" : "localizedDefault", "DeliveryUrl" : "DeliveryUrl", "Codec" : "Codec", "ColorPrimaries" : "ColorPrimaries", "SampleRate" : 7, "Language" : "Language", "IsTextSubtitleStream" : true, "IsAnamorphic" : true, "NalLengthSize" : "NalLengthSize", "Height" : 1, "PixelFormat" : "PixelFormat", "RefFrames" : 3, "IsAVC" : true, "Width" : 1, "TimeBase" : "TimeBase", "ColorTransfer" : "ColorTransfer", "CodecTag" : "CodecTag", "IsDefault" : true, "Path" : "Path", "Comment" : "Comment", "DeliveryMethod" : "", "IsExternalUrl" : true, "DisplayTitle" : "DisplayTitle", "IsForced" : true, "ChannelLayout" : "ChannelLayout", "localizedUndefined" : "localizedUndefined", "PacketLength" : 2, "Title" : "Title", "RealFrameRate" : 6.846853, "AspectRatio" : "AspectRatio", "AverageFrameRate" : 1.4894159, "Type" : "", "Score" : 1, "IsExternal" : true, "IsInterlaced" : true, "Level" : 4.965218492984954, "BitRate" : 7 } ], "Size" : 5, "Video3DFormat" : "", "BufferMs" : 2, "Timestamp" : "", "Name" : "Name", "RequiresOpening" : true, "SupportsDirectStream" : true, "VideoType" : "", "RequiresClosing" : true, "Container" : "Container", "IsoType" : "", "LiveStreamId" : "LiveStreamId", "RequiresLooping" : true, "Protocol" : "", "DefaultSubtitleStreamIndex" : 8, "GenPtsInput" : true, "IsInfiniteStream" : true, "Path" : "Path", "IsRemote" : true, "EncoderProtocol" : "", "IgnoreIndex" : true, "SupportsDirectPlay" : true, "TranscodingSubProtocol" : "TranscodingSubProtocol", "Formats" : [ "Formats", "Formats" ], "AnalyzeDurationMs" : 9, "Bitrate" : 9, "OpenToken" : "OpenToken", "SupportsProbing" : true, "Type" : "", "MediaAttachments" : [ { "CodecTag" : "CodecTag", "Comment" : "Comment", "DeliveryUrl" : "DeliveryUrl", "Codec" : "Codec", "FileName" : "FileName", "Index" : 5, "MimeType" : "MimeType" }, { "CodecTag" : "CodecTag", "Comment" : "Comment", "DeliveryUrl" : "DeliveryUrl", "Codec" : "Codec", "FileName" : "FileName", "Index" : 5, "MimeType" : "MimeType" } ], "ReadAtNativeFramerate" : true, "ETag" : "ETag", "TranscodingContainer" : "TranscodingContainer", "IgnoreDts" : true, "TranscodingUrl" : "TranscodingUrl", "Id" : "Id", "SupportsTranscoding" : true, "DefaultAudioStreamIndex" : 6 }, { "EncoderPath" : "EncoderPath", "RequiredHttpHeaders" : { "key" : "RequiredHttpHeaders" }, "RunTimeTicks" : 5, "MediaStreams" : [ { "VideoRange" : "VideoRange", "CodecTimeBase" : "CodecTimeBase", "ColorSpace" : "ColorSpace", "Index" : 7, "ColorRange" : "ColorRange", "localizedForced" : "localizedForced", "BitDepth" : 9, "Channels" : 4, "Profile" : "Profile", "SupportsExternalStream" : true, "localizedDefault" : "localizedDefault", "DeliveryUrl" : "DeliveryUrl", "Codec" : "Codec", "ColorPrimaries" : "ColorPrimaries", "SampleRate" : 7, "Language" : "Language", "IsTextSubtitleStream" : true, "IsAnamorphic" : true, "NalLengthSize" : "NalLengthSize", "Height" : 1, "PixelFormat" : "PixelFormat", "RefFrames" : 3, "IsAVC" : true, "Width" : 1, "TimeBase" : "TimeBase", "ColorTransfer" : "ColorTransfer", "CodecTag" : "CodecTag", "IsDefault" : true, "Path" : "Path", "Comment" : "Comment", "DeliveryMethod" : "", "IsExternalUrl" : true, "DisplayTitle" : "DisplayTitle", "IsForced" : true, "ChannelLayout" : "ChannelLayout", "localizedUndefined" : "localizedUndefined", "PacketLength" : 2, "Title" : "Title", "RealFrameRate" : 6.846853, "AspectRatio" : "AspectRatio", "AverageFrameRate" : 1.4894159, "Type" : "", "Score" : 1, "IsExternal" : true, "IsInterlaced" : true, "Level" : 4.965218492984954, "BitRate" : 7 }, { "VideoRange" : "VideoRange", "CodecTimeBase" : "CodecTimeBase", "ColorSpace" : "ColorSpace", "Index" : 7, "ColorRange" : "ColorRange", "localizedForced" : "localizedForced", "BitDepth" : 9, "Channels" : 4, "Profile" : "Profile", "SupportsExternalStream" : true, "localizedDefault" : "localizedDefault", "DeliveryUrl" : "DeliveryUrl", "Codec" : "Codec", "ColorPrimaries" : "ColorPrimaries", "SampleRate" : 7, "Language" : "Language", "IsTextSubtitleStream" : true, "IsAnamorphic" : true, "NalLengthSize" : "NalLengthSize", "Height" : 1, "PixelFormat" : "PixelFormat", "RefFrames" : 3, "IsAVC" : true, "Width" : 1, "TimeBase" : "TimeBase", "ColorTransfer" : "ColorTransfer", "CodecTag" : "CodecTag", "IsDefault" : true, "Path" : "Path", "Comment" : "Comment", "DeliveryMethod" : "", "IsExternalUrl" : true, "DisplayTitle" : "DisplayTitle", "IsForced" : true, "ChannelLayout" : "ChannelLayout", "localizedUndefined" : "localizedUndefined", "PacketLength" : 2, "Title" : "Title", "RealFrameRate" : 6.846853, "AspectRatio" : "AspectRatio", "AverageFrameRate" : 1.4894159, "Type" : "", "Score" : 1, "IsExternal" : true, "IsInterlaced" : true, "Level" : 4.965218492984954, "BitRate" : 7 } ], "Size" : 5, "Video3DFormat" : "", "BufferMs" : 2, "Timestamp" : "", "Name" : "Name", "RequiresOpening" : true, "SupportsDirectStream" : true, "VideoType" : "", "RequiresClosing" : true, "Container" : "Container", "IsoType" : "", "LiveStreamId" : "LiveStreamId", "RequiresLooping" : true, "Protocol" : "", "DefaultSubtitleStreamIndex" : 8, "GenPtsInput" : true, "IsInfiniteStream" : true, "Path" : "Path", "IsRemote" : true, "EncoderProtocol" : "", "IgnoreIndex" : true, "SupportsDirectPlay" : true, "TranscodingSubProtocol" : "TranscodingSubProtocol", "Formats" : [ "Formats", "Formats" ], "AnalyzeDurationMs" : 9, "Bitrate" : 9, "OpenToken" : "OpenToken", "SupportsProbing" : true, "Type" : "", "MediaAttachments" : [ { "CodecTag" : "CodecTag", "Comment" : "Comment", "DeliveryUrl" : "DeliveryUrl", "Codec" : "Codec", "FileName" : "FileName", "Index" : 5, "MimeType" : "MimeType" }, { "CodecTag" : "CodecTag", "Comment" : "Comment", "DeliveryUrl" : "DeliveryUrl", "Codec" : "Codec", "FileName" : "FileName", "Index" : 5, "MimeType" : "MimeType" } ], "ReadAtNativeFramerate" : true, "ETag" : "ETag", "TranscodingContainer" : "TranscodingContainer", "IgnoreDts" : true, "TranscodingUrl" : "TranscodingUrl", "Id" : "Id", "SupportsTranscoding" : true, "DefaultAudioStreamIndex" : 6 } ], "GenreItems" : [ null, null ], "OfficialRating" : "OfficialRating", "ProgramCount" : 7, "ProgramId" : "ProgramId", "Longitude" : 9.132027271330688, "LockData" : true, "FocalLength" : 4.258773108174356, "IsNews" : true, "ShutterSpeed" : 4.678947989005849, "Id" : "046b6c7f-0b8a-43b9-b35d-6489e6daee91", "IsFolder" : true, "SeriesTimerId" : "SeriesTimerId", "SeriesId" : "046b6c7f-0b8a-43b9-b35d-6489e6daee91", "MediaStreams" : [ null, null ], "IsPlaceHolder" : true, "CanDownload" : true, "SeriesCount" : 8, "IsMovie" : true, "DateLastMediaAdded" : "2000-01-23T04:56:07.000+00:00", "ParentArtImageTag" : "ParentArtImageTag", "PlayAccess" : "", "SeriesStudio" : "SeriesStudio", "IsLive" : true, "Width" : 4, "ExternalUrls" : [ { "Url" : "Url", "Name" : "Name" }, { "Url" : "Url", "Name" : "Name" } ], "RecursiveItemCount" : 6, "Path" : "Path", "ParentId" : "046b6c7f-0b8a-43b9-b35d-6489e6daee91", "MusicVideoCount" : 3, "ScreenshotImageTags" : [ "ScreenshotImageTags", "ScreenshotImageTags" ], "EpisodeCount" : 3, "IsSeries" : true, "ProductionLocations" : [ "ProductionLocations", "ProductionLocations" ], "ParentPrimaryImageItemId" : "ParentPrimaryImageItemId", "EndDate" : "2000-01-23T04:56:07.000+00:00", "SeriesPrimaryImageTag" : "SeriesPrimaryImageTag", "ParentThumbItemId" : "ParentThumbItemId", "PreferredMetadataLanguage" : "PreferredMetadataLanguage", "Type" : "Type", "BackdropImageTags" : [ "BackdropImageTags", "BackdropImageTags" ], "ParentBackdropImageTags" : [ "ParentBackdropImageTags", "ParentBackdropImageTags" ], "AirsBeforeEpisodeNumber" : 1, "ChildCount" : 3, "Audio" : "", "Artists" : [ "Artists", "Artists" ], "ChannelType" : "", "RunTimeTicks" : 6, "AlbumPrimaryImageTag" : "AlbumPrimaryImageTag", "Video3DFormat" : "", "CumulativeRunTimeTicks" : 3, "SourceType" : "SourceType", "CanDelete" : true, "PlaylistItemId" : "PlaylistItemId", "DisplayPreferencesId" : "DisplayPreferencesId", "Album" : "Album", "Latitude" : 7.260521264802104, "SortName" : "SortName", "ArtistCount" : 5, "Name" : "Name", "StartDate" : "2000-01-23T04:56:07.000+00:00", "Container" : "Container", "ProductionYear" : 1, "SeriesName" : "SeriesName", "ParentArtItemId" : "ParentArtItemId", "AlbumId" : "046b6c7f-0b8a-43b9-b35d-6489e6daee91", "SupportsSync" : true, "LocalTrailerCount" : 5, "IndexNumber" : 2, "CompletionPercentage" : 0.5199002018724985, "Genres" : [ "Genres", "Genres" ], "SeasonId" : "046b6c7f-0b8a-43b9-b35d-6489e6daee91", "LockedFields" : [ "Cast", "Cast" ], "ParentPrimaryImageTag" : "ParentPrimaryImageTag", "ProviderIds" : { "key" : "ProviderIds" }, "RemoteTrailers" : [ { "Url" : "Url", "Name" : "Name" }, { "Url" : "Url", "Name" : "Name" } ], "MediaSourceCount" : 7, "CustomRating" : "CustomRating", "AirsAfterSeasonNumber" : 6, "AirDays" : [ "Sunday", "Sunday" ], "ParentLogoItemId" : "ParentLogoItemId", "PartCount" : 0, "ChannelName" : "ChannelName", "EpisodeTitle" : "EpisodeTitle", "IsoSpeedRating" : 9, "CommunityRating" : 6.4384236, "Software" : "Software", "Chapters" : [ { "StartPositionTicks" : 6, "ImageTag" : "ImageTag", "ImageDateModified" : "2000-01-23T04:56:07.000+00:00", "ImagePath" : "ImagePath", "Name" : "Name" }, { "StartPositionTicks" : 6, "ImageTag" : "ImageTag", "ImageDateModified" : "2000-01-23T04:56:07.000+00:00", "ImagePath" : "ImagePath", "Name" : "Name" } ], "SongCount" : 3, "Taglines" : [ "Taglines", "Taglines" ], "AirsBeforeSeasonNumber" : 0, "PreferredMetadataCountryCode" : "PreferredMetadataCountryCode", "CameraModel" : "CameraModel", "ChannelNumber" : "ChannelNumber", "UserData" : "", "TimerId" : "TimerId", "DateCreated" : "2000-01-23T04:56:07.000+00:00", "HasSubtitles" : true, "ParentThumbImageTag" : "ParentThumbImageTag", "IsSports" : true, "ChannelId" : "046b6c7f-0b8a-43b9-b35d-6489e6daee91", "ParentIndexNumber" : 6, "VideoType" : "", "AlbumArtists" : [ null, null ], "ServerId" : "ServerId", "Number" : "Number", "AlbumCount" : 7, "IsRepeat" : true, "CollectionType" : "CollectionType", "PrimaryImageAspectRatio" : 7.143538047012306, "Height" : 0, "IsKids" : true, "DisplayOrder" : "DisplayOrder", "IsHD" : true, "EnableMediaSourceDisplay" : true, "SeriesThumbImageTag" : "SeriesThumbImageTag", "MovieCount" : 4, "People" : [ { "Role" : "Role", "Type" : "Type", "PrimaryImageTag" : "PrimaryImageTag", "Id" : "Id", "Name" : "Name", "ImageBlurHashes" : { "Art" : { "key" : "Art" }, "Banner" : { "key" : "Banner" }, "Thumb" : { "key" : "Thumb" }, "Chapter" : { "key" : "Chapter" }, "BoxRear" : { "key" : "BoxRear" }, "Box" : { "key" : "Box" }, "Profile" : { "key" : "Profile" }, "Logo" : { "key" : "Logo" }, "Disc" : { "key" : "Disc" }, "Primary" : { "key" : "Primary" }, "Screenshot" : { "key" : "Screenshot" }, "Backdrop" : { "key" : "Backdrop" }, "Menu" : { "key" : "Menu" } } }, { "Role" : "Role", "Type" : "Type", "PrimaryImageTag" : "PrimaryImageTag", "Id" : "Id", "Name" : "Name", "ImageBlurHashes" : { "Art" : { "key" : "Art" }, "Banner" : { "key" : "Banner" }, "Thumb" : { "key" : "Thumb" }, "Chapter" : { "key" : "Chapter" }, "BoxRear" : { "key" : "BoxRear" }, "Box" : { "key" : "Box" }, "Profile" : { "key" : "Profile" }, "Logo" : { "key" : "Logo" }, "Disc" : { "key" : "Disc" }, "Primary" : { "key" : "Primary" }, "Screenshot" : { "key" : "Screenshot" }, "Backdrop" : { "key" : "Backdrop" }, "Menu" : { "key" : "Menu" } } } ], "Overview" : "Overview", "SpecialFeatureCount" : 3, "ImageOrientation" : "", "AlbumArtist" : "AlbumArtist", "ImageTags" : { "key" : "ImageTags" }, "AspectRatio" : "AspectRatio", "TrailerCount" : 0, "OriginalTitle" : "OriginalTitle", "ForcedSortName" : "ForcedSortName", "CurrentProgram" : "", "LocationType" : "", "IsPremiere" : true, "Altitude" : 0.8774076871421566 } ] }}] - parameter itemId: (path) The item id. - parameter userId: (query) Optional. Filter by user id, and attach user data. (optional) - returns: RequestBuilder */ open class func getAdditionalPartWithRequestBuilder(itemId: UUID, userId: UUID? = nil) -> RequestBuilder { var path = "/Videos/{itemId}/AdditionalParts" let itemIdPreEscape = "\(itemId)" let itemIdPostEscape = itemIdPreEscape.addingPercentEncoding(withAllowedCharacters: .urlPathAllowed) ?? "" path = path.replacingOccurrences(of: "{itemId}", with: itemIdPostEscape, options: .literal, range: nil) let URLString = SwaggerClientAPI.basePath + path let parameters: [String:Any]? = nil var url = URLComponents(string: URLString) url?.queryItems = APIHelper.mapValuesToQueryItems([ "userId": userId ]) let requestBuilder: RequestBuilder.Type = SwaggerClientAPI.requestBuilderFactory.getBuilder() return requestBuilder.init(method: "GET", URLString: (url?.string ?? URLString), parameters: parameters, isBody: false) } /** Gets a video stream. - parameter itemId: (path) The item id. - parameter container: (query) The video container. Possible values are: ts, webm, asf, wmv, ogv, mp4, m4v, mkv, mpeg, mpg, avi, 3gp, wmv, wtv, m2ts, mov, iso, flv. (optional) - parameter _static: (query) Optional. If true, the original file will be streamed statically without any encoding. Use either no url extension or the original file extension. true/false. (optional) - parameter params: (query) The streaming parameters. (optional) - parameter tag: (query) The tag. (optional) - parameter deviceProfileId: (query) Optional. The dlna device profile id to utilize. (optional) - parameter playSessionId: (query) The play session id. (optional) - parameter segmentContainer: (query) The segment container. (optional) - parameter segmentLength: (query) The segment length. (optional) - parameter minSegments: (query) The minimum number of segments. (optional) - parameter mediaSourceId: (query) The media version id, if playing an alternate version. (optional) - parameter deviceId: (query) The device id of the client requesting. Used to stop encoding processes when needed. (optional) - parameter audioCodec: (query) Optional. Specify a audio codec to encode to, e.g. mp3. If omitted the server will auto-select using the url's extension. Options: aac, mp3, vorbis, wma. (optional) - parameter enableAutoStreamCopy: (query) Whether or not to allow automatic stream copy if requested values match the original source. Defaults to true. (optional) - parameter allowVideoStreamCopy: (query) Whether or not to allow copying of the video stream url. (optional) - parameter allowAudioStreamCopy: (query) Whether or not to allow copying of the audio stream url. (optional) - parameter breakOnNonKeyFrames: (query) Optional. Whether to break on non key frames. (optional) - parameter audioSampleRate: (query) Optional. Specify a specific audio sample rate, e.g. 44100. (optional) - parameter maxAudioBitDepth: (query) Optional. The maximum audio bit depth. (optional) - parameter audioBitRate: (query) Optional. Specify an audio bitrate to encode to, e.g. 128000. If omitted this will be left to encoder defaults. (optional) - parameter audioChannels: (query) Optional. Specify a specific number of audio channels to encode to, e.g. 2. (optional) - parameter maxAudioChannels: (query) Optional. Specify a maximum number of audio channels to encode to, e.g. 2. (optional) - parameter profile: (query) Optional. Specify a specific an encoder profile (varies by encoder), e.g. main, baseline, high. (optional) - parameter level: (query) Optional. Specify a level for the encoder profile (varies by encoder), e.g. 3, 3.1. (optional) - parameter framerate: (query) Optional. A specific video framerate to encode to, e.g. 23.976. Generally this should be omitted unless the device has specific requirements. (optional) - parameter maxFramerate: (query) Optional. A specific maximum video framerate to encode to, e.g. 23.976. Generally this should be omitted unless the device has specific requirements. (optional) - parameter copyTimestamps: (query) Whether or not to copy timestamps when transcoding with an offset. Defaults to false. (optional) - parameter startTimeTicks: (query) Optional. Specify a starting offset, in ticks. 1 tick = 10000 ms. (optional) - parameter width: (query) Optional. The fixed horizontal resolution of the encoded video. (optional) - parameter height: (query) Optional. The fixed vertical resolution of the encoded video. (optional) - parameter videoBitRate: (query) Optional. Specify a video bitrate to encode to, e.g. 500000. If omitted this will be left to encoder defaults. (optional) - parameter subtitleStreamIndex: (query) Optional. The index of the subtitle stream to use. If omitted no subtitles will be used. (optional) - parameter subtitleMethod: (query) Optional. Specify the subtitle delivery method. (optional) - parameter maxRefFrames: (query) Optional. (optional) - parameter maxVideoBitDepth: (query) Optional. The maximum video bit depth. (optional) - parameter requireAvc: (query) Optional. Whether to require avc. (optional) - parameter deInterlace: (query) Optional. Whether to deinterlace the video. (optional) - parameter requireNonAnamorphic: (query) Optional. Whether to require a non anamorphic stream. (optional) - parameter transcodingMaxAudioChannels: (query) Optional. The maximum number of audio channels to transcode. (optional) - parameter cpuCoreLimit: (query) Optional. The limit of how many cpu cores to use. (optional) - parameter liveStreamId: (query) The live stream id. (optional) - parameter enableMpegtsM2TsMode: (query) Optional. Whether to enable the MpegtsM2Ts mode. (optional) - parameter videoCodec: (query) Optional. Specify a video codec to encode to, e.g. h264. If omitted the server will auto-select using the url's extension. Options: h265, h264, mpeg4, theora, vpx, wmv. (optional) - parameter subtitleCodec: (query) Optional. Specify a subtitle codec to encode to. (optional) - parameter transcodeReasons: (query) Optional. The transcoding reason. (optional) - parameter audioStreamIndex: (query) Optional. The index of the audio stream to use. If omitted the first audio stream will be used. (optional) - parameter videoStreamIndex: (query) Optional. The index of the video stream to use. If omitted the first video stream will be used. (optional) - parameter context: (query) Optional. The MediaBrowser.Model.Dlna.EncodingContext. (optional) - parameter streamOptions: (query) Optional. The streaming options. (optional) - parameter completion: completion handler to receive the data and the error objects */ open class func getVideoStream(itemId: UUID, container: String? = nil, _static: Bool? = nil, params: String? = nil, tag: String? = nil, deviceProfileId: String? = nil, playSessionId: String? = nil, segmentContainer: String? = nil, segmentLength: Int? = nil, minSegments: Int? = nil, mediaSourceId: String? = nil, deviceId: String? = nil, audioCodec: String? = nil, enableAutoStreamCopy: Bool? = nil, allowVideoStreamCopy: Bool? = nil, allowAudioStreamCopy: Bool? = nil, breakOnNonKeyFrames: Bool? = nil, audioSampleRate: Int? = nil, maxAudioBitDepth: Int? = nil, audioBitRate: Int? = nil, audioChannels: Int? = nil, maxAudioChannels: Int? = nil, profile: String? = nil, level: String? = nil, framerate: Float? = nil, maxFramerate: Float? = nil, copyTimestamps: Bool? = nil, startTimeTicks: Int64? = nil, width: Int? = nil, height: Int? = nil, videoBitRate: Int? = nil, subtitleStreamIndex: Int? = nil, subtitleMethod: SubtitleMethod13? = nil, maxRefFrames: Int? = nil, maxVideoBitDepth: Int? = nil, requireAvc: Bool? = nil, deInterlace: Bool? = nil, requireNonAnamorphic: Bool? = nil, transcodingMaxAudioChannels: Int? = nil, cpuCoreLimit: Int? = nil, liveStreamId: String? = nil, enableMpegtsM2TsMode: Bool? = nil, videoCodec: String? = nil, subtitleCodec: String? = nil, transcodeReasons: String? = nil, audioStreamIndex: Int? = nil, videoStreamIndex: Int? = nil, context: Context13? = nil, streamOptions: [String:String]? = nil, completion: @escaping ((_ data: Data?,_ error: Error?) -> Void)) { getVideoStreamWithRequestBuilder(itemId: itemId, container: container, _static: _static, params: params, tag: tag, deviceProfileId: deviceProfileId, playSessionId: playSessionId, segmentContainer: segmentContainer, segmentLength: segmentLength, minSegments: minSegments, mediaSourceId: mediaSourceId, deviceId: deviceId, audioCodec: audioCodec, enableAutoStreamCopy: enableAutoStreamCopy, allowVideoStreamCopy: allowVideoStreamCopy, allowAudioStreamCopy: allowAudioStreamCopy, breakOnNonKeyFrames: breakOnNonKeyFrames, audioSampleRate: audioSampleRate, maxAudioBitDepth: maxAudioBitDepth, audioBitRate: audioBitRate, audioChannels: audioChannels, maxAudioChannels: maxAudioChannels, profile: profile, level: level, framerate: framerate, maxFramerate: maxFramerate, copyTimestamps: copyTimestamps, startTimeTicks: startTimeTicks, width: width, height: height, videoBitRate: videoBitRate, subtitleStreamIndex: subtitleStreamIndex, subtitleMethod: subtitleMethod, maxRefFrames: maxRefFrames, maxVideoBitDepth: maxVideoBitDepth, requireAvc: requireAvc, deInterlace: deInterlace, requireNonAnamorphic: requireNonAnamorphic, transcodingMaxAudioChannels: transcodingMaxAudioChannels, cpuCoreLimit: cpuCoreLimit, liveStreamId: liveStreamId, enableMpegtsM2TsMode: enableMpegtsM2TsMode, videoCodec: videoCodec, subtitleCodec: subtitleCodec, transcodeReasons: transcodeReasons, audioStreamIndex: audioStreamIndex, videoStreamIndex: videoStreamIndex, context: context, streamOptions: streamOptions).execute { (response, error) -> Void in completion(response?.body, error) } } /** Gets a video stream. - GET /Videos/{itemId}/stream - - examples: [{contentType=application/json, example=""}] - parameter itemId: (path) The item id. - parameter container: (query) The video container. Possible values are: ts, webm, asf, wmv, ogv, mp4, m4v, mkv, mpeg, mpg, avi, 3gp, wmv, wtv, m2ts, mov, iso, flv. (optional) - parameter _static: (query) Optional. If true, the original file will be streamed statically without any encoding. Use either no url extension or the original file extension. true/false. (optional) - parameter params: (query) The streaming parameters. (optional) - parameter tag: (query) The tag. (optional) - parameter deviceProfileId: (query) Optional. The dlna device profile id to utilize. (optional) - parameter playSessionId: (query) The play session id. (optional) - parameter segmentContainer: (query) The segment container. (optional) - parameter segmentLength: (query) The segment length. (optional) - parameter minSegments: (query) The minimum number of segments. (optional) - parameter mediaSourceId: (query) The media version id, if playing an alternate version. (optional) - parameter deviceId: (query) The device id of the client requesting. Used to stop encoding processes when needed. (optional) - parameter audioCodec: (query) Optional. Specify a audio codec to encode to, e.g. mp3. If omitted the server will auto-select using the url's extension. Options: aac, mp3, vorbis, wma. (optional) - parameter enableAutoStreamCopy: (query) Whether or not to allow automatic stream copy if requested values match the original source. Defaults to true. (optional) - parameter allowVideoStreamCopy: (query) Whether or not to allow copying of the video stream url. (optional) - parameter allowAudioStreamCopy: (query) Whether or not to allow copying of the audio stream url. (optional) - parameter breakOnNonKeyFrames: (query) Optional. Whether to break on non key frames. (optional) - parameter audioSampleRate: (query) Optional. Specify a specific audio sample rate, e.g. 44100. (optional) - parameter maxAudioBitDepth: (query) Optional. The maximum audio bit depth. (optional) - parameter audioBitRate: (query) Optional. Specify an audio bitrate to encode to, e.g. 128000. If omitted this will be left to encoder defaults. (optional) - parameter audioChannels: (query) Optional. Specify a specific number of audio channels to encode to, e.g. 2. (optional) - parameter maxAudioChannels: (query) Optional. Specify a maximum number of audio channels to encode to, e.g. 2. (optional) - parameter profile: (query) Optional. Specify a specific an encoder profile (varies by encoder), e.g. main, baseline, high. (optional) - parameter level: (query) Optional. Specify a level for the encoder profile (varies by encoder), e.g. 3, 3.1. (optional) - parameter framerate: (query) Optional. A specific video framerate to encode to, e.g. 23.976. Generally this should be omitted unless the device has specific requirements. (optional) - parameter maxFramerate: (query) Optional. A specific maximum video framerate to encode to, e.g. 23.976. Generally this should be omitted unless the device has specific requirements. (optional) - parameter copyTimestamps: (query) Whether or not to copy timestamps when transcoding with an offset. Defaults to false. (optional) - parameter startTimeTicks: (query) Optional. Specify a starting offset, in ticks. 1 tick = 10000 ms. (optional) - parameter width: (query) Optional. The fixed horizontal resolution of the encoded video. (optional) - parameter height: (query) Optional. The fixed vertical resolution of the encoded video. (optional) - parameter videoBitRate: (query) Optional. Specify a video bitrate to encode to, e.g. 500000. If omitted this will be left to encoder defaults. (optional) - parameter subtitleStreamIndex: (query) Optional. The index of the subtitle stream to use. If omitted no subtitles will be used. (optional) - parameter subtitleMethod: (query) Optional. Specify the subtitle delivery method. (optional) - parameter maxRefFrames: (query) Optional. (optional) - parameter maxVideoBitDepth: (query) Optional. The maximum video bit depth. (optional) - parameter requireAvc: (query) Optional. Whether to require avc. (optional) - parameter deInterlace: (query) Optional. Whether to deinterlace the video. (optional) - parameter requireNonAnamorphic: (query) Optional. Whether to require a non anamorphic stream. (optional) - parameter transcodingMaxAudioChannels: (query) Optional. The maximum number of audio channels to transcode. (optional) - parameter cpuCoreLimit: (query) Optional. The limit of how many cpu cores to use. (optional) - parameter liveStreamId: (query) The live stream id. (optional) - parameter enableMpegtsM2TsMode: (query) Optional. Whether to enable the MpegtsM2Ts mode. (optional) - parameter videoCodec: (query) Optional. Specify a video codec to encode to, e.g. h264. If omitted the server will auto-select using the url's extension. Options: h265, h264, mpeg4, theora, vpx, wmv. (optional) - parameter subtitleCodec: (query) Optional. Specify a subtitle codec to encode to. (optional) - parameter transcodeReasons: (query) Optional. The transcoding reason. (optional) - parameter audioStreamIndex: (query) Optional. The index of the audio stream to use. If omitted the first audio stream will be used. (optional) - parameter videoStreamIndex: (query) Optional. The index of the video stream to use. If omitted the first video stream will be used. (optional) - parameter context: (query) Optional. The MediaBrowser.Model.Dlna.EncodingContext. (optional) - parameter streamOptions: (query) Optional. The streaming options. (optional) - returns: RequestBuilder */ open class func getVideoStreamWithRequestBuilder(itemId: UUID, container: String? = nil, _static: Bool? = nil, params: String? = nil, tag: String? = nil, deviceProfileId: String? = nil, playSessionId: String? = nil, segmentContainer: String? = nil, segmentLength: Int? = nil, minSegments: Int? = nil, mediaSourceId: String? = nil, deviceId: String? = nil, audioCodec: String? = nil, enableAutoStreamCopy: Bool? = nil, allowVideoStreamCopy: Bool? = nil, allowAudioStreamCopy: Bool? = nil, breakOnNonKeyFrames: Bool? = nil, audioSampleRate: Int? = nil, maxAudioBitDepth: Int? = nil, audioBitRate: Int? = nil, audioChannels: Int? = nil, maxAudioChannels: Int? = nil, profile: String? = nil, level: String? = nil, framerate: Float? = nil, maxFramerate: Float? = nil, copyTimestamps: Bool? = nil, startTimeTicks: Int64? = nil, width: Int? = nil, height: Int? = nil, videoBitRate: Int? = nil, subtitleStreamIndex: Int? = nil, subtitleMethod: SubtitleMethod13? = nil, maxRefFrames: Int? = nil, maxVideoBitDepth: Int? = nil, requireAvc: Bool? = nil, deInterlace: Bool? = nil, requireNonAnamorphic: Bool? = nil, transcodingMaxAudioChannels: Int? = nil, cpuCoreLimit: Int? = nil, liveStreamId: String? = nil, enableMpegtsM2TsMode: Bool? = nil, videoCodec: String? = nil, subtitleCodec: String? = nil, transcodeReasons: String? = nil, audioStreamIndex: Int? = nil, videoStreamIndex: Int? = nil, context: Context13? = nil, streamOptions: [String:String]? = nil) -> RequestBuilder { var path = "/Videos/{itemId}/stream" let itemIdPreEscape = "\(itemId)" let itemIdPostEscape = itemIdPreEscape.addingPercentEncoding(withAllowedCharacters: .urlPathAllowed) ?? "" path = path.replacingOccurrences(of: "{itemId}", with: itemIdPostEscape, options: .literal, range: nil) let URLString = SwaggerClientAPI.basePath + path let parameters: [String:Any]? = nil var url = URLComponents(string: URLString) url?.queryItems = APIHelper.mapValuesToQueryItems([ "container": container, "static": _static, "params": params, "tag": tag, "deviceProfileId": deviceProfileId, "playSessionId": playSessionId, "segmentContainer": segmentContainer, "segmentLength": segmentLength?.encodeToJSON(), "minSegments": minSegments?.encodeToJSON(), "mediaSourceId": mediaSourceId, "deviceId": deviceId, "audioCodec": audioCodec, "enableAutoStreamCopy": enableAutoStreamCopy, "allowVideoStreamCopy": allowVideoStreamCopy, "allowAudioStreamCopy": allowAudioStreamCopy, "breakOnNonKeyFrames": breakOnNonKeyFrames, "audioSampleRate": audioSampleRate?.encodeToJSON(), "maxAudioBitDepth": maxAudioBitDepth?.encodeToJSON(), "audioBitRate": audioBitRate?.encodeToJSON(), "audioChannels": audioChannels?.encodeToJSON(), "maxAudioChannels": maxAudioChannels?.encodeToJSON(), "profile": profile, "level": level, "framerate": framerate, "maxFramerate": maxFramerate, "copyTimestamps": copyTimestamps, "startTimeTicks": startTimeTicks?.encodeToJSON(), "width": width?.encodeToJSON(), "height": height?.encodeToJSON(), "videoBitRate": videoBitRate?.encodeToJSON(), "subtitleStreamIndex": subtitleStreamIndex?.encodeToJSON(), "subtitleMethod": subtitleMethod, "maxRefFrames": maxRefFrames?.encodeToJSON(), "maxVideoBitDepth": maxVideoBitDepth?.encodeToJSON(), "requireAvc": requireAvc, "deInterlace": deInterlace, "requireNonAnamorphic": requireNonAnamorphic, "transcodingMaxAudioChannels": transcodingMaxAudioChannels?.encodeToJSON(), "cpuCoreLimit": cpuCoreLimit?.encodeToJSON(), "liveStreamId": liveStreamId, "enableMpegtsM2TsMode": enableMpegtsM2TsMode, "videoCodec": videoCodec, "subtitleCodec": subtitleCodec, "transcodeReasons": transcodeReasons, "audioStreamIndex": audioStreamIndex?.encodeToJSON(), "videoStreamIndex": videoStreamIndex?.encodeToJSON(), "context": context, "streamOptions": streamOptions ]) let requestBuilder: RequestBuilder.Type = SwaggerClientAPI.requestBuilderFactory.getBuilder() return requestBuilder.init(method: "GET", URLString: (url?.string ?? URLString), parameters: parameters, isBody: false) } /** Gets a video stream. - parameter itemId: (path) The item id. - parameter container: (path) The video container. Possible values are: ts, webm, asf, wmv, ogv, mp4, m4v, mkv, mpeg, mpg, avi, 3gp, wmv, wtv, m2ts, mov, iso, flv. - parameter _static: (query) Optional. If true, the original file will be streamed statically without any encoding. Use either no url extension or the original file extension. true/false. (optional) - parameter params: (query) The streaming parameters. (optional) - parameter tag: (query) The tag. (optional) - parameter deviceProfileId: (query) Optional. The dlna device profile id to utilize. (optional) - parameter playSessionId: (query) The play session id. (optional) - parameter segmentContainer: (query) The segment container. (optional) - parameter segmentLength: (query) The segment length. (optional) - parameter minSegments: (query) The minimum number of segments. (optional) - parameter mediaSourceId: (query) The media version id, if playing an alternate version. (optional) - parameter deviceId: (query) The device id of the client requesting. Used to stop encoding processes when needed. (optional) - parameter audioCodec: (query) Optional. Specify a audio codec to encode to, e.g. mp3. If omitted the server will auto-select using the url's extension. Options: aac, mp3, vorbis, wma. (optional) - parameter enableAutoStreamCopy: (query) Whether or not to allow automatic stream copy if requested values match the original source. Defaults to true. (optional) - parameter allowVideoStreamCopy: (query) Whether or not to allow copying of the video stream url. (optional) - parameter allowAudioStreamCopy: (query) Whether or not to allow copying of the audio stream url. (optional) - parameter breakOnNonKeyFrames: (query) Optional. Whether to break on non key frames. (optional) - parameter audioSampleRate: (query) Optional. Specify a specific audio sample rate, e.g. 44100. (optional) - parameter maxAudioBitDepth: (query) Optional. The maximum audio bit depth. (optional) - parameter audioBitRate: (query) Optional. Specify an audio bitrate to encode to, e.g. 128000. If omitted this will be left to encoder defaults. (optional) - parameter audioChannels: (query) Optional. Specify a specific number of audio channels to encode to, e.g. 2. (optional) - parameter maxAudioChannels: (query) Optional. Specify a maximum number of audio channels to encode to, e.g. 2. (optional) - parameter profile: (query) Optional. Specify a specific an encoder profile (varies by encoder), e.g. main, baseline, high. (optional) - parameter level: (query) Optional. Specify a level for the encoder profile (varies by encoder), e.g. 3, 3.1. (optional) - parameter framerate: (query) Optional. A specific video framerate to encode to, e.g. 23.976. Generally this should be omitted unless the device has specific requirements. (optional) - parameter maxFramerate: (query) Optional. A specific maximum video framerate to encode to, e.g. 23.976. Generally this should be omitted unless the device has specific requirements. (optional) - parameter copyTimestamps: (query) Whether or not to copy timestamps when transcoding with an offset. Defaults to false. (optional) - parameter startTimeTicks: (query) Optional. Specify a starting offset, in ticks. 1 tick = 10000 ms. (optional) - parameter width: (query) Optional. The fixed horizontal resolution of the encoded video. (optional) - parameter height: (query) Optional. The fixed vertical resolution of the encoded video. (optional) - parameter videoBitRate: (query) Optional. Specify a video bitrate to encode to, e.g. 500000. If omitted this will be left to encoder defaults. (optional) - parameter subtitleStreamIndex: (query) Optional. The index of the subtitle stream to use. If omitted no subtitles will be used. (optional) - parameter subtitleMethod: (query) Optional. Specify the subtitle delivery method. (optional) - parameter maxRefFrames: (query) Optional. (optional) - parameter maxVideoBitDepth: (query) Optional. The maximum video bit depth. (optional) - parameter requireAvc: (query) Optional. Whether to require avc. (optional) - parameter deInterlace: (query) Optional. Whether to deinterlace the video. (optional) - parameter requireNonAnamorphic: (query) Optional. Whether to require a non anamorphic stream. (optional) - parameter transcodingMaxAudioChannels: (query) Optional. The maximum number of audio channels to transcode. (optional) - parameter cpuCoreLimit: (query) Optional. The limit of how many cpu cores to use. (optional) - parameter liveStreamId: (query) The live stream id. (optional) - parameter enableMpegtsM2TsMode: (query) Optional. Whether to enable the MpegtsM2Ts mode. (optional) - parameter videoCodec: (query) Optional. Specify a video codec to encode to, e.g. h264. If omitted the server will auto-select using the url's extension. Options: h265, h264, mpeg4, theora, vpx, wmv. (optional) - parameter subtitleCodec: (query) Optional. Specify a subtitle codec to encode to. (optional) - parameter transcodeReasons: (query) Optional. The transcoding reason. (optional) - parameter audioStreamIndex: (query) Optional. The index of the audio stream to use. If omitted the first audio stream will be used. (optional) - parameter videoStreamIndex: (query) Optional. The index of the video stream to use. If omitted the first video stream will be used. (optional) - parameter context: (query) Optional. The MediaBrowser.Model.Dlna.EncodingContext. (optional) - parameter streamOptions: (query) Optional. The streaming options. (optional) - parameter completion: completion handler to receive the data and the error objects */ open class func getVideoStreamByContainer(itemId: UUID, container: String, _static: Bool? = nil, params: String? = nil, tag: String? = nil, deviceProfileId: String? = nil, playSessionId: String? = nil, segmentContainer: String? = nil, segmentLength: Int? = nil, minSegments: Int? = nil, mediaSourceId: String? = nil, deviceId: String? = nil, audioCodec: String? = nil, enableAutoStreamCopy: Bool? = nil, allowVideoStreamCopy: Bool? = nil, allowAudioStreamCopy: Bool? = nil, breakOnNonKeyFrames: Bool? = nil, audioSampleRate: Int? = nil, maxAudioBitDepth: Int? = nil, audioBitRate: Int? = nil, audioChannels: Int? = nil, maxAudioChannels: Int? = nil, profile: String? = nil, level: String? = nil, framerate: Float? = nil, maxFramerate: Float? = nil, copyTimestamps: Bool? = nil, startTimeTicks: Int64? = nil, width: Int? = nil, height: Int? = nil, videoBitRate: Int? = nil, subtitleStreamIndex: Int? = nil, subtitleMethod: SubtitleMethod15? = nil, maxRefFrames: Int? = nil, maxVideoBitDepth: Int? = nil, requireAvc: Bool? = nil, deInterlace: Bool? = nil, requireNonAnamorphic: Bool? = nil, transcodingMaxAudioChannels: Int? = nil, cpuCoreLimit: Int? = nil, liveStreamId: String? = nil, enableMpegtsM2TsMode: Bool? = nil, videoCodec: String? = nil, subtitleCodec: String? = nil, transcodeReasons: String? = nil, audioStreamIndex: Int? = nil, videoStreamIndex: Int? = nil, context: Context15? = nil, streamOptions: [String:String]? = nil, completion: @escaping ((_ data: Data?,_ error: Error?) -> Void)) { getVideoStreamByContainerWithRequestBuilder(itemId: itemId, container: container, _static: _static, params: params, tag: tag, deviceProfileId: deviceProfileId, playSessionId: playSessionId, segmentContainer: segmentContainer, segmentLength: segmentLength, minSegments: minSegments, mediaSourceId: mediaSourceId, deviceId: deviceId, audioCodec: audioCodec, enableAutoStreamCopy: enableAutoStreamCopy, allowVideoStreamCopy: allowVideoStreamCopy, allowAudioStreamCopy: allowAudioStreamCopy, breakOnNonKeyFrames: breakOnNonKeyFrames, audioSampleRate: audioSampleRate, maxAudioBitDepth: maxAudioBitDepth, audioBitRate: audioBitRate, audioChannels: audioChannels, maxAudioChannels: maxAudioChannels, profile: profile, level: level, framerate: framerate, maxFramerate: maxFramerate, copyTimestamps: copyTimestamps, startTimeTicks: startTimeTicks, width: width, height: height, videoBitRate: videoBitRate, subtitleStreamIndex: subtitleStreamIndex, subtitleMethod: subtitleMethod, maxRefFrames: maxRefFrames, maxVideoBitDepth: maxVideoBitDepth, requireAvc: requireAvc, deInterlace: deInterlace, requireNonAnamorphic: requireNonAnamorphic, transcodingMaxAudioChannels: transcodingMaxAudioChannels, cpuCoreLimit: cpuCoreLimit, liveStreamId: liveStreamId, enableMpegtsM2TsMode: enableMpegtsM2TsMode, videoCodec: videoCodec, subtitleCodec: subtitleCodec, transcodeReasons: transcodeReasons, audioStreamIndex: audioStreamIndex, videoStreamIndex: videoStreamIndex, context: context, streamOptions: streamOptions).execute { (response, error) -> Void in completion(response?.body, error) } } /** Gets a video stream. - GET /Videos/{itemId}/stream.{container} - - examples: [{contentType=application/json, example=""}] - parameter itemId: (path) The item id. - parameter container: (path) The video container. Possible values are: ts, webm, asf, wmv, ogv, mp4, m4v, mkv, mpeg, mpg, avi, 3gp, wmv, wtv, m2ts, mov, iso, flv. - parameter _static: (query) Optional. If true, the original file will be streamed statically without any encoding. Use either no url extension or the original file extension. true/false. (optional) - parameter params: (query) The streaming parameters. (optional) - parameter tag: (query) The tag. (optional) - parameter deviceProfileId: (query) Optional. The dlna device profile id to utilize. (optional) - parameter playSessionId: (query) The play session id. (optional) - parameter segmentContainer: (query) The segment container. (optional) - parameter segmentLength: (query) The segment length. (optional) - parameter minSegments: (query) The minimum number of segments. (optional) - parameter mediaSourceId: (query) The media version id, if playing an alternate version. (optional) - parameter deviceId: (query) The device id of the client requesting. Used to stop encoding processes when needed. (optional) - parameter audioCodec: (query) Optional. Specify a audio codec to encode to, e.g. mp3. If omitted the server will auto-select using the url's extension. Options: aac, mp3, vorbis, wma. (optional) - parameter enableAutoStreamCopy: (query) Whether or not to allow automatic stream copy if requested values match the original source. Defaults to true. (optional) - parameter allowVideoStreamCopy: (query) Whether or not to allow copying of the video stream url. (optional) - parameter allowAudioStreamCopy: (query) Whether or not to allow copying of the audio stream url. (optional) - parameter breakOnNonKeyFrames: (query) Optional. Whether to break on non key frames. (optional) - parameter audioSampleRate: (query) Optional. Specify a specific audio sample rate, e.g. 44100. (optional) - parameter maxAudioBitDepth: (query) Optional. The maximum audio bit depth. (optional) - parameter audioBitRate: (query) Optional. Specify an audio bitrate to encode to, e.g. 128000. If omitted this will be left to encoder defaults. (optional) - parameter audioChannels: (query) Optional. Specify a specific number of audio channels to encode to, e.g. 2. (optional) - parameter maxAudioChannels: (query) Optional. Specify a maximum number of audio channels to encode to, e.g. 2. (optional) - parameter profile: (query) Optional. Specify a specific an encoder profile (varies by encoder), e.g. main, baseline, high. (optional) - parameter level: (query) Optional. Specify a level for the encoder profile (varies by encoder), e.g. 3, 3.1. (optional) - parameter framerate: (query) Optional. A specific video framerate to encode to, e.g. 23.976. Generally this should be omitted unless the device has specific requirements. (optional) - parameter maxFramerate: (query) Optional. A specific maximum video framerate to encode to, e.g. 23.976. Generally this should be omitted unless the device has specific requirements. (optional) - parameter copyTimestamps: (query) Whether or not to copy timestamps when transcoding with an offset. Defaults to false. (optional) - parameter startTimeTicks: (query) Optional. Specify a starting offset, in ticks. 1 tick = 10000 ms. (optional) - parameter width: (query) Optional. The fixed horizontal resolution of the encoded video. (optional) - parameter height: (query) Optional. The fixed vertical resolution of the encoded video. (optional) - parameter videoBitRate: (query) Optional. Specify a video bitrate to encode to, e.g. 500000. If omitted this will be left to encoder defaults. (optional) - parameter subtitleStreamIndex: (query) Optional. The index of the subtitle stream to use. If omitted no subtitles will be used. (optional) - parameter subtitleMethod: (query) Optional. Specify the subtitle delivery method. (optional) - parameter maxRefFrames: (query) Optional. (optional) - parameter maxVideoBitDepth: (query) Optional. The maximum video bit depth. (optional) - parameter requireAvc: (query) Optional. Whether to require avc. (optional) - parameter deInterlace: (query) Optional. Whether to deinterlace the video. (optional) - parameter requireNonAnamorphic: (query) Optional. Whether to require a non anamorphic stream. (optional) - parameter transcodingMaxAudioChannels: (query) Optional. The maximum number of audio channels to transcode. (optional) - parameter cpuCoreLimit: (query) Optional. The limit of how many cpu cores to use. (optional) - parameter liveStreamId: (query) The live stream id. (optional) - parameter enableMpegtsM2TsMode: (query) Optional. Whether to enable the MpegtsM2Ts mode. (optional) - parameter videoCodec: (query) Optional. Specify a video codec to encode to, e.g. h264. If omitted the server will auto-select using the url's extension. Options: h265, h264, mpeg4, theora, vpx, wmv. (optional) - parameter subtitleCodec: (query) Optional. Specify a subtitle codec to encode to. (optional) - parameter transcodeReasons: (query) Optional. The transcoding reason. (optional) - parameter audioStreamIndex: (query) Optional. The index of the audio stream to use. If omitted the first audio stream will be used. (optional) - parameter videoStreamIndex: (query) Optional. The index of the video stream to use. If omitted the first video stream will be used. (optional) - parameter context: (query) Optional. The MediaBrowser.Model.Dlna.EncodingContext. (optional) - parameter streamOptions: (query) Optional. The streaming options. (optional) - returns: RequestBuilder */ open class func getVideoStreamByContainerWithRequestBuilder(itemId: UUID, container: String, _static: Bool? = nil, params: String? = nil, tag: String? = nil, deviceProfileId: String? = nil, playSessionId: String? = nil, segmentContainer: String? = nil, segmentLength: Int? = nil, minSegments: Int? = nil, mediaSourceId: String? = nil, deviceId: String? = nil, audioCodec: String? = nil, enableAutoStreamCopy: Bool? = nil, allowVideoStreamCopy: Bool? = nil, allowAudioStreamCopy: Bool? = nil, breakOnNonKeyFrames: Bool? = nil, audioSampleRate: Int? = nil, maxAudioBitDepth: Int? = nil, audioBitRate: Int? = nil, audioChannels: Int? = nil, maxAudioChannels: Int? = nil, profile: String? = nil, level: String? = nil, framerate: Float? = nil, maxFramerate: Float? = nil, copyTimestamps: Bool? = nil, startTimeTicks: Int64? = nil, width: Int? = nil, height: Int? = nil, videoBitRate: Int? = nil, subtitleStreamIndex: Int? = nil, subtitleMethod: SubtitleMethod15? = nil, maxRefFrames: Int? = nil, maxVideoBitDepth: Int? = nil, requireAvc: Bool? = nil, deInterlace: Bool? = nil, requireNonAnamorphic: Bool? = nil, transcodingMaxAudioChannels: Int? = nil, cpuCoreLimit: Int? = nil, liveStreamId: String? = nil, enableMpegtsM2TsMode: Bool? = nil, videoCodec: String? = nil, subtitleCodec: String? = nil, transcodeReasons: String? = nil, audioStreamIndex: Int? = nil, videoStreamIndex: Int? = nil, context: Context15? = nil, streamOptions: [String:String]? = nil) -> RequestBuilder { var path = "/Videos/{itemId}/stream.{container}" let itemIdPreEscape = "\(itemId)" let itemIdPostEscape = itemIdPreEscape.addingPercentEncoding(withAllowedCharacters: .urlPathAllowed) ?? "" path = path.replacingOccurrences(of: "{itemId}", with: itemIdPostEscape, options: .literal, range: nil) let containerPreEscape = "\(container)" let containerPostEscape = containerPreEscape.addingPercentEncoding(withAllowedCharacters: .urlPathAllowed) ?? "" path = path.replacingOccurrences(of: "{container}", with: containerPostEscape, options: .literal, range: nil) let URLString = SwaggerClientAPI.basePath + path let parameters: [String:Any]? = nil var url = URLComponents(string: URLString) url?.queryItems = APIHelper.mapValuesToQueryItems([ "static": _static, "params": params, "tag": tag, "deviceProfileId": deviceProfileId, "playSessionId": playSessionId, "segmentContainer": segmentContainer, "segmentLength": segmentLength?.encodeToJSON(), "minSegments": minSegments?.encodeToJSON(), "mediaSourceId": mediaSourceId, "deviceId": deviceId, "audioCodec": audioCodec, "enableAutoStreamCopy": enableAutoStreamCopy, "allowVideoStreamCopy": allowVideoStreamCopy, "allowAudioStreamCopy": allowAudioStreamCopy, "breakOnNonKeyFrames": breakOnNonKeyFrames, "audioSampleRate": audioSampleRate?.encodeToJSON(), "maxAudioBitDepth": maxAudioBitDepth?.encodeToJSON(), "audioBitRate": audioBitRate?.encodeToJSON(), "audioChannels": audioChannels?.encodeToJSON(), "maxAudioChannels": maxAudioChannels?.encodeToJSON(), "profile": profile, "level": level, "framerate": framerate, "maxFramerate": maxFramerate, "copyTimestamps": copyTimestamps, "startTimeTicks": startTimeTicks?.encodeToJSON(), "width": width?.encodeToJSON(), "height": height?.encodeToJSON(), "videoBitRate": videoBitRate?.encodeToJSON(), "subtitleStreamIndex": subtitleStreamIndex?.encodeToJSON(), "subtitleMethod": subtitleMethod, "maxRefFrames": maxRefFrames?.encodeToJSON(), "maxVideoBitDepth": maxVideoBitDepth?.encodeToJSON(), "requireAvc": requireAvc, "deInterlace": deInterlace, "requireNonAnamorphic": requireNonAnamorphic, "transcodingMaxAudioChannels": transcodingMaxAudioChannels?.encodeToJSON(), "cpuCoreLimit": cpuCoreLimit?.encodeToJSON(), "liveStreamId": liveStreamId, "enableMpegtsM2TsMode": enableMpegtsM2TsMode, "videoCodec": videoCodec, "subtitleCodec": subtitleCodec, "transcodeReasons": transcodeReasons, "audioStreamIndex": audioStreamIndex?.encodeToJSON(), "videoStreamIndex": videoStreamIndex?.encodeToJSON(), "context": context, "streamOptions": streamOptions ]) let requestBuilder: RequestBuilder.Type = SwaggerClientAPI.requestBuilderFactory.getBuilder() return requestBuilder.init(method: "GET", URLString: (url?.string ?? URLString), parameters: parameters, isBody: false) } /** Gets a video stream. - parameter itemId: (path) The item id. - parameter container: (query) The video container. Possible values are: ts, webm, asf, wmv, ogv, mp4, m4v, mkv, mpeg, mpg, avi, 3gp, wmv, wtv, m2ts, mov, iso, flv. (optional) - parameter _static: (query) Optional. If true, the original file will be streamed statically without any encoding. Use either no url extension or the original file extension. true/false. (optional) - parameter params: (query) The streaming parameters. (optional) - parameter tag: (query) The tag. (optional) - parameter deviceProfileId: (query) Optional. The dlna device profile id to utilize. (optional) - parameter playSessionId: (query) The play session id. (optional) - parameter segmentContainer: (query) The segment container. (optional) - parameter segmentLength: (query) The segment length. (optional) - parameter minSegments: (query) The minimum number of segments. (optional) - parameter mediaSourceId: (query) The media version id, if playing an alternate version. (optional) - parameter deviceId: (query) The device id of the client requesting. Used to stop encoding processes when needed. (optional) - parameter audioCodec: (query) Optional. Specify a audio codec to encode to, e.g. mp3. If omitted the server will auto-select using the url's extension. Options: aac, mp3, vorbis, wma. (optional) - parameter enableAutoStreamCopy: (query) Whether or not to allow automatic stream copy if requested values match the original source. Defaults to true. (optional) - parameter allowVideoStreamCopy: (query) Whether or not to allow copying of the video stream url. (optional) - parameter allowAudioStreamCopy: (query) Whether or not to allow copying of the audio stream url. (optional) - parameter breakOnNonKeyFrames: (query) Optional. Whether to break on non key frames. (optional) - parameter audioSampleRate: (query) Optional. Specify a specific audio sample rate, e.g. 44100. (optional) - parameter maxAudioBitDepth: (query) Optional. The maximum audio bit depth. (optional) - parameter audioBitRate: (query) Optional. Specify an audio bitrate to encode to, e.g. 128000. If omitted this will be left to encoder defaults. (optional) - parameter audioChannels: (query) Optional. Specify a specific number of audio channels to encode to, e.g. 2. (optional) - parameter maxAudioChannels: (query) Optional. Specify a maximum number of audio channels to encode to, e.g. 2. (optional) - parameter profile: (query) Optional. Specify a specific an encoder profile (varies by encoder), e.g. main, baseline, high. (optional) - parameter level: (query) Optional. Specify a level for the encoder profile (varies by encoder), e.g. 3, 3.1. (optional) - parameter framerate: (query) Optional. A specific video framerate to encode to, e.g. 23.976. Generally this should be omitted unless the device has specific requirements. (optional) - parameter maxFramerate: (query) Optional. A specific maximum video framerate to encode to, e.g. 23.976. Generally this should be omitted unless the device has specific requirements. (optional) - parameter copyTimestamps: (query) Whether or not to copy timestamps when transcoding with an offset. Defaults to false. (optional) - parameter startTimeTicks: (query) Optional. Specify a starting offset, in ticks. 1 tick = 10000 ms. (optional) - parameter width: (query) Optional. The fixed horizontal resolution of the encoded video. (optional) - parameter height: (query) Optional. The fixed vertical resolution of the encoded video. (optional) - parameter videoBitRate: (query) Optional. Specify a video bitrate to encode to, e.g. 500000. If omitted this will be left to encoder defaults. (optional) - parameter subtitleStreamIndex: (query) Optional. The index of the subtitle stream to use. If omitted no subtitles will be used. (optional) - parameter subtitleMethod: (query) Optional. Specify the subtitle delivery method. (optional) - parameter maxRefFrames: (query) Optional. (optional) - parameter maxVideoBitDepth: (query) Optional. The maximum video bit depth. (optional) - parameter requireAvc: (query) Optional. Whether to require avc. (optional) - parameter deInterlace: (query) Optional. Whether to deinterlace the video. (optional) - parameter requireNonAnamorphic: (query) Optional. Whether to require a non anamorphic stream. (optional) - parameter transcodingMaxAudioChannels: (query) Optional. The maximum number of audio channels to transcode. (optional) - parameter cpuCoreLimit: (query) Optional. The limit of how many cpu cores to use. (optional) - parameter liveStreamId: (query) The live stream id. (optional) - parameter enableMpegtsM2TsMode: (query) Optional. Whether to enable the MpegtsM2Ts mode. (optional) - parameter videoCodec: (query) Optional. Specify a video codec to encode to, e.g. h264. If omitted the server will auto-select using the url's extension. Options: h265, h264, mpeg4, theora, vpx, wmv. (optional) - parameter subtitleCodec: (query) Optional. Specify a subtitle codec to encode to. (optional) - parameter transcodeReasons: (query) Optional. The transcoding reason. (optional) - parameter audioStreamIndex: (query) Optional. The index of the audio stream to use. If omitted the first audio stream will be used. (optional) - parameter videoStreamIndex: (query) Optional. The index of the video stream to use. If omitted the first video stream will be used. (optional) - parameter context: (query) Optional. The MediaBrowser.Model.Dlna.EncodingContext. (optional) - parameter streamOptions: (query) Optional. The streaming options. (optional) - parameter completion: completion handler to receive the data and the error objects */ open class func headVideoStream(itemId: UUID, container: String? = nil, _static: Bool? = nil, params: String? = nil, tag: String? = nil, deviceProfileId: String? = nil, playSessionId: String? = nil, segmentContainer: String? = nil, segmentLength: Int? = nil, minSegments: Int? = nil, mediaSourceId: String? = nil, deviceId: String? = nil, audioCodec: String? = nil, enableAutoStreamCopy: Bool? = nil, allowVideoStreamCopy: Bool? = nil, allowAudioStreamCopy: Bool? = nil, breakOnNonKeyFrames: Bool? = nil, audioSampleRate: Int? = nil, maxAudioBitDepth: Int? = nil, audioBitRate: Int? = nil, audioChannels: Int? = nil, maxAudioChannels: Int? = nil, profile: String? = nil, level: String? = nil, framerate: Float? = nil, maxFramerate: Float? = nil, copyTimestamps: Bool? = nil, startTimeTicks: Int64? = nil, width: Int? = nil, height: Int? = nil, videoBitRate: Int? = nil, subtitleStreamIndex: Int? = nil, subtitleMethod: SubtitleMethod14? = nil, maxRefFrames: Int? = nil, maxVideoBitDepth: Int? = nil, requireAvc: Bool? = nil, deInterlace: Bool? = nil, requireNonAnamorphic: Bool? = nil, transcodingMaxAudioChannels: Int? = nil, cpuCoreLimit: Int? = nil, liveStreamId: String? = nil, enableMpegtsM2TsMode: Bool? = nil, videoCodec: String? = nil, subtitleCodec: String? = nil, transcodeReasons: String? = nil, audioStreamIndex: Int? = nil, videoStreamIndex: Int? = nil, context: Context14? = nil, streamOptions: [String:String]? = nil, completion: @escaping ((_ data: Data?,_ error: Error?) -> Void)) { headVideoStreamWithRequestBuilder(itemId: itemId, container: container, _static: _static, params: params, tag: tag, deviceProfileId: deviceProfileId, playSessionId: playSessionId, segmentContainer: segmentContainer, segmentLength: segmentLength, minSegments: minSegments, mediaSourceId: mediaSourceId, deviceId: deviceId, audioCodec: audioCodec, enableAutoStreamCopy: enableAutoStreamCopy, allowVideoStreamCopy: allowVideoStreamCopy, allowAudioStreamCopy: allowAudioStreamCopy, breakOnNonKeyFrames: breakOnNonKeyFrames, audioSampleRate: audioSampleRate, maxAudioBitDepth: maxAudioBitDepth, audioBitRate: audioBitRate, audioChannels: audioChannels, maxAudioChannels: maxAudioChannels, profile: profile, level: level, framerate: framerate, maxFramerate: maxFramerate, copyTimestamps: copyTimestamps, startTimeTicks: startTimeTicks, width: width, height: height, videoBitRate: videoBitRate, subtitleStreamIndex: subtitleStreamIndex, subtitleMethod: subtitleMethod, maxRefFrames: maxRefFrames, maxVideoBitDepth: maxVideoBitDepth, requireAvc: requireAvc, deInterlace: deInterlace, requireNonAnamorphic: requireNonAnamorphic, transcodingMaxAudioChannels: transcodingMaxAudioChannels, cpuCoreLimit: cpuCoreLimit, liveStreamId: liveStreamId, enableMpegtsM2TsMode: enableMpegtsM2TsMode, videoCodec: videoCodec, subtitleCodec: subtitleCodec, transcodeReasons: transcodeReasons, audioStreamIndex: audioStreamIndex, videoStreamIndex: videoStreamIndex, context: context, streamOptions: streamOptions).execute { (response, error) -> Void in completion(response?.body, error) } } /** Gets a video stream. - HEAD /Videos/{itemId}/stream - - examples: [{contentType=application/json, example=""}] - parameter itemId: (path) The item id. - parameter container: (query) The video container. Possible values are: ts, webm, asf, wmv, ogv, mp4, m4v, mkv, mpeg, mpg, avi, 3gp, wmv, wtv, m2ts, mov, iso, flv. (optional) - parameter _static: (query) Optional. If true, the original file will be streamed statically without any encoding. Use either no url extension or the original file extension. true/false. (optional) - parameter params: (query) The streaming parameters. (optional) - parameter tag: (query) The tag. (optional) - parameter deviceProfileId: (query) Optional. The dlna device profile id to utilize. (optional) - parameter playSessionId: (query) The play session id. (optional) - parameter segmentContainer: (query) The segment container. (optional) - parameter segmentLength: (query) The segment length. (optional) - parameter minSegments: (query) The minimum number of segments. (optional) - parameter mediaSourceId: (query) The media version id, if playing an alternate version. (optional) - parameter deviceId: (query) The device id of the client requesting. Used to stop encoding processes when needed. (optional) - parameter audioCodec: (query) Optional. Specify a audio codec to encode to, e.g. mp3. If omitted the server will auto-select using the url's extension. Options: aac, mp3, vorbis, wma. (optional) - parameter enableAutoStreamCopy: (query) Whether or not to allow automatic stream copy if requested values match the original source. Defaults to true. (optional) - parameter allowVideoStreamCopy: (query) Whether or not to allow copying of the video stream url. (optional) - parameter allowAudioStreamCopy: (query) Whether or not to allow copying of the audio stream url. (optional) - parameter breakOnNonKeyFrames: (query) Optional. Whether to break on non key frames. (optional) - parameter audioSampleRate: (query) Optional. Specify a specific audio sample rate, e.g. 44100. (optional) - parameter maxAudioBitDepth: (query) Optional. The maximum audio bit depth. (optional) - parameter audioBitRate: (query) Optional. Specify an audio bitrate to encode to, e.g. 128000. If omitted this will be left to encoder defaults. (optional) - parameter audioChannels: (query) Optional. Specify a specific number of audio channels to encode to, e.g. 2. (optional) - parameter maxAudioChannels: (query) Optional. Specify a maximum number of audio channels to encode to, e.g. 2. (optional) - parameter profile: (query) Optional. Specify a specific an encoder profile (varies by encoder), e.g. main, baseline, high. (optional) - parameter level: (query) Optional. Specify a level for the encoder profile (varies by encoder), e.g. 3, 3.1. (optional) - parameter framerate: (query) Optional. A specific video framerate to encode to, e.g. 23.976. Generally this should be omitted unless the device has specific requirements. (optional) - parameter maxFramerate: (query) Optional. A specific maximum video framerate to encode to, e.g. 23.976. Generally this should be omitted unless the device has specific requirements. (optional) - parameter copyTimestamps: (query) Whether or not to copy timestamps when transcoding with an offset. Defaults to false. (optional) - parameter startTimeTicks: (query) Optional. Specify a starting offset, in ticks. 1 tick = 10000 ms. (optional) - parameter width: (query) Optional. The fixed horizontal resolution of the encoded video. (optional) - parameter height: (query) Optional. The fixed vertical resolution of the encoded video. (optional) - parameter videoBitRate: (query) Optional. Specify a video bitrate to encode to, e.g. 500000. If omitted this will be left to encoder defaults. (optional) - parameter subtitleStreamIndex: (query) Optional. The index of the subtitle stream to use. If omitted no subtitles will be used. (optional) - parameter subtitleMethod: (query) Optional. Specify the subtitle delivery method. (optional) - parameter maxRefFrames: (query) Optional. (optional) - parameter maxVideoBitDepth: (query) Optional. The maximum video bit depth. (optional) - parameter requireAvc: (query) Optional. Whether to require avc. (optional) - parameter deInterlace: (query) Optional. Whether to deinterlace the video. (optional) - parameter requireNonAnamorphic: (query) Optional. Whether to require a non anamorphic stream. (optional) - parameter transcodingMaxAudioChannels: (query) Optional. The maximum number of audio channels to transcode. (optional) - parameter cpuCoreLimit: (query) Optional. The limit of how many cpu cores to use. (optional) - parameter liveStreamId: (query) The live stream id. (optional) - parameter enableMpegtsM2TsMode: (query) Optional. Whether to enable the MpegtsM2Ts mode. (optional) - parameter videoCodec: (query) Optional. Specify a video codec to encode to, e.g. h264. If omitted the server will auto-select using the url's extension. Options: h265, h264, mpeg4, theora, vpx, wmv. (optional) - parameter subtitleCodec: (query) Optional. Specify a subtitle codec to encode to. (optional) - parameter transcodeReasons: (query) Optional. The transcoding reason. (optional) - parameter audioStreamIndex: (query) Optional. The index of the audio stream to use. If omitted the first audio stream will be used. (optional) - parameter videoStreamIndex: (query) Optional. The index of the video stream to use. If omitted the first video stream will be used. (optional) - parameter context: (query) Optional. The MediaBrowser.Model.Dlna.EncodingContext. (optional) - parameter streamOptions: (query) Optional. The streaming options. (optional) - returns: RequestBuilder */ open class func headVideoStreamWithRequestBuilder(itemId: UUID, container: String? = nil, _static: Bool? = nil, params: String? = nil, tag: String? = nil, deviceProfileId: String? = nil, playSessionId: String? = nil, segmentContainer: String? = nil, segmentLength: Int? = nil, minSegments: Int? = nil, mediaSourceId: String? = nil, deviceId: String? = nil, audioCodec: String? = nil, enableAutoStreamCopy: Bool? = nil, allowVideoStreamCopy: Bool? = nil, allowAudioStreamCopy: Bool? = nil, breakOnNonKeyFrames: Bool? = nil, audioSampleRate: Int? = nil, maxAudioBitDepth: Int? = nil, audioBitRate: Int? = nil, audioChannels: Int? = nil, maxAudioChannels: Int? = nil, profile: String? = nil, level: String? = nil, framerate: Float? = nil, maxFramerate: Float? = nil, copyTimestamps: Bool? = nil, startTimeTicks: Int64? = nil, width: Int? = nil, height: Int? = nil, videoBitRate: Int? = nil, subtitleStreamIndex: Int? = nil, subtitleMethod: SubtitleMethod14? = nil, maxRefFrames: Int? = nil, maxVideoBitDepth: Int? = nil, requireAvc: Bool? = nil, deInterlace: Bool? = nil, requireNonAnamorphic: Bool? = nil, transcodingMaxAudioChannels: Int? = nil, cpuCoreLimit: Int? = nil, liveStreamId: String? = nil, enableMpegtsM2TsMode: Bool? = nil, videoCodec: String? = nil, subtitleCodec: String? = nil, transcodeReasons: String? = nil, audioStreamIndex: Int? = nil, videoStreamIndex: Int? = nil, context: Context14? = nil, streamOptions: [String:String]? = nil) -> RequestBuilder { var path = "/Videos/{itemId}/stream" let itemIdPreEscape = "\(itemId)" let itemIdPostEscape = itemIdPreEscape.addingPercentEncoding(withAllowedCharacters: .urlPathAllowed) ?? "" path = path.replacingOccurrences(of: "{itemId}", with: itemIdPostEscape, options: .literal, range: nil) let URLString = SwaggerClientAPI.basePath + path let parameters: [String:Any]? = nil var url = URLComponents(string: URLString) url?.queryItems = APIHelper.mapValuesToQueryItems([ "container": container, "static": _static, "params": params, "tag": tag, "deviceProfileId": deviceProfileId, "playSessionId": playSessionId, "segmentContainer": segmentContainer, "segmentLength": segmentLength?.encodeToJSON(), "minSegments": minSegments?.encodeToJSON(), "mediaSourceId": mediaSourceId, "deviceId": deviceId, "audioCodec": audioCodec, "enableAutoStreamCopy": enableAutoStreamCopy, "allowVideoStreamCopy": allowVideoStreamCopy, "allowAudioStreamCopy": allowAudioStreamCopy, "breakOnNonKeyFrames": breakOnNonKeyFrames, "audioSampleRate": audioSampleRate?.encodeToJSON(), "maxAudioBitDepth": maxAudioBitDepth?.encodeToJSON(), "audioBitRate": audioBitRate?.encodeToJSON(), "audioChannels": audioChannels?.encodeToJSON(), "maxAudioChannels": maxAudioChannels?.encodeToJSON(), "profile": profile, "level": level, "framerate": framerate, "maxFramerate": maxFramerate, "copyTimestamps": copyTimestamps, "startTimeTicks": startTimeTicks?.encodeToJSON(), "width": width?.encodeToJSON(), "height": height?.encodeToJSON(), "videoBitRate": videoBitRate?.encodeToJSON(), "subtitleStreamIndex": subtitleStreamIndex?.encodeToJSON(), "subtitleMethod": subtitleMethod, "maxRefFrames": maxRefFrames?.encodeToJSON(), "maxVideoBitDepth": maxVideoBitDepth?.encodeToJSON(), "requireAvc": requireAvc, "deInterlace": deInterlace, "requireNonAnamorphic": requireNonAnamorphic, "transcodingMaxAudioChannels": transcodingMaxAudioChannels?.encodeToJSON(), "cpuCoreLimit": cpuCoreLimit?.encodeToJSON(), "liveStreamId": liveStreamId, "enableMpegtsM2TsMode": enableMpegtsM2TsMode, "videoCodec": videoCodec, "subtitleCodec": subtitleCodec, "transcodeReasons": transcodeReasons, "audioStreamIndex": audioStreamIndex?.encodeToJSON(), "videoStreamIndex": videoStreamIndex?.encodeToJSON(), "context": context, "streamOptions": streamOptions ]) let requestBuilder: RequestBuilder.Type = SwaggerClientAPI.requestBuilderFactory.getBuilder() return requestBuilder.init(method: "HEAD", URLString: (url?.string ?? URLString), parameters: parameters, isBody: false) } /** Gets a video stream. - parameter itemId: (path) The item id. - parameter container: (path) The video container. Possible values are: ts, webm, asf, wmv, ogv, mp4, m4v, mkv, mpeg, mpg, avi, 3gp, wmv, wtv, m2ts, mov, iso, flv. - parameter _static: (query) Optional. If true, the original file will be streamed statically without any encoding. Use either no url extension or the original file extension. true/false. (optional) - parameter params: (query) The streaming parameters. (optional) - parameter tag: (query) The tag. (optional) - parameter deviceProfileId: (query) Optional. The dlna device profile id to utilize. (optional) - parameter playSessionId: (query) The play session id. (optional) - parameter segmentContainer: (query) The segment container. (optional) - parameter segmentLength: (query) The segment length. (optional) - parameter minSegments: (query) The minimum number of segments. (optional) - parameter mediaSourceId: (query) The media version id, if playing an alternate version. (optional) - parameter deviceId: (query) The device id of the client requesting. Used to stop encoding processes when needed. (optional) - parameter audioCodec: (query) Optional. Specify a audio codec to encode to, e.g. mp3. If omitted the server will auto-select using the url's extension. Options: aac, mp3, vorbis, wma. (optional) - parameter enableAutoStreamCopy: (query) Whether or not to allow automatic stream copy if requested values match the original source. Defaults to true. (optional) - parameter allowVideoStreamCopy: (query) Whether or not to allow copying of the video stream url. (optional) - parameter allowAudioStreamCopy: (query) Whether or not to allow copying of the audio stream url. (optional) - parameter breakOnNonKeyFrames: (query) Optional. Whether to break on non key frames. (optional) - parameter audioSampleRate: (query) Optional. Specify a specific audio sample rate, e.g. 44100. (optional) - parameter maxAudioBitDepth: (query) Optional. The maximum audio bit depth. (optional) - parameter audioBitRate: (query) Optional. Specify an audio bitrate to encode to, e.g. 128000. If omitted this will be left to encoder defaults. (optional) - parameter audioChannels: (query) Optional. Specify a specific number of audio channels to encode to, e.g. 2. (optional) - parameter maxAudioChannels: (query) Optional. Specify a maximum number of audio channels to encode to, e.g. 2. (optional) - parameter profile: (query) Optional. Specify a specific an encoder profile (varies by encoder), e.g. main, baseline, high. (optional) - parameter level: (query) Optional. Specify a level for the encoder profile (varies by encoder), e.g. 3, 3.1. (optional) - parameter framerate: (query) Optional. A specific video framerate to encode to, e.g. 23.976. Generally this should be omitted unless the device has specific requirements. (optional) - parameter maxFramerate: (query) Optional. A specific maximum video framerate to encode to, e.g. 23.976. Generally this should be omitted unless the device has specific requirements. (optional) - parameter copyTimestamps: (query) Whether or not to copy timestamps when transcoding with an offset. Defaults to false. (optional) - parameter startTimeTicks: (query) Optional. Specify a starting offset, in ticks. 1 tick = 10000 ms. (optional) - parameter width: (query) Optional. The fixed horizontal resolution of the encoded video. (optional) - parameter height: (query) Optional. The fixed vertical resolution of the encoded video. (optional) - parameter videoBitRate: (query) Optional. Specify a video bitrate to encode to, e.g. 500000. If omitted this will be left to encoder defaults. (optional) - parameter subtitleStreamIndex: (query) Optional. The index of the subtitle stream to use. If omitted no subtitles will be used. (optional) - parameter subtitleMethod: (query) Optional. Specify the subtitle delivery method. (optional) - parameter maxRefFrames: (query) Optional. (optional) - parameter maxVideoBitDepth: (query) Optional. The maximum video bit depth. (optional) - parameter requireAvc: (query) Optional. Whether to require avc. (optional) - parameter deInterlace: (query) Optional. Whether to deinterlace the video. (optional) - parameter requireNonAnamorphic: (query) Optional. Whether to require a non anamorphic stream. (optional) - parameter transcodingMaxAudioChannels: (query) Optional. The maximum number of audio channels to transcode. (optional) - parameter cpuCoreLimit: (query) Optional. The limit of how many cpu cores to use. (optional) - parameter liveStreamId: (query) The live stream id. (optional) - parameter enableMpegtsM2TsMode: (query) Optional. Whether to enable the MpegtsM2Ts mode. (optional) - parameter videoCodec: (query) Optional. Specify a video codec to encode to, e.g. h264. If omitted the server will auto-select using the url's extension. Options: h265, h264, mpeg4, theora, vpx, wmv. (optional) - parameter subtitleCodec: (query) Optional. Specify a subtitle codec to encode to. (optional) - parameter transcodeReasons: (query) Optional. The transcoding reason. (optional) - parameter audioStreamIndex: (query) Optional. The index of the audio stream to use. If omitted the first audio stream will be used. (optional) - parameter videoStreamIndex: (query) Optional. The index of the video stream to use. If omitted the first video stream will be used. (optional) - parameter context: (query) Optional. The MediaBrowser.Model.Dlna.EncodingContext. (optional) - parameter streamOptions: (query) Optional. The streaming options. (optional) - parameter completion: completion handler to receive the data and the error objects */ open class func headVideoStreamByContainer(itemId: UUID, container: String, _static: Bool? = nil, params: String? = nil, tag: String? = nil, deviceProfileId: String? = nil, playSessionId: String? = nil, segmentContainer: String? = nil, segmentLength: Int? = nil, minSegments: Int? = nil, mediaSourceId: String? = nil, deviceId: String? = nil, audioCodec: String? = nil, enableAutoStreamCopy: Bool? = nil, allowVideoStreamCopy: Bool? = nil, allowAudioStreamCopy: Bool? = nil, breakOnNonKeyFrames: Bool? = nil, audioSampleRate: Int? = nil, maxAudioBitDepth: Int? = nil, audioBitRate: Int? = nil, audioChannels: Int? = nil, maxAudioChannels: Int? = nil, profile: String? = nil, level: String? = nil, framerate: Float? = nil, maxFramerate: Float? = nil, copyTimestamps: Bool? = nil, startTimeTicks: Int64? = nil, width: Int? = nil, height: Int? = nil, videoBitRate: Int? = nil, subtitleStreamIndex: Int? = nil, subtitleMethod: SubtitleMethod16? = nil, maxRefFrames: Int? = nil, maxVideoBitDepth: Int? = nil, requireAvc: Bool? = nil, deInterlace: Bool? = nil, requireNonAnamorphic: Bool? = nil, transcodingMaxAudioChannels: Int? = nil, cpuCoreLimit: Int? = nil, liveStreamId: String? = nil, enableMpegtsM2TsMode: Bool? = nil, videoCodec: String? = nil, subtitleCodec: String? = nil, transcodeReasons: String? = nil, audioStreamIndex: Int? = nil, videoStreamIndex: Int? = nil, context: Context16? = nil, streamOptions: [String:String]? = nil, completion: @escaping ((_ data: Data?,_ error: Error?) -> Void)) { headVideoStreamByContainerWithRequestBuilder(itemId: itemId, container: container, _static: _static, params: params, tag: tag, deviceProfileId: deviceProfileId, playSessionId: playSessionId, segmentContainer: segmentContainer, segmentLength: segmentLength, minSegments: minSegments, mediaSourceId: mediaSourceId, deviceId: deviceId, audioCodec: audioCodec, enableAutoStreamCopy: enableAutoStreamCopy, allowVideoStreamCopy: allowVideoStreamCopy, allowAudioStreamCopy: allowAudioStreamCopy, breakOnNonKeyFrames: breakOnNonKeyFrames, audioSampleRate: audioSampleRate, maxAudioBitDepth: maxAudioBitDepth, audioBitRate: audioBitRate, audioChannels: audioChannels, maxAudioChannels: maxAudioChannels, profile: profile, level: level, framerate: framerate, maxFramerate: maxFramerate, copyTimestamps: copyTimestamps, startTimeTicks: startTimeTicks, width: width, height: height, videoBitRate: videoBitRate, subtitleStreamIndex: subtitleStreamIndex, subtitleMethod: subtitleMethod, maxRefFrames: maxRefFrames, maxVideoBitDepth: maxVideoBitDepth, requireAvc: requireAvc, deInterlace: deInterlace, requireNonAnamorphic: requireNonAnamorphic, transcodingMaxAudioChannels: transcodingMaxAudioChannels, cpuCoreLimit: cpuCoreLimit, liveStreamId: liveStreamId, enableMpegtsM2TsMode: enableMpegtsM2TsMode, videoCodec: videoCodec, subtitleCodec: subtitleCodec, transcodeReasons: transcodeReasons, audioStreamIndex: audioStreamIndex, videoStreamIndex: videoStreamIndex, context: context, streamOptions: streamOptions).execute { (response, error) -> Void in completion(response?.body, error) } } /** Gets a video stream. - HEAD /Videos/{itemId}/stream.{container} - - examples: [{contentType=application/json, example=""}] - parameter itemId: (path) The item id. - parameter container: (path) The video container. Possible values are: ts, webm, asf, wmv, ogv, mp4, m4v, mkv, mpeg, mpg, avi, 3gp, wmv, wtv, m2ts, mov, iso, flv. - parameter _static: (query) Optional. If true, the original file will be streamed statically without any encoding. Use either no url extension or the original file extension. true/false. (optional) - parameter params: (query) The streaming parameters. (optional) - parameter tag: (query) The tag. (optional) - parameter deviceProfileId: (query) Optional. The dlna device profile id to utilize. (optional) - parameter playSessionId: (query) The play session id. (optional) - parameter segmentContainer: (query) The segment container. (optional) - parameter segmentLength: (query) The segment length. (optional) - parameter minSegments: (query) The minimum number of segments. (optional) - parameter mediaSourceId: (query) The media version id, if playing an alternate version. (optional) - parameter deviceId: (query) The device id of the client requesting. Used to stop encoding processes when needed. (optional) - parameter audioCodec: (query) Optional. Specify a audio codec to encode to, e.g. mp3. If omitted the server will auto-select using the url's extension. Options: aac, mp3, vorbis, wma. (optional) - parameter enableAutoStreamCopy: (query) Whether or not to allow automatic stream copy if requested values match the original source. Defaults to true. (optional) - parameter allowVideoStreamCopy: (query) Whether or not to allow copying of the video stream url. (optional) - parameter allowAudioStreamCopy: (query) Whether or not to allow copying of the audio stream url. (optional) - parameter breakOnNonKeyFrames: (query) Optional. Whether to break on non key frames. (optional) - parameter audioSampleRate: (query) Optional. Specify a specific audio sample rate, e.g. 44100. (optional) - parameter maxAudioBitDepth: (query) Optional. The maximum audio bit depth. (optional) - parameter audioBitRate: (query) Optional. Specify an audio bitrate to encode to, e.g. 128000. If omitted this will be left to encoder defaults. (optional) - parameter audioChannels: (query) Optional. Specify a specific number of audio channels to encode to, e.g. 2. (optional) - parameter maxAudioChannels: (query) Optional. Specify a maximum number of audio channels to encode to, e.g. 2. (optional) - parameter profile: (query) Optional. Specify a specific an encoder profile (varies by encoder), e.g. main, baseline, high. (optional) - parameter level: (query) Optional. Specify a level for the encoder profile (varies by encoder), e.g. 3, 3.1. (optional) - parameter framerate: (query) Optional. A specific video framerate to encode to, e.g. 23.976. Generally this should be omitted unless the device has specific requirements. (optional) - parameter maxFramerate: (query) Optional. A specific maximum video framerate to encode to, e.g. 23.976. Generally this should be omitted unless the device has specific requirements. (optional) - parameter copyTimestamps: (query) Whether or not to copy timestamps when transcoding with an offset. Defaults to false. (optional) - parameter startTimeTicks: (query) Optional. Specify a starting offset, in ticks. 1 tick = 10000 ms. (optional) - parameter width: (query) Optional. The fixed horizontal resolution of the encoded video. (optional) - parameter height: (query) Optional. The fixed vertical resolution of the encoded video. (optional) - parameter videoBitRate: (query) Optional. Specify a video bitrate to encode to, e.g. 500000. If omitted this will be left to encoder defaults. (optional) - parameter subtitleStreamIndex: (query) Optional. The index of the subtitle stream to use. If omitted no subtitles will be used. (optional) - parameter subtitleMethod: (query) Optional. Specify the subtitle delivery method. (optional) - parameter maxRefFrames: (query) Optional. (optional) - parameter maxVideoBitDepth: (query) Optional. The maximum video bit depth. (optional) - parameter requireAvc: (query) Optional. Whether to require avc. (optional) - parameter deInterlace: (query) Optional. Whether to deinterlace the video. (optional) - parameter requireNonAnamorphic: (query) Optional. Whether to require a non anamorphic stream. (optional) - parameter transcodingMaxAudioChannels: (query) Optional. The maximum number of audio channels to transcode. (optional) - parameter cpuCoreLimit: (query) Optional. The limit of how many cpu cores to use. (optional) - parameter liveStreamId: (query) The live stream id. (optional) - parameter enableMpegtsM2TsMode: (query) Optional. Whether to enable the MpegtsM2Ts mode. (optional) - parameter videoCodec: (query) Optional. Specify a video codec to encode to, e.g. h264. If omitted the server will auto-select using the url's extension. Options: h265, h264, mpeg4, theora, vpx, wmv. (optional) - parameter subtitleCodec: (query) Optional. Specify a subtitle codec to encode to. (optional) - parameter transcodeReasons: (query) Optional. The transcoding reason. (optional) - parameter audioStreamIndex: (query) Optional. The index of the audio stream to use. If omitted the first audio stream will be used. (optional) - parameter videoStreamIndex: (query) Optional. The index of the video stream to use. If omitted the first video stream will be used. (optional) - parameter context: (query) Optional. The MediaBrowser.Model.Dlna.EncodingContext. (optional) - parameter streamOptions: (query) Optional. The streaming options. (optional) - returns: RequestBuilder */ open class func headVideoStreamByContainerWithRequestBuilder(itemId: UUID, container: String, _static: Bool? = nil, params: String? = nil, tag: String? = nil, deviceProfileId: String? = nil, playSessionId: String? = nil, segmentContainer: String? = nil, segmentLength: Int? = nil, minSegments: Int? = nil, mediaSourceId: String? = nil, deviceId: String? = nil, audioCodec: String? = nil, enableAutoStreamCopy: Bool? = nil, allowVideoStreamCopy: Bool? = nil, allowAudioStreamCopy: Bool? = nil, breakOnNonKeyFrames: Bool? = nil, audioSampleRate: Int? = nil, maxAudioBitDepth: Int? = nil, audioBitRate: Int? = nil, audioChannels: Int? = nil, maxAudioChannels: Int? = nil, profile: String? = nil, level: String? = nil, framerate: Float? = nil, maxFramerate: Float? = nil, copyTimestamps: Bool? = nil, startTimeTicks: Int64? = nil, width: Int? = nil, height: Int? = nil, videoBitRate: Int? = nil, subtitleStreamIndex: Int? = nil, subtitleMethod: SubtitleMethod16? = nil, maxRefFrames: Int? = nil, maxVideoBitDepth: Int? = nil, requireAvc: Bool? = nil, deInterlace: Bool? = nil, requireNonAnamorphic: Bool? = nil, transcodingMaxAudioChannels: Int? = nil, cpuCoreLimit: Int? = nil, liveStreamId: String? = nil, enableMpegtsM2TsMode: Bool? = nil, videoCodec: String? = nil, subtitleCodec: String? = nil, transcodeReasons: String? = nil, audioStreamIndex: Int? = nil, videoStreamIndex: Int? = nil, context: Context16? = nil, streamOptions: [String:String]? = nil) -> RequestBuilder { var path = "/Videos/{itemId}/stream.{container}" let itemIdPreEscape = "\(itemId)" let itemIdPostEscape = itemIdPreEscape.addingPercentEncoding(withAllowedCharacters: .urlPathAllowed) ?? "" path = path.replacingOccurrences(of: "{itemId}", with: itemIdPostEscape, options: .literal, range: nil) let containerPreEscape = "\(container)" let containerPostEscape = containerPreEscape.addingPercentEncoding(withAllowedCharacters: .urlPathAllowed) ?? "" path = path.replacingOccurrences(of: "{container}", with: containerPostEscape, options: .literal, range: nil) let URLString = SwaggerClientAPI.basePath + path let parameters: [String:Any]? = nil var url = URLComponents(string: URLString) url?.queryItems = APIHelper.mapValuesToQueryItems([ "static": _static, "params": params, "tag": tag, "deviceProfileId": deviceProfileId, "playSessionId": playSessionId, "segmentContainer": segmentContainer, "segmentLength": segmentLength?.encodeToJSON(), "minSegments": minSegments?.encodeToJSON(), "mediaSourceId": mediaSourceId, "deviceId": deviceId, "audioCodec": audioCodec, "enableAutoStreamCopy": enableAutoStreamCopy, "allowVideoStreamCopy": allowVideoStreamCopy, "allowAudioStreamCopy": allowAudioStreamCopy, "breakOnNonKeyFrames": breakOnNonKeyFrames, "audioSampleRate": audioSampleRate?.encodeToJSON(), "maxAudioBitDepth": maxAudioBitDepth?.encodeToJSON(), "audioBitRate": audioBitRate?.encodeToJSON(), "audioChannels": audioChannels?.encodeToJSON(), "maxAudioChannels": maxAudioChannels?.encodeToJSON(), "profile": profile, "level": level, "framerate": framerate, "maxFramerate": maxFramerate, "copyTimestamps": copyTimestamps, "startTimeTicks": startTimeTicks?.encodeToJSON(), "width": width?.encodeToJSON(), "height": height?.encodeToJSON(), "videoBitRate": videoBitRate?.encodeToJSON(), "subtitleStreamIndex": subtitleStreamIndex?.encodeToJSON(), "subtitleMethod": subtitleMethod, "maxRefFrames": maxRefFrames?.encodeToJSON(), "maxVideoBitDepth": maxVideoBitDepth?.encodeToJSON(), "requireAvc": requireAvc, "deInterlace": deInterlace, "requireNonAnamorphic": requireNonAnamorphic, "transcodingMaxAudioChannels": transcodingMaxAudioChannels?.encodeToJSON(), "cpuCoreLimit": cpuCoreLimit?.encodeToJSON(), "liveStreamId": liveStreamId, "enableMpegtsM2TsMode": enableMpegtsM2TsMode, "videoCodec": videoCodec, "subtitleCodec": subtitleCodec, "transcodeReasons": transcodeReasons, "audioStreamIndex": audioStreamIndex?.encodeToJSON(), "videoStreamIndex": videoStreamIndex?.encodeToJSON(), "context": context, "streamOptions": streamOptions ]) let requestBuilder: RequestBuilder.Type = SwaggerClientAPI.requestBuilderFactory.getBuilder() return requestBuilder.init(method: "HEAD", URLString: (url?.string ?? URLString), parameters: parameters, isBody: false) } /** Merges videos into a single record. - parameter ids: (query) Item id list. This allows multiple, comma delimited. - parameter completion: completion handler to receive the data and the error objects */ open class func mergeVersions(ids: [UUID], completion: @escaping ((_ data: Void?,_ error: Error?) -> Void)) { mergeVersionsWithRequestBuilder(ids: ids).execute { (response, error) -> Void in if error == nil { completion((), error) } else { completion(nil, error) } } } /** Merges videos into a single record. - POST /Videos/MergeVersions - - API Key: - type: apiKey X-Emby-Authorization - name: CustomAuthentication - parameter ids: (query) Item id list. This allows multiple, comma delimited. - returns: RequestBuilder */ open class func mergeVersionsWithRequestBuilder(ids: [UUID]) -> RequestBuilder { let path = "/Videos/MergeVersions" let URLString = SwaggerClientAPI.basePath + path let parameters: [String:Any]? = nil var url = URLComponents(string: URLString) url?.queryItems = APIHelper.mapValuesToQueryItems([ "ids": ids ]) let requestBuilder: RequestBuilder.Type = SwaggerClientAPI.requestBuilderFactory.getNonDecodableBuilder() return requestBuilder.init(method: "POST", URLString: (url?.string ?? URLString), parameters: parameters, isBody: false) } }