|
|
|
@ -127,6 +127,10 @@ namespace MediaBrowser.Model.Dlna
|
|
|
|
|
if (directPlayMethod is PlayMethod.DirectStream)
|
|
|
|
|
{
|
|
|
|
|
var remuxContainer = item.TranscodingContainer ?? "ts";
|
|
|
|
|
var supportedHlsContainers = new[] { "ts", "mp4" };
|
|
|
|
|
// If the container specified for the profile is an HLS supported container, use that container instead, overriding the preference
|
|
|
|
|
// The client should be responsible to ensure this container is compatible
|
|
|
|
|
remuxContainer = Array.Exists(supportedHlsContainers, element => element == directPlayInfo.Profile?.Container) ? directPlayInfo.Profile?.Container : remuxContainer;
|
|
|
|
|
bool codeIsSupported;
|
|
|
|
|
if (item.TranscodingSubProtocol == MediaStreamProtocol.hls)
|
|
|
|
|
{
|
|
|
|
@ -152,6 +156,7 @@ namespace MediaBrowser.Model.Dlna
|
|
|
|
|
playlistItem.Container = remuxContainer;
|
|
|
|
|
playlistItem.TranscodeReasons = transcodeReasons;
|
|
|
|
|
playlistItem.SubProtocol = item.TranscodingSubProtocol;
|
|
|
|
|
item.TranscodingContainer = remuxContainer;
|
|
|
|
|
return playlistItem;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|