mirror of
https://github.com/jellyfin/jellyfin.git
synced 2026-05-22 08:37:23 +01:00
Merge branch 'master' into images
This commit is contained in:
@@ -1,3 +1,6 @@
|
||||
#pragma warning disable CS1591
|
||||
#pragma warning disable SA1600
|
||||
|
||||
using System;
|
||||
using Microsoft.Extensions.Logging;
|
||||
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
#pragma warning disable CS1591
|
||||
#pragma warning disable SA1600
|
||||
|
||||
using System;
|
||||
using MediaBrowser.Model.Events;
|
||||
using MediaBrowser.Model.Querying;
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
#pragma warning disable CS1591
|
||||
#pragma warning disable SA1600
|
||||
|
||||
using System;
|
||||
using MediaBrowser.Model.Querying;
|
||||
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
#pragma warning disable CS1591
|
||||
#pragma warning disable SA1600
|
||||
|
||||
namespace MediaBrowser.Model.ApiClient
|
||||
{
|
||||
public class ServerDiscoveryInfo
|
||||
@@ -7,16 +10,19 @@ namespace MediaBrowser.Model.ApiClient
|
||||
/// </summary>
|
||||
/// <value>The address.</value>
|
||||
public string Address { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets the server identifier.
|
||||
/// </summary>
|
||||
/// <value>The server identifier.</value>
|
||||
public string Id { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets the name.
|
||||
/// </summary>
|
||||
/// <value>The name.</value>
|
||||
public string Name { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets the endpoint address.
|
||||
/// </summary>
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
#pragma warning disable CS1591
|
||||
#pragma warning disable SA1600
|
||||
|
||||
namespace MediaBrowser.Model.Branding
|
||||
{
|
||||
public class BrandingOptions
|
||||
@@ -7,6 +10,7 @@ namespace MediaBrowser.Model.Branding
|
||||
/// </summary>
|
||||
/// <value>The login disclaimer.</value>
|
||||
public string LoginDisclaimer { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets the custom CSS.
|
||||
/// </summary>
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
#pragma warning disable CS1591
|
||||
#pragma warning disable SA1600
|
||||
|
||||
using System;
|
||||
|
||||
namespace MediaBrowser.Model.Channels
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
#pragma warning disable CS1591
|
||||
#pragma warning disable SA1600
|
||||
|
||||
namespace MediaBrowser.Model.Channels
|
||||
{
|
||||
public enum ChannelFolderType
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
#pragma warning disable CS1591
|
||||
#pragma warning disable SA1600
|
||||
|
||||
namespace MediaBrowser.Model.Channels
|
||||
{
|
||||
public class ChannelInfo
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
#pragma warning disable CS1591
|
||||
#pragma warning disable SA1600
|
||||
|
||||
namespace MediaBrowser.Model.Channels
|
||||
{
|
||||
public enum ChannelItemSortField
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
#pragma warning disable CS1591
|
||||
#pragma warning disable SA1600
|
||||
|
||||
namespace MediaBrowser.Model.Channels
|
||||
{
|
||||
public enum ChannelMediaContentType
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
#pragma warning disable CS1591
|
||||
#pragma warning disable SA1600
|
||||
|
||||
namespace MediaBrowser.Model.Channels
|
||||
{
|
||||
public enum ChannelMediaType
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
#pragma warning disable CS1591
|
||||
#pragma warning disable SA1600
|
||||
|
||||
using System;
|
||||
using MediaBrowser.Model.Entities;
|
||||
using MediaBrowser.Model.Querying;
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
#pragma warning disable CS1591
|
||||
#pragma warning disable SA1600
|
||||
|
||||
using System;
|
||||
|
||||
namespace MediaBrowser.Model.Collections
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
#pragma warning disable CS1591
|
||||
#pragma warning disable SA1600
|
||||
|
||||
namespace MediaBrowser.Model.Configuration
|
||||
{
|
||||
public class AccessSchedule
|
||||
@@ -7,11 +10,13 @@ namespace MediaBrowser.Model.Configuration
|
||||
/// </summary>
|
||||
/// <value>The day of week.</value>
|
||||
public DynamicDayOfWeek DayOfWeek { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets the start hour.
|
||||
/// </summary>
|
||||
/// <value>The start hour.</value>
|
||||
public double StartHour { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets the end hour.
|
||||
/// </summary>
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
#pragma warning disable CS1591
|
||||
#pragma warning disable SA1600
|
||||
|
||||
namespace MediaBrowser.Model.Configuration
|
||||
{
|
||||
public enum DynamicDayOfWeek
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
#pragma warning disable CS1591
|
||||
#pragma warning disable SA1600
|
||||
|
||||
namespace MediaBrowser.Model.Configuration
|
||||
{
|
||||
public class EncodingOptions
|
||||
@@ -8,12 +11,14 @@ namespace MediaBrowser.Model.Configuration
|
||||
public bool EnableThrottling { get; set; }
|
||||
public int ThrottleDelaySeconds { get; set; }
|
||||
public string HardwareAccelerationType { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// FFmpeg path as set by the user via the UI
|
||||
/// FFmpeg path as set by the user via the UI.
|
||||
/// </summary>
|
||||
public string EncoderAppPath { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// The current FFmpeg path being used by the system and displayed on the transcode page
|
||||
/// The current FFmpeg path being used by the system and displayed on the transcode page.
|
||||
/// </summary>
|
||||
public string EncoderAppPathDisplay { get; set; }
|
||||
public string VaapiDevice { get; set; }
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
#pragma warning disable CS1591
|
||||
#pragma warning disable SA1600
|
||||
|
||||
using MediaBrowser.Model.Entities;
|
||||
|
||||
namespace MediaBrowser.Model.Configuration
|
||||
@@ -9,6 +12,7 @@ namespace MediaBrowser.Model.Configuration
|
||||
/// </summary>
|
||||
/// <value>The type.</value>
|
||||
public ImageType Type { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets the limit.
|
||||
/// </summary>
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
#pragma warning disable CS1591
|
||||
#pragma warning disable SA1600
|
||||
|
||||
namespace MediaBrowser.Model.Configuration
|
||||
{
|
||||
public enum ImageSavingConvention
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
#pragma warning disable CS1591
|
||||
#pragma warning disable SA1600
|
||||
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using MediaBrowser.Model.Entities;
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
#pragma warning disable CS1591
|
||||
#pragma warning disable SA1600
|
||||
|
||||
namespace MediaBrowser.Model.Configuration
|
||||
{
|
||||
public class MetadataConfiguration
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
#pragma warning disable CS1591
|
||||
#pragma warning disable SA1600
|
||||
|
||||
using System;
|
||||
|
||||
namespace MediaBrowser.Model.Configuration
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
#pragma warning disable CS1591
|
||||
#pragma warning disable SA1600
|
||||
|
||||
namespace MediaBrowser.Model.Configuration
|
||||
{
|
||||
public class MetadataPlugin
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
#pragma warning disable CS1591
|
||||
#pragma warning disable SA1600
|
||||
|
||||
using System;
|
||||
using MediaBrowser.Model.Entities;
|
||||
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
#pragma warning disable CS1591
|
||||
#pragma warning disable SA1600
|
||||
|
||||
namespace MediaBrowser.Model.Configuration
|
||||
{
|
||||
/// <summary>
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
#pragma warning disable CS1591
|
||||
#pragma warning disable SA1600
|
||||
|
||||
using System;
|
||||
using MediaBrowser.Model.Dto;
|
||||
|
||||
@@ -159,7 +162,6 @@ namespace MediaBrowser.Model.Configuration
|
||||
|
||||
public MetadataOptions[] MetadataOptions { get; set; }
|
||||
|
||||
public bool EnableAutomaticRestart { get; set; }
|
||||
public bool SkipDeserializationForBasicTypes { get; set; }
|
||||
|
||||
public string ServerName { get; set; }
|
||||
@@ -249,7 +251,6 @@ namespace MediaBrowser.Model.Configuration
|
||||
EnableDashboardResponseCaching = true;
|
||||
EnableCaseSensitiveItemIds = true;
|
||||
|
||||
EnableAutomaticRestart = true;
|
||||
AutoRunWebApp = true;
|
||||
EnableRemoteAccess = true;
|
||||
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
#pragma warning disable CS1591
|
||||
#pragma warning disable SA1600
|
||||
|
||||
namespace MediaBrowser.Model.Configuration
|
||||
{
|
||||
public enum SubtitlePlaybackMode
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
#pragma warning disable CS1591
|
||||
#pragma warning disable SA1600
|
||||
|
||||
namespace MediaBrowser.Model.Configuration
|
||||
{
|
||||
public enum UnratedItem
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
#pragma warning disable CS1591
|
||||
#pragma warning disable SA1600
|
||||
|
||||
using System;
|
||||
|
||||
namespace MediaBrowser.Model.Configuration
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
#pragma warning disable CS1591
|
||||
#pragma warning disable SA1600
|
||||
|
||||
namespace MediaBrowser.Model.Configuration
|
||||
{
|
||||
public class XbmcMetadataOptions
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
#pragma warning disable CS1591
|
||||
#pragma warning disable SA1600
|
||||
|
||||
using System.Collections.Generic;
|
||||
|
||||
namespace MediaBrowser.Model.Cryptography
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
#pragma warning disable CS1591
|
||||
#pragma warning disable SA1600
|
||||
|
||||
namespace MediaBrowser.Model.Devices
|
||||
{
|
||||
public class ContentUploadHistory
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
#pragma warning disable CS1591
|
||||
#pragma warning disable SA1600
|
||||
|
||||
using System;
|
||||
using MediaBrowser.Model.Session;
|
||||
|
||||
@@ -5,6 +8,11 @@ namespace MediaBrowser.Model.Devices
|
||||
{
|
||||
public class DeviceInfo
|
||||
{
|
||||
public DeviceInfo()
|
||||
{
|
||||
Capabilities = new ClientCapabilities();
|
||||
}
|
||||
|
||||
public string Name { get; set; }
|
||||
|
||||
/// <summary>
|
||||
@@ -12,42 +20,43 @@ namespace MediaBrowser.Model.Devices
|
||||
/// </summary>
|
||||
/// <value>The identifier.</value>
|
||||
public string Id { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets the last name of the user.
|
||||
/// </summary>
|
||||
/// <value>The last name of the user.</value>
|
||||
public string LastUserName { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets the name of the application.
|
||||
/// </summary>
|
||||
/// <value>The name of the application.</value>
|
||||
public string AppName { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets the application version.
|
||||
/// </summary>
|
||||
/// <value>The application version.</value>
|
||||
public string AppVersion { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets the last user identifier.
|
||||
/// </summary>
|
||||
/// <value>The last user identifier.</value>
|
||||
public Guid LastUserId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets the date last modified.
|
||||
/// </summary>
|
||||
/// <value>The date last modified.</value>
|
||||
public DateTime DateLastActivity { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets the capabilities.
|
||||
/// </summary>
|
||||
/// <value>The capabilities.</value>
|
||||
public ClientCapabilities Capabilities { get; set; }
|
||||
|
||||
public DeviceInfo()
|
||||
{
|
||||
Capabilities = new ClientCapabilities();
|
||||
}
|
||||
|
||||
public string IconUrl { get; set; }
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
#pragma warning disable CS1591
|
||||
#pragma warning disable SA1600
|
||||
|
||||
using System;
|
||||
|
||||
namespace MediaBrowser.Model.Devices
|
||||
@@ -9,6 +12,7 @@ namespace MediaBrowser.Model.Devices
|
||||
/// </summary>
|
||||
/// <value><c>null</c> if [supports synchronize] contains no value, <c>true</c> if [supports synchronize]; otherwise, <c>false</c>.</value>
|
||||
public bool? SupportsSync { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets the user identifier.
|
||||
/// </summary>
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
#pragma warning disable CS1591
|
||||
#pragma warning disable SA1600
|
||||
|
||||
using System;
|
||||
|
||||
namespace MediaBrowser.Model.Devices
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
#pragma warning disable CS1591
|
||||
#pragma warning disable SA1600
|
||||
|
||||
namespace MediaBrowser.Model.Devices
|
||||
{
|
||||
public class LocalFileInfo
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
#pragma warning disable CS1591
|
||||
#pragma warning disable SA1600
|
||||
|
||||
using System;
|
||||
using System.IO;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
#pragma warning disable CS1591
|
||||
#pragma warning disable SA1600
|
||||
|
||||
namespace MediaBrowser.Model.Diagnostics
|
||||
{
|
||||
public interface IProcessFactory
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
#pragma warning disable CS1591
|
||||
#pragma warning disable SA1600
|
||||
|
||||
using System;
|
||||
using MediaBrowser.Model.Dto;
|
||||
|
||||
|
||||
@@ -1,3 +1,7 @@
|
||||
#pragma warning disable CS1591
|
||||
#pragma warning disable SA1600
|
||||
|
||||
using System;
|
||||
using System.Xml.Serialization;
|
||||
using MediaBrowser.Model.Extensions;
|
||||
|
||||
@@ -20,8 +24,8 @@ namespace MediaBrowser.Model.Dlna
|
||||
|
||||
public CodecProfile()
|
||||
{
|
||||
Conditions = new ProfileCondition[] { };
|
||||
ApplyConditions = new ProfileCondition[] { };
|
||||
Conditions = Array.Empty<ProfileCondition>();
|
||||
ApplyConditions = Array.Empty<ProfileCondition>();
|
||||
}
|
||||
|
||||
public string[] GetCodecs()
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
#pragma warning disable CS1591
|
||||
#pragma warning disable SA1600
|
||||
|
||||
namespace MediaBrowser.Model.Dlna
|
||||
{
|
||||
public enum CodecType
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
#pragma warning disable CS1591
|
||||
#pragma warning disable SA1600
|
||||
|
||||
using System;
|
||||
using System.Globalization;
|
||||
using MediaBrowser.Model.Extensions;
|
||||
@@ -169,9 +172,9 @@ namespace MediaBrowser.Model.Dlna
|
||||
return ListHelper.ContainsIgnoreCase(expected.Split('|'), currentValue);
|
||||
}
|
||||
case ProfileConditionType.Equals:
|
||||
return StringHelper.EqualsIgnoreCase(currentValue, expected);
|
||||
return string.Equals(currentValue, expected, StringComparison.OrdinalIgnoreCase);
|
||||
case ProfileConditionType.NotEquals:
|
||||
return !StringHelper.EqualsIgnoreCase(currentValue, expected);
|
||||
return !string.Equals(currentValue, expected, StringComparison.OrdinalIgnoreCase);
|
||||
default:
|
||||
throw new InvalidOperationException("Unexpected ProfileConditionType: " + condition.Condition);
|
||||
}
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
#pragma warning disable CS1591
|
||||
#pragma warning disable SA1600
|
||||
|
||||
using System;
|
||||
using System.Xml.Serialization;
|
||||
using MediaBrowser.Model.Extensions;
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
#pragma warning disable CS1591
|
||||
#pragma warning disable SA1600
|
||||
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Globalization;
|
||||
|
||||
@@ -1,3 +1,8 @@
|
||||
#pragma warning disable CS1591
|
||||
#pragma warning disable SA1600
|
||||
|
||||
using System;
|
||||
|
||||
namespace MediaBrowser.Model.Dlna
|
||||
{
|
||||
public class DeviceIdentification
|
||||
@@ -7,46 +12,55 @@ namespace MediaBrowser.Model.Dlna
|
||||
/// </summary>
|
||||
/// <value>The name of the friendly.</value>
|
||||
public string FriendlyName { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets the model number.
|
||||
/// </summary>
|
||||
/// <value>The model number.</value>
|
||||
public string ModelNumber { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets the serial number.
|
||||
/// </summary>
|
||||
/// <value>The serial number.</value>
|
||||
public string SerialNumber { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets the name of the model.
|
||||
/// </summary>
|
||||
/// <value>The name of the model.</value>
|
||||
public string ModelName { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets the model description.
|
||||
/// </summary>
|
||||
/// <value>The model description.</value>
|
||||
public string ModelDescription { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets the device description.
|
||||
/// </summary>
|
||||
/// <value>The device description.</value>
|
||||
public string DeviceDescription { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets the model URL.
|
||||
/// </summary>
|
||||
/// <value>The model URL.</value>
|
||||
public string ModelUrl { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets the manufacturer.
|
||||
/// </summary>
|
||||
/// <value>The manufacturer.</value>
|
||||
public string Manufacturer { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets the manufacturer URL.
|
||||
/// </summary>
|
||||
/// <value>The manufacturer URL.</value>
|
||||
public string ManufacturerUrl { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets the headers.
|
||||
/// </summary>
|
||||
@@ -55,7 +69,7 @@ namespace MediaBrowser.Model.Dlna
|
||||
|
||||
public DeviceIdentification()
|
||||
{
|
||||
Headers = new HttpHeaderInfo[] { };
|
||||
Headers = Array.Empty<HttpHeaderInfo>();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
#pragma warning disable CS1591
|
||||
#pragma warning disable SA1600
|
||||
|
||||
using System;
|
||||
using System.Xml.Serialization;
|
||||
using MediaBrowser.Model.Extensions;
|
||||
@@ -122,7 +125,7 @@ namespace MediaBrowser.Model.Dlna
|
||||
continue;
|
||||
}
|
||||
|
||||
if (!StringHelper.EqualsIgnoreCase(container, i.Container))
|
||||
if (!string.Equals(container, i.Container, StringComparison.OrdinalIgnoreCase))
|
||||
{
|
||||
continue;
|
||||
}
|
||||
@@ -148,7 +151,7 @@ namespace MediaBrowser.Model.Dlna
|
||||
continue;
|
||||
}
|
||||
|
||||
if (!StringHelper.EqualsIgnoreCase(container, i.Container))
|
||||
if (!string.Equals(container, i.Container, StringComparison.OrdinalIgnoreCase))
|
||||
{
|
||||
continue;
|
||||
}
|
||||
@@ -158,7 +161,7 @@ namespace MediaBrowser.Model.Dlna
|
||||
continue;
|
||||
}
|
||||
|
||||
if (!StringHelper.EqualsIgnoreCase(videoCodec, i.VideoCodec ?? string.Empty))
|
||||
if (!string.Equals(videoCodec, i.VideoCodec ?? string.Empty, StringComparison.OrdinalIgnoreCase))
|
||||
{
|
||||
continue;
|
||||
}
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
#pragma warning disable CS1591
|
||||
#pragma warning disable SA1600
|
||||
|
||||
namespace MediaBrowser.Model.Dlna
|
||||
{
|
||||
public class DeviceProfileInfo
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
#pragma warning disable CS1591
|
||||
#pragma warning disable SA1600
|
||||
|
||||
namespace MediaBrowser.Model.Dlna
|
||||
{
|
||||
public enum DeviceProfileType
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
#pragma warning disable CS1591
|
||||
#pragma warning disable SA1600
|
||||
|
||||
using System.Xml.Serialization;
|
||||
|
||||
namespace MediaBrowser.Model.Dlna
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
#pragma warning disable CS1591
|
||||
#pragma warning disable SA1600
|
||||
|
||||
using System;
|
||||
|
||||
namespace MediaBrowser.Model.Dlna
|
||||
|
||||
@@ -1,6 +1,9 @@
|
||||
#pragma warning disable CS1591
|
||||
#pragma warning disable SA1600
|
||||
|
||||
namespace MediaBrowser.Model.Dlna
|
||||
{
|
||||
public class DlnaMaps
|
||||
public static class DlnaMaps
|
||||
{
|
||||
private static readonly string DefaultStreaming =
|
||||
FlagsToString(DlnaFlags.StreamingTransferMode |
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
#pragma warning disable CS1591
|
||||
#pragma warning disable SA1600
|
||||
|
||||
namespace MediaBrowser.Model.Dlna
|
||||
{
|
||||
public enum DlnaProfileType
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
#pragma warning disable CS1591
|
||||
#pragma warning disable SA1600
|
||||
|
||||
namespace MediaBrowser.Model.Dlna
|
||||
{
|
||||
public enum EncodingContext
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
#pragma warning disable CS1591
|
||||
#pragma warning disable SA1600
|
||||
|
||||
namespace MediaBrowser.Model.Dlna
|
||||
{
|
||||
public enum HeaderMatchType
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
#pragma warning disable CS1591
|
||||
#pragma warning disable SA1600
|
||||
|
||||
using System.Xml.Serialization;
|
||||
|
||||
namespace MediaBrowser.Model.Dlna
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
#pragma warning disable CS1591
|
||||
#pragma warning disable SA1600
|
||||
|
||||
using System;
|
||||
using MediaBrowser.Model.Events;
|
||||
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
#pragma warning disable CS1591
|
||||
#pragma warning disable SA1600
|
||||
|
||||
namespace MediaBrowser.Model.Dlna
|
||||
{
|
||||
public interface ITranscoderSupport
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
#pragma warning disable CS1591
|
||||
#pragma warning disable SA1600
|
||||
|
||||
namespace MediaBrowser.Model.Dlna
|
||||
{
|
||||
public enum MediaFormatProfile
|
||||
|
||||
@@ -1,7 +1,9 @@
|
||||
#pragma warning disable CS1591
|
||||
#pragma warning disable SA1600
|
||||
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using MediaBrowser.Model.Extensions;
|
||||
using MediaBrowser.Model.MediaInfo;
|
||||
|
||||
namespace MediaBrowser.Model.Dlna
|
||||
@@ -17,53 +19,53 @@ namespace MediaBrowser.Model.Dlna
|
||||
|
||||
private MediaFormatProfile[] ResolveVideoFormatInternal(string container, string videoCodec, string audioCodec, int? width, int? height, TransportStreamTimestamp timestampType)
|
||||
{
|
||||
if (StringHelper.EqualsIgnoreCase(container, "asf"))
|
||||
if (string.Equals(container, "asf", StringComparison.OrdinalIgnoreCase))
|
||||
{
|
||||
MediaFormatProfile? val = ResolveVideoASFFormat(videoCodec, audioCodec, width, height);
|
||||
return val.HasValue ? new MediaFormatProfile[] { val.Value } : new MediaFormatProfile[] { };
|
||||
}
|
||||
|
||||
if (StringHelper.EqualsIgnoreCase(container, "mp4"))
|
||||
if (string.Equals(container, "mp4", StringComparison.OrdinalIgnoreCase))
|
||||
{
|
||||
MediaFormatProfile? val = ResolveVideoMP4Format(videoCodec, audioCodec, width, height);
|
||||
return val.HasValue ? new MediaFormatProfile[] { val.Value } : new MediaFormatProfile[] { };
|
||||
}
|
||||
|
||||
if (StringHelper.EqualsIgnoreCase(container, "avi"))
|
||||
if (string.Equals(container, "avi", StringComparison.OrdinalIgnoreCase))
|
||||
return new MediaFormatProfile[] { MediaFormatProfile.AVI };
|
||||
|
||||
if (StringHelper.EqualsIgnoreCase(container, "mkv"))
|
||||
if (string.Equals(container, "mkv", StringComparison.OrdinalIgnoreCase))
|
||||
return new MediaFormatProfile[] { MediaFormatProfile.MATROSKA };
|
||||
|
||||
if (StringHelper.EqualsIgnoreCase(container, "mpeg2ps") ||
|
||||
StringHelper.EqualsIgnoreCase(container, "ts"))
|
||||
if (string.Equals(container, "mpeg2ps", StringComparison.OrdinalIgnoreCase) ||
|
||||
string.Equals(container, "ts", StringComparison.OrdinalIgnoreCase))
|
||||
|
||||
return new MediaFormatProfile[] { MediaFormatProfile.MPEG_PS_NTSC, MediaFormatProfile.MPEG_PS_PAL };
|
||||
|
||||
if (StringHelper.EqualsIgnoreCase(container, "mpeg1video"))
|
||||
if (string.Equals(container, "mpeg1video", StringComparison.OrdinalIgnoreCase))
|
||||
return new MediaFormatProfile[] { MediaFormatProfile.MPEG1 };
|
||||
|
||||
if (StringHelper.EqualsIgnoreCase(container, "mpeg2ts") ||
|
||||
StringHelper.EqualsIgnoreCase(container, "mpegts") ||
|
||||
StringHelper.EqualsIgnoreCase(container, "m2ts"))
|
||||
if (string.Equals(container, "mpeg2ts", StringComparison.OrdinalIgnoreCase) ||
|
||||
string.Equals(container, "mpegts", StringComparison.OrdinalIgnoreCase) ||
|
||||
string.Equals(container, "m2ts", StringComparison.OrdinalIgnoreCase))
|
||||
{
|
||||
|
||||
return ResolveVideoMPEG2TSFormat(videoCodec, audioCodec, width, height, timestampType);
|
||||
}
|
||||
|
||||
if (StringHelper.EqualsIgnoreCase(container, "flv"))
|
||||
if (string.Equals(container, "flv", StringComparison.OrdinalIgnoreCase))
|
||||
return new MediaFormatProfile[] { MediaFormatProfile.FLV };
|
||||
|
||||
if (StringHelper.EqualsIgnoreCase(container, "wtv"))
|
||||
if (string.Equals(container, "wtv", StringComparison.OrdinalIgnoreCase))
|
||||
return new MediaFormatProfile[] { MediaFormatProfile.WTV };
|
||||
|
||||
if (StringHelper.EqualsIgnoreCase(container, "3gp"))
|
||||
if (string.Equals(container, "3gp", StringComparison.OrdinalIgnoreCase))
|
||||
{
|
||||
MediaFormatProfile? val = ResolveVideo3GPFormat(videoCodec, audioCodec);
|
||||
return val.HasValue ? new MediaFormatProfile[] { val.Value } : new MediaFormatProfile[] { };
|
||||
}
|
||||
|
||||
if (StringHelper.EqualsIgnoreCase(container, "ogv") || StringHelper.EqualsIgnoreCase(container, "ogg"))
|
||||
if (string.Equals(container, "ogv", StringComparison.OrdinalIgnoreCase) || string.Equals(container, "ogg", StringComparison.OrdinalIgnoreCase))
|
||||
return new MediaFormatProfile[] { MediaFormatProfile.OGV };
|
||||
|
||||
return new MediaFormatProfile[] { };
|
||||
@@ -89,7 +91,7 @@ namespace MediaBrowser.Model.Dlna
|
||||
resolution = "H";
|
||||
}
|
||||
|
||||
if (StringHelper.EqualsIgnoreCase(videoCodec, "mpeg2video"))
|
||||
if (string.Equals(videoCodec, "mpeg2video", StringComparison.OrdinalIgnoreCase))
|
||||
{
|
||||
var list = new List<MediaFormatProfile>();
|
||||
|
||||
@@ -97,18 +99,18 @@ namespace MediaBrowser.Model.Dlna
|
||||
list.Add(ValueOf("MPEG_TS_SD_EU" + suffix));
|
||||
list.Add(ValueOf("MPEG_TS_SD_KO" + suffix));
|
||||
|
||||
if ((timestampType == TransportStreamTimestamp.Valid) && StringHelper.EqualsIgnoreCase(audioCodec, "aac"))
|
||||
if ((timestampType == TransportStreamTimestamp.Valid) && string.Equals(audioCodec, "aac", StringComparison.OrdinalIgnoreCase))
|
||||
{
|
||||
list.Add(MediaFormatProfile.MPEG_TS_JP_T);
|
||||
}
|
||||
return list.ToArray();
|
||||
}
|
||||
if (StringHelper.EqualsIgnoreCase(videoCodec, "h264"))
|
||||
if (string.Equals(videoCodec, "h264", StringComparison.OrdinalIgnoreCase))
|
||||
{
|
||||
if (StringHelper.EqualsIgnoreCase(audioCodec, "lpcm"))
|
||||
if (string.Equals(audioCodec, "lpcm", StringComparison.OrdinalIgnoreCase))
|
||||
return new MediaFormatProfile[] { MediaFormatProfile.AVC_TS_HD_50_LPCM_T };
|
||||
|
||||
if (StringHelper.EqualsIgnoreCase(audioCodec, "dts"))
|
||||
if (string.Equals(audioCodec, "dts", StringComparison.OrdinalIgnoreCase))
|
||||
{
|
||||
if (timestampType == TransportStreamTimestamp.None)
|
||||
{
|
||||
@@ -117,7 +119,7 @@ namespace MediaBrowser.Model.Dlna
|
||||
return new MediaFormatProfile[] { MediaFormatProfile.AVC_TS_HD_DTS_T };
|
||||
}
|
||||
|
||||
if (StringHelper.EqualsIgnoreCase(audioCodec, "mp2"))
|
||||
if (string.Equals(audioCodec, "mp2", StringComparison.OrdinalIgnoreCase))
|
||||
{
|
||||
if (timestampType == TransportStreamTimestamp.None)
|
||||
{
|
||||
@@ -127,19 +129,19 @@ namespace MediaBrowser.Model.Dlna
|
||||
return new MediaFormatProfile[] { ValueOf(string.Format("AVC_TS_HP_{0}D_MPEG1_L2_T", resolution)) };
|
||||
}
|
||||
|
||||
if (StringHelper.EqualsIgnoreCase(audioCodec, "aac"))
|
||||
if (string.Equals(audioCodec, "aac", StringComparison.OrdinalIgnoreCase))
|
||||
return new MediaFormatProfile[] { ValueOf(string.Format("AVC_TS_MP_{0}D_AAC_MULT5{1}", resolution, suffix)) };
|
||||
|
||||
if (StringHelper.EqualsIgnoreCase(audioCodec, "mp3"))
|
||||
if (string.Equals(audioCodec, "mp3", StringComparison.OrdinalIgnoreCase))
|
||||
return new MediaFormatProfile[] { ValueOf(string.Format("AVC_TS_MP_{0}D_MPEG1_L3{1}", resolution, suffix)) };
|
||||
|
||||
if (string.IsNullOrEmpty(audioCodec) ||
|
||||
StringHelper.EqualsIgnoreCase(audioCodec, "ac3"))
|
||||
string.Equals(audioCodec, "ac3", StringComparison.OrdinalIgnoreCase))
|
||||
return new MediaFormatProfile[] { ValueOf(string.Format("AVC_TS_MP_{0}D_AC3{1}", resolution, suffix)) };
|
||||
}
|
||||
else if (StringHelper.EqualsIgnoreCase(videoCodec, "vc1"))
|
||||
else if (string.Equals(videoCodec, "vc1", StringComparison.OrdinalIgnoreCase))
|
||||
{
|
||||
if (string.IsNullOrEmpty(audioCodec) || StringHelper.EqualsIgnoreCase(audioCodec, "ac3"))
|
||||
if (string.IsNullOrEmpty(audioCodec) || string.Equals(audioCodec, "ac3", StringComparison.OrdinalIgnoreCase))
|
||||
{
|
||||
if ((width.HasValue && width.Value > 720) || (height.HasValue && height.Value > 576))
|
||||
{
|
||||
@@ -147,23 +149,23 @@ namespace MediaBrowser.Model.Dlna
|
||||
}
|
||||
return new MediaFormatProfile[] { MediaFormatProfile.VC1_TS_AP_L1_AC3_ISO };
|
||||
}
|
||||
if (StringHelper.EqualsIgnoreCase(audioCodec, "dts"))
|
||||
if (string.Equals(audioCodec, "dts", StringComparison.OrdinalIgnoreCase))
|
||||
{
|
||||
suffix = StringHelper.EqualsIgnoreCase(suffix, "_ISO") ? suffix : "_T";
|
||||
suffix = string.Equals(suffix, "_ISO", StringComparison.OrdinalIgnoreCase) ? suffix : "_T";
|
||||
|
||||
return new MediaFormatProfile[] { ValueOf(string.Format("VC1_TS_HD_DTS{0}", suffix)) };
|
||||
}
|
||||
|
||||
}
|
||||
else if (StringHelper.EqualsIgnoreCase(videoCodec, "mpeg4") || StringHelper.EqualsIgnoreCase(videoCodec, "msmpeg4"))
|
||||
else if (string.Equals(videoCodec, "mpeg4", StringComparison.OrdinalIgnoreCase) || string.Equals(videoCodec, "msmpeg4", StringComparison.OrdinalIgnoreCase))
|
||||
{
|
||||
if (StringHelper.EqualsIgnoreCase(audioCodec, "aac"))
|
||||
if (string.Equals(audioCodec, "aac", StringComparison.OrdinalIgnoreCase))
|
||||
return new MediaFormatProfile[] { ValueOf(string.Format("MPEG4_P2_TS_ASP_AAC{0}", suffix)) };
|
||||
if (StringHelper.EqualsIgnoreCase(audioCodec, "mp3"))
|
||||
if (string.Equals(audioCodec, "mp3", StringComparison.OrdinalIgnoreCase))
|
||||
return new MediaFormatProfile[] { ValueOf(string.Format("MPEG4_P2_TS_ASP_MPEG1_L3{0}", suffix)) };
|
||||
if (StringHelper.EqualsIgnoreCase(audioCodec, "mp2"))
|
||||
if (string.Equals(audioCodec, "mp2", StringComparison.OrdinalIgnoreCase))
|
||||
return new MediaFormatProfile[] { ValueOf(string.Format("MPEG4_P2_TS_ASP_MPEG2_L2{0}", suffix)) };
|
||||
if (StringHelper.EqualsIgnoreCase(audioCodec, "ac3"))
|
||||
if (string.Equals(audioCodec, "ac3", StringComparison.OrdinalIgnoreCase))
|
||||
return new MediaFormatProfile[] { ValueOf(string.Format("MPEG4_P2_TS_ASP_AC3{0}", suffix)) };
|
||||
}
|
||||
|
||||
@@ -177,16 +179,16 @@ namespace MediaBrowser.Model.Dlna
|
||||
|
||||
private MediaFormatProfile? ResolveVideoMP4Format(string videoCodec, string audioCodec, int? width, int? height)
|
||||
{
|
||||
if (StringHelper.EqualsIgnoreCase(videoCodec, "h264"))
|
||||
if (string.Equals(videoCodec, "h264", StringComparison.OrdinalIgnoreCase))
|
||||
{
|
||||
if (StringHelper.EqualsIgnoreCase(audioCodec, "lpcm"))
|
||||
if (string.Equals(audioCodec, "lpcm", StringComparison.OrdinalIgnoreCase))
|
||||
return MediaFormatProfile.AVC_MP4_LPCM;
|
||||
if (string.IsNullOrEmpty(audioCodec) ||
|
||||
StringHelper.EqualsIgnoreCase(audioCodec, "ac3"))
|
||||
string.Equals(audioCodec, "ac3", StringComparison.OrdinalIgnoreCase))
|
||||
{
|
||||
return MediaFormatProfile.AVC_MP4_MP_SD_AC3;
|
||||
}
|
||||
if (StringHelper.EqualsIgnoreCase(audioCodec, "mp3"))
|
||||
if (string.Equals(audioCodec, "mp3", StringComparison.OrdinalIgnoreCase))
|
||||
{
|
||||
return MediaFormatProfile.AVC_MP4_MP_SD_MPEG1_L3;
|
||||
}
|
||||
@@ -194,41 +196,41 @@ namespace MediaBrowser.Model.Dlna
|
||||
{
|
||||
if ((width.Value <= 720) && (height.Value <= 576))
|
||||
{
|
||||
if (StringHelper.EqualsIgnoreCase(audioCodec, "aac"))
|
||||
if (string.Equals(audioCodec, "aac", StringComparison.OrdinalIgnoreCase))
|
||||
return MediaFormatProfile.AVC_MP4_MP_SD_AAC_MULT5;
|
||||
}
|
||||
else if ((width.Value <= 1280) && (height.Value <= 720))
|
||||
{
|
||||
if (StringHelper.EqualsIgnoreCase(audioCodec, "aac"))
|
||||
if (string.Equals(audioCodec, "aac", StringComparison.OrdinalIgnoreCase))
|
||||
return MediaFormatProfile.AVC_MP4_MP_HD_720p_AAC;
|
||||
}
|
||||
else if ((width.Value <= 1920) && (height.Value <= 1080))
|
||||
{
|
||||
if (StringHelper.EqualsIgnoreCase(audioCodec, "aac"))
|
||||
if (string.Equals(audioCodec, "aac", StringComparison.OrdinalIgnoreCase))
|
||||
{
|
||||
return MediaFormatProfile.AVC_MP4_MP_HD_1080i_AAC;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
else if (StringHelper.EqualsIgnoreCase(videoCodec, "mpeg4") ||
|
||||
StringHelper.EqualsIgnoreCase(videoCodec, "msmpeg4"))
|
||||
else if (string.Equals(videoCodec, "mpeg4", StringComparison.OrdinalIgnoreCase) ||
|
||||
string.Equals(videoCodec, "msmpeg4", StringComparison.OrdinalIgnoreCase))
|
||||
{
|
||||
if (width.HasValue && height.HasValue && width.Value <= 720 && height.Value <= 576)
|
||||
{
|
||||
if (string.IsNullOrEmpty(audioCodec) || StringHelper.EqualsIgnoreCase(audioCodec, "aac"))
|
||||
if (string.IsNullOrEmpty(audioCodec) || string.Equals(audioCodec, "aac", StringComparison.OrdinalIgnoreCase))
|
||||
return MediaFormatProfile.MPEG4_P2_MP4_ASP_AAC;
|
||||
if (StringHelper.EqualsIgnoreCase(audioCodec, "ac3") || StringHelper.EqualsIgnoreCase(audioCodec, "mp3"))
|
||||
if (string.Equals(audioCodec, "ac3", StringComparison.OrdinalIgnoreCase) || string.Equals(audioCodec, "mp3", StringComparison.OrdinalIgnoreCase))
|
||||
{
|
||||
return MediaFormatProfile.MPEG4_P2_MP4_NDSD;
|
||||
}
|
||||
}
|
||||
else if (string.IsNullOrEmpty(audioCodec) || StringHelper.EqualsIgnoreCase(audioCodec, "aac"))
|
||||
else if (string.IsNullOrEmpty(audioCodec) || string.Equals(audioCodec, "aac", StringComparison.OrdinalIgnoreCase))
|
||||
{
|
||||
return MediaFormatProfile.MPEG4_P2_MP4_SP_L6_AAC;
|
||||
}
|
||||
}
|
||||
else if (StringHelper.EqualsIgnoreCase(videoCodec, "h263") && StringHelper.EqualsIgnoreCase(audioCodec, "aac"))
|
||||
else if (string.Equals(videoCodec, "h263", StringComparison.OrdinalIgnoreCase) && string.Equals(audioCodec, "aac", StringComparison.OrdinalIgnoreCase))
|
||||
{
|
||||
return MediaFormatProfile.MPEG4_H263_MP4_P0_L10_AAC;
|
||||
}
|
||||
@@ -238,20 +240,20 @@ namespace MediaBrowser.Model.Dlna
|
||||
|
||||
private MediaFormatProfile? ResolveVideo3GPFormat(string videoCodec, string audioCodec)
|
||||
{
|
||||
if (StringHelper.EqualsIgnoreCase(videoCodec, "h264"))
|
||||
if (string.Equals(videoCodec, "h264", StringComparison.OrdinalIgnoreCase))
|
||||
{
|
||||
if (string.IsNullOrEmpty(audioCodec) || StringHelper.EqualsIgnoreCase(audioCodec, "aac"))
|
||||
if (string.IsNullOrEmpty(audioCodec) || string.Equals(audioCodec, "aac", StringComparison.OrdinalIgnoreCase))
|
||||
return MediaFormatProfile.AVC_3GPP_BL_QCIF15_AAC;
|
||||
}
|
||||
else if (StringHelper.EqualsIgnoreCase(videoCodec, "mpeg4") ||
|
||||
StringHelper.EqualsIgnoreCase(videoCodec, "msmpeg4"))
|
||||
else if (string.Equals(videoCodec, "mpeg4", StringComparison.OrdinalIgnoreCase) ||
|
||||
string.Equals(videoCodec, "msmpeg4", StringComparison.OrdinalIgnoreCase))
|
||||
{
|
||||
if (string.IsNullOrEmpty(audioCodec) || StringHelper.EqualsIgnoreCase(audioCodec, "wma"))
|
||||
if (string.IsNullOrEmpty(audioCodec) || string.Equals(audioCodec, "wma", StringComparison.OrdinalIgnoreCase))
|
||||
return MediaFormatProfile.MPEG4_P2_3GPP_SP_L0B_AAC;
|
||||
if (StringHelper.EqualsIgnoreCase(audioCodec, "amrnb"))
|
||||
if (string.Equals(audioCodec, "amrnb", StringComparison.OrdinalIgnoreCase))
|
||||
return MediaFormatProfile.MPEG4_P2_3GPP_SP_L0B_AMR;
|
||||
}
|
||||
else if (StringHelper.EqualsIgnoreCase(videoCodec, "h263") && StringHelper.EqualsIgnoreCase(audioCodec, "amrnb"))
|
||||
else if (string.Equals(videoCodec, "h263", StringComparison.OrdinalIgnoreCase) && string.Equals(audioCodec, "amrnb", StringComparison.OrdinalIgnoreCase))
|
||||
{
|
||||
return MediaFormatProfile.MPEG4_H263_3GPP_P0_L10_AMR;
|
||||
}
|
||||
@@ -261,15 +263,15 @@ namespace MediaBrowser.Model.Dlna
|
||||
|
||||
private MediaFormatProfile? ResolveVideoASFFormat(string videoCodec, string audioCodec, int? width, int? height)
|
||||
{
|
||||
if (StringHelper.EqualsIgnoreCase(videoCodec, "wmv") &&
|
||||
(string.IsNullOrEmpty(audioCodec) || StringHelper.EqualsIgnoreCase(audioCodec, "wma") || StringHelper.EqualsIgnoreCase(videoCodec, "wmapro")))
|
||||
if (string.Equals(videoCodec, "wmv", StringComparison.OrdinalIgnoreCase) &&
|
||||
(string.IsNullOrEmpty(audioCodec) || string.Equals(audioCodec, "wma", StringComparison.OrdinalIgnoreCase) || string.Equals(videoCodec, "wmapro", StringComparison.OrdinalIgnoreCase)))
|
||||
{
|
||||
|
||||
if (width.HasValue && height.HasValue)
|
||||
{
|
||||
if ((width.Value <= 720) && (height.Value <= 576))
|
||||
{
|
||||
if (string.IsNullOrEmpty(audioCodec) || StringHelper.EqualsIgnoreCase(audioCodec, "wma"))
|
||||
if (string.IsNullOrEmpty(audioCodec) || string.Equals(audioCodec, "wma", StringComparison.OrdinalIgnoreCase))
|
||||
{
|
||||
return MediaFormatProfile.WMVMED_FULL;
|
||||
}
|
||||
@@ -277,14 +279,14 @@ namespace MediaBrowser.Model.Dlna
|
||||
}
|
||||
}
|
||||
|
||||
if (string.IsNullOrEmpty(audioCodec) || StringHelper.EqualsIgnoreCase(audioCodec, "wma"))
|
||||
if (string.IsNullOrEmpty(audioCodec) || string.Equals(audioCodec, "wma", StringComparison.OrdinalIgnoreCase))
|
||||
{
|
||||
return MediaFormatProfile.WMVHIGH_FULL;
|
||||
}
|
||||
return MediaFormatProfile.WMVHIGH_PRO;
|
||||
}
|
||||
|
||||
if (StringHelper.EqualsIgnoreCase(videoCodec, "vc1"))
|
||||
if (string.Equals(videoCodec, "vc1", StringComparison.OrdinalIgnoreCase))
|
||||
{
|
||||
if (width.HasValue && height.HasValue)
|
||||
{
|
||||
@@ -296,7 +298,7 @@ namespace MediaBrowser.Model.Dlna
|
||||
return MediaFormatProfile.VC1_ASF_AP_L3_WMA;
|
||||
}
|
||||
}
|
||||
else if (StringHelper.EqualsIgnoreCase(videoCodec, "mpeg2video"))
|
||||
else if (string.Equals(videoCodec, "mpeg2video", StringComparison.OrdinalIgnoreCase))
|
||||
{
|
||||
return MediaFormatProfile.DVR_MS;
|
||||
}
|
||||
@@ -306,27 +308,27 @@ namespace MediaBrowser.Model.Dlna
|
||||
|
||||
public MediaFormatProfile? ResolveAudioFormat(string container, int? bitrate, int? frequency, int? channels)
|
||||
{
|
||||
if (StringHelper.EqualsIgnoreCase(container, "asf"))
|
||||
if (string.Equals(container, "asf", StringComparison.OrdinalIgnoreCase))
|
||||
return ResolveAudioASFFormat(bitrate);
|
||||
|
||||
if (StringHelper.EqualsIgnoreCase(container, "mp3"))
|
||||
if (string.Equals(container, "mp3", StringComparison.OrdinalIgnoreCase))
|
||||
return MediaFormatProfile.MP3;
|
||||
|
||||
if (StringHelper.EqualsIgnoreCase(container, "lpcm"))
|
||||
if (string.Equals(container, "lpcm", StringComparison.OrdinalIgnoreCase))
|
||||
return ResolveAudioLPCMFormat(frequency, channels);
|
||||
|
||||
if (StringHelper.EqualsIgnoreCase(container, "mp4") ||
|
||||
StringHelper.EqualsIgnoreCase(container, "aac"))
|
||||
if (string.Equals(container, "mp4", StringComparison.OrdinalIgnoreCase) ||
|
||||
string.Equals(container, "aac", StringComparison.OrdinalIgnoreCase))
|
||||
return ResolveAudioMP4Format(bitrate);
|
||||
|
||||
if (StringHelper.EqualsIgnoreCase(container, "adts"))
|
||||
if (string.Equals(container, "adts", StringComparison.OrdinalIgnoreCase))
|
||||
return ResolveAudioADTSFormat(bitrate);
|
||||
|
||||
if (StringHelper.EqualsIgnoreCase(container, "flac"))
|
||||
if (string.Equals(container, "flac", StringComparison.OrdinalIgnoreCase))
|
||||
return MediaFormatProfile.FLAC;
|
||||
|
||||
if (StringHelper.EqualsIgnoreCase(container, "oga") ||
|
||||
StringHelper.EqualsIgnoreCase(container, "ogg"))
|
||||
if (string.Equals(container, "oga", StringComparison.OrdinalIgnoreCase) ||
|
||||
string.Equals(container, "ogg", StringComparison.OrdinalIgnoreCase))
|
||||
return MediaFormatProfile.OGG;
|
||||
|
||||
return null;
|
||||
@@ -388,17 +390,17 @@ namespace MediaBrowser.Model.Dlna
|
||||
|
||||
public MediaFormatProfile? ResolveImageFormat(string container, int? width, int? height)
|
||||
{
|
||||
if (StringHelper.EqualsIgnoreCase(container, "jpeg") ||
|
||||
StringHelper.EqualsIgnoreCase(container, "jpg"))
|
||||
if (string.Equals(container, "jpeg", StringComparison.OrdinalIgnoreCase) ||
|
||||
string.Equals(container, "jpg", StringComparison.OrdinalIgnoreCase))
|
||||
return ResolveImageJPGFormat(width, height);
|
||||
|
||||
if (StringHelper.EqualsIgnoreCase(container, "png"))
|
||||
if (string.Equals(container, "png", StringComparison.OrdinalIgnoreCase))
|
||||
return ResolveImagePNGFormat(width, height);
|
||||
|
||||
if (StringHelper.EqualsIgnoreCase(container, "gif"))
|
||||
if (string.Equals(container, "gif", StringComparison.OrdinalIgnoreCase))
|
||||
return MediaFormatProfile.GIF_LRG;
|
||||
|
||||
if (StringHelper.EqualsIgnoreCase(container, "raw"))
|
||||
if (string.Equals(container, "raw", StringComparison.OrdinalIgnoreCase))
|
||||
return MediaFormatProfile.RAW;
|
||||
|
||||
return null;
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
#pragma warning disable CS1591
|
||||
#pragma warning disable SA1600
|
||||
|
||||
namespace MediaBrowser.Model.Dlna
|
||||
{
|
||||
public enum PlaybackErrorCode
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
#pragma warning disable CS1591
|
||||
#pragma warning disable SA1600
|
||||
|
||||
using System.Xml.Serialization;
|
||||
|
||||
namespace MediaBrowser.Model.Dlna
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
#pragma warning disable CS1591
|
||||
#pragma warning disable SA1600
|
||||
|
||||
namespace MediaBrowser.Model.Dlna
|
||||
{
|
||||
public enum ProfileConditionType
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
#pragma warning disable CS1591
|
||||
#pragma warning disable SA1600
|
||||
|
||||
namespace MediaBrowser.Model.Dlna
|
||||
{
|
||||
public enum ProfileConditionValue
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
#pragma warning disable CS1591
|
||||
#pragma warning disable SA1600
|
||||
|
||||
namespace MediaBrowser.Model.Dlna
|
||||
{
|
||||
public class ResolutionConfiguration
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
#pragma warning disable CS1591
|
||||
#pragma warning disable SA1600
|
||||
|
||||
using System;
|
||||
using MediaBrowser.Model.Extensions;
|
||||
|
||||
@@ -76,9 +79,9 @@ namespace MediaBrowser.Model.Dlna
|
||||
|
||||
private static double GetVideoBitrateScaleFactor(string codec)
|
||||
{
|
||||
if (StringHelper.EqualsIgnoreCase(codec, "h265") ||
|
||||
StringHelper.EqualsIgnoreCase(codec, "hevc") ||
|
||||
StringHelper.EqualsIgnoreCase(codec, "vp9"))
|
||||
if (string.Equals(codec, "h265", StringComparison.OrdinalIgnoreCase) ||
|
||||
string.Equals(codec, "hevc", StringComparison.OrdinalIgnoreCase) ||
|
||||
string.Equals(codec, "vp9", StringComparison.OrdinalIgnoreCase))
|
||||
{
|
||||
return .5;
|
||||
}
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
#pragma warning disable CS1591
|
||||
#pragma warning disable SA1600
|
||||
|
||||
namespace MediaBrowser.Model.Dlna
|
||||
{
|
||||
public class ResolutionOptions
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
#pragma warning disable CS1591
|
||||
#pragma warning disable SA1600
|
||||
|
||||
using System.Xml.Serialization;
|
||||
|
||||
namespace MediaBrowser.Model.Dlna
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
#pragma warning disable CS1591
|
||||
#pragma warning disable SA1600
|
||||
|
||||
using System;
|
||||
using System.Text.RegularExpressions;
|
||||
using MediaBrowser.Model.Extensions;
|
||||
@@ -48,22 +51,22 @@ namespace MediaBrowser.Model.Dlna
|
||||
if (subFactors.Length == 3)
|
||||
{
|
||||
|
||||
if (StringHelper.EqualsIgnoreCase("upnp:class", subFactors[0]) &&
|
||||
(StringHelper.EqualsIgnoreCase("=", subFactors[1]) || StringHelper.EqualsIgnoreCase("derivedfrom", subFactors[1])))
|
||||
if (string.Equals("upnp:class", subFactors[0], StringComparison.OrdinalIgnoreCase) &&
|
||||
(string.Equals("=", subFactors[1]) || string.Equals("derivedfrom", subFactors[1], StringComparison.OrdinalIgnoreCase)))
|
||||
{
|
||||
if (StringHelper.EqualsIgnoreCase("\"object.item.imageItem\"", subFactors[2]) || StringHelper.EqualsIgnoreCase("\"object.item.imageItem.photo\"", subFactors[2]))
|
||||
if (string.Equals("\"object.item.imageItem\"", subFactors[2]) || string.Equals("\"object.item.imageItem.photo\"", subFactors[2], StringComparison.OrdinalIgnoreCase))
|
||||
{
|
||||
SearchType = SearchType.Image;
|
||||
}
|
||||
else if (StringHelper.EqualsIgnoreCase("\"object.item.videoItem\"", subFactors[2]))
|
||||
else if (string.Equals("\"object.item.videoItem\"", subFactors[2], StringComparison.OrdinalIgnoreCase))
|
||||
{
|
||||
SearchType = SearchType.Video;
|
||||
}
|
||||
else if (StringHelper.EqualsIgnoreCase("\"object.container.playlistContainer\"", subFactors[2]))
|
||||
else if (string.Equals("\"object.container.playlistContainer\"", subFactors[2], StringComparison.OrdinalIgnoreCase))
|
||||
{
|
||||
SearchType = SearchType.Playlist;
|
||||
}
|
||||
else if (StringHelper.EqualsIgnoreCase("\"object.container.album.musicAlbum\"", subFactors[2]))
|
||||
else if (string.Equals("\"object.container.album.musicAlbum\"", subFactors[2], StringComparison.OrdinalIgnoreCase))
|
||||
{
|
||||
SearchType = SearchType.MusicAlbum;
|
||||
}
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
#pragma warning disable CS1591
|
||||
#pragma warning disable SA1600
|
||||
|
||||
namespace MediaBrowser.Model.Dlna
|
||||
{
|
||||
public enum SearchType
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
#pragma warning disable CS1591
|
||||
#pragma warning disable SA1600
|
||||
|
||||
using MediaBrowser.Model.Entities;
|
||||
|
||||
namespace MediaBrowser.Model.Dlna
|
||||
|
||||
@@ -1,10 +1,12 @@
|
||||
#pragma warning disable CS1591
|
||||
#pragma warning disable SA1600
|
||||
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Globalization;
|
||||
using System.Linq;
|
||||
using MediaBrowser.Model.Dto;
|
||||
using MediaBrowser.Model.Entities;
|
||||
using MediaBrowser.Model.Extensions;
|
||||
using MediaBrowser.Model.MediaInfo;
|
||||
using MediaBrowser.Model.Session;
|
||||
using Microsoft.Extensions.Logging;
|
||||
@@ -35,7 +37,7 @@ namespace MediaBrowser.Model.Dlna
|
||||
foreach (MediaSourceInfo i in options.MediaSources)
|
||||
{
|
||||
if (string.IsNullOrEmpty(options.MediaSourceId) ||
|
||||
StringHelper.EqualsIgnoreCase(i.Id, options.MediaSourceId))
|
||||
string.Equals(i.Id, options.MediaSourceId, StringComparison.OrdinalIgnoreCase))
|
||||
{
|
||||
mediaSources.Add(i);
|
||||
}
|
||||
@@ -68,7 +70,7 @@ namespace MediaBrowser.Model.Dlna
|
||||
foreach (MediaSourceInfo i in options.MediaSources)
|
||||
{
|
||||
if (string.IsNullOrEmpty(options.MediaSourceId) ||
|
||||
StringHelper.EqualsIgnoreCase(i.Id, options.MediaSourceId))
|
||||
string.Equals(i.Id, options.MediaSourceId, StringComparison.OrdinalIgnoreCase))
|
||||
{
|
||||
mediaSources.Add(i);
|
||||
}
|
||||
@@ -582,7 +584,7 @@ namespace MediaBrowser.Model.Dlna
|
||||
{
|
||||
foreach (var profile in subtitleProfiles)
|
||||
{
|
||||
if (profile.Method == SubtitleDeliveryMethod.External && StringHelper.EqualsIgnoreCase(profile.Format, stream.Codec))
|
||||
if (profile.Method == SubtitleDeliveryMethod.External && string.Equals(profile.Format, stream.Codec, StringComparison.OrdinalIgnoreCase))
|
||||
{
|
||||
return stream.Index;
|
||||
}
|
||||
@@ -1198,7 +1200,7 @@ namespace MediaBrowser.Model.Dlna
|
||||
continue;
|
||||
}
|
||||
|
||||
if (subtitleStream.IsTextSubtitleStream == MediaStream.IsTextFormat(profile.Format) && StringHelper.EqualsIgnoreCase(profile.Format, subtitleStream.Codec))
|
||||
if (subtitleStream.IsTextSubtitleStream == MediaStream.IsTextFormat(profile.Format) && string.Equals(profile.Format, subtitleStream.Codec, StringComparison.OrdinalIgnoreCase))
|
||||
{
|
||||
return profile;
|
||||
}
|
||||
@@ -1292,7 +1294,7 @@ namespace MediaBrowser.Model.Dlna
|
||||
if ((profile.Method == SubtitleDeliveryMethod.External && subtitleStream.IsTextSubtitleStream == MediaStream.IsTextFormat(profile.Format)) ||
|
||||
(profile.Method == SubtitleDeliveryMethod.Hls && subtitleStream.IsTextSubtitleStream))
|
||||
{
|
||||
bool requiresConversion = !StringHelper.EqualsIgnoreCase(subtitleStream.Codec, profile.Format);
|
||||
bool requiresConversion = !string.Equals(subtitleStream.Codec, profile.Format, StringComparison.OrdinalIgnoreCase);
|
||||
|
||||
if (!requiresConversion)
|
||||
{
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
#pragma warning disable CS1591
|
||||
#pragma warning disable SA1600
|
||||
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Globalization;
|
||||
@@ -5,7 +8,6 @@ using System.Linq;
|
||||
using MediaBrowser.Model.Drawing;
|
||||
using MediaBrowser.Model.Dto;
|
||||
using MediaBrowser.Model.Entities;
|
||||
using MediaBrowser.Model.Extensions;
|
||||
using MediaBrowser.Model.MediaInfo;
|
||||
using MediaBrowser.Model.Session;
|
||||
|
||||
@@ -153,18 +155,18 @@ namespace MediaBrowser.Model.Dlna
|
||||
}
|
||||
|
||||
// Try to keep the url clean by omitting defaults
|
||||
if (StringHelper.EqualsIgnoreCase(pair.Name, "StartTimeTicks") &&
|
||||
StringHelper.EqualsIgnoreCase(pair.Value, "0"))
|
||||
if (string.Equals(pair.Name, "StartTimeTicks", StringComparison.OrdinalIgnoreCase) &&
|
||||
string.Equals(pair.Value, "0", StringComparison.OrdinalIgnoreCase))
|
||||
{
|
||||
continue;
|
||||
}
|
||||
if (StringHelper.EqualsIgnoreCase(pair.Name, "SubtitleStreamIndex") &&
|
||||
StringHelper.EqualsIgnoreCase(pair.Value, "-1"))
|
||||
if (string.Equals(pair.Name, "SubtitleStreamIndex", StringComparison.OrdinalIgnoreCase) &&
|
||||
string.Equals(pair.Value, "-1", StringComparison.OrdinalIgnoreCase))
|
||||
{
|
||||
continue;
|
||||
}
|
||||
if (StringHelper.EqualsIgnoreCase(pair.Name, "Static") &&
|
||||
StringHelper.EqualsIgnoreCase(pair.Value, "false"))
|
||||
if (string.Equals(pair.Name, "Static", StringComparison.OrdinalIgnoreCase) &&
|
||||
string.Equals(pair.Value, "false", StringComparison.OrdinalIgnoreCase))
|
||||
{
|
||||
continue;
|
||||
}
|
||||
@@ -192,7 +194,7 @@ namespace MediaBrowser.Model.Dlna
|
||||
|
||||
if (MediaType == DlnaProfileType.Audio)
|
||||
{
|
||||
if (StringHelper.EqualsIgnoreCase(SubProtocol, "hls"))
|
||||
if (string.Equals(SubProtocol, "hls", StringComparison.OrdinalIgnoreCase))
|
||||
{
|
||||
return string.Format("{0}/audio/{1}/master.m3u8?{2}", baseUrl, ItemId, queryString);
|
||||
}
|
||||
@@ -200,7 +202,7 @@ namespace MediaBrowser.Model.Dlna
|
||||
return string.Format("{0}/audio/{1}/stream{2}?{3}", baseUrl, ItemId, extension, queryString);
|
||||
}
|
||||
|
||||
if (StringHelper.EqualsIgnoreCase(SubProtocol, "hls"))
|
||||
if (string.Equals(SubProtocol, "hls", StringComparison.OrdinalIgnoreCase))
|
||||
{
|
||||
return string.Format("{0}/videos/{1}/master.m3u8?{2}", baseUrl, ItemId, queryString);
|
||||
}
|
||||
@@ -237,7 +239,7 @@ namespace MediaBrowser.Model.Dlna
|
||||
|
||||
long startPositionTicks = item.StartPositionTicks;
|
||||
|
||||
var isHls = StringHelper.EqualsIgnoreCase(item.SubProtocol, "hls");
|
||||
var isHls = string.Equals(item.SubProtocol, "hls", StringComparison.OrdinalIgnoreCase);
|
||||
|
||||
if (isHls)
|
||||
{
|
||||
@@ -370,7 +372,7 @@ namespace MediaBrowser.Model.Dlna
|
||||
var list = new List<SubtitleStreamInfo>();
|
||||
|
||||
// HLS will preserve timestamps so we can just grab the full subtitle stream
|
||||
long startPositionTicks = StringHelper.EqualsIgnoreCase(SubProtocol, "hls")
|
||||
long startPositionTicks = string.Equals(SubProtocol, "hls", StringComparison.OrdinalIgnoreCase)
|
||||
? 0
|
||||
: (PlayMethod == PlayMethod.Transcode && !CopyTimestamps ? StartPositionTicks : 0);
|
||||
|
||||
@@ -435,7 +437,7 @@ namespace MediaBrowser.Model.Dlna
|
||||
|
||||
if (info.DeliveryMethod == SubtitleDeliveryMethod.External)
|
||||
{
|
||||
if (MediaSource.Protocol == MediaProtocol.File || !StringHelper.EqualsIgnoreCase(stream.Codec, subtitleProfile.Format) || !stream.IsExternal)
|
||||
if (MediaSource.Protocol == MediaProtocol.File || !string.Equals(stream.Codec, subtitleProfile.Format, StringComparison.OrdinalIgnoreCase) || !stream.IsExternal)
|
||||
{
|
||||
info.Url = string.Format("{0}/Videos/{1}/{2}/Subtitles/{3}/{4}/Stream.{5}",
|
||||
baseUrl,
|
||||
@@ -802,7 +804,7 @@ namespace MediaBrowser.Model.Dlna
|
||||
|
||||
foreach (string codec in AudioCodecs)
|
||||
{
|
||||
if (StringHelper.EqualsIgnoreCase(codec, inputCodec))
|
||||
if (string.Equals(codec, inputCodec, StringComparison.OrdinalIgnoreCase))
|
||||
{
|
||||
return string.IsNullOrEmpty(codec) ? new string[] { } : new[] { codec };
|
||||
}
|
||||
@@ -827,7 +829,7 @@ namespace MediaBrowser.Model.Dlna
|
||||
|
||||
foreach (string codec in VideoCodecs)
|
||||
{
|
||||
if (StringHelper.EqualsIgnoreCase(codec, inputCodec))
|
||||
if (string.Equals(codec, inputCodec, StringComparison.OrdinalIgnoreCase))
|
||||
{
|
||||
return string.IsNullOrEmpty(codec) ? new string[] { } : new[] { codec };
|
||||
}
|
||||
@@ -884,7 +886,7 @@ namespace MediaBrowser.Model.Dlna
|
||||
{
|
||||
get
|
||||
{
|
||||
var defaultValue = StringHelper.EqualsIgnoreCase(Container, "m2ts")
|
||||
var defaultValue = string.Equals(Container, "m2ts", StringComparison.OrdinalIgnoreCase)
|
||||
? TransportStreamTimestamp.Valid
|
||||
: TransportStreamTimestamp.None;
|
||||
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
#pragma warning disable CS1591
|
||||
#pragma warning disable SA1600
|
||||
|
||||
namespace MediaBrowser.Model.Dlna
|
||||
{
|
||||
public enum SubtitleDeliveryMethod
|
||||
@@ -6,14 +9,17 @@ namespace MediaBrowser.Model.Dlna
|
||||
/// The encode
|
||||
/// </summary>
|
||||
Encode = 0,
|
||||
|
||||
/// <summary>
|
||||
/// The embed
|
||||
/// </summary>
|
||||
Embed = 1,
|
||||
|
||||
/// <summary>
|
||||
/// The external
|
||||
/// </summary>
|
||||
External = 2,
|
||||
|
||||
/// <summary>
|
||||
/// The HLS
|
||||
/// </summary>
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
#pragma warning disable CS1591
|
||||
#pragma warning disable SA1600
|
||||
|
||||
using System.Xml.Serialization;
|
||||
using MediaBrowser.Model.Extensions;
|
||||
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
#pragma warning disable CS1591
|
||||
#pragma warning disable SA1600
|
||||
|
||||
namespace MediaBrowser.Model.Dlna
|
||||
{
|
||||
public class SubtitleStreamInfo
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
#pragma warning disable CS1591
|
||||
#pragma warning disable SA1600
|
||||
|
||||
namespace MediaBrowser.Model.Dlna
|
||||
{
|
||||
public enum TranscodeSeekInfo
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
#pragma warning disable CS1591
|
||||
#pragma warning disable SA1600
|
||||
|
||||
using System.Xml.Serialization;
|
||||
|
||||
namespace MediaBrowser.Model.Dlna
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
#pragma warning disable CS1591
|
||||
#pragma warning disable SA1600
|
||||
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Net;
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
#pragma warning disable CS1591
|
||||
#pragma warning disable SA1600
|
||||
|
||||
namespace MediaBrowser.Model.Dlna
|
||||
{
|
||||
/// <summary>
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
#pragma warning disable CS1591
|
||||
#pragma warning disable SA1600
|
||||
|
||||
using System.Xml.Serialization;
|
||||
|
||||
namespace MediaBrowser.Model.Dlna
|
||||
|
||||
@@ -3,19 +3,19 @@ using System;
|
||||
namespace MediaBrowser.Model.Drawing
|
||||
{
|
||||
/// <summary>
|
||||
/// Class DrawingUtils
|
||||
/// Class DrawingUtils.
|
||||
/// </summary>
|
||||
public static class DrawingUtils
|
||||
{
|
||||
/// <summary>
|
||||
/// Resizes a set of dimensions
|
||||
/// Resizes a set of dimensions.
|
||||
/// </summary>
|
||||
/// <param name="size">The original size object</param>
|
||||
/// <param name="width">A new fixed width, if desired</param>
|
||||
/// <param name="height">A new fixed height, if desired</param>
|
||||
/// <param name="maxWidth">A max fixed width, if desired</param>
|
||||
/// <param name="maxHeight">A max fixed height, if desired</param>
|
||||
/// <returns>A new size object</returns>
|
||||
/// <param name="size">The original size object.</param>
|
||||
/// <param name="width">A new fixed width, if desired.</param>
|
||||
/// <param name="height">A new fixed height, if desired.</param>
|
||||
/// <param name="maxWidth">A max fixed width, if desired.</param>
|
||||
/// <param name="maxHeight">A max fixed height, if desired.</param>
|
||||
/// <returns>A new size object.</returns>
|
||||
public static ImageDimensions Resize(ImageDimensions size,
|
||||
int width,
|
||||
int height,
|
||||
|
||||
@@ -1,9 +1,12 @@
|
||||
#pragma warning disable CS1591
|
||||
#pragma warning disable SA1600
|
||||
|
||||
using System.Globalization;
|
||||
|
||||
namespace MediaBrowser.Model.Drawing
|
||||
{
|
||||
/// <summary>
|
||||
/// Struct ImageDimensions
|
||||
/// Struct ImageDimensions.
|
||||
/// </summary>
|
||||
public readonly struct ImageDimensions
|
||||
{
|
||||
|
||||
@@ -1,28 +1,32 @@
|
||||
namespace MediaBrowser.Model.Drawing
|
||||
{
|
||||
/// <summary>
|
||||
/// Enum ImageOutputFormat
|
||||
/// Enum ImageOutputFormat.
|
||||
/// </summary>
|
||||
public enum ImageFormat
|
||||
{
|
||||
/// <summary>
|
||||
/// The BMP
|
||||
/// The BMP.
|
||||
/// </summary>
|
||||
Bmp,
|
||||
|
||||
/// <summary>
|
||||
/// The GIF
|
||||
/// The GIF.
|
||||
/// </summary>
|
||||
Gif,
|
||||
|
||||
/// <summary>
|
||||
/// The JPG
|
||||
/// The JPG.
|
||||
/// </summary>
|
||||
Jpg,
|
||||
|
||||
/// <summary>
|
||||
/// The PNG
|
||||
/// The PNG.
|
||||
/// </summary>
|
||||
Png,
|
||||
|
||||
/// <summary>
|
||||
/// The webp
|
||||
/// The webp.
|
||||
/// </summary>
|
||||
Webp
|
||||
}
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
#pragma warning disable CS1591
|
||||
#pragma warning disable SA1600
|
||||
|
||||
namespace MediaBrowser.Model.Drawing
|
||||
{
|
||||
public enum ImageOrientation
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
#pragma warning disable CS1591
|
||||
#pragma warning disable SA1600
|
||||
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using MediaBrowser.Model.Drawing;
|
||||
|
||||
@@ -3,7 +3,7 @@ using System.Text.Json.Serialization;
|
||||
namespace MediaBrowser.Model.Dto
|
||||
{
|
||||
/// <summary>
|
||||
/// This is used by the api to get information about a Person within a BaseItem
|
||||
/// This is used by the api to get information about a Person within a BaseItem.
|
||||
/// </summary>
|
||||
public class BaseItemPerson
|
||||
{
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
#pragma warning disable CS1591
|
||||
#pragma warning disable SA1600
|
||||
|
||||
namespace MediaBrowser.Model.Dto
|
||||
{
|
||||
public interface IHasServerId
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
namespace MediaBrowser.Model.Dto
|
||||
{
|
||||
/// <summary>
|
||||
/// Interface IItemDto
|
||||
/// Interface IItemDto.
|
||||
/// </summary>
|
||||
public interface IItemDto
|
||||
{
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
#pragma warning disable CS1591
|
||||
#pragma warning disable SA1600
|
||||
|
||||
namespace MediaBrowser.Model.Dto
|
||||
{
|
||||
@@ -8,21 +10,25 @@ namespace MediaBrowser.Model.Dto
|
||||
/// </summary>
|
||||
/// <value>The name.</value>
|
||||
public string Name { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets the theme.
|
||||
/// </summary>
|
||||
/// <value>The theme.</value>
|
||||
public string Theme { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets the context.
|
||||
/// </summary>
|
||||
/// <value>The context.</value>
|
||||
public string Context { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets the length of the file.
|
||||
/// </summary>
|
||||
/// <value>The length of the file.</value>
|
||||
public long FileLength { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets the format.
|
||||
/// </summary>
|
||||
|
||||
@@ -3,7 +3,7 @@ using MediaBrowser.Model.Entities;
|
||||
namespace MediaBrowser.Model.Dto
|
||||
{
|
||||
/// <summary>
|
||||
/// Class ImageInfo
|
||||
/// Class ImageInfo.
|
||||
/// </summary>
|
||||
public class ImageInfo
|
||||
{
|
||||
|
||||
@@ -4,7 +4,7 @@ using MediaBrowser.Model.Entities;
|
||||
namespace MediaBrowser.Model.Dto
|
||||
{
|
||||
/// <summary>
|
||||
/// Class ImageOptions
|
||||
/// Class ImageOptions.
|
||||
/// </summary>
|
||||
public class ImageOptions
|
||||
{
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
namespace MediaBrowser.Model.Dto
|
||||
{
|
||||
/// <summary>
|
||||
/// Class LibrarySummary
|
||||
/// Class LibrarySummary.
|
||||
/// </summary>
|
||||
public class ItemCounts
|
||||
{
|
||||
@@ -10,48 +10,71 @@ namespace MediaBrowser.Model.Dto
|
||||
/// </summary>
|
||||
/// <value>The movie count.</value>
|
||||
public int MovieCount { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets the series count.
|
||||
/// </summary>
|
||||
/// <value>The series count.</value>
|
||||
public int SeriesCount { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets the episode count.
|
||||
/// </summary>
|
||||
/// <value>The episode count.</value>
|
||||
public int EpisodeCount { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets the artist count.
|
||||
/// </summary>
|
||||
/// <value>The artist count.</value>
|
||||
public int ArtistCount { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets the program count.
|
||||
/// </summary>
|
||||
/// <value>The program count.</value>
|
||||
public int ProgramCount { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets the trailer count.
|
||||
/// </summary>
|
||||
/// <value>The trailer count.</value>
|
||||
public int TrailerCount { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets the song count.
|
||||
/// </summary>
|
||||
/// <value>The song count.</value>
|
||||
public int SongCount { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets the album count.
|
||||
/// </summary>
|
||||
/// <value>The album count.</value>
|
||||
public int AlbumCount { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets the music video count.
|
||||
/// </summary>
|
||||
/// <value>The music video count.</value>
|
||||
public int MusicVideoCount { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets the box set count.
|
||||
/// </summary>
|
||||
/// <value>The box set count.</value>
|
||||
public int BoxSetCount { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets the book count.
|
||||
/// </summary>
|
||||
/// <value>The book count.</value>
|
||||
public int BookCount { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets the item count.
|
||||
/// </summary>
|
||||
/// <value>The item count.</value>
|
||||
public int ItemCount { get; set; }
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
namespace MediaBrowser.Model.Dto
|
||||
{
|
||||
/// <summary>
|
||||
/// Class ItemIndex
|
||||
/// Class ItemIndex.
|
||||
/// </summary>
|
||||
public class ItemIndex
|
||||
{
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
#pragma warning disable CS1591
|
||||
#pragma warning disable SA1600
|
||||
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Text.Json.Serialization;
|
||||
@@ -210,10 +213,7 @@ namespace MediaBrowser.Model.Dto
|
||||
{
|
||||
if (currentStream.Type == MediaStreamType.Audio && currentStream.IsDefault)
|
||||
{
|
||||
if (currentStream.Index != stream.Index)
|
||||
{
|
||||
return true;
|
||||
}
|
||||
return currentStream.Index != stream.Index;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
#pragma warning disable CS1591
|
||||
#pragma warning disable SA1600
|
||||
|
||||
namespace MediaBrowser.Model.Dto
|
||||
{
|
||||
public enum MediaSourceType
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
#pragma warning disable CS1591
|
||||
#pragma warning disable SA1600
|
||||
|
||||
using System;
|
||||
using MediaBrowser.Model.Entities;
|
||||
using MediaBrowser.Model.Globalization;
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
#pragma warning disable CS1591
|
||||
#pragma warning disable SA1600
|
||||
|
||||
using System;
|
||||
|
||||
namespace MediaBrowser.Model.Dto
|
||||
@@ -9,6 +12,7 @@ namespace MediaBrowser.Model.Dto
|
||||
/// </summary>
|
||||
/// <value>The name.</value>
|
||||
public string Name { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets the identifier.
|
||||
/// </summary>
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
#pragma warning disable CS1591
|
||||
#pragma warning disable SA1600
|
||||
|
||||
namespace MediaBrowser.Model.Dto
|
||||
{
|
||||
public class NameValuePair
|
||||
@@ -18,6 +21,7 @@ namespace MediaBrowser.Model.Dto
|
||||
/// </summary>
|
||||
/// <value>The name.</value>
|
||||
public string Name { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets the value.
|
||||
/// </summary>
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
#pragma warning disable CS1591
|
||||
#pragma warning disable SA1600
|
||||
|
||||
namespace MediaBrowser.Model.Dto
|
||||
{
|
||||
public enum RatingType
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
#pragma warning disable CS1591
|
||||
#pragma warning disable SA1600
|
||||
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
#pragma warning disable CS1591
|
||||
#pragma warning disable SA1600
|
||||
|
||||
namespace MediaBrowser.Model.Dto
|
||||
{
|
||||
public enum RecommendationType
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user