diff options
| author | Luke Pulverenti <luke.pulverenti@gmail.com> | 2015-04-16 10:59:39 -0400 |
|---|---|---|
| committer | Luke Pulverenti <luke.pulverenti@gmail.com> | 2015-04-16 10:59:39 -0400 |
| commit | 6bd18c6e72d1c4ba9c371d37411ebd918d8c6d9e (patch) | |
| tree | 3badd7fc5d9142725fd3209fde8132620e0ec79a /MediaBrowser.Model | |
| parent | c7b95a251317fdb01d160cc3dcaf5d23779437d4 (diff) | |
xbox one dlna fixes
Diffstat (limited to 'MediaBrowser.Model')
| -rw-r--r-- | MediaBrowser.Model/Dlna/StreamInfo.cs | 18 |
1 files changed, 14 insertions, 4 deletions
diff --git a/MediaBrowser.Model/Dlna/StreamInfo.cs b/MediaBrowser.Model/Dlna/StreamInfo.cs index f6ff79b115..b062bc240f 100644 --- a/MediaBrowser.Model/Dlna/StreamInfo.cs +++ b/MediaBrowser.Model/Dlna/StreamInfo.cs @@ -102,7 +102,7 @@ namespace MediaBrowser.Model.Dlna } List<string> list = new List<string>(); - foreach (NameValuePair pair in BuildParams(this, accessToken)) + foreach (NameValuePair pair in BuildParams(this, accessToken, false)) { if (string.IsNullOrEmpty(pair.Value)) { @@ -173,7 +173,7 @@ namespace MediaBrowser.Model.Dlna { List<string> list = new List<string>(); - foreach (NameValuePair pair in BuildParams(item, accessToken)) + foreach (NameValuePair pair in BuildParams(item, accessToken, true)) { list.Add(pair.Value); } @@ -181,7 +181,7 @@ namespace MediaBrowser.Model.Dlna return string.Format("Params={0}", string.Join(";", list.ToArray())); } - private static List<NameValuePair> BuildParams(StreamInfo item, string accessToken) + private static List<NameValuePair> BuildParams(StreamInfo item, string accessToken, bool isDlna) { List<NameValuePair> list = new List<NameValuePair>(); @@ -211,7 +211,17 @@ namespace MediaBrowser.Model.Dlna list.Add(new NameValuePair("Level", item.VideoLevel.HasValue ? StringHelper.ToStringCultureInvariant(item.VideoLevel.Value) : string.Empty)); - list.Add(new NameValuePair("ClientTime", item.IsDirectStream ? string.Empty : DateTime.UtcNow.Ticks.ToString(CultureInfo.InvariantCulture))); + if (isDlna) + { + // The player may see it as separate resources due to url differences + // And then try to request more than one at playback + list.Add(new NameValuePair("ClientTime", string.Empty)); + } + else + { + list.Add(new NameValuePair("ClientTime", item.IsDirectStream ? string.Empty : DateTime.UtcNow.Ticks.ToString(CultureInfo.InvariantCulture))); + } + list.Add(new NameValuePair("MaxRefFrames", item.MaxRefFrames.HasValue ? StringHelper.ToStringCultureInvariant(item.MaxRefFrames.Value) : string.Empty)); list.Add(new NameValuePair("MaxVideoBitDepth", item.MaxVideoBitDepth.HasValue ? StringHelper.ToStringCultureInvariant(item.MaxVideoBitDepth.Value) : string.Empty)); list.Add(new NameValuePair("Profile", item.VideoProfile ?? string.Empty)); |
