From d423efd2eac8bb3d392b9d6c98b172cc05b64a5a Mon Sep 17 00:00:00 2001 From: nyanmisaka Date: Wed, 20 Dec 2023 13:56:28 +0800 Subject: Add a new HWA type RKMPP Signed-off-by: nyanmisaka --- MediaBrowser.Model/Session/HardwareEncodingType.cs | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'MediaBrowser.Model/Session') diff --git a/MediaBrowser.Model/Session/HardwareEncodingType.cs b/MediaBrowser.Model/Session/HardwareEncodingType.cs index f5753467a..058875cd3 100644 --- a/MediaBrowser.Model/Session/HardwareEncodingType.cs +++ b/MediaBrowser.Model/Session/HardwareEncodingType.cs @@ -33,6 +33,11 @@ /// /// Video ToolBox. /// - VideoToolBox = 5 + VideoToolBox = 5, + + /// + /// Rockchip Media Process Platform (RKMPP). + /// + RKMPP = 6 } } -- cgit v1.2.3 From be29b4a0c4e0a525da0a8537810d11586cec9b67 Mon Sep 17 00:00:00 2001 From: Niels van Velzen Date: Tue, 6 Feb 2024 22:16:41 +0100 Subject: Fix some incompatible API deprecations --- .../Models/SessionDtos/ClientCapabilitiesDto.cs | 13 ++++++++++ MediaBrowser.Model/Session/ClientCapabilities.cs | 11 ++++++++ MediaBrowser.Model/System/SystemInfo.cs | 29 ++++++---------------- 3 files changed, 32 insertions(+), 21 deletions(-) (limited to 'MediaBrowser.Model/Session') diff --git a/Jellyfin.Api/Models/SessionDtos/ClientCapabilitiesDto.cs b/Jellyfin.Api/Models/SessionDtos/ClientCapabilitiesDto.cs index acd3f29e3..12ce19368 100644 --- a/Jellyfin.Api/Models/SessionDtos/ClientCapabilitiesDto.cs +++ b/Jellyfin.Api/Models/SessionDtos/ClientCapabilitiesDto.cs @@ -1,5 +1,6 @@ using System; using System.Collections.Generic; +using System.ComponentModel; using System.Text.Json.Serialization; using Jellyfin.Data.Enums; using Jellyfin.Extensions.Json.Converters; @@ -50,6 +51,18 @@ public class ClientCapabilitiesDto /// public string? IconUrl { get; set; } +#pragma warning disable CS1591 // Missing XML comment for publicly visible type or member + // TODO: Remove after 10.9 + [Obsolete("Unused")] + [DefaultValue(false)] + public bool? SupportsContentUploading { get; set; } + + // TODO: Remove after 10.9 + [Obsolete("Unused")] + [DefaultValue(false)] + public bool? SupportsSync { get; set; } +#pragma warning restore CS1591 // Missing XML comment for publicly visible type or member + /// /// Convert the dto to the full model. /// diff --git a/MediaBrowser.Model/Session/ClientCapabilities.cs b/MediaBrowser.Model/Session/ClientCapabilities.cs index 597845fc1..5f51fb21c 100644 --- a/MediaBrowser.Model/Session/ClientCapabilities.cs +++ b/MediaBrowser.Model/Session/ClientCapabilities.cs @@ -3,6 +3,7 @@ using System; using System.Collections.Generic; +using System.ComponentModel; using Jellyfin.Data.Enums; using MediaBrowser.Model.Dlna; @@ -30,5 +31,15 @@ namespace MediaBrowser.Model.Session public string AppStoreUrl { get; set; } public string IconUrl { get; set; } + + // TODO: Remove after 10.9 + [Obsolete("Unused")] + [DefaultValue(false)] + public bool? SupportsContentUploading { get; set; } + + // TODO: Remove after 10.9 + [Obsolete("Unused")] + [DefaultValue(false)] + public bool? SupportsSync { get; set; } } } diff --git a/MediaBrowser.Model/System/SystemInfo.cs b/MediaBrowser.Model/System/SystemInfo.cs index aa7c03ebd..f37ac6a14 100644 --- a/MediaBrowser.Model/System/SystemInfo.cs +++ b/MediaBrowser.Model/System/SystemInfo.cs @@ -3,29 +3,11 @@ using System; using System.Collections.Generic; -using System.Runtime.InteropServices; +using System.ComponentModel; using MediaBrowser.Model.Updates; namespace MediaBrowser.Model.System { - /// - /// Enum describing the location of the FFmpeg tool. - /// - public enum FFmpegLocation - { - /// No path to FFmpeg found. - NotFound, - - /// Path supplied via command line using switch --ffmpeg. - SetByArgument, - - /// User has supplied path via Transcoding UI page. - Custom, - - /// FFmpeg tool found on system $PATH. - System - } - /// /// Class SystemInfo. /// @@ -83,9 +65,11 @@ namespace MediaBrowser.Model.System /// /// true. [Obsolete("This is always true")] + [DefaultValue(true)] public bool CanSelfRestart { get; set; } = true; [Obsolete("This is always false")] + [DefaultValue(false)] public bool CanLaunchWebBrowser { get; set; } = false; /// @@ -140,12 +124,15 @@ namespace MediaBrowser.Model.System /// /// true if this instance has update available; otherwise, false. [Obsolete("This should be handled by the package manager")] + [DefaultValue(false)] public bool HasUpdateAvailable { get; set; } [Obsolete("This isn't set correctly anymore")] - public FFmpegLocation EncoderLocation { get; set; } + [DefaultValue("System")] + public string EncoderLocation { get; set; } = "System"; [Obsolete("This is no longer set")] - public Architecture SystemArchitecture { get; set; } = Architecture.X64; + [DefaultValue("X64")] + public string SystemArchitecture { get; set; } = "X64"; } } -- cgit v1.2.3 From 59a9586dbdbc6c7fc9f3ef841183f736fb07eb23 Mon Sep 17 00:00:00 2001 From: Damian Kacperski <7dami77@gmail.com> Date: Fri, 9 Feb 2024 20:41:32 +0100 Subject: Add PlaybackOrder to Session state --- Emby.Server.Implementations/Session/SessionManager.cs | 1 + MediaBrowser.Model/Session/GeneralCommandType.cs | 3 ++- MediaBrowser.Model/Session/PlaybackOrder.cs | 18 ++++++++++++++++++ MediaBrowser.Model/Session/PlaybackProgressInfo.cs | 6 ++++++ MediaBrowser.Model/Session/PlayerStateInfo.cs | 6 ++++++ 5 files changed, 33 insertions(+), 1 deletion(-) create mode 100644 MediaBrowser.Model/Session/PlaybackOrder.cs (limited to 'MediaBrowser.Model/Session') diff --git a/Emby.Server.Implementations/Session/SessionManager.cs b/Emby.Server.Implementations/Session/SessionManager.cs index bbb3938dc..40b3b0339 100644 --- a/Emby.Server.Implementations/Session/SessionManager.cs +++ b/Emby.Server.Implementations/Session/SessionManager.cs @@ -394,6 +394,7 @@ namespace Emby.Server.Implementations.Session session.PlayState.SubtitleStreamIndex = info.SubtitleStreamIndex; session.PlayState.PlayMethod = info.PlayMethod; session.PlayState.RepeatMode = info.RepeatMode; + session.PlayState.PlaybackOrder = info.PlaybackOrder; session.PlaylistItemId = info.PlaylistItemId; var nowPlayingQueue = info.NowPlayingQueue; diff --git a/MediaBrowser.Model/Session/GeneralCommandType.cs b/MediaBrowser.Model/Session/GeneralCommandType.cs index 166a6b441..09339928c 100644 --- a/MediaBrowser.Model/Session/GeneralCommandType.cs +++ b/MediaBrowser.Model/Session/GeneralCommandType.cs @@ -48,6 +48,7 @@ namespace MediaBrowser.Model.Session PlayNext = 38, ToggleOsdMenu = 39, Play = 40, - SetMaxStreamingBitrate = 41 + SetMaxStreamingBitrate = 41, + SetPlaybackOrder = 42 } } diff --git a/MediaBrowser.Model/Session/PlaybackOrder.cs b/MediaBrowser.Model/Session/PlaybackOrder.cs new file mode 100644 index 000000000..8ef7faf14 --- /dev/null +++ b/MediaBrowser.Model/Session/PlaybackOrder.cs @@ -0,0 +1,18 @@ +namespace MediaBrowser.Model.Session +{ + /// + /// Enum PlaybackOrder. + /// + public enum PlaybackOrder + { + /// + /// Sorted playlist. + /// + Default = 0, + + /// + /// Shuffled playlist. + /// + Shuffle = 1 + } +} diff --git a/MediaBrowser.Model/Session/PlaybackProgressInfo.cs b/MediaBrowser.Model/Session/PlaybackProgressInfo.cs index a6e7efcb0..04a9d6867 100644 --- a/MediaBrowser.Model/Session/PlaybackProgressInfo.cs +++ b/MediaBrowser.Model/Session/PlaybackProgressInfo.cs @@ -107,6 +107,12 @@ namespace MediaBrowser.Model.Session /// The repeat mode. public RepeatMode RepeatMode { get; set; } + /// + /// Gets or sets the playback order. + /// + /// The playback order. + public PlaybackOrder PlaybackOrder { get; set; } + public QueueItem[] NowPlayingQueue { get; set; } public string PlaylistItemId { get; set; } diff --git a/MediaBrowser.Model/Session/PlayerStateInfo.cs b/MediaBrowser.Model/Session/PlayerStateInfo.cs index 80e6d4e0b..35cd68fd1 100644 --- a/MediaBrowser.Model/Session/PlayerStateInfo.cs +++ b/MediaBrowser.Model/Session/PlayerStateInfo.cs @@ -65,6 +65,12 @@ namespace MediaBrowser.Model.Session /// The repeat mode. public RepeatMode RepeatMode { get; set; } + /// + /// Gets or sets the playback order. + /// + /// The playback order. + public PlaybackOrder PlaybackOrder { get; set; } + /// /// Gets or sets the now playing live stream identifier. /// -- cgit v1.2.3