Enable SupportsTranscoding if device has transcoding profiles

pull/7784/head
Cody Robibero 3 years ago
parent 4c0510ee6d
commit d29a423475

@ -255,10 +255,27 @@ namespace Jellyfin.Api.Helpers
streamInfo.PlaySessionId = playSessionId; streamInfo.PlaySessionId = playSessionId;
streamInfo.StartPositionTicks = startTimeTicks; streamInfo.StartPositionTicks = startTimeTicks;
mediaSource.SupportsDirectPlay = streamInfo.PlayMethod == PlayMethod.DirectPlay; if (mediaSource.SupportsDirectPlay)
{
mediaSource.SupportsDirectPlay = streamInfo.PlayMethod == PlayMethod.DirectPlay;
}
// Players do not handle this being set according to PlayMethod // Players do not handle this being set according to PlayMethod
mediaSource.SupportsDirectStream = options.EnableDirectStream ? streamInfo.PlayMethod == PlayMethod.DirectPlay || streamInfo.PlayMethod == PlayMethod.DirectStream : streamInfo.PlayMethod == PlayMethod.DirectPlay; if (mediaSource.SupportsDirectStream)
mediaSource.SupportsTranscoding = streamInfo.PlayMethod == PlayMethod.DirectStream || mediaSource.TranscodingContainer != null; {
mediaSource.SupportsDirectStream =
options.EnableDirectStream
? streamInfo.PlayMethod == PlayMethod.DirectPlay || streamInfo.PlayMethod == PlayMethod.DirectStream
: streamInfo.PlayMethod == PlayMethod.DirectPlay;
}
if (mediaSource.SupportsTranscoding)
{
mediaSource.SupportsTranscoding =
streamInfo.PlayMethod == PlayMethod.DirectStream
|| mediaSource.TranscodingContainer != null
|| profile.TranscodingProfiles.Any(i => i.Type == streamInfo.MediaType && i.Context == options.Context);
}
if (item is Audio) if (item is Audio)
{ {
@ -290,7 +307,7 @@ namespace Jellyfin.Api.Helpers
} }
else else
{ {
if (mediaSource.SupportsTranscoding || mediaSource.SupportsDirectStream) if (!mediaSource.SupportsDirectPlay && (mediaSource.SupportsTranscoding || mediaSource.SupportsDirectStream))
{ {
streamInfo.PlayMethod = PlayMethod.Transcode; streamInfo.PlayMethod = PlayMethod.Transcode;
mediaSource.TranscodingUrl = streamInfo.ToUrl("-", auth.Token).TrimStart('-'); mediaSource.TranscodingUrl = streamInfo.ToUrl("-", auth.Token).TrimStart('-');

Loading…
Cancel
Save