mirror of
https://github.com/jellyfin/jellyfin.git
synced 2025-07-09 03:04:24 -04:00
Merge pull request #5859 from cvium/fix-streambuilder-permissions
Respect user settings for transcode and remux (cherry picked from commit 5a6e60b414046c274330479f7dfb9713eea20020) Signed-off-by: Joshua M. Boniface <joshua@boniface.me>
This commit is contained in:
parent
34508286a8
commit
11e9173fbc
@ -200,10 +200,15 @@ namespace Emby.Server.Implementations.Library
|
|||||||
{
|
{
|
||||||
source.SupportsTranscoding = user.HasPermission(PermissionKind.EnableAudioPlaybackTranscoding);
|
source.SupportsTranscoding = user.HasPermission(PermissionKind.EnableAudioPlaybackTranscoding);
|
||||||
}
|
}
|
||||||
|
else if (string.Equals(item.MediaType, MediaType.Video, StringComparison.OrdinalIgnoreCase))
|
||||||
|
{
|
||||||
|
source.SupportsTranscoding = user.HasPermission(PermissionKind.EnableVideoPlaybackTranscoding);
|
||||||
|
source.SupportsDirectStream = user.HasPermission(PermissionKind.EnablePlaybackRemuxing);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return SortMediaSources(list).Where(i => i.Type != MediaSourceType.Placeholder).ToList();
|
return SortMediaSources(list);
|
||||||
}
|
}
|
||||||
|
|
||||||
public MediaProtocol GetPathProtocol(string path)
|
public MediaProtocol GetPathProtocol(string path)
|
||||||
@ -437,7 +442,7 @@ namespace Emby.Server.Implementations.Library
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private static IEnumerable<MediaSourceInfo> SortMediaSources(IEnumerable<MediaSourceInfo> sources)
|
private static List<MediaSourceInfo> SortMediaSources(IEnumerable<MediaSourceInfo> sources)
|
||||||
{
|
{
|
||||||
return sources.OrderBy(i =>
|
return sources.OrderBy(i =>
|
||||||
{
|
{
|
||||||
@ -452,8 +457,9 @@ namespace Emby.Server.Implementations.Library
|
|||||||
{
|
{
|
||||||
var stream = i.VideoStream;
|
var stream = i.VideoStream;
|
||||||
|
|
||||||
return stream == null || stream.Width == null ? 0 : stream.Width.Value;
|
return stream?.Width ?? 0;
|
||||||
})
|
})
|
||||||
|
.Where(i => i.Type != MediaSourceType.Placeholder)
|
||||||
.ToList();
|
.ToList();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -308,7 +308,7 @@ namespace Jellyfin.Api.Helpers
|
|||||||
{
|
{
|
||||||
if (!user.HasPermission(PermissionKind.EnableAudioPlaybackTranscoding)
|
if (!user.HasPermission(PermissionKind.EnableAudioPlaybackTranscoding)
|
||||||
&& !user.HasPermission(PermissionKind.EnableVideoPlaybackTranscoding)
|
&& !user.HasPermission(PermissionKind.EnableVideoPlaybackTranscoding)
|
||||||
&& !user.HasPermission(PermissionKind.EnablePlaybackRemuxing))
|
&& user.HasPermission(PermissionKind.EnablePlaybackRemuxing))
|
||||||
{
|
{
|
||||||
options.ForceDirectStream = true;
|
options.ForceDirectStream = true;
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user