aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Controller/Lyrics/ILyricParser.cs
diff options
context:
space:
mode:
authorNiels van Velzen <git@ndat.nl>2023-06-20 16:51:07 +0200
committerNiels van Velzen <git@ndat.nl>2023-06-23 21:13:20 +0200
commit6de56f05186b77042a611112d82208b8fa8675fb (patch)
treefc240188be55246860d6b091cccbb4a81813fd66 /MediaBrowser.Controller/Lyrics/ILyricParser.cs
parenta1eb2f6ea8cd78d527f1ae395378419f016208ab (diff)
Add support for lyric provider plugins
Diffstat (limited to 'MediaBrowser.Controller/Lyrics/ILyricParser.cs')
-rw-r--r--MediaBrowser.Controller/Lyrics/ILyricParser.cs28
1 files changed, 28 insertions, 0 deletions
diff --git a/MediaBrowser.Controller/Lyrics/ILyricParser.cs b/MediaBrowser.Controller/Lyrics/ILyricParser.cs
new file mode 100644
index 0000000000..65a9471a3b
--- /dev/null
+++ b/MediaBrowser.Controller/Lyrics/ILyricParser.cs
@@ -0,0 +1,28 @@
+using MediaBrowser.Controller.Resolvers;
+using MediaBrowser.Providers.Lyric;
+
+namespace MediaBrowser.Controller.Lyrics;
+
+/// <summary>
+/// Interface ILyricParser.
+/// </summary>
+public interface ILyricParser
+{
+ /// <summary>
+ /// Gets a value indicating the provider name.
+ /// </summary>
+ string Name { get; }
+
+ /// <summary>
+ /// Gets the priority.
+ /// </summary>
+ /// <value>The priority.</value>
+ ResolverPriority Priority { get; }
+
+ /// <summary>
+ /// Parses the raw lyrics into a response.
+ /// </summary>
+ /// <param name="lyrics">The raw lyrics content.</param>
+ /// <returns>The parsed lyrics or null if invalid.</returns>
+ LyricResponse? ParseLyrics(LyricFile lyrics);
+}