|
|
@ -30,10 +30,8 @@ using MediaBrowser.Model.Entities;
|
|
|
|
using MediaBrowser.Model.Globalization;
|
|
|
|
using MediaBrowser.Model.Globalization;
|
|
|
|
using MediaBrowser.Model.IO;
|
|
|
|
using MediaBrowser.Model.IO;
|
|
|
|
using MediaBrowser.Model.MediaInfo;
|
|
|
|
using MediaBrowser.Model.MediaInfo;
|
|
|
|
using Microsoft.AspNetCore.Components.Forms;
|
|
|
|
|
|
|
|
using Microsoft.Extensions.Configuration;
|
|
|
|
using Microsoft.Extensions.Configuration;
|
|
|
|
using Microsoft.Extensions.Logging;
|
|
|
|
using Microsoft.Extensions.Logging;
|
|
|
|
using static Nikse.SubtitleEdit.Core.Common.IfoParser;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
namespace MediaBrowser.MediaEncoding.Encoder
|
|
|
|
namespace MediaBrowser.MediaEncoding.Encoder
|
|
|
|
{
|
|
|
|
{
|
|
|
@ -621,7 +619,7 @@ namespace MediaBrowser.MediaEncoding.Encoder
|
|
|
|
ImageFormat? targetFormat,
|
|
|
|
ImageFormat? targetFormat,
|
|
|
|
CancellationToken cancellationToken)
|
|
|
|
CancellationToken cancellationToken)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
var inputArgument = GetInputArgument(inputFile, mediaSource);
|
|
|
|
var inputArgument = GetInputPathArgument(inputFile, mediaSource);
|
|
|
|
|
|
|
|
|
|
|
|
if (!isAudio)
|
|
|
|
if (!isAudio)
|
|
|
|
{
|
|
|
|
{
|
|
|
@ -1147,6 +1145,21 @@ namespace MediaBrowser.MediaEncoding.Encoder
|
|
|
|
.ToList();
|
|
|
|
.ToList();
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/// <inheritdoc />
|
|
|
|
|
|
|
|
public string GetInputPathArgument(EncodingJobInfo state)
|
|
|
|
|
|
|
|
=> GetInputPathArgument(state.MediaPath, state.MediaSource);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/// <inheritdoc />
|
|
|
|
|
|
|
|
public string GetInputPathArgument(string path, MediaSourceInfo mediaSource)
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
return mediaSource.VideoType switch
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
VideoType.Dvd => GetInputArgument(GetPrimaryPlaylistVobFiles(path, null).ToList(), mediaSource),
|
|
|
|
|
|
|
|
VideoType.BluRay => GetInputArgument(GetPrimaryPlaylistM2tsFiles(path).ToList(), mediaSource),
|
|
|
|
|
|
|
|
_ => GetInputArgument(path, mediaSource)
|
|
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/// <inheritdoc />
|
|
|
|
/// <inheritdoc />
|
|
|
|
public void GenerateConcatConfig(MediaSourceInfo source, string concatFilePath)
|
|
|
|
public void GenerateConcatConfig(MediaSourceInfo source, string concatFilePath)
|
|
|
|
{
|
|
|
|
{
|
|
|
|