Fix DLNA playback of DVD and BD folders

pull/9254/head
Shadowghost 1 year ago
parent cd852d43c1
commit 47aa07c342

@ -325,8 +325,12 @@ public class TranscodingJobHelper : IDisposable
await DeletePartialStreamFiles(job.Path!, job.Type, 0, 1500).ConfigureAwait(false);
if (job.MediaSource?.VideoType == VideoType.Dvd || job.MediaSource?.VideoType == VideoType.BluRay)
{
var path = Path.Join(job.Path, job.MediaSource.Id + ".concat");
File.Delete(path);
var concatFilePath = Path.Join(_serverConfigurationManager.GetTranscodePath(), job.MediaSource.Id + ".concat");
if (File.Exists(concatFilePath))
{
_logger.LogInformation("Deleting ffmpeg concat configuration at {Path}", concatFilePath);
_fileSystem.DeleteFile(concatFilePath);
}
}
}

@ -251,12 +251,23 @@ namespace MediaBrowser.MediaEncoding.Probing
return null;
}
// Handle MPEG-1 container
if (string.Equals(format, "mpegvideo", StringComparison.OrdinalIgnoreCase))
{
return "mpeg";
}
format = format.Replace("matroska", "mkv", StringComparison.OrdinalIgnoreCase);
// Handle MPEG-2 container
if (string.Equals(format, "mpeg", StringComparison.OrdinalIgnoreCase))
{
return "ts";
}
// Handle matroska container
if (string.Equals(format, "matroska", StringComparison.OrdinalIgnoreCase))
{
return "mkv";
}
return format;
}

@ -108,8 +108,10 @@ namespace MediaBrowser.Model.Dlna
public string MediaSourceId => MediaSource?.Id;
public bool IsDirectStream =>
PlayMethod == PlayMethod.DirectStream ||
PlayMethod == PlayMethod.DirectPlay;
!(MediaSource?.VideoType == VideoType.Dvd
|| MediaSource?.VideoType == VideoType.BluRay)
&& (PlayMethod == PlayMethod.DirectStream
|| PlayMethod == PlayMethod.DirectPlay);
/// <summary>
/// Gets the audio stream that will be used.

Loading…
Cancel
Save