add setting to prefer filename or embedded title
This commit is contained in:
parent
389d3f7629
commit
76b456d5e8
|
@ -14,6 +14,7 @@
|
||||||
public bool EnableInternetProviders { get; set; }
|
public bool EnableInternetProviders { get; set; }
|
||||||
public bool ImportMissingEpisodes { get; set; }
|
public bool ImportMissingEpisodes { get; set; }
|
||||||
public bool EnableAutomaticSeriesGrouping { get; set; }
|
public bool EnableAutomaticSeriesGrouping { get; set; }
|
||||||
|
public bool EnableEmbeddedTitles { get; set; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Gets or sets the preferred metadata language.
|
/// Gets or sets the preferred metadata language.
|
||||||
|
|
|
@ -195,8 +195,9 @@ namespace MediaBrowser.Providers.MediaInfo
|
||||||
}
|
}
|
||||||
|
|
||||||
await AddExternalSubtitles(video, mediaStreams, options, cancellationToken).ConfigureAwait(false);
|
await AddExternalSubtitles(video, mediaStreams, options, cancellationToken).ConfigureAwait(false);
|
||||||
|
var libraryOptions = _libraryManager.GetLibraryOptions(video);
|
||||||
|
|
||||||
FetchEmbeddedInfo(video, mediaInfo, options);
|
FetchEmbeddedInfo(video, mediaInfo, options, libraryOptions);
|
||||||
await FetchPeople(video, mediaInfo, options).ConfigureAwait(false);
|
await FetchPeople(video, mediaInfo, options).ConfigureAwait(false);
|
||||||
|
|
||||||
video.IsHD = mediaStreams.Any(i => i.Type == MediaStreamType.Video && i.Width.HasValue && i.Width.Value >= 1260);
|
video.IsHD = mediaStreams.Any(i => i.Type == MediaStreamType.Video && i.Width.HasValue && i.Width.Value >= 1260);
|
||||||
|
@ -222,7 +223,6 @@ namespace MediaBrowser.Providers.MediaInfo
|
||||||
|
|
||||||
NormalizeChapterNames(chapters);
|
NormalizeChapterNames(chapters);
|
||||||
|
|
||||||
var libraryOptions = _libraryManager.GetLibraryOptions(video);
|
|
||||||
var extractDuringScan = false;
|
var extractDuringScan = false;
|
||||||
if (libraryOptions != null)
|
if (libraryOptions != null)
|
||||||
{
|
{
|
||||||
|
@ -344,9 +344,9 @@ namespace MediaBrowser.Providers.MediaInfo
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void FetchEmbeddedInfo(Video video, Model.MediaInfo.MediaInfo data, MetadataRefreshOptions options)
|
private void FetchEmbeddedInfo(Video video, Model.MediaInfo.MediaInfo data, MetadataRefreshOptions refreshOptions, LibraryOptions libraryOptions)
|
||||||
{
|
{
|
||||||
var isFullRefresh = options.MetadataRefreshMode == MetadataRefreshMode.FullRefresh;
|
var isFullRefresh = refreshOptions.MetadataRefreshMode == MetadataRefreshMode.FullRefresh;
|
||||||
|
|
||||||
if (!video.IsLocked && !video.LockedFields.Contains(MetadataFields.OfficialRating))
|
if (!video.IsLocked && !video.LockedFields.Contains(MetadataFields.OfficialRating))
|
||||||
{
|
{
|
||||||
|
@ -418,15 +418,12 @@ namespace MediaBrowser.Providers.MediaInfo
|
||||||
|
|
||||||
if (!video.IsLocked && !video.LockedFields.Contains(MetadataFields.Name))
|
if (!video.IsLocked && !video.LockedFields.Contains(MetadataFields.Name))
|
||||||
{
|
{
|
||||||
if (!string.IsNullOrWhiteSpace(data.Name))
|
if (!string.IsNullOrWhiteSpace(data.Name) && libraryOptions.EnableEmbeddedTitles)
|
||||||
{
|
{
|
||||||
if (string.IsNullOrWhiteSpace(video.Name) || (string.Equals(video.Name, Path.GetFileNameWithoutExtension(video.Path), StringComparison.OrdinalIgnoreCase) && !video.ProviderIds.Any()))
|
// Don't use the embedded name for extras because it will often be the same name as the movie
|
||||||
|
if (!video.ExtraType.HasValue && !video.IsOwnedItem)
|
||||||
{
|
{
|
||||||
// Don't use the embedded name for extras because it will often be the same name as the movie
|
video.Name = data.Name;
|
||||||
if (!video.ExtraType.HasValue && !video.IsOwnedItem)
|
|
||||||
{
|
|
||||||
video.Name = data.Name;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -481,7 +478,7 @@ namespace MediaBrowser.Providers.MediaInfo
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="video">The video.</param>
|
/// <param name="video">The video.</param>
|
||||||
/// <param name="currentStreams">The current streams.</param>
|
/// <param name="currentStreams">The current streams.</param>
|
||||||
/// <param name="options">The options.</param>
|
/// <param name="options">The refreshOptions.</param>
|
||||||
/// <param name="cancellationToken">The cancellation token.</param>
|
/// <param name="cancellationToken">The cancellation token.</param>
|
||||||
/// <returns>Task.</returns>
|
/// <returns>Task.</returns>
|
||||||
private async Task AddExternalSubtitles(Video video,
|
private async Task AddExternalSubtitles(Video video,
|
||||||
|
|
Loading…
Reference in New Issue
Block a user