424 lines
17 KiB
TypeScript
424 lines
17 KiB
TypeScript
|
/* tslint:disable */
|
||
|
/* eslint-disable */
|
||
|
/**
|
||
|
* Jellyfin API
|
||
|
* No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
||
|
*
|
||
|
* The version of the OpenAPI document: 10.8.9
|
||
|
*
|
||
|
*
|
||
|
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
||
|
* https://openapi-generator.tech
|
||
|
* Do not edit the class manually.
|
||
|
*/
|
||
|
|
||
|
import { exists, mapValues } from '../runtime';
|
||
|
import type { CodecProfile } from './CodecProfile';
|
||
|
import {
|
||
|
CodecProfileFromJSON,
|
||
|
CodecProfileFromJSONTyped,
|
||
|
CodecProfileToJSON,
|
||
|
} from './CodecProfile';
|
||
|
import type { ContainerProfile } from './ContainerProfile';
|
||
|
import {
|
||
|
ContainerProfileFromJSON,
|
||
|
ContainerProfileFromJSONTyped,
|
||
|
ContainerProfileToJSON,
|
||
|
} from './ContainerProfile';
|
||
|
import type { DeviceProfileIdentification } from './DeviceProfileIdentification';
|
||
|
import {
|
||
|
DeviceProfileIdentificationFromJSON,
|
||
|
DeviceProfileIdentificationFromJSONTyped,
|
||
|
DeviceProfileIdentificationToJSON,
|
||
|
} from './DeviceProfileIdentification';
|
||
|
import type { DirectPlayProfile } from './DirectPlayProfile';
|
||
|
import {
|
||
|
DirectPlayProfileFromJSON,
|
||
|
DirectPlayProfileFromJSONTyped,
|
||
|
DirectPlayProfileToJSON,
|
||
|
} from './DirectPlayProfile';
|
||
|
import type { ResponseProfile } from './ResponseProfile';
|
||
|
import {
|
||
|
ResponseProfileFromJSON,
|
||
|
ResponseProfileFromJSONTyped,
|
||
|
ResponseProfileToJSON,
|
||
|
} from './ResponseProfile';
|
||
|
import type { SubtitleProfile } from './SubtitleProfile';
|
||
|
import {
|
||
|
SubtitleProfileFromJSON,
|
||
|
SubtitleProfileFromJSONTyped,
|
||
|
SubtitleProfileToJSON,
|
||
|
} from './SubtitleProfile';
|
||
|
import type { TranscodingProfile } from './TranscodingProfile';
|
||
|
import {
|
||
|
TranscodingProfileFromJSON,
|
||
|
TranscodingProfileFromJSONTyped,
|
||
|
TranscodingProfileToJSON,
|
||
|
} from './TranscodingProfile';
|
||
|
import type { XmlAttribute } from './XmlAttribute';
|
||
|
import {
|
||
|
XmlAttributeFromJSON,
|
||
|
XmlAttributeFromJSONTyped,
|
||
|
XmlAttributeToJSON,
|
||
|
} from './XmlAttribute';
|
||
|
|
||
|
/**
|
||
|
* A MediaBrowser.Model.Dlna.DeviceProfile represents a set of metadata which determines which content a certain device is able to play.
|
||
|
* <br />
|
||
|
* Specifically, it defines the supported <see cref="P:MediaBrowser.Model.Dlna.DeviceProfile.ContainerProfiles">containers</see> and
|
||
|
* <see cref="P:MediaBrowser.Model.Dlna.DeviceProfile.CodecProfiles">codecs</see> (video and/or audio, including codec profiles and levels)
|
||
|
* the device is able to direct play (without transcoding or remuxing),
|
||
|
* as well as which <see cref="P:MediaBrowser.Model.Dlna.DeviceProfile.TranscodingProfiles">containers/codecs to transcode to</see> in case it isn't.
|
||
|
* @export
|
||
|
* @interface DeviceProfile
|
||
|
*/
|
||
|
export interface DeviceProfile {
|
||
|
/**
|
||
|
* Gets or sets the name of this device profile.
|
||
|
* @type {string}
|
||
|
* @memberof DeviceProfile
|
||
|
*/
|
||
|
name?: string | null;
|
||
|
/**
|
||
|
* Gets or sets the Id.
|
||
|
* @type {string}
|
||
|
* @memberof DeviceProfile
|
||
|
*/
|
||
|
id?: string | null;
|
||
|
/**
|
||
|
*
|
||
|
* @type {DeviceProfileIdentification}
|
||
|
* @memberof DeviceProfile
|
||
|
*/
|
||
|
identification?: DeviceProfileIdentification | null;
|
||
|
/**
|
||
|
* Gets or sets the friendly name of the device profile, which can be shown to users.
|
||
|
* @type {string}
|
||
|
* @memberof DeviceProfile
|
||
|
*/
|
||
|
friendlyName?: string | null;
|
||
|
/**
|
||
|
* Gets or sets the manufacturer of the device which this profile represents.
|
||
|
* @type {string}
|
||
|
* @memberof DeviceProfile
|
||
|
*/
|
||
|
manufacturer?: string | null;
|
||
|
/**
|
||
|
* Gets or sets an url for the manufacturer of the device which this profile represents.
|
||
|
* @type {string}
|
||
|
* @memberof DeviceProfile
|
||
|
*/
|
||
|
manufacturerUrl?: string | null;
|
||
|
/**
|
||
|
* Gets or sets the model name of the device which this profile represents.
|
||
|
* @type {string}
|
||
|
* @memberof DeviceProfile
|
||
|
*/
|
||
|
modelName?: string | null;
|
||
|
/**
|
||
|
* Gets or sets the model description of the device which this profile represents.
|
||
|
* @type {string}
|
||
|
* @memberof DeviceProfile
|
||
|
*/
|
||
|
modelDescription?: string | null;
|
||
|
/**
|
||
|
* Gets or sets the model number of the device which this profile represents.
|
||
|
* @type {string}
|
||
|
* @memberof DeviceProfile
|
||
|
*/
|
||
|
modelNumber?: string | null;
|
||
|
/**
|
||
|
* Gets or sets the ModelUrl.
|
||
|
* @type {string}
|
||
|
* @memberof DeviceProfile
|
||
|
*/
|
||
|
modelUrl?: string | null;
|
||
|
/**
|
||
|
* Gets or sets the serial number of the device which this profile represents.
|
||
|
* @type {string}
|
||
|
* @memberof DeviceProfile
|
||
|
*/
|
||
|
serialNumber?: string | null;
|
||
|
/**
|
||
|
* Gets or sets a value indicating whether EnableAlbumArtInDidl.
|
||
|
* @type {boolean}
|
||
|
* @memberof DeviceProfile
|
||
|
*/
|
||
|
enableAlbumArtInDidl?: boolean;
|
||
|
/**
|
||
|
* Gets or sets a value indicating whether EnableSingleAlbumArtLimit.
|
||
|
* @type {boolean}
|
||
|
* @memberof DeviceProfile
|
||
|
*/
|
||
|
enableSingleAlbumArtLimit?: boolean;
|
||
|
/**
|
||
|
* Gets or sets a value indicating whether EnableSingleSubtitleLimit.
|
||
|
* @type {boolean}
|
||
|
* @memberof DeviceProfile
|
||
|
*/
|
||
|
enableSingleSubtitleLimit?: boolean;
|
||
|
/**
|
||
|
* Gets or sets the SupportedMediaTypes.
|
||
|
* @type {string}
|
||
|
* @memberof DeviceProfile
|
||
|
*/
|
||
|
supportedMediaTypes?: string;
|
||
|
/**
|
||
|
* Gets or sets the UserId.
|
||
|
* @type {string}
|
||
|
* @memberof DeviceProfile
|
||
|
*/
|
||
|
userId?: string | null;
|
||
|
/**
|
||
|
* Gets or sets the AlbumArtPn.
|
||
|
* @type {string}
|
||
|
* @memberof DeviceProfile
|
||
|
*/
|
||
|
albumArtPn?: string | null;
|
||
|
/**
|
||
|
* Gets or sets the MaxAlbumArtWidth.
|
||
|
* @type {number}
|
||
|
* @memberof DeviceProfile
|
||
|
*/
|
||
|
maxAlbumArtWidth?: number | null;
|
||
|
/**
|
||
|
* Gets or sets the MaxAlbumArtHeight.
|
||
|
* @type {number}
|
||
|
* @memberof DeviceProfile
|
||
|
*/
|
||
|
maxAlbumArtHeight?: number | null;
|
||
|
/**
|
||
|
* Gets or sets the maximum allowed width of embedded icons.
|
||
|
* @type {number}
|
||
|
* @memberof DeviceProfile
|
||
|
*/
|
||
|
maxIconWidth?: number | null;
|
||
|
/**
|
||
|
* Gets or sets the maximum allowed height of embedded icons.
|
||
|
* @type {number}
|
||
|
* @memberof DeviceProfile
|
||
|
*/
|
||
|
maxIconHeight?: number | null;
|
||
|
/**
|
||
|
* Gets or sets the maximum allowed bitrate for all streamed content.
|
||
|
* @type {number}
|
||
|
* @memberof DeviceProfile
|
||
|
*/
|
||
|
maxStreamingBitrate?: number | null;
|
||
|
/**
|
||
|
* Gets or sets the maximum allowed bitrate for statically streamed content (= direct played files).
|
||
|
* @type {number}
|
||
|
* @memberof DeviceProfile
|
||
|
*/
|
||
|
maxStaticBitrate?: number | null;
|
||
|
/**
|
||
|
* Gets or sets the maximum allowed bitrate for transcoded music streams.
|
||
|
* @type {number}
|
||
|
* @memberof DeviceProfile
|
||
|
*/
|
||
|
musicStreamingTranscodingBitrate?: number | null;
|
||
|
/**
|
||
|
* Gets or sets the maximum allowed bitrate for statically streamed (= direct played) music files.
|
||
|
* @type {number}
|
||
|
* @memberof DeviceProfile
|
||
|
*/
|
||
|
maxStaticMusicBitrate?: number | null;
|
||
|
/**
|
||
|
* Gets or sets the content of the aggregationFlags element in the urn:schemas-sonycom:av namespace.
|
||
|
* @type {string}
|
||
|
* @memberof DeviceProfile
|
||
|
*/
|
||
|
sonyAggregationFlags?: string | null;
|
||
|
/**
|
||
|
* Gets or sets the ProtocolInfo.
|
||
|
* @type {string}
|
||
|
* @memberof DeviceProfile
|
||
|
*/
|
||
|
protocolInfo?: string | null;
|
||
|
/**
|
||
|
* Gets or sets the TimelineOffsetSeconds.
|
||
|
* @type {number}
|
||
|
* @memberof DeviceProfile
|
||
|
*/
|
||
|
timelineOffsetSeconds?: number;
|
||
|
/**
|
||
|
* Gets or sets a value indicating whether RequiresPlainVideoItems.
|
||
|
* @type {boolean}
|
||
|
* @memberof DeviceProfile
|
||
|
*/
|
||
|
requiresPlainVideoItems?: boolean;
|
||
|
/**
|
||
|
* Gets or sets a value indicating whether RequiresPlainFolders.
|
||
|
* @type {boolean}
|
||
|
* @memberof DeviceProfile
|
||
|
*/
|
||
|
requiresPlainFolders?: boolean;
|
||
|
/**
|
||
|
* Gets or sets a value indicating whether EnableMSMediaReceiverRegistrar.
|
||
|
* @type {boolean}
|
||
|
* @memberof DeviceProfile
|
||
|
*/
|
||
|
enableMSMediaReceiverRegistrar?: boolean;
|
||
|
/**
|
||
|
* Gets or sets a value indicating whether IgnoreTranscodeByteRangeRequests.
|
||
|
* @type {boolean}
|
||
|
* @memberof DeviceProfile
|
||
|
*/
|
||
|
ignoreTranscodeByteRangeRequests?: boolean;
|
||
|
/**
|
||
|
* Gets or sets the XmlRootAttributes.
|
||
|
* @type {Array<XmlAttribute>}
|
||
|
* @memberof DeviceProfile
|
||
|
*/
|
||
|
xmlRootAttributes?: Array<XmlAttribute>;
|
||
|
/**
|
||
|
* Gets or sets the direct play profiles.
|
||
|
* @type {Array<DirectPlayProfile>}
|
||
|
* @memberof DeviceProfile
|
||
|
*/
|
||
|
directPlayProfiles?: Array<DirectPlayProfile>;
|
||
|
/**
|
||
|
* Gets or sets the transcoding profiles.
|
||
|
* @type {Array<TranscodingProfile>}
|
||
|
* @memberof DeviceProfile
|
||
|
*/
|
||
|
transcodingProfiles?: Array<TranscodingProfile>;
|
||
|
/**
|
||
|
* Gets or sets the container profiles.
|
||
|
* @type {Array<ContainerProfile>}
|
||
|
* @memberof DeviceProfile
|
||
|
*/
|
||
|
containerProfiles?: Array<ContainerProfile>;
|
||
|
/**
|
||
|
* Gets or sets the codec profiles.
|
||
|
* @type {Array<CodecProfile>}
|
||
|
* @memberof DeviceProfile
|
||
|
*/
|
||
|
codecProfiles?: Array<CodecProfile>;
|
||
|
/**
|
||
|
* Gets or sets the ResponseProfiles.
|
||
|
* @type {Array<ResponseProfile>}
|
||
|
* @memberof DeviceProfile
|
||
|
*/
|
||
|
responseProfiles?: Array<ResponseProfile>;
|
||
|
/**
|
||
|
* Gets or sets the subtitle profiles.
|
||
|
* @type {Array<SubtitleProfile>}
|
||
|
* @memberof DeviceProfile
|
||
|
*/
|
||
|
subtitleProfiles?: Array<SubtitleProfile>;
|
||
|
}
|
||
|
|
||
|
/**
|
||
|
* Check if a given object implements the DeviceProfile interface.
|
||
|
*/
|
||
|
export function instanceOfDeviceProfile(value: object): boolean {
|
||
|
let isInstance = true;
|
||
|
|
||
|
return isInstance;
|
||
|
}
|
||
|
|
||
|
export function DeviceProfileFromJSON(json: any): DeviceProfile {
|
||
|
return DeviceProfileFromJSONTyped(json, false);
|
||
|
}
|
||
|
|
||
|
export function DeviceProfileFromJSONTyped(json: any, ignoreDiscriminator: boolean): DeviceProfile {
|
||
|
if ((json === undefined) || (json === null)) {
|
||
|
return json;
|
||
|
}
|
||
|
return {
|
||
|
|
||
|
'name': !exists(json, 'Name') ? undefined : json['Name'],
|
||
|
'id': !exists(json, 'Id') ? undefined : json['Id'],
|
||
|
'identification': !exists(json, 'Identification') ? undefined : DeviceProfileIdentificationFromJSON(json['Identification']),
|
||
|
'friendlyName': !exists(json, 'FriendlyName') ? undefined : json['FriendlyName'],
|
||
|
'manufacturer': !exists(json, 'Manufacturer') ? undefined : json['Manufacturer'],
|
||
|
'manufacturerUrl': !exists(json, 'ManufacturerUrl') ? undefined : json['ManufacturerUrl'],
|
||
|
'modelName': !exists(json, 'ModelName') ? undefined : json['ModelName'],
|
||
|
'modelDescription': !exists(json, 'ModelDescription') ? undefined : json['ModelDescription'],
|
||
|
'modelNumber': !exists(json, 'ModelNumber') ? undefined : json['ModelNumber'],
|
||
|
'modelUrl': !exists(json, 'ModelUrl') ? undefined : json['ModelUrl'],
|
||
|
'serialNumber': !exists(json, 'SerialNumber') ? undefined : json['SerialNumber'],
|
||
|
'enableAlbumArtInDidl': !exists(json, 'EnableAlbumArtInDidl') ? undefined : json['EnableAlbumArtInDidl'],
|
||
|
'enableSingleAlbumArtLimit': !exists(json, 'EnableSingleAlbumArtLimit') ? undefined : json['EnableSingleAlbumArtLimit'],
|
||
|
'enableSingleSubtitleLimit': !exists(json, 'EnableSingleSubtitleLimit') ? undefined : json['EnableSingleSubtitleLimit'],
|
||
|
'supportedMediaTypes': !exists(json, 'SupportedMediaTypes') ? undefined : json['SupportedMediaTypes'],
|
||
|
'userId': !exists(json, 'UserId') ? undefined : json['UserId'],
|
||
|
'albumArtPn': !exists(json, 'AlbumArtPn') ? undefined : json['AlbumArtPn'],
|
||
|
'maxAlbumArtWidth': !exists(json, 'MaxAlbumArtWidth') ? undefined : json['MaxAlbumArtWidth'],
|
||
|
'maxAlbumArtHeight': !exists(json, 'MaxAlbumArtHeight') ? undefined : json['MaxAlbumArtHeight'],
|
||
|
'maxIconWidth': !exists(json, 'MaxIconWidth') ? undefined : json['MaxIconWidth'],
|
||
|
'maxIconHeight': !exists(json, 'MaxIconHeight') ? undefined : json['MaxIconHeight'],
|
||
|
'maxStreamingBitrate': !exists(json, 'MaxStreamingBitrate') ? undefined : json['MaxStreamingBitrate'],
|
||
|
'maxStaticBitrate': !exists(json, 'MaxStaticBitrate') ? undefined : json['MaxStaticBitrate'],
|
||
|
'musicStreamingTranscodingBitrate': !exists(json, 'MusicStreamingTranscodingBitrate') ? undefined : json['MusicStreamingTranscodingBitrate'],
|
||
|
'maxStaticMusicBitrate': !exists(json, 'MaxStaticMusicBitrate') ? undefined : json['MaxStaticMusicBitrate'],
|
||
|
'sonyAggregationFlags': !exists(json, 'SonyAggregationFlags') ? undefined : json['SonyAggregationFlags'],
|
||
|
'protocolInfo': !exists(json, 'ProtocolInfo') ? undefined : json['ProtocolInfo'],
|
||
|
'timelineOffsetSeconds': !exists(json, 'TimelineOffsetSeconds') ? undefined : json['TimelineOffsetSeconds'],
|
||
|
'requiresPlainVideoItems': !exists(json, 'RequiresPlainVideoItems') ? undefined : json['RequiresPlainVideoItems'],
|
||
|
'requiresPlainFolders': !exists(json, 'RequiresPlainFolders') ? undefined : json['RequiresPlainFolders'],
|
||
|
'enableMSMediaReceiverRegistrar': !exists(json, 'EnableMSMediaReceiverRegistrar') ? undefined : json['EnableMSMediaReceiverRegistrar'],
|
||
|
'ignoreTranscodeByteRangeRequests': !exists(json, 'IgnoreTranscodeByteRangeRequests') ? undefined : json['IgnoreTranscodeByteRangeRequests'],
|
||
|
'xmlRootAttributes': !exists(json, 'XmlRootAttributes') ? undefined : ((json['XmlRootAttributes'] as Array<any>).map(XmlAttributeFromJSON)),
|
||
|
'directPlayProfiles': !exists(json, 'DirectPlayProfiles') ? undefined : ((json['DirectPlayProfiles'] as Array<any>).map(DirectPlayProfileFromJSON)),
|
||
|
'transcodingProfiles': !exists(json, 'TranscodingProfiles') ? undefined : ((json['TranscodingProfiles'] as Array<any>).map(TranscodingProfileFromJSON)),
|
||
|
'containerProfiles': !exists(json, 'ContainerProfiles') ? undefined : ((json['ContainerProfiles'] as Array<any>).map(ContainerProfileFromJSON)),
|
||
|
'codecProfiles': !exists(json, 'CodecProfiles') ? undefined : ((json['CodecProfiles'] as Array<any>).map(CodecProfileFromJSON)),
|
||
|
'responseProfiles': !exists(json, 'ResponseProfiles') ? undefined : ((json['ResponseProfiles'] as Array<any>).map(ResponseProfileFromJSON)),
|
||
|
'subtitleProfiles': !exists(json, 'SubtitleProfiles') ? undefined : ((json['SubtitleProfiles'] as Array<any>).map(SubtitleProfileFromJSON)),
|
||
|
};
|
||
|
}
|
||
|
|
||
|
export function DeviceProfileToJSON(value?: DeviceProfile | null): any {
|
||
|
if (value === undefined) {
|
||
|
return undefined;
|
||
|
}
|
||
|
if (value === null) {
|
||
|
return null;
|
||
|
}
|
||
|
return {
|
||
|
|
||
|
'Name': value.name,
|
||
|
'Id': value.id,
|
||
|
'Identification': DeviceProfileIdentificationToJSON(value.identification),
|
||
|
'FriendlyName': value.friendlyName,
|
||
|
'Manufacturer': value.manufacturer,
|
||
|
'ManufacturerUrl': value.manufacturerUrl,
|
||
|
'ModelName': value.modelName,
|
||
|
'ModelDescription': value.modelDescription,
|
||
|
'ModelNumber': value.modelNumber,
|
||
|
'ModelUrl': value.modelUrl,
|
||
|
'SerialNumber': value.serialNumber,
|
||
|
'EnableAlbumArtInDidl': value.enableAlbumArtInDidl,
|
||
|
'EnableSingleAlbumArtLimit': value.enableSingleAlbumArtLimit,
|
||
|
'EnableSingleSubtitleLimit': value.enableSingleSubtitleLimit,
|
||
|
'SupportedMediaTypes': value.supportedMediaTypes,
|
||
|
'UserId': value.userId,
|
||
|
'AlbumArtPn': value.albumArtPn,
|
||
|
'MaxAlbumArtWidth': value.maxAlbumArtWidth,
|
||
|
'MaxAlbumArtHeight': value.maxAlbumArtHeight,
|
||
|
'MaxIconWidth': value.maxIconWidth,
|
||
|
'MaxIconHeight': value.maxIconHeight,
|
||
|
'MaxStreamingBitrate': value.maxStreamingBitrate,
|
||
|
'MaxStaticBitrate': value.maxStaticBitrate,
|
||
|
'MusicStreamingTranscodingBitrate': value.musicStreamingTranscodingBitrate,
|
||
|
'MaxStaticMusicBitrate': value.maxStaticMusicBitrate,
|
||
|
'SonyAggregationFlags': value.sonyAggregationFlags,
|
||
|
'ProtocolInfo': value.protocolInfo,
|
||
|
'TimelineOffsetSeconds': value.timelineOffsetSeconds,
|
||
|
'RequiresPlainVideoItems': value.requiresPlainVideoItems,
|
||
|
'RequiresPlainFolders': value.requiresPlainFolders,
|
||
|
'EnableMSMediaReceiverRegistrar': value.enableMSMediaReceiverRegistrar,
|
||
|
'IgnoreTranscodeByteRangeRequests': value.ignoreTranscodeByteRangeRequests,
|
||
|
'XmlRootAttributes': value.xmlRootAttributes === undefined ? undefined : ((value.xmlRootAttributes as Array<any>).map(XmlAttributeToJSON)),
|
||
|
'DirectPlayProfiles': value.directPlayProfiles === undefined ? undefined : ((value.directPlayProfiles as Array<any>).map(DirectPlayProfileToJSON)),
|
||
|
'TranscodingProfiles': value.transcodingProfiles === undefined ? undefined : ((value.transcodingProfiles as Array<any>).map(TranscodingProfileToJSON)),
|
||
|
'ContainerProfiles': value.containerProfiles === undefined ? undefined : ((value.containerProfiles as Array<any>).map(ContainerProfileToJSON)),
|
||
|
'CodecProfiles': value.codecProfiles === undefined ? undefined : ((value.codecProfiles as Array<any>).map(CodecProfileToJSON)),
|
||
|
'ResponseProfiles': value.responseProfiles === undefined ? undefined : ((value.responseProfiles as Array<any>).map(ResponseProfileToJSON)),
|
||
|
'SubtitleProfiles': value.subtitleProfiles === undefined ? undefined : ((value.subtitleProfiles as Array<any>).map(SubtitleProfileToJSON)),
|
||
|
};
|
||
|
}
|
||
|
|