private static bool TryFormatMediaRssScene(MediaRssScene sceneToFormat, out XElement sceneElement)
        {
            sceneElement = default;

            if (sceneToFormat == null)
            {
                return(false);
            }

            if (!string.IsNullOrEmpty(sceneToFormat.Title))
            {
                // ReSharper disable once ConstantNullCoalescingCondition
                sceneElement = sceneElement ?? new XElement(_media + "scene");
                sceneElement.Add(new XElement("sceneTitle", sceneToFormat.Title));
            }

            if (!string.IsNullOrEmpty(sceneToFormat.Description))
            {
                sceneElement = sceneElement ?? new XElement(_media + "scene");
                sceneElement.Add(new XElement("sceneDescription", sceneToFormat.Description));
            }

            if (MinutesSecondsTimeSpanFormatter.TryFormatTimeAsString(sceneToFormat.StartTime, out var startTimeFormatted))
            {
                sceneElement = sceneElement ?? new XElement(_media + "scene");
                sceneElement.Add(new XElement("sceneStartTime", startTimeFormatted));
            }

            if (MinutesSecondsTimeSpanFormatter.TryFormatTimeAsString(sceneToFormat.EndTime, out var endTimeFormatted))
            {
                sceneElement = sceneElement ?? new XElement(_media + "scene");
                sceneElement.Add(new XElement("sceneEndTime", endTimeFormatted));
            }

            if (sceneElement == null)
            {
                return(false);
            }

            return(true);
        }
        private static bool TryParseMediaRssScene(XElement sceneElement, XNamespace ns, out MediaRssScene parsedScene)
        {
            parsedScene = default;

            if (TryParseStringElement(sceneElement?.Element(ns + "sceneTitle") ?? sceneElement?.Element("sceneTitle"), out var parsedTitle))
            {
                parsedScene       = parsedScene ?? new MediaRssScene();
                parsedScene.Title = parsedTitle;
            }

            if (TryParseStringElement(sceneElement?.Element(ns + "sceneDescription") ?? sceneElement?.Element("sceneDescription"), out var parsedDescription))
            {
                parsedScene             = parsedScene ?? new MediaRssScene();
                parsedScene.Description = parsedDescription;
            }

            if (TryParseTimeSpanElement(sceneElement?.Element(ns + "sceneStartTime") ?? sceneElement?.Element("sceneStartTime"), out var parsedStartTime))
            {
                parsedScene           = parsedScene ?? new MediaRssScene();
                parsedScene.StartTime = parsedStartTime;
            }

            if (TryParseTimeSpanElement(sceneElement?.Element(ns + "sceneEndTime") ?? sceneElement?.Element("sceneEndTime"), out var parsedEndTime))
            {
                parsedScene         = parsedScene ?? new MediaRssScene();
                parsedScene.EndTime = parsedEndTime;
            }

            if (parsedScene == null)
            {
                return(false);
            }

            return(true);
        }