diff --git a/MediaBrowser.Providers/MediaBrowser.Providers.csproj b/MediaBrowser.Providers/MediaBrowser.Providers.csproj
index a3f7c2704d..7a5875f618 100644
--- a/MediaBrowser.Providers/MediaBrowser.Providers.csproj
+++ b/MediaBrowser.Providers/MediaBrowser.Providers.csproj
@@ -76,6 +76,7 @@
+
diff --git a/MediaBrowser.Providers/Movies/MovieProviderFromXml.cs b/MediaBrowser.Providers/Movies/MovieProviderFromXml.cs
index 5cf6805efc..63b1bdb039 100644
--- a/MediaBrowser.Providers/Movies/MovieProviderFromXml.cs
+++ b/MediaBrowser.Providers/Movies/MovieProviderFromXml.cs
@@ -3,6 +3,7 @@ using MediaBrowser.Controller.Entities;
using MediaBrowser.Controller.Entities.Movies;
using MediaBrowser.Controller.Providers;
using MediaBrowser.Model.Logging;
+using MediaBrowser.Providers.Music;
using System;
using System.IO;
using System.Threading;
@@ -105,7 +106,7 @@ namespace MediaBrowser.Providers.Movies
if (musicVideo != null)
{
- new BaseItemXmlParser(Logger).Fetch(musicVideo, path, cancellationToken);
+ new MusicVideoXmlParser(Logger).Fetch(musicVideo, path, cancellationToken);
}
else
{
diff --git a/MediaBrowser.Providers/Music/MusicVideoXmlParser.cs b/MediaBrowser.Providers/Music/MusicVideoXmlParser.cs
new file mode 100644
index 0000000000..5af203fa74
--- /dev/null
+++ b/MediaBrowser.Providers/Music/MusicVideoXmlParser.cs
@@ -0,0 +1,42 @@
+using MediaBrowser.Controller.Entities;
+using MediaBrowser.Controller.Providers;
+using MediaBrowser.Model.Logging;
+using System.Xml;
+
+namespace MediaBrowser.Providers.Music
+{
+ public class MusicVideoXmlParser : BaseItemXmlParser
+ {
+ ///
+ /// Initializes a new instance of the class.
+ ///
+ /// The logger.
+ public MusicVideoXmlParser(ILogger logger)
+ : base(logger)
+ {
+ }
+
+ ///
+ /// Fetches the data from XML node.
+ ///
+ /// The reader.
+ /// The item.
+ protected override void FetchDataFromXmlNode(XmlReader reader, MusicVideo item)
+ {
+ switch (reader.Name)
+ {
+ case "Artist":
+ item.Artist = reader.ReadElementContentAsString();
+ break;
+
+ case "Album":
+ item.Album = reader.ReadElementContentAsString();
+ break;
+
+ default:
+ base.FetchDataFromXmlNode(reader, item);
+ break;
+ }
+ }
+ }
+}
diff --git a/MediaBrowser.Providers/Savers/MovieXmlSaver.cs b/MediaBrowser.Providers/Savers/MovieXmlSaver.cs
index 0d4a21f8a3..335851e28b 100644
--- a/MediaBrowser.Providers/Savers/MovieXmlSaver.cs
+++ b/MediaBrowser.Providers/Savers/MovieXmlSaver.cs
@@ -79,6 +79,20 @@ namespace MediaBrowser.Providers.Savers
builder.Append("");
}
+ var musicVideo = item as MusicVideo;
+
+ if (musicVideo != null)
+ {
+ if (!string.IsNullOrEmpty(musicVideo.Artist))
+ {
+ builder.Append("" + SecurityElement.Escape(musicVideo.Artist) + "");
+ }
+ if (!string.IsNullOrEmpty(musicVideo.Album))
+ {
+ builder.Append("" + SecurityElement.Escape(musicVideo.Album) + "");
+ }
+ }
+
XmlSaverHelpers.AddMediaInfo((Video)item, builder);
builder.Append("");