diff options
Diffstat (limited to 'MediaBrowser.MediaEncoding/Subtitles/SubtitleFormatExtensions.cs')
| -rw-r--r-- | MediaBrowser.MediaEncoding/Subtitles/SubtitleFormatExtensions.cs | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/MediaBrowser.MediaEncoding/Subtitles/SubtitleFormatExtensions.cs b/MediaBrowser.MediaEncoding/Subtitles/SubtitleFormatExtensions.cs new file mode 100644 index 000000000..88c2bf3db --- /dev/null +++ b/MediaBrowser.MediaEncoding/Subtitles/SubtitleFormatExtensions.cs @@ -0,0 +1,29 @@ +using System.Diagnostics.CodeAnalysis; +using Nikse.SubtitleEdit.Core.SubtitleFormats; + +namespace MediaBrowser.MediaEncoding.Subtitles; + +internal static class SubtitleFormatExtensions +{ + /// <summary> + /// Will try to find errors if supported by provider. + /// </summary> + /// <param name="format">The subtitle format.</param> + /// <param name="errors">The out errors value.</param> + /// <returns>True if errors are available for given format.</returns> + public static bool TryGetErrors(this SubtitleFormat format, [NotNullWhen(true)] out string? errors) + { + errors = format switch + { + SubStationAlpha ssa => ssa.Errors, + AdvancedSubStationAlpha assa => assa.Errors, + SubRip subRip => subRip.Errors, + MicroDvd microDvd => microDvd.Errors, + DCinemaSmpte2007 smpte2007 => smpte2007.Errors, + DCinemaSmpte2010 smpte2010 => smpte2010.Errors, + _ => null, + }; + + return !string.IsNullOrWhiteSpace(errors); + } +} |
