Order files before creating concat config

pull/10990/head
Shadowghost 4 months ago
parent f34c56282d
commit 52c79c050b

@ -1111,6 +1111,7 @@ namespace MediaBrowser.MediaEncoding.Encoder
return allVobs return allVobs
.Where(vob => titles.Contains(_fileSystem.GetFileNameWithoutExtension(vob).AsSpan().RightPart('_').ToString())) .Where(vob => titles.Contains(_fileSystem.GetFileNameWithoutExtension(vob).AsSpan().RightPart('_').ToString()))
.Select(i => i.FullName) .Select(i => i.FullName)
.Order()
.ToList(); .ToList();
} }
@ -1127,6 +1128,7 @@ namespace MediaBrowser.MediaEncoding.Encoder
return directoryFiles return directoryFiles
.Where(f => validPlaybackFiles.Contains(f.Name, StringComparer.OrdinalIgnoreCase)) .Where(f => validPlaybackFiles.Contains(f.Name, StringComparer.OrdinalIgnoreCase))
.Select(f => f.FullName) .Select(f => f.FullName)
.Order()
.ToList(); .ToList();
} }
@ -1150,31 +1152,29 @@ namespace MediaBrowser.MediaEncoding.Encoder
} }
// Generate concat configuration entries for each file and write to file // Generate concat configuration entries for each file and write to file
using (StreamWriter sw = new StreamWriter(concatFilePath)) using StreamWriter sw = new StreamWriter(concatFilePath);
foreach (var path in files)
{ {
foreach (var path in files) var mediaInfoResult = GetMediaInfo(
{ new MediaInfoRequest
var mediaInfoResult = GetMediaInfo( {
new MediaInfoRequest MediaType = DlnaProfileType.Video,
MediaSource = new MediaSourceInfo
{ {
MediaType = DlnaProfileType.Video, Path = path,
MediaSource = new MediaSourceInfo Protocol = MediaProtocol.File,
{ VideoType = videoType
Path = path, }
Protocol = MediaProtocol.File, },
VideoType = videoType CancellationToken.None).GetAwaiter().GetResult();
}
}, var duration = TimeSpan.FromTicks(mediaInfoResult.RunTimeTicks.Value).TotalSeconds;
CancellationToken.None).GetAwaiter().GetResult();
// Add file path stanza to concat configuration
var duration = TimeSpan.FromTicks(mediaInfoResult.RunTimeTicks.Value).TotalSeconds; sw.WriteLine("file '{0}'", path);
// Add file path stanza to concat configuration // Add duration stanza to concat configuration
sw.WriteLine("file '{0}'", path); sw.WriteLine("duration {0}", duration);
// Add duration stanza to concat configuration
sw.WriteLine("duration {0}", duration);
}
} }
} }

Loading…
Cancel
Save