From 4b585e3148fe1341d7c1075ba4e3760dcd039981 Mon Sep 17 00:00:00 2001 From: Luke Pulverenti Date: Wed, 14 May 2014 16:43:31 -0400 Subject: [PATCH] save chapters in xml --- .../MediaInfo/FFProbeVideoInfo.cs | 4 ++- .../Savers/XmlSaverHelpers.cs | 33 +++++++++++-------- 2 files changed, 22 insertions(+), 15 deletions(-) diff --git a/MediaBrowser.Providers/MediaInfo/FFProbeVideoInfo.cs b/MediaBrowser.Providers/MediaInfo/FFProbeVideoInfo.cs index 47a441a4d6..76b0818fe9 100644 --- a/MediaBrowser.Providers/MediaInfo/FFProbeVideoInfo.cs +++ b/MediaBrowser.Providers/MediaInfo/FFProbeVideoInfo.cs @@ -255,7 +255,9 @@ namespace MediaBrowser.Providers.MediaInfo } } - info.StartPositionTicks = chapter.start / 100; + // Limit accuracy to milliseconds to match xml saving + var ms = Math.Round(TimeSpan.FromTicks(chapter.start / 100).TotalMilliseconds); + info.StartPositionTicks = TimeSpan.FromMilliseconds(ms).Ticks; return info; } diff --git a/MediaBrowser.Providers/Savers/XmlSaverHelpers.cs b/MediaBrowser.Providers/Savers/XmlSaverHelpers.cs index 6d681197e5..679a1f5303 100644 --- a/MediaBrowser.Providers/Savers/XmlSaverHelpers.cs +++ b/MediaBrowser.Providers/Savers/XmlSaverHelpers.cs @@ -636,22 +636,27 @@ namespace MediaBrowser.Providers.Savers { var video = item as Video; - if (video != null && video.Video3DFormat.HasValue) + if (video != null) { - switch (video.Video3DFormat.Value) + AddChapters(video, builder, itemRepository); + + if (video.Video3DFormat.HasValue) { - case Video3DFormat.FullSideBySide: - builder.Append("FSBS"); - break; - case Video3DFormat.FullTopAndBottom: - builder.Append("FTAB"); - break; - case Video3DFormat.HalfSideBySide: - builder.Append("HSBS"); - break; - case Video3DFormat.HalfTopAndBottom: - builder.Append("HTAB"); - break; + switch (video.Video3DFormat.Value) + { + case Video3DFormat.FullSideBySide: + builder.Append("FSBS"); + break; + case Video3DFormat.FullTopAndBottom: + builder.Append("FTAB"); + break; + case Video3DFormat.HalfSideBySide: + builder.Append("HSBS"); + break; + case Video3DFormat.HalfTopAndBottom: + builder.Append("HTAB"); + break; + } } } }