mirror of
https://github.com/jellyfin/jellyfin.git
synced 2025-07-09 03:04:24 -04:00
Enable SupportsTranscoding if device has transcoding profiles
This commit is contained in:
parent
4c0510ee6d
commit
d29a423475
@ -255,10 +255,27 @@ namespace Jellyfin.Api.Helpers
|
|||||||
streamInfo.PlaySessionId = playSessionId;
|
streamInfo.PlaySessionId = playSessionId;
|
||||||
streamInfo.StartPositionTicks = startTimeTicks;
|
streamInfo.StartPositionTicks = startTimeTicks;
|
||||||
|
|
||||||
|
if (mediaSource.SupportsDirectPlay)
|
||||||
|
{
|
||||||
mediaSource.SupportsDirectPlay = streamInfo.PlayMethod == PlayMethod.DirectPlay;
|
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…
x
Reference in New Issue
Block a user