/// <inheritdoc/> public override void ReadMediaFiles(XmlNode xMLMedia) { int k = 0; // video files from Link-List foreach (XmlNode xMLVideodatei in xMLMedia.XMLReadSubnode("links").XMLReadSubnodes("link")) { if (xMLVideodatei.XMLReadSubnode("urltype").XMLReadInnerText(string.Empty) == "Movie" && !xMLVideodatei.XMLReadSubnode("description").XMLReadInnerText(string.Empty).Contains("Untertitel.")) { VideoFile videoFile = new VideoFile(this.Configuration); k++; videoFile.Description = xMLVideodatei.XMLReadSubnode("description").XMLReadInnerText(string.Empty); videoFile.Description = videoFile.OverrideSpecial(this.OverrideVideoStreamData(videoFile.Description)); videoFile.FileIndex = k; videoFile.URL = xMLVideodatei.XMLReadSubnode("url").XMLReadInnerText(string.Empty); videoFile.Media = this; this.MediaFiles.Add(videoFile); } } // video files from Discs and override MediaStreamData foreach (XmlNode xMLMovieDisc in xMLMedia.XMLReadSubnode("discs").XMLReadSubnodes("disc")) { string discTitle = this.OverrideVideoStreamData(xMLMovieDisc.XMLReadSubnode("title").XMLReadInnerText(string.Empty)); foreach (XmlNode xMLEpisode in xMLMovieDisc.XMLReadSubnode("episodes").XMLReadSubnodes("episode")) { VideoFile videoFile = new VideoFile(this.Configuration); k++; videoFile.Description = xMLEpisode.XMLReadSubnode("title").XMLReadInnerText(string.Empty); videoFile.OverrideSpecial(discTitle); videoFile.OverrideSpecial(this.OverrideVideoStreamData(videoFile.Description)); videoFile.URL = xMLEpisode.XMLReadSubnode("movielink").XMLReadInnerText(string.Empty); videoFile.FileIndex = k; videoFile.Media = this; this.MediaFiles.Add(videoFile); } } // SubTitles foreach (VideoFile videoFile in this.MediaFiles) { videoFile.ReadSubTitleFile(xMLMedia); } }
/// <inheritdoc/> public override MediaFile Clone() { VideoFile videoFileClone = new VideoFile(this.Configuration); videoFileClone.IsSpecial = this.IsSpecial; videoFileClone.Description = this.Description; videoFileClone.URL = this.URL; videoFileClone.URLLocalFilesystem = this.URLLocalFilesystem; videoFileClone.Filename = this.Filename; videoFileClone.Extension = this.Extension; videoFileClone.Server = this.Server; videoFileClone.Media = this.Media; videoFileClone.FileIndex = this.FileIndex; foreach (SubTitleFile subTitleFile in this.SubTitleFiles) { videoFileClone.SubTitleFiles.Add((SubTitleFile)subTitleFile.Clone()); } return (VideoFile)videoFileClone; }
/// <inheritdoc/> public override void ReadMediaFiles(XmlNode xMLMedia) { VideoFile videoFile = new VideoFile(this.Configuration); videoFile.IsSpecial = this.IsSpecial; videoFile.Description = "EpisodeVideoFile"; videoFile.URL = xMLMedia.XMLReadSubnode("movielink").XMLReadInnerText(string.Empty); videoFile.Media = this; videoFile.FileIndex = this.VideoIndex; videoFile.ConvertFilename(); this.MediaFiles.Add(videoFile); }